改訂履歴(Revision)

改訂履歴

ヴァージョン内容改定日
1.00 ●音源ドライバー本体
・一時停止関数(nsd_pause_bgm())及び、再生再開関数(nsd_resume_bgm())を実装した。
・nsd_stop_bgm()関数で再生停止したときに発音中の音があった場合、鳴りっぱなしになっていたバグを修正。
●MMLコンパイラ
・マクロに対応した。
・疑似エコーに、スラーで繋げるモードを追加した。
・リピート(A)コマンドにて、リピート回数をどちらにも記述できるようにした。
・アセンブリ言語ソースを出力する際に、数値が3桁毎にカンマが出てしまっていたバグを修正。
・#SegmentPCMコマンドが機能していなかったバグを修正。
・#SegmentPCMコマンドにて""を指定した際、アセンブリ言語で儕CMの実体を出力しないようにした。
●取扱説明書
・これまでに質問があった内容を、FAQに記載しました。
・その他、色々と見直しました。
●その他
・アセンブリ言語から nsd.lib を制御するサンプルソースを作った。
2013年 2月 9日

改訂履歴(α・β版)

ヴァージョン内容改定日
0.27β ●音源ドライバー本体
・使用するRAMの量を若干減らした。
●MMLコンパイラ
・TRコマンドにて複数トラックの指定に対応した。
2013年 1月18日
0.26β ●音源ドライバー本体
・拡張音源使用時に、使用するRAMの量を若干減らした。
●MMLコンパイラ
・#timebase コマンドを実装した。
2013年 1月11日
0.25β ●音源ドライバー本体
・FDSに対応。
・BGMから、SE(効果音)を呼べるようにした。
・効果音発音終了時に、BGMへうまく復帰できていなかったバグを修正。
●MMLコンパイラ
・FDS関連のコマンド群を実装した。
・SEを呼ぶコマンド SE を実装した。
2013年 1月10日
0.24β ●MMLコンパイラ
・#offsetE@, #offsetEv, #offsetEm, #offsetEnコマンドを追加した。
●取扱説明書
・Spcial Thanksを追加しました。
・VRC7の音色について、また、少し数学的な解説を追記した。
2013年 1月 5日
0.23β ●MMLコンパイラ
・エンベロープ定義で、(start,end,length)の指定をできるようにした。
●取扱説明書
・VRC7の音色パラメータについて、少し解説を追記した。
・nsd_oall.binの仕様を記載(書き忘れていた)。
2012年12月22日
0.22β ●MMLコンパイラ
・gccでコンパイルできるように、ソースを修正。
 (C++の機能だけを使っているつもりが、Visual C++の機能を使っていた。)
●その他
・修正BSDライセンス(但しNSFデータは除外)に変更しました。
2012年12月 1日
0.21β ●音源ドライバー本体
・OPLLのリズム音源の仕様を変更。音程を持たせれるようにした。
・OPLLのリズム音源がちゃんとなってなかったバグをFix。
・曲頭の休符に、通常の休符を使うと不要な音が鳴ってしまっていた仕様を改善。鳴らなくした。
2012年11月19日
0.20β ●音源ドライバー本体
・ノートナンバー64以降の儕CMの定義が適用されていなかったバグを修正。
・OPLLに対応(改造VRC7搭載カートリッジ)。
●MMLコンパイラ
・儕CMを使う曲をnsfにビルドする際に、少しファイルサイズが小さくなるようにした。
●取扱説明書
・疑似エコー及び、制御トラックが説明不足だった点を加筆。
2012年11月13日
0.19β ●音源ドライバー本体
・"nsd_all.bin"に、音源に割り当てないトラックを設けた。
 テンポコマンドや、n106/163とVRC7の音色設定等の設定トラックとして使用可能です。
・いつの間にか、効果音がならなくなっていたバグを修正。
●MMLコンパイラ
・疑似エコー(MMLコンパイラ側の命令です)を実装しました。
・範囲コメントの終端 */ の直後(スペースを空けず)に記述したコマンドが認識されなかったバグを修正。
●取扱説明書
・ちょっと見やすさを考えてみた。
2012年11月12日
0.18β ●音源ドライバー本体
・Sunsoft 5Bに対応。
・Rm0コマンドで、儕CMが指定音長でKeyOffされなかったバグをFix。
●MMLコンパイラ
・バンクが不連続に配置されたnsfに非対応の実機再生環境に対応(TNS-HFC3など)。
●取扱説明書
・Rm0コマンドで、儕CMが指定音長でKeyOffされる旨を記載(書き忘れていた)。
2012年10月22日
0.17β ●音源ドライバー本体
・n163にて、アドレス$40番地以降(@命令にて32に相当するアドレス)の波形データを破壊してしまっていたバグを修正。
2012年10月19日
0.16β ●音源ドライバー本体
・Version 0.10β〜0.15βにて、実機で鳴らなくなっていた不具合を修正。
●取扱説明書
・n163の使い方の解説ページを追加。
2012年10月15日
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日