最終更新:2026-09-05 (土) 07:24:13 (33d)
NSF
Top / NSF
NES Sound Format
ファミコンの音源ファイル
中身
- ROMから抽出された6502プログラムコードとデータ
- 世の中にあるすべてのNSFファイルは、誰かが音楽コードを見つけ出し、そのエントリポイントを分離し、別のファイルに分割するという作業を経たもの
https://www.nesdev.org/NESTechFAQ.htm#nsfs
音源の仕様
ファイルフォーマット
| アドレス | データ長 | 説明 |
| 0x00 | 5 | ファイルがNSFであることを示す文字列。 "NESM"+0x1A |
| 0x05 | 1 | NSFバージョン。1で固定。 |
| 0x06 | 1 | 曲数。3曲なら3になる。 |
| 0x07 | 1 | NSFを読み込んだときに最初に指定する曲番号。2曲目から再生させたいときは2になる。 |
| 0x08 | 2 | ロード開始アドレス。データはこのアドレスからロードされる。 |
| 0x0A | 2 | 初期化アドレス。再生前にここで指定されたアドレスにジャンプする。 |
| 0x0C | 2 | 再生アドレス。再生時にここで指定されたアドレスに何度もジャンプする。 |
| 0x0E | 32 | タイトル。文字列の終わりはNULL(0)。 |
| 0x2E | 32 | アーティスト名。文字列の終わりはNULL(0)。 |
| 0x4E | 32 | 著作権所持者。文字列の終わりはNULL(0)。 |
| 0x6E | 2 | 再生アドレスが呼び出される周期(NTSCモード時)。1/1000000秒単位で計算される。通常は「1A 41(60Hz)」が入る。 |
| 0x70 | 8 | 初期バンク指定。全部0ならバンクを使用しない。) |
| 0x78 | 2 | 再生アドレスが呼び出される周期(PALモード時)。1/1000000秒単位で計算される。通常は「20 4E(50Hz)」が入る。 |
| 0x7A | 1 | NTSC/PALモード指定。0ならNTSC、1ならPAL、2,3なら両方使う。 |
| 0x7B | 1 | 拡張音源フラグ。ビットが立っていれば、その拡張音源をサポートする。 |
| 0x7C | 4 | 0固定 |
| 0x80 | - | データがファイルの終わりまで続く |
拡張音源フラグ
ツール
プレイヤー
http://wikiwiki.jp/mck/?NSFプレイヤー
仕様
Windows 7
- いくつかのプレイヤーで再生できなかった
- KbMedia Player

