 |
システム・エクスクルーシブ・メッセージ |
 |
MIDI・イベントでは対応していないパラメーターを変更することができます。
GSやGMのモードに初期化したりする場合にシステム・エクスクルーシブ・メッセージを使用します。
エクスクルーシブ・メッセージは音源によって作成のし方が違いますが、GSフォーマットのエクスクルーシブ・メッセージの作成のし方を例を使って紹介します。
エクスクルーシブ・メッセージは、すべて16進数法で表記します。
例
GSモードでReverb MacroをRoom 3にセットする場合。
F0 41 10 42 12 40 01 30 02 0D F7
F0 |
エクスクルーシブ・ステータス |
41 |
IDナンバー(Roland) |
10 |
デバイスID(dev: 00H - 1FH (1 - 32) 初期設定値は 10H(17)です) |
42 |
モデルID (GS) |
12 |
コマンドID(DT1) |
40 |
アドレスMSB |
01 |
アドレス |
30 |
アドレスLSB |
02 |
データ |
0D |
チェックサム |
F7 |
EOX (エンド・オブ・エクスクルーシブ) |
このようにエクスクルーシブ・メッセージを作成します。またローランドのエクスクルーシブ・メッセージは、メッセージが正しく受信できているかどうかのチェックを行なうために、データの後ろ(F7の前)にチェックサムを付けてメッセージを送ります。チェックサムの値は、送られるエクスクルーシブ・メッセージのアドレス、データ(またはサイズ)によって決まります。
チェックサムの計算式は
aa + bb + cc + dd + ee + ff = sum
sum ÷ 128 = quotient(商)・・remainder(剰余)
128 − remainder = checksum
それでは、上の例(Reverb MacroをRoom 3にセット)を使ってチェックサムの計算のしかたを紹介します。
(16進表記の数字の後ろには、Hをつけています。)
チェックサムは、アドレス、サイズ、およびチェックサム自身を加算した値の下位7ビットがゼロになる値です。
F0 41 10 42 12 40 01 30 02 ?? F7
このチェックサムを計算するには
40H + 01H + 30H + 02H = 64 + 1 + 48 + 2 = 115(sum)
115(sum) ÷ 128 = 0(quotient)・・115(remainder)
checksum = 128 − 115(remainder) = 13 = 0DH
となります。
F0 41 10 42 12 40 01 30 02 0D F7
(クオリティーの高いサウンドを求めると、エクスクルーシブ・メッセージは、必要不可欠になります)
10進数と16進数の対応表(16進数表記の数字の後ろにはHをつけています)。
10進 |
16進 |
10進 |
16進 |
10進 |
16進 |
10進 |
16進 |
0 |
00H |
32 |
20H |
64 |
40H |
96 |
60H |
1 |
01H |
33 |
21H |
65 |
41H |
97 |
61H |
2 |
02H |
34 |
22H |
66 |
42H |
98 |
62H |
3 |
03H |
35 |
23H |
67 |
43H |
99 |
63H |
4 |
04H |
36 |
24H |
68 |
44H |
100 |
64H |
5 |
05H |
37 |
25H |
69 |
45H |
101 |
65H |
6 |
06H |
38 |
26H |
70 |
46H |
102 |
66H |
7 |
07H |
39 |
27H |
71 |
47H |
103 |
67H |
8 |
08H |
40 |
28H |
72 |
48H |
104 |
68H |
9 |
09H |
41 |
29H |
73 |
49H |
105 |
69H |
10 |
0AH |
42 |
2AH |
74 |
4AH |
106 |
6AH |
11 |
0BH |
43 |
2BH |
75 |
4BH |
107 |
6BH |
12 |
0CH |
44 |
2CH |
76 |
4CH |
108 |
6CH |
13 |
0DH |
45 |
2DH |
77 |
4DH |
109 |
6DH |
14 |
0EH |
46 |
2EH |
78 |
4EH |
110 |
6EH |
15 |
0FH |
47 |
2FH |
79 |
4FH |
111 |
6FH |
16 |
10H |
48 |
30H |
80 |
50H |
112 |
70H |
17 |
11H |
49 |
31H |
81 |
51H |
113 |
71H |
18 |
12H |
50 |
32H |
82 |
52H |
114 |
72H |
19 |
13H |
51 |
33H |
83 |
53H |
115 |
73H |
20 |
14H |
52 |
34H |
84 |
54H |
116 |
74H |
21 |
15H |
53 |
35H |
85 |
55H |
117 |
75H |
22 |
16H |
54 |
36H |
86 |
56H |
118 |
76H |
23 |
17H |
55 |
37H |
87 |
57H |
119 |
77H |
24 |
18H |
56 |
38H |
88 |
58H |
120 |
78H |
25 |
19H |
57 |
39H |
89 |
59H |
121 |
79H |
26 |
1AH |
58 |
3AH |
90 |
5AH |
122 |
7AH |
27 |
1BH |
59 |
3BH |
91 |
5BH |
123 |
7BH |
28 |
1CH |
60 |
3CH |
92 |
5CH |
124 |
7CH |
29 |
1DH |
61 |
3DH |
93 |
5DH |
125 |
7DH |
30 |
1EH |
62 |
3EH |
94 |
5EH |
126 |
7EH |
31 |
1FH |
63 |
3FH |
95 |
5FH |
127 |
7FH |