2002年3月


2002/03/01(金)

WonderWitch

MMLコンパイラ、ようやくmakeできる段階に到達。

さらにWonderWitch

サンプルのMMLファイルを用意して実行。案の定ですが、まだぜんぜんダメでした。
初版から1か月過ぎないうちに次版を出したいとは思ってます。(希望)


2002/03/02(土)

飲み

前の会社の時の知り合い2人と飲み。

WonderWitch

飲みから帰って少し作業。MMLコンパイラがもう少しで なんとかなりそう(わりとつまらないミスが重なってました)。

あとは、ドライバ本体に音量コマンド/ディチューンコマンドあたりを 実装して、テストプログラムをファイル読み込み対応にして、 次版を出そうと思います。


2002/03/03(日)

WonderWitch

1トラックだけなら正常にコンパイルできるようになりました。
2トラック目を追加したら即お亡くなり(処理が戻ってこない)。……。

さらにWonderWitch

処理が戻ってこない件は解決。字句解析系が腐ってたのと、 音長0をエラーではじく処理を忘れてたのが複合して、0除算が起こっていたらしい。 それならそうと表示してくれればいいのに…>Win2k

その他いくつかバグをつぶし、一応まともなリソースファイルが吐けるように なった模様。


2002/03/04(月)

WonderWitch

MMLファイルを用意>MMLコンパイラでリソースファイルに> /ram0に転送>テストプログラムで読み込んで演奏、 までの一連の流れが実行できるようになりました。

まだドライバ本体がバグってるようで、音符以外のコマンドを使うと おかしな音が出てます(未対応コマンドは無視するのが正しい)。
それを直しつつ、いくつかのコマンドを追加して、次版。
明日かあさってくらいには出したいです。

さらにWonderWitch

おかしな音が出る件はバグではありませんでした。
未対応コマンドはスキップするようになってるんですが、それにくっついてくる パラメータまではスキップできず、音符とみなして演奏していたようです。 これは仕様です(回避困難)。

MMLコンパイラ側でドライバ本体より先に対応してしまったコマンドが ちらほらあり、そういうのを使うとこの仕様に遭遇するわけですが、 見なかったことにしてください

そのうえWonderWitch

音量コマンドとディチューンコマンドを実装。これら自体は 動いたんですが、ドライバ本体にまずいバグが見つかって現在調査中です。 いろいろ調べてますが、訳が分からない。

あと、バグとは直接関係なさそうですが、FreyaBIOSはマニュアルに「戻り値なし」 と書いてあってもレジスタを破壊することがあります。普通、破壊するレジスタが あるなら説明しとくもんだろ…。


2002/03/05(火)

WonderWitch

「まずいバグ」が直りました。PCMチャンネル0〜3のうち、 2と3から全く音が出ないというバグだったんですが、原因は「波形がセット されてなかった」ことでした。そして、波形のセットに失敗していた原因は、 「波形をセットするBIOSコールでレジスタ破壊が起こっていたから」。……。
昨日見つけたのとは全然別のBIOSコールだったんですが、結局それが原因か… と思うと力が抜けました。

そしてもう一つ小バグをつぶして、ちゃんと4チャンネル全てまともに鳴るように なった模様。今日中にβ02を出せるかなー。次のバグが見つからないうちに 出してしまお〜。<ぅぁひでぇ

さらにWonderWitch

β02公開。実はMMLコンパイラにバグが見つかった気が しないでもないですが多分気のせいです。付点音符を使うときは 「C.」のように音長を省略せず、「C4.」 などと書くといいことがあるでせう。
(ごめんなさい次版で直しますm(_ _)m)


2002/03/08(金)

近況

しばらくハードディスクのバックアップとかその他雑用やってました。

WonderWitch

BIOSコールでレジスタが破壊される件をサポートに問い合わせた ところ、「BIOSのバグかも知れないので、調査のため、現象が再現するソースを 送ってほしい」だそうです。なるべく最小限のソースがいいそうですが(当たり前 ですね)、サウンドドライバのソースの一部だけ抜き出せというのも難しいので、 テスト用のプログラムをちょろっと作って送ろうかなと。それで再現しなかったら ヤだなー(汗)


2002/03/09(土)

WonderWitch

BIOSでのレジスタ破壊の件、テストプログラム作成。あっさり再現。
「戻り値以外のレジスタは変化しないはず」らしいので、 これでほぼBIOSのバグ確定。仕様らしいです。

WonderWitch

付点音符のコンパイルのバグ直したり、内蔵スピーカ出力の スケーリング設定変えたり、休符のサポートしたり。でもすべて未テスト。
β03はなるべく早めに出したいです。目標、3日以内。

WonderWitch

テンポコマンド、デフォルト音長コマンドの追加。ここらで 変更箇所のテストに入って、終わればβ03リリースにする予定。


2002/03/10(日)

WonderWitch

β03リリース。既知の不具合については対処したつもり…ですが、 例によってテストは甘めです。(^^;


2002/03/11(月)

WonderWitch

FreyaBIOSでレジスタが破壊される件、「AXレジスタが破壊される のは仕様」のようです。でもそんなことどこにも書いてないのに、サポートから の回答はそれがさも当然かのように言っているので、頭にきて「ちゃんと公開情報 にしろ」と返答してやりました。

さらにWonderWitch

WonderWitchプレーヤーが 発表されました。WonderWitchから開発環境だけ取り除いたものと思えばいいのかな。
もちろんこれだけだとプログラムは組めないわけですが、わんだらぁさんのBroomが 公開されたら、それを使ってプログラム開発もできるということに…。 かなり魅力ありそう。(あ、ワンべぇもあったな)

ところでそろそろWitch関係のリンクを作らないとなぁと思ったり。でも 相互リンクという形態は避けるつもりです。こちらからの要請もなし、受け付けも なしで。


2002/03/12(火)

近況

通院やら散髪やら。

WonderWitch

バグ修正をちらっと。


2002/03/14(木)

WonderWitch

ファンクションを一つ新設。その関係でリソースパッケージの フォーマットを変更(変更したくないと言ったそばから)。

エンベロープの実装をわずかに開始。


2002/03/15(金)

体調

なんかまた風邪引いたみたい…。のど痛いし、ちと熱っぽい。
それとも花粉のせいか。


2002/03/16(土)

体調

のど痛かったりボーっとしたり寒気したり胃がもたれたり…と、 典型的な熱の症状なのに、体温測ると平熱…なにゆえ?
と思ってたら、やっぱり熱出てきました! ほら思ったとおり! <よろこんでどーする
と言っても微熱です。大したことはないはず。

WonderWitch

ディチューンの新仕様が追加になったので、キツキツにエンコード していた音程エンベロープも設計し直しかなあ…と思ったけど、少しの変更で どうにか済みそうです。実作業は進んでません(ぁー


2002/03/18(月)

Java

思い立ってJavaの本を買う。標準Cと少しのアセンブラだけでは食っていけない 気がしたので。
他にもC++とかDelphiとかRubyとかやってみたいものはいろいろあるが、 最も飯の種に近くてなおかつ習得できる見込みのあるのはJavaかなと思った。
Cマガ2月号のインタビュー記事を読んで、設計者の人柄もいいなぁと思ったし。

方針

なぜだか分からないけどなんだか疲れてしまったので、しばらく他所の掲示板 などには書き込まない方針で。見ると書きたくなるので、見るのもなるべく 控えめにしよう。
今は余計なことで疲れを抱え込んでる場合じゃない…。


2002/03/27(水)

窮状

しばらく鬱々としていて、作業などいろいろ進んでません。なかなか 全力疾走できないですねー。ほんとはそんなこと言ってる場合じゃないんです けどね。もうあと1か月ぐらいでお金なくなっちゃいそうです。 なにぶん無職なもんで。

早いとこ職探して稼ぎを得ないといけないわけで、Humming Catにしても そのための実力アピールの意味もあるわけですが(方向性が幾分ずれてる気も するが)、先にお金なくなったらどうにもならんかったりします。
…自分としては引きこもってるつもりではなかったんですが、「引きこもり とどこが違うねん」と問われたら返答に窮してしまうという、微妙な昨今で ございます。

それでもまあ、Javaの本を一冊読み終えてみたりとか、決して完全停止 してるわけじゃないんです。人生、匍匐前進中といった感じ。

Java

ということで(なにが??)、読み終えたJava本というのが「やさしいJava」 (ソフトバンクパブリッシング)です。
500ページ前後ありますけど、サラッと読めてしまいました。読みやすいです。
一回読んだくらいで全部頭に入るわけでも身に付くわけでもないですが、 「これならなんとかなるかなー」と思わせてくれる本でした。

私の場合はC言語の知識が一応あるので、まったくプログラミング言語を 知らない人が読んだ場合の感触は分からないですが、入門書として けっこういい部類に入るのではないかと思いました。
ただし技術書の常として、書いてある全てを鵜呑みにしないほうがいいです。 けっこう誤記もあるみたい(笑)

WonderWitch

あまり変更しないで済みそうと思ったエンベロープの仕様ですが、 結局エンコードし直しました。ちなみにSoundILのエンベロープ/ビブラート定義 に毛が生えたようなもんです(MSXのMGSDRVに近くした感じ)。
ADSRとかのパラメータで分かりやすく指定できるのが好きな方、ごめんなさい。 当面そういう方式を採用する予定はありません。やるとしても正式版(ver1.00)を 出した後かと。


2002/03/30(土)

WonderWitch

エンベロープを実装中。ドライバ本体もかなり手が入ったけど、 コンパイラ側はもっと厄介。しかしそちらは手つかず。


2002/03/31(日)

近況

気分は暗めだが作業はまあまあ進む。

WonderWitch

パンポットや相対音量など、楽だけど後回しにしていた部分を作る。 「エンベロープを先に作らないと」と思って放っておいたが、 そのエンベロープ周りがけっこうできてきたので。


最新の日記へ戻る トップページへ戻る