[英語/nsf]

NSF仕様書(26) / 2006-04-04 (火)

色のうすい方が原文です。
- ここから --------------------------------------------------------------------
8) The stack sits at 1FFh and grows down.
8) スタックは1FFh以降となります。
Make sure the tune does not attempt to use 1F0h-1FFh for variables.
変数が1F0h~1FFhを使わないようにしてください
(Armed Dragon Villigust did and I had to relocate its RAM usage to 2xx)
(甲竜伝説ヴィルガストがその状態だった為2xxhへ移動させました)。

9) Variables should sit in the 0000h-07FFh area *only*.
9) 変数は0000h~07FFh内に収まるようにしてください。
If the tune writes outside this range, say 1400h this is bad and should be relocated.
もし、曲が1400h等この範囲外へ書き込む場合は移動させてください
(Terminator 3 did this and I relocated it to 04xx).
(ターミネーター3がその状態だった為04xxhへ移動させました)。

That's it!
おしまい!
- ここまで --------------------------------------------------------------------
キタ━━(゚∀゚)━━!!!!
ついに翻訳完了です!!!

ファイルは「ピコピコ音で遊ぼう」のコーナーからどうぞ。
終わってみれば、なんと約2ヶ月もかかってしまいました(笑)
いやー、長かった。ちりも積もれば何とやらですね。

最後の「That's it!」がどんな意味か調べることをすごく楽しみにしていたんです。
「以上」とかいう締めの言葉かなと思いつつも、「おしまい」という響きがかわいいのでそれでいいかって。
そんなわけで、満足感に浸りつつも次のステージへ進むことにしましょう。

[英語/nsf]

NSF仕様書(25) / 2006-03-31 (金)

色のうすい方が原文です。
- ここから --------------------------------------------------------------------
4) If a field is not known (name, artist, copyright) then the field must contain the string "" (without quotes).
4) もし各フィールド(曲名、作曲者、著作権者)がわからない場合は内容に""を含むようにしてください(引用文無しで)。

5) There should be 8K of RAM present at 6000-7FFFh. MMC5 tunes need RAM at 5C00-5FF7 to emulate its EXRAM.
5) RAMは6000h~7FFFhの8KByteあります。MMC5の曲には5C00h~5FF7hの拡張RAMが必要です。
8000-FFFF Should be read-only (not writable) after a tune has loaded.
8000h~FFFFhは、曲をロードした後は読み込み専用(書き込み不可)となります。
The only time this area should be writable is if an FDS tune is being played.
FDSの曲で再生が始まった時のみ、ここは書き込めるようになります。

6) Do not assume the state of *anything* on entry to the init routine except A and X.
6) 初期化処理時は、AとXを除いて不定値となります。
Y can be anything, as can the flags.
Yはフラグとして使用できます。

7) Do not assume the state of *anything* on entry to the play routine either.
7) 再生処理に入るときは、どちらになるかを仮定しないようにしてください。
Flags, X, A, and Y could be at any state.
フラグ、X、A、Yはどのような状態になるかわかりません。
I've fixed about 10 tunes because of this problem and the problem, above.
この問題と上の問題で10曲に関して修正しました。
- ここまで --------------------------------------------------------------------
ここまでの進捗(翻訳が正しいかは別として)は96%。あと少し!!!

[英語/nsf]

NSF仕様書(24) / 2006-03-30 (木)

色のうすい方が原文です。
- ここから --------------------------------------------------------------------
* Sunsoft FME-07 Sound uses registers C000 and E000
* Sunsoft FME-07音源はC000hとE000hのレジスタを使用します。

This is similar to the common AY 3-8910 sound chip that is used on tons of arcade machines, and in the Intellivision.
これは、インテリビジョンやアーケードマシンの音色に使われる AY 3-8910 サウンドチップと同じです。

C000 is the address port
E000 is the data port
C000hはアドレスポート
E000hはデータポート

Both are write-only, and behave like the AY 3-8910.
両方書き込み専用で、AY 3-8910と同じように動作します。

Note: Special thanks to Mamiya for this information as well
ノート: またしても情報を提供してくれたMamiya氏に大感謝!


Caveats
-------
警告
----

1) The starting song number and maximum song numbers start counting at 1, while the init address of the tune starts counting at 0.
1) 開始曲番号と最大曲番号は1から数え、開始曲のアドレスの初期値は0です。
To "fix", simply pass the desired song number minus 1 to the init routine.
これを明確にするため、初期化ルーチンへは単に曲番号から1引いた数を渡します。

2) The NTSC speed word is used *only* for NTSC tunes, or dual PAL/NTSC tunes.
2) NTSCの速度データはNTSCの曲、またはPAL/NTSC共通の曲にのみ使用されます。
The PAL speed word is used *only* for PAL tunes, or dual PAL/NTSC tunes.
PALの速度データはPALの曲、またはPAL/NTSC共通の曲にのみ使用されます。
3) The length of the text in the name, artist, and copyright fields must be 31 characters or less!
3) 曲名、作曲者、著作権者の長さは31バイト以内で!
There has to be at least a single NULL byte (00h) after the text, between fields.
各フィールド間には少なくともNULL文字が1つになるようにしてください。
- ここまで --------------------------------------------------------------------
ここまでの進捗(翻訳が正しいかは別として)は92%。最終行が見えた!!

[英語/nsf]

NSF仕様書(23) / 2006-03-29 (水)

色のうすい方が原文です。
- ここから --------------------------------------------------------------------
* Namco 106 Sound Uses registers 4800 and F800.
* Namco106音源は4800hとF800hのレジスタを使用します。
This works similar to VRC7.4800 is the "data" port which is readable and writable, while F800 is the "address" port and is writable only.
この動作はVRC7と同じです。4800hはデータの読み込みか書き込みポートとして、F800hはアドレスの書き込みポートとして使用されます。

The address is 7 bits plus a "mode" bit.
アドレスは7ビットとモード用ビットで構成されます。
Bit 7 controls address auto-incrementing.
ビット7はアドレスの自動増加の判定です。
If bit 7 is set, the address will auto-increment after a byte of data is read or written from/to 4800.
セットされていた場合は4800hのデータが読み書きされた時に自動的にアドレスが増加されます。

$40 ffffffff f:frequency L
$42 ffffffff f:frequency M
$44 ---sssff f:frequency H s:tone length (8-s)*4 in 4bit-samples
$46 tttttttt t:tone address(4bit-address,$41 means high-4bits of $20)
$47 -cccvvvv v:linear volume 1+c:number of channels in use($7F only)
$40-47:ch1 $48-4F:ch2 ... $78-7F:ch8
ch2-ch8 same to ch1
$40 ffffffff f:頻度 L
$42 ffffffff f:頻度 M
$44 ---sssff f:頻度 H s:トーン長 (8-s) * 4 4ビットサンプル
$46 tttttttt t:トーンアドレス (4ビットアドレス $41は$20の上位4ビットを意味する)
$47 -cccvvvv v:ラインボリューム 1+c:使用中のチャンネル($7Fのみ)
$40-47:チャンネル1 $48-4F:チャンネル2 ... $78-7F:チャンネル8
チャンネル2から8はチャンネル1と同様。

$00-3F(8ch)...77(1ch) hhhhllll tone data
h:odd address data(signed 4bit)
l:even address data(signed 4bit)
$00-3F(8チャンネル)...77(1チャンネル) hhhhllll トーンデータ
h:奇数アドレスデータ(符号付き4ビット)
l:偶数アドレスデータ(符号付き4ビット)

real frequency = (f * NES_BASECYCLES) / (40000h * (c+1) * (8-s)*4 * 45)
NES_BASECYCLES 21477270(Hz)
正確な頻度 = (f * NES_BASECYCLES) / (40000h * (c + 1) * (8 - s) * 4 * 45)
NES_BASECYCLES 21477270(Hz)
Note: Very Special thanks to Mamiya for this information!
ノート: 情報を提供してくれたMamiya氏に大感謝!
- ここまで --------------------------------------------------------------------
ここまでの進捗(翻訳が正しいかは別として)は83%。ついに8割突破!

[英語/nsf]

NSF仕様書(22) / 2006-03-28 (火)

色のうすい方が原文です。
- ここから --------------------------------------------------------------------
2) 5205 and 5206 are a hardware 8*8 multiplier.
2) 5205hと5206hはハードウェアの8*8乗数です。
The idea being you write your two bytes to be multiplied into 5205 and 5206 and after doing so, you read the result back out.
アイデアとして、5205hと5206hに掛けられる2バイトを書き込み、その後結果を読み込みます。
Still working on what exactly triggers it (I think a write to either 5205 or 5206 triggers the multiply).
今そのトリガに取り掛かっています(5205hか5206hのどちらかを掛け算のトリガにして書き込めばいいかと思います)。
3) 5C00-5FF5 should be RAM to emulate EXRAM while in MMC5 mode.
3) 5C00h~5FF5hは拡張RAMのエミュレート用に使われます。
Note: Thanks to Mamiya for the EXRAM info.
ノート: 拡張RAM情報を提供してくれたMamiya氏に感謝します。
- ここまで --------------------------------------------------------------------
ここまでの進捗(翻訳が正しいかは別として)は75%。じわじわと。