本MMLコンパイラは、CUI(Command line User Interface)のアプリケーションです。
以下のように、記述してください。
何も指定しない場合は、NSFに変換します。
nsc -option filename(*.mml)
MMLファイルをアセンブリ言語ソース(ca65.exe用)へ変換します。
出力されるアセンブリ言語ソースは、そのままca65.exeでアセンブル可能なソースになっており編集不要です。
ソースを編集すると、再生に影響を及ぼす可能性がありますので、編集せずにアセンブルしてください。
ユーザー・アプリケーションのビルドの際に、そのオブジェクト・ファイルをリンクして下さい。
出力するアセンブリ言語ソースの詳細は、出力するアセンブリ言語ソースについてを参照して下さい。
NSF (Nintendo Sound Format)へ変換します。
NSFe (Extended Nintendo Sound Format)へ変換します。
バンク切り替え非対応版の.binを用いてコンパイラで直接NSFを生成する場合、
実行コード、シーケンスデータ、⊿PCMデータの合計が32kByteまでとなります。
バンク切り替え対応版の.binを用いる場合は、1024kByteまでのデータを作成する事が可能です。
各.binの詳細は、各.lib/.binの仕様を参照願います。
NSFのヴァージョンを1~2で指定可能です。省略した場合は、Version 2となります。
バンク構成の最適化のスイッチです。
switchにて+を指定した場合、バンク構成を最適化します。
switchにて-を指定した場合、バンク構成を最適化しません(デフォルト)。
NSFファイルにビルドする際に、バンク構成を最適化しファイルサイズを小さくします。
⊿PCMを用いるMMLをコンパイルする場合に、効果が得られる場合があります。
但し、バンクが不連続に配置されたnsfに非対応の実機再生環境では、⊿PCMの再生が正常に行われない場合があります。
(現状、TNS-HFC3にて確認しています)。
このオプションスイッチでは、未使用のメモリ空間のバンクは作らず、必要なバンクだけを作成します。
これは、⊿PCMを使用する際に発生します。
たとえば、シーケンスデータが$9FFF番地で終わり⊿PCMが$C000番地から配置される場合$A000~$BFFFのメモリ領域は不要となります。
その領域をnsfファイル化せず、$8000~$9FFF, $C000~を領域のみをnsfファイル化して、ファイルサイズを小さくするためのオプションです。
Version 0.10β~0.17βでのデフォルトの動作です。
また、⊿PCMでバンクに対応した.binを使用時において、このオプションスイッチを指定しない場合は、
NSFのバンク数が最低8バンク(NSFヘッダーを除き32kByte)になるように調整します。
このオプションスイッチを指定する場合は、8バンク(NSFヘッダーを除き32kByte)以下のNSFも作成可能ですが、
バンクが不連続に配置されたnsfに非対応の実機再生環境では、正常に再生できない可能性があります。
未使用のサブルーチン、エンベロープ等を削除するスイッチです。
switchにて+を指定した場合、未使用のエンベロープ、FDS, n163, VRC7の音色をコンパイルしません(デフォルト)。
switchにて-を指定した場合、未使用であっても削除しないでコンパイルします。
シーケンスデータにおける最適化のスイッチです。
switchにて+を指定した場合、BGM, 効果音, 及びサブルーチンのシーケンスデータを最適化します(デフォルト)。
switchにて-を指定した場合、シーケンスデータを最適化しません。
エラー/ワーニングを、標準エラー出力に出力します。
デフォルトでは標準出力に返しますが、ファイルに関するエラーのみは、標準エラー出力固定となります。
検索パスの検索結果を出力します。
NSF Music formatへ変換する際の実行コードファイルを指定します。
このオプションを指定した場合、MML中の"#code"コマンドは無視されます。
ファイル名は、スペースを開けずに記述してください。
アセンブリ言語ソースのファイル名を指定できます。
指定がない場合は、入力されたmmlのファイル名で、拡張子を`.s'にして出力します。
ファイル名は、スペースを開けずに記述してください。
NSF Music formatのファイル名を指定できます。
指定がない場合は、入力されたmmlのファイル名で、拡張子を`.nsf'にして出力します。
ファイル名は、スペースを開けずに記述してください。
NSF Music formatへ変換する際の実行コードファイルの検索パスを設定します。
;で区切ることにより、複数の検索パスを指定可能です。
パス名は、スペースを開けずに記述してください。
検索優先順位は、以下の通りです。
⊿PCMファイル(*.dmc)の検索パスを設定します。
;で区切ることにより、複数の検索パスを指定可能です。
パス名は、スペースを開けずに記述してください。
検索優先順位は、以下の通りです。
MML中の#includeディレクティブで指定されたインクルードファイルの検索パスを設定します。
;で区切ることにより、複数の検索パスを指定可能です。
パス名は、スペースを開けずに記述してください。
検索優先順位は、以下の通りです。
簡易ヘルプを表示します。