- 小技
- キーオン後からキーオフまでの間に、音量やパンを設定する
- スラー有効時に休符の一つ前のキーオンコマンドで DSP のキーオン無効が解除されてしまう不具合対策 (ティック数が 6 以上であれば可能)
- エコーボリュームに負の値を設定する (逆位相サラウンド設定ではありません)
- エコーボリューム設定後に変化し続けてしまう不具合対策
小技
キーオン後からキーオフまでの間に音量やパンを設定する
通常はタイコマンドの直前の音量設定・パン設定は次のキーオンまで反映されませんが、処理時間 1 で変化させることで音量計算フラグをオンにすることができます。
処理時間 1 で変化
︙
D4 40 ;音量 = $40
D6 60 ;パン = $60
87 ;キーオン
D5 01 60 ;音量 = $60, 処理回数 = 1
C3 ;タイ
D6 01 20 ;パン = $20, 処理回数 = 1
C3 ;タイ
︙
スラー有効時に休符の一つ前のキーオンコマンドで DSP のキーオン無効が解除されてしまう不具合対策
この不具合は、キーオンコマンドで次回の DSP のキーオンに関する処理の実行前に次の休符でスラーを解除してしまうことで発生します。休符の前のキーオンをキーオンとタイに分割することで、キーオンの次がタイでスラーを解除せず、タイの次が休符でキーオンフラグをオンにしなくなり、不具合を回避することができます。
休符の前のキーオンをキーオンとタイに分割で回避
︙
F2 ;スラー開始
05 ;キーオン DSP キーオン有効 キーオフ無効
14 ;キーオン DSP キーオン無効 キーオフ無効
26 ;キーオン DSP キーオン無効 キーオフ無効
;↓休符でスラー解除
CB ;タイ DSP キーオン有効 キーオフ有効
B9 ;休符
︙
エコーボリュームに負の値を設定する
エコーボリューム設定 (D8) コマンドを使用せずエコーボリューム変化 (D9) コマンドを使用し処理時間 1 で変化させることで、エコーボリュームに負の値を設定することができます。
D9 コマンドを使用してエコーボリュームに負の値を設定する
D8 X0 ;エコーボリューム = ⌊X0 / 2⌋ (0–127), 処理回数 = X0
︙
D9 01 Y0 ;エコーボリューム = Y0 (-128–127), 処理回数 = 1
︙
エコーボリューム設定後に変化し続けてしまう不具合対策
この不具合は、エコーボリューム設定 (以下 D8) コマンドでエコーボリューム変化 (以下 D9) コマンドが中断されないため発生します。エコーボリューム変化使用後は D8 コマンドを使用せず D9 コマンドを使用し処理時間 1 で変化させることで、不具合を回避することができます。