- サウンドドライバファンクション一覧
- 00
- 無効
- 01
- 音楽演奏開始 1-A
- イベントコマンド FA
- 02 xx yy
- 効果音 演奏開始・停止
- イベントコマンド FB ?
- 03
- 音楽演奏開始 1-B
- 乗り物に乗る
- 04
- 音楽演奏開始 2
- イベントコマンド EA
- 10–1F
- メニュー効果音 演奏開始
- 80 xx
- 効果音パン設定
- ???
- 85
- 音楽音量変化 → $00 (−112/256)
- イベントコマンド D8 / 戦闘終了 / 乗り物に乗る / ギサールの笛 / 戦闘終了
- 86
- 音楽音量変化 → $00 (−512/256)
- マップ切り替え / 乗り物から降りる
- 87
- 音楽音量変化 → $80 (−56/256)
- イベントコマンド FD 33 (サイトロ・小人のパン), FD 3D
- 00/C516
- イベントコマンド FD 33 (サイトロ・小人のパン), FD 3D
- 88
- 音楽音量設定 ⇒ $FF
- 戦闘 : 一時停止解除
- 89
- 音楽音量変化 → $FF (56/256)
- イベントコマンド FD 33 (サイトロ・小人のパン), FD 3E
- 00/C526
- イベントコマンド FD 33 (サイトロ・小人のパン), FD 3E
- 8A
- 音楽音量設定 ⇒ $40
- 戦闘 : 一時停止
- 8B
- 音楽音量変化 → $00 (−186/256)
- 戦闘終了
- 90 xx
- 音声出力設定 [ステレオ/モノラル]
- コンフィグ
- 01/D46C
- コンフィグ
- FF
- 再起動
- イベントコマンド FD 3C
サウンドドライバファンクション
01 音楽演奏開始 1-A 処理順序などが実際と異なります 圧縮波形データ転送制御は $00 のみ動作未確認です
i0 ?? i2
i0 : ファンクション番号
i2 : 音楽データ (先頭)
DSP 全てのチャネルのキーオフを実行します。
音楽トラック 6・7 の DSP チャネル使用不可能フラグを解除します。
音楽データを 1 バイトずつ転送します。
o0 に i0 の値を書き込み、i0 の値が変化するまで待機します。
音楽データ転送を終了します。
i1 の値で圧縮波形データの転送を指定します。
演奏に使用する圧縮波形データの一部が前回の演奏で使用されていた 場合に使用します。
演奏に使用する転送済みの圧縮波形データをバッファの先頭に移動します。
i1 が 0 以外である 場合は、移動を終了します。
未転送の圧縮波形データを 3 バイトずつ転送します (i1, i2, i3)。
o0 に i0 の値を書き込み、i0 の値が変化するまで待機します。
i0 が 0 である 場合は、転送を終了します。
演奏に使用する圧縮波形データを転送します。
転送開始アドレスは圧縮波形データ用バッファの先頭です。
圧縮波形データを 3 バイトずつ転送します (i1, i2, i3)。
o0 に i0 の値を書き込み、i0 の値が変化するまで待機します。
i0 が 0 である 場合は、転送を終了します。
演奏に使用する圧縮波形データの一部が前回の演奏で使用されていた 場合に使用します。
未転送の圧縮波形データを 3 バイトずつ転送します (i1, i2, i3)。
o0 に i0 の値を書き込み、i0 の値が変化するまで待機します。
i0 が 0 である 場合は、転送を終了します。
圧縮波形データ転送処理をスキップします。
演奏に使用する圧縮波形データが前回の演奏で全て転送済みである 場合に使用します。
音楽 (ヘッダ・音楽シーケンス) データ
i0 ?? i2
i0 : 転送制御 (同期)
i2 : 音楽データi0 が 0 以外である場合
i0 が 0 である場合
圧縮波形データ
i0 : 転送制御 (同期)
i1 : 転送制御 (前々回以前の管理は未確認)
i3i2 : アドレス・バイト数一部の圧縮波形データを転送する (データ移動あり)
00
コピー元 コピー先 バイト数 [コピー元 コピー先 バイト数 …] 転送先 圧縮波形データ [圧縮波形データ …]すべての圧縮波形データを転送する
11
圧縮波形データ [圧縮波形データ …]一部の圧縮波形データを転送する (データ移動なし)
22
転送先 圧縮波形データ [圧縮波形データ …]圧縮波形データを転送しない
FF
圧縮波形テーブルデータを転送します。
ピッチ調整値を転送します。
演奏に使用するトラックのデータを初期化します。
主にフェードイン・フェードアウトで使用する音楽音量変化を無効にし、倍率を $FFFF/256 に設定します。
エコーディレイが 80㎳ に設定されます。
演奏速度を 1 に設定し、演奏を開始します。
02 効果音 演奏開始・停止
02 i1 i2
DSP チャネル 6・7 のキーオフを実行します。
効果音トラック 2・3 の演奏を停止します。
音楽トラック 6・7 の DSP チャネル使用不可能フラグを解除します。
効果音シーケンスデータが未設定ではない 場合はトラックデータ等を初期化し、効果音 i1 を演奏します。
音楽トラック 7 の DSP チャネル使用不可能フラグを設定します。
効果音トラック 3 を使用 [する/しない] 場合は、音楽トラック 8 の DSP チャネル使用不可能フラグを [設定/解除] します。
演奏停止
i1 : 効果音番号 ($00, $4F?)
演奏開始
i1 : 効果音番号 ($01–$4E, $50–$7F)
i2 : パン ($00–$FF)
チャネル | 音楽 | 効果音 |
---|---|---|
5 | 6 | 1 |
6 | 7 | 2 |
7 | 8 | 3 |
03 音楽演奏開始 1-B
音楽演奏開始 1-A と同じ動作です。
04 音楽演奏開始 2
音楽演奏開始 1-A とほぼ同じ動作ですが、主にフェードイン・フェードアウトで使用する音楽音量の倍率と変化量をそれぞれ 0 と 112/256 に設定します (フェードイン)。
10–1F メニュー効果音 演奏開始
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F
メニュー効果音を演奏中である場合
現在使用中の効果音トラックの演奏を中断し、使用します。
ファンクション番号に対応する効果音が未設定である 場合は、効果音トラックに対応する音楽トラックの DSP チャネル使用不可能フラグが解除されません。
メニュー効果音を演奏中ではない場合
効果音トラック 3 → 2 → 1 の順で空きのトラックを検索し、使用します。
ファンクション番号に対応する効果音が未設定である 場合は処理を終了し、メインループに戻ります。
使用する効果音トラックに対応する DSP チャネルのキーオフを実行します。
使用する効果音トラックの次回のキーオンフラグを解除します。
使用する効果音トラックに対応する音楽トラックの DSP チャネル使用不可能フラグを設定します。
トラックデータ等を初期化し、ファンクション番号に対応した効果音を演奏します。
コマンド | 効果音 |
---|---|
$10 | ??? |
$11 | カーソル |
$12 | エラー |
$13 | カーソル |
$14 | カーソル |
$18 | 戦闘コマンド表示 (コントローラ 1) |
$19 | 戦闘コマンド表示 (コントローラ 2) |
チャネル | 音楽 | 効果音 |
---|---|---|
5 | 6 | 1 |
6 | 7 | 2 |
7 | 8 | 3 |
80 効果音パン設定
80 xx
xx : パン ($00–$FF)
効果音トラック 2・3 のパンの値が xx に設定されます。
85 音楽音量変化 → $00 (−112/256)
85
主にフェードイン・フェードアウトで使用する音楽音量の倍率が、現在値から $00 まで変化します (フェードアウト)。
約 4.5 ㎳ 毎に 112/256 減少します。最大値の $FFFF/256 から $00EF/256 ($01 未満) まで、約 2623.5 ㎳ で変化します。
変化後の値の整数部が変化前と異なる 場合は、音楽トラックの Volume 計算フラグを設定します。
86 音楽音量変化 → $00 (−512/256)
86
主にフェードイン・フェードアウトで使用する音楽音量の倍率が、現在値から $00 まで変化します (フェードアウト)。
約 4.5 ㎳ 毎に 512/256 減少します。最大値の $FFFF/256 から $0000/256 まで、約 576 ㎳ で変化します。
変化後の値の整数部が変化前と異なる 場合は、音楽トラックの Volume 計算フラグを設定します。
87 音楽音量変化 → $80 (−56/256)
87
変化
主にフェードイン・フェードアウトで使用する音楽音量の倍率が、現在値から $80 まで変化します。
約 4.5 ㎳ 毎に 56/256 減少します。最大値の $FFFF/256 から $80E7/256 ($81 未満) まで、約 2614.5 ㎳ で変化します。
変化後の値の整数部が変化前と異なる 場合は、音楽トラックの Volume 計算フラグを設定します。
設定
現在値が $80 未満である 場合は、$80 が設定されます。
音楽トラックの Volume 計算フラグを設定します。
88 音楽音量設定 ⇒ $FF
88
主にフェードイン・フェードアウトで使用する音楽音量の倍率 が 変化中である 場合は、変化を中断します。
音楽音量倍率を、$FFFF/256 に設定します。
音楽トラックの Volume 計算フラグを設定します。
8A 音楽音量設定 ⇒ $40
8A
主にフェードイン・フェードアウトで使用する音楽音量の倍率 が 変化中である 場合は、変化を中断します。
音楽音量倍率を、$4000/256 に設定します。
音楽トラックの Volume 計算フラグを設定します。
90 音声出力設定 [ステレオ/モノラル]
90 xx
xx : フラグ ($00–$FF)
xx で音声出力を設定します。
音楽トラックの Volume 計算フラグを設定します。
xx | 音声出力 |
---|---|
0 | ステレオ |
0 以外 | モノラル |
FF 再起動
FF
DSP 全てのチャネルのキーオフを実行します。
サウンドドライバなどのデータ上書きを行わずに、演奏を停止しフラグ等を初期化します。
エコーディレイが 16㎳ に設定されます。
メインループに戻り、最大で約 276.5㎳ 動作を一時停止します。