User Manual
フォーマット詳細
373
DM2000 Version 2―取扱説明書
[NRPN]が選択されている場合、決められたパラメーターを操作したと
きに[Control Change Tx]がONであれば[Tx CH]のチャンネルで
NRPNのコントロール番号(62h,63h)とDATA ENTRYのコントロー
ル番号(06h, 26h)の4つのメッセージを使って送信します。パラメー
ターの設定はCONTROL CHANGE ASSIGN PARAMETER LISTに
規定します。
なお、StudioManagerへはTABLE等の内容が一致している保証がな
いためProgram Changeを使った送信は行ないません(常に
Parameter Changeが用いられます)。
[TABLE]を選択した場合
Control Valueをパラメーターデータに変換する計算式
paramSteps= paramMax - paramMin + 1;
add = paramWidth / paramSteps;
mod = paramWidth - add * paramSteps;
curValue = parm * add + mod / 2;
(1) アサインしたパラメーターが128step未満の場合
paramWidth = 127; rxValue = Control value;
(2) アサインしたパラメーターが128step以上16384step未満の場
合
paramWidth = 16383;
(2-1) High, Lowの両方のデータを受信した場合
rxValue = Control value (High) * 128 + Control value (Low);
(2-2) Lowのデータだけを受信した場合
rxValue = (curValue & 16256) + Control value (Low);
(2-3) Highのデータだけを受信した場合
rxValue = Control value (High) * 128 + (curValue & 127);
(3) アサインしたパラメーターが16384step以上2097152step未
満の場合
paramWidth = 2097151;
(3-1) High, Middle, Lowすべてのデータを受信場合
rxValue = Control value (High) * 16384 + Control value (Middle)
* 128 + Control value (Low);
(3-2) Lowのデータだけを受信した場合
rxValue = (curValue & 2097024) + Control value (Low);
(3-3) Middleのデータだけを受信した場合
rxValue = (curValue & 2080895) + Control v alue (Middle) *
128;
(3-4) Highのデータだけを受信した場合
rxValue = (curValue & 16383) + Control value (High) * 16384;
(3-5) Middle, Lowの2つのデータを受信した場合
rxValue = (curValue & 2080768) + Control v alue (Middle) *
128 + Control value (Low);
(3-6) High, Lowの2つのデータを受信した場合
rxValue = (curValue & 16256) + Control value (High) * 16384
+ Control value (Low);
(3-7) High, Middleの2つのデータを受信した場合
rxValue = (curValue & 127) + Control value (High) * 16384 +
Control value (Middle) * 128;
if ( rxValue > paramWidth)
rxValue = paramWidth;
param = ( rxValue - mod / 2) / add;
[NRPN]を選択した場合
*1) 2番目以降のSTATUSは送信時には特につける必要はない。また、受信時
はあってもなくても受信するべきである。
4. PROGRAM CHANGE (Cn)
《受信 》
[Program Change ECHO]がONの場合にはECHOします。
[Program Change RX]がONで、[Rx CH]が一致した場合に受信しま
す。ただし[OMNI]がONの場合にはチャンネルに関わらず受信します。
受信すると[Program Change Table]の設定に従って、シーンメモ
リーをリコールします。
《送信 》
[Program Change TX]がONであれば、シーンメモリーがリコールさ
れたときに[Program Change Table]の設定に従って、[Tx CH]の
チャンネルで送信します。
リコールしたシーンが複数のProgram numberに割り当てられている
場合は、一番小さいProgram numberで送信します。なお、
StudioManagerへはTABLE等の内容が一致している保証がないため
Program Changeを使った送信は行ないません(常にParameter
Changeが用いられます)。
5 MIDI TIME CODE QUARTER FRAME
(F1)
《受信 》
[OTHER COMMANDS ECHO]がONの場合にはECHOします。
TIME REFERENCEに設定されているポートから受信した場合は、
AUTOMIXがこれに同期します。
6. SONG POSITION POINTER (F2)
《受信 》
AUTOMIXのTIME REFERENCE設定がMIDI CLOCKになっている
ときに受信すると、送られてきたSONG POSITIONにAUTOMIXを移
動します。
7. TIMING CLOCK (F8)
《受信 》
AUTOMIXのTIME REFERENCE設定がMIDI CLOCKになっている
ときにはAUTOMIXの同期をとります。またエフェクトの制御にも使
われます。4分音符あたり24回送信されてきます。
8. START (FA)
《受信 》
AUTOMIXのTIME REFERENCE設定がMIDI CLOCKに設定されて
いるときに受信して、AUTOMIXをスタートします。実際にはSTART
メッセージを受信してから次にTIMING CLOCKを受信したところか
らスタートします。
9. CONTINUE (FB)
《受信 》
AUTOMIXのTIME REFERENCE設定がMIDI CLOCKに設定されて
いるときに受信して、現在のSong PositionからAUTOMIXを再開し
ます。実際にはCONTINUEメッセージを受信してから次にTIMING
CLOCKを受信したときに再開します。
10. STOP (FC)
《受信 》
AUTOMIXのTIME REFERENCE設定がMIDI CLOCKに設定されて
いるときに受信して、AUTOMIXを停止します。
11. ACTIVE SENSING (FE)
《受信 》
受信後400ms以内に何も受信しなかった場合は、Running Statusの
クリアなどMIDIの通信を初期化します。
STATUS 1011nnnn Bn
Control change
DATA 0nnnnnnn nn
Control number (0-95, 102-119)
0vvvvvvv vv
Control Value (0-127)
STATUS 1011nnnn Bn
Control changeDATA
01100010 62
NRPN LSB
0vvvvvvv vv
パラメーター番号のLSB
STATUS 1011nnnn Bn
Control change*1
DATA 01100011 63
NRPN MSB
0vvvvvvv vv
パラメーター番号のMSB
STATUS 1011nnnn Bn
Control change*1
DATA 00000110 06
データエントリのMSB
0vvvvvvv vv
パラメーターデータのMSB
STATUS 1011nnnn Bn
Control change*1
DATA 00100110 26
データエントリのLSB
0vvvvvvv vv
パラメーターデータのLSB
STATUS 1100nnnn Cn
Program change
DATA 0nnnnnnn nn
Program number (0-127)
STATUS 1100nnnn F1
Quarter frame message
DATA 0tttdddd td
Type & data
STATUS 11110010 F2
Song position pointer
DATA 0vvvvvvv vv
Song position LSB
0vvvvvvv vv
Song position MSB
STATUS 11111000 F8
Timing clock
STATUS 11111010 FA
Start
STATUS 11111011 FB
Continue
STATUS 11111100 FC
Stop
STATUS 11111110 FE
Active sensing