NSDL(NES Sound Driver Library)

改訂履歴(Revision)

α版・β版の段階では、仕様変更の可能性がございます。ご了承ください。

ヴァージョン内容改定日
0.15β ●音源ドライバー本体
・n163に対応。
2012年10月11日
0.14β ●音源ドライバー本体
・色々と拡張音源を実装するに当たり、改めてコードを再確認。無駄なコードを省いて若干最適化した。
・nsd_all.binを作った。現状、内蔵音源及びVRC6 VRC7 MMC5のみに対応です。
●取扱説明書
・取説を見直して、若干、再構成した。
2012年10月 6日
0.13β ●音源ドライバー本体
・VRC7に対応。
2012年10月 3日
0.12β ●音源ドライバー本体
・儕CMの休符の処理で、r,r+ の挙動と、 r- の挙動が逆になってたバグをFix。
2012年10月 2日
0.11β ●音源ドライバー本体
・VRC6に対応。
・MMC5に対応。
2012年10月 1日
0.10β ●音源ドライバー本体
・儕CMに対応。
●MMLコンパイラ
・儕CM対応により、DPCM{}記述ブロックが増えました。
・TR5の各音階に、儕CMを割り当てることができます。
●取扱説明書
・「索引」と「検索」を実装した。
2012年 9月30日
0.07α ●音源ドライバー本体
・儕CMルーチンを開発中(未デバッグです)。
●MMLコンパイラ
・コンパイルオプションで、NSF用の実行コード(*.bin)を指定できるようにした。
・nsfにコンパイルする場合において、実行コードを0xE000番地から0x8000番地に変更した。
 これにより、儕CMが実装できれば、合計16KByte(0xC000〜0xFFFF番地)使えるようになります。
・"#offsetPCM"コマンドを実装。曲データはこのアドレス-1までの領域とし、これ以後を儕CMの領域として割り当てます。
・それに伴い、シーケンスデータが"#offsetPCM"コマンドで指定したアドレスを超えた場合に、エラーを吐くようにした。
 (シーケンスデータが32kByteを超えると、コンパイラがハングするバグがありました。)
・アセンブリ言語出力に対応した。
・また、それに伴い、出力するアセンブリ言語に対して、各種設定するコマンドを実装。
・アセンブリ言語出力に対応したので、アーカイブ中の"\sample\cc65\"のサンプルC言語コードも書き直しました。
2012年 9月25日
0.06α ●音源ドライバー本体
・ポルタメントに対応した。
●MMLコンパイラ
・エンベロープ・サブルーチンにおいて、0〜4294967295番まで指定できるようにした(以前は0〜65535番でした)。
・エンベロープのパターン定義において、Lコマンドを省略できるようにした。
・エンベロープのパターン定義において、音源ドライバが暴走するようなパターン定義の場合、エラーを吐くようにした。
・K{}コマンド(調号)により、r(休符)にも自動で調号(キーオフのモード指定)を付けられるようにした。
●取扱説明書
・休符や、エンベロープについて説明が足りていなかったので、追記した。
・FAQのページを作成した。
2012年 9月17日
0.05α ●音源ドライバー本体
・効果音処理ルーチンを開発中(一応、効果音が使えるようになってますが、未デバッグです)。
●取扱説明書
・BGM,SEデータフォーマット(Format of BGM and SE)のページにおいて、エンベロープがまだ実装されていないことになっていた記述を修正。
●SDK
・アセンブリ言語及び、C言語用のヘッダーファイルを作成した。"include"フォルダを参照。
●MMLコンパイラ
・音名・休符コマンドに、付点のみを指定できなかったバグを修正。
2012年 9月12日
0.04α ●取扱説明書
・主に、ノイズチャンネル関連の説明が不足していた点を加筆。
●MMLコンパイラ
・0及び9から始まる音長を、コンパイルできなかったバグを修正(水平展開できてなかった)。
・音長で0を指定すると、例外が発生して異常終了するバグを修正。
2012年 9月 7日
0.03α ●音源ドライバー本体
・エンベロープを4系統実装した。
●MMLコンパイラ
・オクターブの設定値が1つ高かったバグを修正。
・0及び9から始まる数値を、コンパイルできなかったバグを修正。
・サブルーチン番号で128を超えた場合に、コンパイルできないことがあったバグを修正。
・トラック先頭に L コマンドを書いた場合、無限ループされないコードにコンパイルしていたバグを修正。
2012年 9月 6日
0.02α ●音源ドライバー本体
・休符時の音量の状態が設計どおりで無かったバグを修正。
・サブルーチンからの復帰時に、戻り先のアドレスがずれていたバグを修正。
・リピート(A)命令でリピートされなかったバグを修正。
・リピート(B)命令をもう1系統作った。(op-code 0x18〜0x1A)
・音色命令を追加(op-code 0x1B)。この命令は、音色エンベロープと排他的に使用できる予定です。
●MMLコンパイラ
・作りました。
2012年 9月 3日
0.01α α版です。
どこまで動くかは分からないが、評価版として公開。
まずは、音源ドライバーを設計。
効果音はまだ実装していませんので、効果音関係の関数は呼ばないでください。
2012年 8月10日