Sound Application 「ささみ」 作成秘話


現在公開している「ささみ」の歴史を時系列でおっていってみようと思います。

まず私の触ったPCとして一番古いのはMSXになります。
その頃はBASICでプログラム組んだりしていましたが、Z80の勉強もしていたのでMSX用のサウンドドライバも作れたかもしれません。
その後PC88になり、Z88は分かっていても、それを編集するソフトがなかったので結局はプログラムをさほど組むこともなくPC98へと行きました。
PC98になり8086にCPUがなりました。
当時専門学校1年でした。
ノートにひたすらニーモニックを書いて、Sound Driverのプログラムを机上で作り上げました。
で、PC98のN88BASIC上のMONコマンドにてインラインアセンブラモードにてSound Driverを完成させました。
それが初めての「ささみ」ということになります。
その後、MS-DOSになって、MASM(macro assembler)6.0にて、MS-DOS版の「ささみ」を作成しました。
ここで苦労したのは常駐でしたね。
一番最初はYM2203(OPN)しか対応していませんでした。
その後、YM2608(OPNA)に対応しましたが、ADPCMには未対応で来ました。
ADPCMは別の方が「ささみ」用に作って下さって、FM音源版は完成しました。

その後、MIDIにも対応したいという考えがおき、MPUにてのMIDI出力に対応しました。
ここまでが、N88BASIC上でのニーモニックオールアセンブラ版となります。

MS-DOSではN88BAISC版を元に、移植を行いました。
そして、RS-MIDI(RS232Cを用いたMIDI)にも対応し、32パートにも対応を行いました。
その後発売されたSuperMPUにはかなり手こずりました。
普通にMPUボードに対し出力を行うと、1ポート(1ch~16ch)と2ポート(17ch~32ch)に同じデータが流れてしまうからです。

ポート分けが大変でした。
当時、Windows95だかのドライバを解析し、何を出力して初期化するのかを徹底的に調べ、SuperMPUに対応したのを覚えています。

その後Windows世代に入るということで「ささみ」もWindows版が必要と感じ、作ったものが現「ささみ」Sound Applicationです。
しかしMIDIのみの対応となりました。
FM音源は出力方法が違うため、対応できず終わりました。
のちのち、CISCさん作のFM音源ジェネレータが出るのですが、「ま、いっか」って感じで対応せず、hootエミュレータ上で「ささみ」を
演奏するという方法でFM音源を実現しました。

文字として書くと短いですが、アセンブラで作るってのはかなり大変でした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください