こちらもI/Oポートを直接叩くことを前提とするので、NO-BIOSとしては何も変更する必要はありません。Z80アセンブラの作者でもあるHRA!さんの「BGM Driver」を使って、ゲームのBGMとして使えるサンプルを追加しました。
初期化用関数と、垂直同期割り込み時に呼び出す関数を設定した「psg.asm」を作ってできあがり!NO-BIOSか、C-BIOSに設定したopenMSXで、ROMファイルを開くと懐かしいサウンドが鳴ります!
「mml_compiler/source/test1/test1.txt」
音楽は、このようにMMLで3ch分記述し、コンパイラ「mc」を使ってアセンブリ言語表記のデータファイルを生成します。
macOSでもコンパイルするため、SJISをutf8に変換し、ちょっと変更しました。(forked BGM Driver)
links
- 削ぎ落としたZ80マシン「MIX」用ファームウェア「NO-BIOS」
- MIX - 超軽量MSXエミュレーター with Z80.js