NSDL(NES Sound Driver Library)
MML reference: TR
引数(Inputs)
track番号は、BGM記述ブロックとSE記述ブロックで値が異なります。
BGM記述ブロック
リンクするライブラリ(*.lib)、NSF用コード(*.bin)によって
各トラックに割り当てられる音源が異なります。
全共通
トラック | 音源 |
TR1 | APU(2A03) パルス波 ch1 |
TR2 | APU(2A03) パルス波 ch2 |
TR3 | APU(2A03) 三角波 |
TR4 | APU(2A03) ノイズ |
TR5 | APU(2A03) 凾oCM |
nsd_fds.lib / nsd_fds.bin (開発中)
トラック | 音源 |
TR6 | FDS(ディスクシステム音源) |
nsd_vrc6.lib / nsd_vrc6.bin
トラック | 音源 |
TR6 | VRC6 パルス波 ch1 |
TR7 | VRC6 パルス波 ch2 |
TR8 | VRC6 鋸波 |
nsd_vrc7.lib / nsd_vrc7.bin
トラック | 音源 |
TR6 | VRC7(FM音源) ch1 |
TR7 | VRC7(FM音源) ch2 |
TR8 | VRC7(FM音源) ch3 |
TR9 | VRC7(FM音源) ch4 |
TR10 | VRC7(FM音源) ch5 |
TR11 | VRC7(FM音源) ch6 |
nsd_mmc5.lib / nsd_mmc5.bin
トラック | 音源 |
TR6 | MMC5 パルス波 ch1 |
TR7 | MMC5 パルス波 ch2 |
nsd_n163.lib / nsd_n163.bin
トラック | 音源 |
TR6 | N163(波形メモリ音源) ch8 |
TR7 | N163(波形メモリ音源) ch7 |
TR8 | N163(波形メモリ音源) ch6 |
TR9 | N163(波形メモリ音源) ch5 |
TR10 | N163(波形メモリ音源) ch4 |
TR11 | N163(波形メモリ音源) ch3 |
TR12 | N163(波形メモリ音源) ch2 |
TR13 | N163(波形メモリ音源) ch1 |
nsd_s5b.lib / nsd_s5b.bin
トラック | 音源 |
TR6 | Sunsoft 5B ch1 |
TR7 | Sunsoft 5B ch2 |
TR8 | Sunsoft 5B ch3 |
nsd_all.bin
トラック | 音源 |
TR6 | VRC6 パルス波 ch1 |
TR7 | VRC6 パルス波 ch2 |
TR8 | VRC6 鋸波 |
TR9 | VRC7(FM音源) ch1 |
TR10 | VRC7(FM音源) ch2 |
TR11 | VRC7(FM音源) ch3 |
TR12 | VRC7(FM音源) ch4 |
TR13 | VRC7(FM音源) ch5 |
TR14 | VRC7(FM音源) ch6 |
TR15 | MMC5 パルス波 ch1 |
TR16 | MMC5 パルス波 ch2 |
TR17 | N163(波形メモリ音源) ch8 |
TR18 | N163(波形メモリ音源) ch7 |
TR19 | N163(波形メモリ音源) ch6 |
TR20 | N163(波形メモリ音源) ch5 |
TR21 | N163(波形メモリ音源) ch4 |
TR22 | N163(波形メモリ音源) ch3 |
TR23 | N163(波形メモリ音源) ch2 |
TR24 | N163(波形メモリ音源) ch1 |
TR25 | Sunsoft 5B ch1 |
TR26 | Sunsoft 5B ch2 |
TR27 | Sunsoft 5B ch3 |
※ "nsd_all.bin"は、FDS以外の全ての拡張音源に対応したコードですが、
リソースの多くを音源ドライバーが使ってしまうため、
アプリケーション組み込みはできません。
また、FDS音源はハードウェアの制約上、組み合わせて使うことが不可能です。
nsd_opll.lib / nsd_opll.bin
トラック | 音源 |
TR6 | OPLL FM音源 ch1 |
TR7 | OPLL FM音源 ch2 |
TR8 | OPLL FM音源 ch3 |
TR9 | OPLL FM音源 ch4 |
TR10 | OPLL FM音源 ch5 |
TR11 | OPLL FM音源 ch6 |
TR12 | OPLL FM音源 ch7 (Rhythmが有効な時は、デバイス出力しません) |
TR13 | OPLL FM音源 ch8 (Rhythmが有効な時は、デバイス出力しません) |
TR14 | OPLL FM音源 ch9 (Rhythmが有効な時は、デバイス出力しません) |
TR15 | OPLL Rhythm Bass Drum (Rhythmが無効な時は、デバイス出力しません) |
TR16 | OPLL Rhythm Snare Drum (Rhythmが無効な時は、デバイス出力しません) |
TR17 | OPLL Rhythm Hi Hat (Rhythmが無効な時は、デバイス出力しません) |
TR18 | OPLL Rhythm Top Cymbal (Rhythmが無効な時は、デバイス出力しません) |
TR19 | OPLL Rhythm Tom Tom (Rhythmが無効な時は、デバイス出力しません) |
※"nsd_opll.lib" 及び "nsd_opll.bin" は、VRC7をOPLL(YM2413)に換装した、改造拡張音源用の音源ドライバーです。
ファミコン実機でOPLLを鳴らしたい方は、個人の責任にて改造して下さい。
ch7〜9のFM音源/リズム音源の切り替えは、TR15〜19の`s'コマンドにて設定します。
曲中での切り替えにも対応しており、デフォルトは、FM音源 9ch(s0)です。
s0 … FM音源 9ch (TR15〜19の発音は無効になります。休符を置いてください。)
s1 … FM音源 6ch + リズム音源 5ch (TR12〜14の発音は無効になります。休符を置いてください。)
SE記述ブロック
効果音は、どのライブラリ(*.lib)、どのNSF用コード(*.bin)でも同じです。
トラック | 音源 |
1 | APU(2A03) パルス波 ch2 |
2 | APU(2A03) ノイズ |
内容(Contents)
以後のシーケンスデータのトラックを指定します。
注意(Notes)
サブルーチン記述ブロックでは無効です。
例(Sample)
BGM(1){
TR1 l4o4 reee reee rfff rddd e1
TR2 l4o3 rggg >rccc< raaa rbbb >c1
TR3 l4o3 c2r2 <a2r2> d2r2 g2r2 c1
}