- シーケンスコマンド一覧
- 00-B3
- キーオン
- トラック
- B4-C2
- 休符
- トラック
- C3-D1
- タイ
- トラック
- D2 xx_yy zz
- 音楽演奏速度 設定・変化
- 音楽トラック
- D3 xx
- 音長(待機時間)設定
- トラック
- D4 xx
- エコーボリューム設定
- 全体
- D5 xx yy
- エコーフィードバック設定・FIR フィルタ係数テーブル選択
- 全体
- D6 xx yy zz
- ピッチスライド設定
- トラック
- D7 xx yy zz
- トレモロ設定
- トラック
- D8 xx yy zz
- ビブラート設定
- トラック
- D9 xx yy zz
- オートパン設定
- トラック
- DA xx
- オクターブ設定
- トラック
- DB xx
- 波形選択
- トラック
- DC xx
- Attack 設定 (Software)
- トラック
- DD xx
- Sustain 設定 (Software)
- トラック
- DE xx
- Release 設定 (Software)
- 音楽トラック
- DF xx
- ノイズクロック設定
- 全体
- E0 xx
- ループ開始位置
- トラック
- E1
- オクターブ + 1
- トラック
- E2
- オクターブ - 1
- トラック
- E3 xx
- ADSR1 設定 (Hardware Attack·Decay)
- トラック
- E4 xx
- ADSR2 設定 (Hardware Sustain)
- トラック
- E5 xx
- GAIN 設定 (Software Release)
- トラック
- E6
- ピッチスライド解除
- トラック
- E7
- トレモロ解除
- トラック
- E8
- ビブラート解除
- トラック
- E9
- オートパン解除
- トラック
- EA
- エコーオン
- トラック
- EB
- エコーオフ
- トラック
- EC
- ノイズオン
- トラックノイズクロック
- ED
- ノイズオフ
- トラックノイズクロック
- EE
- ピッチモジュレーションオン
- トラック
- EF
- ピッチモジュレーションオフ
- トラック
- F0
- 繰り返し・ループ終了
- トラック
- F1
- 演奏終了
- トラックノイズクロック
- F2 xx_yy zz
- 音量 設定・変化(Volume)
- トラック
- F3 xx_yy zz
- パン 設定・変化
- 音楽トラック
- F4 xx_yy
- ジャンプ
- トラック
- F5 xx yy_zz
- 条件ジャンプ
- トラック
- F6 xx_yy
- ジャンプ (復帰アドレス退避)
- 音楽トラック
- F7
- 復帰
- 音楽トラック
- F8
- スラー開始
- 音楽トラック
- F9
- レガート開始
- 音楽トラック
- FA
- スラー / レガート 終了
- 音楽トラック
- FB xx
- キートランスポーズ相対指定
- トラック
- FC xx yy
- ビブラート設定 2
- トラック
- FD xx yy
- ディチューン
- トラック
- FE xx [...] [y1 ... [00] ... yn ... [00]] 00
- 内部データ設定
- 全体
- FF xx yy
- 音楽 音量・キーオフ設定
- 音楽トラック
シーケンスコマンド
00-B3キーオントラック
DA・E1・E2 コマンドで設定されるオクターブ、このコマンドに対応した値と FB コマンドのトランスポーズ値、DB コマンドで設定される微調整値 1·2 でピッチを計算し、キーオンします。
コマンドに対応したティック数だけ待機します。
F1 コマンドで演奏終了、または次に処理する 00-D1 コマンドがタイ以外の場合は、(コマンドに対応した数値 − FF コマンドで設定した値) ティック後にキーオフします。
チャネル (DSP Voice) の Volume・Pitch 計算フラグがオンになります。
チャネル (DSP Voice) の Source Number・ADSR(1·2)・DD コマンドの GAIN の値が設定されます。
音長 | 1 | 2. | 2 | 4. | 3 | 4 | 8. | 6 | 8 | 12 | 16 | 24 | 32 | 48 | 64 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
C | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E |
C# | 0F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D |
D | 1E | 1F | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 2A | 2B | 2C |
D# | 2D | 2E | 2F | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 3A | 3B |
E | 3C | 3D | 3E | 3F | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 4A |
F | 4B | 4C | 4D | 4E | 4F | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 |
F# | 5A | 5B | 5C | 5D | 5E | 5F | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 |
G | 69 | 6A | 6B | 6C | 6D | 6E | 6F | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 |
G# | 78 | 79 | 7A | 7B | 7C | 7D | 7E | 7F | 80 | 81 | 82 | 83 | 84 | 85 | 86 |
A | 87 | 88 | 89 | 8A | 8B | 8C | 8D | 8E | 8F | 90 | 91 | 92 | 93 | 94 | 95 |
A# | 96 | 97 | 98 | 99 | 9A | 9B | 9C | 9D | 9E | 9F | A0 | A1 | A2 | A3 | A4 |
B | A5 | A6 | A7 | A8 | A9 | AA | AB | AC | AD | AE | AF | B0 | B1 | B2 | B3 |
ティック数 | C0 | 90 | 60 | 48 | 40 | 30 | 24 | 20 | 18 | 10 | 0C | 08 | 06 | 04 | 03 |
B4-C2休符トラック
コマンドに対応したティック数だけ待機します。
音長 | 1 | 2. | 2 | 4. | 3 | 4 | 8. | 6 | 8 | 12 | 16 | 24 | 32 | 48 | 64 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
休符 | B4 | B5 | B6 | B7 | B8 | B9 | BA | BB | BC | BD | BE | BF | C0 | C1 | C2 |
ティック数 | C0 | 90 | 60 | 48 | 40 | 30 | 24 | 20 | 18 | 10 | 0C | 08 | 06 | 04 | 03 |
C3-D1タイトラック
コマンドに対応したティック数だけ待機します。
F1 コマンドで演奏終了、または次に処理する 00-D1 コマンドがタイ以外の場合は、(コマンドに対応した数値 − FF コマンドで設定した値) ティック後にキーオフします。
音長 | 1 | 2. | 2 | 4. | 3 | 4 | 8. | 6 | 8 | 12 | 16 | 24 | 32 | 48 | 64 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
タイ | C3 | C4 | C5 | C6 | C7 | C8 | C9 | CA | CB | CC | CD | CE | CF | D0 | D1 |
ティック数 | C0 | 90 | 60 | 48 | 40 | 30 | 24 | 20 | 18 | 10 | 0C | 08 | 06 | 04 | 03 |
D3音長(待機時間)設定トラック
D3 xx
xx : 音長(待機時間)(0x00 〜 0xFF)
xx が 0 以外の値の場合、次に実行するキーオン・タイ・休符コマンドの(更に次のコマンドを実行するまでの)待機時間が、コマンド対応した値ではなく xx ティックに設定されます。
xx が FF コマンドで設定した値以下であればキーオフせず、FF コマンドで設定した値より大きい場合は通常のキーオン・タイ・休符コマンドと同じ設定になります。
D8ビブラート設定トラック
D8 xx yy zz
xx : ディレイ (0x00 〜 0xFF)
yy : 周期 (0x00 〜 0xFF)
zz : 揺れの大きさ (0x00 〜 0xFF)
音楽
キーオンから X ティック後と、以降は約 4.5 × Y ㎳ 毎に音程が変化し続けます。
効果音
キーオンから X ティック後と、以降は約 3.06 × Y ㎳ 毎に音程が変化し続けます。
E8 コマンド (または yy に 0 か 1 を指定) で解除されます。
FC コマンドで揺れ方と揺れが大きくなる回数を設定可能です。
xx | X |
---|---|
0xFF 以外 | xx |
0xFF | 0 |
yy | Y0 | Y |
---|---|---|
0x00 - 0x01 | 無効 | - |
0x02 - 0xFF | ⌊yy / 2⌋ | Y0 + 1 |
X | 0 | 2 | 4 |
---|---|---|---|
処理回数 | ピッチ変化 | ||
0 | ± 0 | ||
1 | + P' / 256 | + ⌊P' × ⌊D × min(1, Y) / 8⌋ / 256⌋ | |
2 | ± 0 | − ⌊P' × ⌊D × min(1, Y) / 8⌋ / 256⌋ | |
3 | + ⌊P' × ⌊D × min(2, Y) / 8⌋ / 256⌋ | ||
4 | ± 0 | − ⌊P' × ⌊D × min(2, Y) / 8⌋ / 256⌋ | |
5 | + ⌊P' × ⌊D × min(3, Y) / 8⌋ / 256⌋ | ||
6 | ± 0 | − ⌊P' × ⌊D × min(3, Y) / 8⌋ / 256⌋ | |
7 | + ⌊P' × ⌊D × min(4, Y) / 8⌋ / 256⌋ | ||
8 | ± 0 | − ⌊P' × ⌊D × min(4, Y) / 8⌋ / 256⌋ | |
9 | + ⌊P' × ⌊D × min(5, Y) / 8⌋ / 256⌋ | ||
10 | ± 0 | − ⌊P' × ⌊D × min(5, Y) / 8⌋ / 256⌋ | |
11 | + ⌊P' × ⌊D × min(6, Y) / 8⌋ / 256⌋ | ||
12 | ± 0 | − ⌊P' × ⌊D × min(6, Y) / 8⌋ / 256⌋ | |
13 | + ⌊P' × ⌊D × min(7, Y) / 8⌋ / 256⌋ | ||
14 | ± 0 | − ⌊P' × ⌊D × min(7, Y) / 8⌋ / 256⌋ | |
15 | + ⌊P' × ⌊D × min(8, Y) / 8⌋ / 256⌋ | ||
16 | ± 0 | − ⌊P' × ⌊D × min(8, Y) / 8⌋ / 256⌋ | |
17 | + ⌊P' × ⌊D × min(8, Y) / 8⌋ / 256⌋ | ||
18 | ± 0 | − ⌊P' × ⌊D × min(8, Y) / 8⌋ / 256⌋ |
DAオクターブ設定トラック
DA xx
xx : オクターブ (0x00 〜 0xFF)
ノート番号計算に使用される値が、xx × 12 に設定されます。計算結果の下位 8 ビットの値が設定されます。
チャネル (DSP Voice) に設定する Pitch の値は下位 14 ビットが有効です。ピッチ微調整値が 0 の場合はノート番号 92 (O7-G#) まで使用可能です。
ノート番号が 124 (O10-E) 以上になる場合は、ピッチを正しく計算できないためオリジナルと異なる値になります。
DB波形選択トラック
DB xx
xx : 波形番号 (0x02 〜 0x21)
波形を選択します。
キーオン時にチャネル (DSP Voice) に設定する ADSR(1·2) の値と、ピッチ微調整に使用する値二つが設定されます。
値が範囲内に収まるかどうかのチェックはありません。
DCキーオン時の音量変化テーブル選択 (Attack)トラック
DC xx
xx : 音量変化テーブル選択 (0x00 〜 )
音楽
キーオン時から約 9 ㎳ 毎の音量倍率変化テーブルを選択します。
効果音
キーオン時から約 6.13 ㎳ 毎の音量倍率変化テーブルを選択します。
倍率が 0 になると (直前の倍率のまま) チャネル (DSP Voice) は ADSR モードから GAIN モード (減少:指数・Gain rate は DD コマンドで設定した値) になります。
xx に 0x11 〜 0x13, 0x19 〜 0x1D, 0x1F のいずれかを設定した場合に倍率が自動的に 0 に設定されません。
FE コマンドでデータを追加可能です。
DEキーオン後に Gain rate が変化するまでの待ち時間指定 (Release)音楽トラック
DE xx
xx : 待ち時間 (0x00 〜 0xFF)
キーオン後にチャネル (DSP Voice) が GAIN モード (既定値 は 減少モード : 指数・0x11) になるまでの待ち時間 (音長に対する割合) を設定します。
GAIN の値は E5 コマンドで変更可能です。減少モード以外も使用可能です。
効果音で使用するとドライバの内部データを破壊します。
xx | 設定値 | 内部値 | ディレイ (ティック数) | Release Rate (最大) |
---|---|---|---|---|
0x00, 0x65 - 0xFF | 100% | 0 | 無効 | 0 |
0x01 - 0x63 | 約 xx% | ⌊256 × xx / 100⌋ | ⌊音長 × 内部値 / 256⌋ - 1 | 約 [256 - 内部値] / 256 |
0x64 | 39.0625% | 100 |
E1オクターブ + 1トラック
E1
ノート番号計算に使用される値が、現在の値 + 12 に設定されます。計算結果の下位 8 ビットの値が設定されます。
E2オクターブ - 1トラック
E2
ノート番号計算に使用される値が、現在の値 - 12 に設定されます。計算結果の下位 8 ビットの値が設定されます。
E3ADSR1 設定トラック
E3 xx
xx : Attack Rate・Decay Rate・動作フラグ (0x80 - 0xFF)
キーオン時にチャネル (DSP Voice) に設定する Attack Rate・Decay Rate・動作フラグ の値を設定します。
ビット 0 - 3 で Attack Rate の値を設定します。
ビット 4 - 6 で Decay Rate の値を設定します。
ビット 7 で ADSR・GAIN モードのどちらを使用するかを設定します。F4G-0 では DD コマンドの GAIN の値は (減少 : 指数) のみ設定可能ですので、1 (ADSR モード) を設定します。
DB コマンドで自動的に設定される値を上書きします。
E4ADSR2 設定トラック
E4 xx
xx : Sustain Level・Sustain Rate (0x00 - 0xFF)
キーオン時にチャネル (DSP Voice) に設定する Sustain Level・Sustain Rate の値を設定します。
ビット 0 - 4 で Sustain Rate の値を設定します。
ビット 5 - 7 で Sustain Level の値を設定します。
DB コマンドで自動的に設定される値を上書きします。
E5GAIN 設定トラック
E5 xx
xx : ソフトウェアエンベロープ Release 時の GAIN (0x00 - 0xFF)
ソフトウェアエンベロープ Release 時にチャネル (DSP Voice) に設定する GAIN の値を設定します。
DC コマンドの音量倍率変化終了時に GAIN モードになりません。更にこのコマンド実行時に DE コマンドの値が 100% に設定されます。
チャネル (DSP Voice) のエンベロープの現在値に xx × 0x10 を設定します。
エンベロープの現在値が一定値減少し続けます。
エンベロープの現在値が指数関数的に減少し続けます。現在値が小さくなると減少量も小さくなります。
エンベロープの現在値が一定値増加し続けます。
エンベロープの現在値が一定値増加し続けます。0x600 を境に増加量が(小さな値に)変化します。
ソフトウェアエンベロープ Sustain と Release を無効にする
xx : GAIN (0x00)
直接指定
xx : GAIN (0x01 - 0x7F)
減少モード : リニア
xx : GAIN (0x80 - 0x9F)
減少モード : 指数
xx : GAIN (0xA0 - 0xBF)
増加モード : リニア
xx : GAIN (0xC0 - 0xDF)
増加モード : 折れ線
xx : GAIN (0xE0 - 0xFF)
曲データ転送直後の値は 0xB1 (減少:指数・Gain rate = 0x11) です。
F1演奏終了トラックノイズクロック
F1
演奏を終了します。
エコー・ノイズ・ピッチモジュレーションが無効になります。
すべての効果音が無演奏状態になった場合、DSP のノイズクロックは音楽の値が設定されます。音楽のノイズクロックの値が変化する可能性がある不具合は修正されています。
効果音
F2音量 設定・変化(Volume)トラック
F2 xx yy zz
yyxx : 処理時間 (0x0000 〜 0xFFFF)
zz : 音量 (0x00 〜 0xFF)
設定
yyxx : 処理時間 (0x0000)
トラック音量の値が zz に設定されます。
DSP Voice の Volume 計算フラグがオンになりません。
変化
yyxx : 処理時間 (0x0002 〜 0xFFFF)
トラック音量が現在の値から zz まで yyxx - 1 ティックで変化します。
変化後の値の整数部が変化前と異なる場合は DSP Voice の Volume 計算フラグがオンになります。
1 回あたりの変化が 1/256 未満になる場合は変化しません。
実行中の F2 コマンド (変化) を中断して実行します。
F3パン 設定・変化音楽トラック
F3 xx yy zz
yyxx : 処理時間 (0x0000 〜 0xFFFF)
zz : パン (0x00 〜 0xFF)
設定
yyxx : 処理時間 (0x0000)
パンの値が zz に設定されます。
DSP Voice の Volume 計算フラグがオンになりません。
変化
yyxx : 処理時間 (0x0002 〜 0xFFFF)
パンの値が現在の値から zz まで yyxx - 1 ティックで変化します。
変化後の値の整数部が変化前と異なる場合は DSP Voice の Volume 計算フラグがオンになります。
1 回あたりの変化が 1/256 未満になる場合は変化しません。
実行中の F3 コマンド (変化) を中断して実行します。
0x00 (左) - 0x80 (中央・モノラル) - 0xFF (右)
効果音トラックから設定すると、音楽のデータを破壊してしまいます。
F6ジャンプ (復帰アドレス退避)音楽トラック
F6 xx yy
yyxx : ジャンプ先 (絶対アドレス)
yyxx : ジャンプ先
このコマンドの次のコマンドのアドレスを保存し、アドレス yyxx までジャンプします。
F7 コマンドで復帰します。
F7復帰音楽トラック
F7
最後に F6 コマンドで保存したアドレスに復帰します。
F8スラー開始音楽トラック
F8
既にキーオンされた状態で次の処理コマンドがキーオンの場合、直前のキーオフ処理とキーオン処理 (DSP フラグ・波形番号・ADSR1・ADSR2・GAIN 設定) を実行せずピッチ変更のみを実行します。
レガートを解除せずにキーオン処理も実行しなくなります。
FA コマンドで解除します。
F9レガート開始音楽トラック
F9
既にキーオンされた状態で次の処理コマンドがキーオンの場合、直前のキーオフ処理を実行しなくなります。
スラーが有効な場合このコマンドは無効になります。
FA コマンドで解除します。
FAスラー / レガート 終了音楽トラック
FA
FBキートランスポーズ相対設定トラック
FB xx
xx : トランスポーズ値変化 (0x80 〜 0x7F)
トランスポーズ値が、現在の値 + xx に設定されます。計算結果の下位 8 ビットの値が設定されます。
曲データ転送直後の値は 0 です。
FCビブラート設定 2音楽トラック
FC xx yy
xx : 揺れ方 (0x00, 0x02, 0x04)
yy : 揺れが大きくなる回数 (0x01 〜 0x08)
D8 コマンドの動作を設定します。
xx で揺れ方を設定します。
yy で揺れが大きくなる回数を設定します。
曲データ転送直後の値は 揺れ方 = 0 、揺れが大きくなる回数 = 8 です。
FDディチューントラック
FD xx yy
xx : ピッチ微調整値 1 (0x80 〜 0x7F)
yy : ピッチ微調整値 2 (0x00 〜 0xFF)
キーオン時に計算されるピッチの値を微調整することができます。
P ≒ ⌊⌊ノート番号に対応したピッチ × (256 + ピッチ微調整値 1) / 256⌋ × (65536 + ピッチ微調整値 2) / 65536⌋
DB コマンドで自動的に設定される値を上書きします。
FE内部データ設定全体
FE xx [...] [y1 ... [00] ... yn ... [00]] 00
xx : 設定する波形データの数 (0x00 -)
y? : 音量倍率データのバイト数 (0x01 -)
xx
DB コマンドで自動的に設定される波形データ数を指定します (波形番号 0x09 -)。
ピッチ微調整値 2・ADSR1・ADSR2 の値を設定します。
曲データ転送直後の波形番号 0x09 - 0x18 の内部データの値は ピッチ微調整値 2 = 0 、ADSR1 = 0xFF 、ADSR2 = 0xE0 です。
設定を上書きしたい場合と 0x19 以上の波形番号を使用する場合は、必ずこのコマンドで初期化してください。
y1 〜 yn
DC コマンドに追加する音量倍率データの数を指定します (データ番号 0x20 -)。
音量倍率データの値に 0 を設定することで倍率変化を終了します。
20 (0x20 - 0x33) までは安全に追加可能です。
キーオン・休符コマンドを実行する前にこのコマンドを実行してください。
例
︙
FE ;波形番号
05 ;09 0A 0B 0C 0D 0E 0F 10 11 12 ;波形番号 0x09 - 0x12 のデータ設定 (0x0E - 0x12 は転送時に初期化済み)
7F 00 A0 00 00;00 00 00 00 00 ;ピッチ微調整値 2
FF FF FF FF FF;FF FF FF FF FF ;ADSR1
E0 E1 EC E8 F0;E0 E0 E0 E0 E0 ;ADSR2
02 FE 00 ;DC [0x20] のデータ設定 (2 バイト) : 音量倍率 = 254
01 AA;00 ;DC [0x21] のデータ設定 (2 - 1 バイト) : 音量倍率 = 170
00 ;ここまで
︙
FF音楽 音量・キーオフ設定音楽トラック
FD xx yy
xx : 音楽音量 (0x01 〜 0x81)
yy : 音楽キーオフ設定 (0x01 〜 0x02)
xx で音楽音量を設定します。チャネル (DSP Voice) の Volume の計算結果が 127 を超える場合は逆位相になります。
yy で次に処理する 00-D1 コマンドがタイ以外の場合に、コマンドに対応した数値の何ティック前にキーオフを実行するか設定します。yy 以下の音長はキーオフされなくなります。
曲データ転送直後の値は 音楽音量 = 72 、音楽キーオフ設定 = 1 です。