エクスクルーシブ

エクスクルーシブとは、MIDI機器のさまざまなコントロールが行えます。
GSフォーマットでは、エクスクルーシブを使用する事によって、演奏モードや各種
音色パラメーターの設定を変更することができます。また、GSフォーマットで規定
されているエクスクルーシブは、SC-88シリーズやSC-88Proで拡張された部分を
除いて共通化されていますので、機種の違いに関係なくすべてのGS音源で
使用できます。

ただ、このコンテンツは、SC-88Proを主体に作ってあります。


入力方法

例)パート9をドラム・パート(MAP2)に設定するエクスクルーシブを使って説明します。

【SysEx】
F0 41 10 42 12 40 19 15 02 10 F7
@ A B C D E F G H

このうち@〜DとHはSC-88Proでエクスクルーシブを使うための「決まり文句」です。
重要なのはEの「アドレス」、Fの「データ」だけです。
Gの「チェックサム」は「アドレス」と「データ」の内容できまります。

@ F0 エクスクルーシブ・ステータス
エクスクルーシブの始まりを示します。。ここからエンド・オブ・エクスクルーシブ(F7H)
までが1つの「エクスクルーシブ・メッセージ」です。
A 41 メーカーID
メーカーを示すIDで、41HはRolandです。
これ以降、エンド・オブ・エクスクルーシブ(F7H)まではRoland独自の形式データです。
(ちなみにYAMAHAは43H、コルグは42H、KAWAIは40H、カシオは44Hです)
B 10 デバイスID
同一のMIDI系統内で複数のGS音源を使う場合、
各音源の「デバイスID」を変更しておくことで、個別にエクスクルーシブを伝える事ができます。
通常、初期設定値の10H(10進数で17)で使用します。
C 42 モデルID
機種を示すIDです。SC-88Proでは「42H(GS音源を表す)」を使います。
ただし、ディスプレイ・データ送信時のみ、例外的に「45H」を使用します。
D 12 コマンドID
このエクスクルーシブの働きを表しています。
この例の「12」は「GS音源にデータを送る」という意味の「データ・セット1(DT1)」。
SC-88Proでは、これさえ覚えておけばOKです。
E 40 アドレス
ローランド・エクスクルーシブでは音源をコントロールする個々の機能に
固有のアドレス(番地)を儲け、それらに対してデータを伝える「アドレス・マッピング方式」
が使われています。この例の「40 19 15」は、パート9をドラム・パートにするか、
通常の楽器用パートにするかを決めるアドレスです。アドレスの長さは3バイトで固定です。
19
15
F 02 データ
設定した機能に対するデータです。
この例の「02」は「ドラム・パート(MAP2)」を表しています。
データ部分の長さ(バイト数)は、データのないようにより異なります。
G 10 チェックサム
エクスクルーシブのデータが正しく転送されたことを確認するために付ける検算用のデータです。
GS音源は、この数値と実際に送られてきたデータを照らし合わせ、一致しない場合は
転送が正しく行われなかったと判断して操作を反映しません。
これにより誤作動を防いでいます。
H F7 エンド・オブ・エクスクルーシブ
エクスクルーシブの終わりを示すデータ


チェックサム
 GS音源のエクスクルーシブには、データが正しく転送されたことを確認するための
検算用データ「チェックサム」を付加することになっています。

 SC-88Proはエクスクルーシブのアドレス値、データ値、チェックサムの値の
合計を128で割って、余りがゼロになれば「正しく転送が行われた」と判断します。
 つまり、「それ自身とアドレス、データを足したときに」、「128で割り切れる」、
「00〜F7の間の数値」がチェックサムの値になります。


チェックサムの計算方法
 パート9をドラム・パート(MAP2)に設定する場合のエクスクルーシブで、
チェックサムの計算をしてみたいと思います。
ここでは、エクスクルーシブは16進数なので、16進数の数値には、後ろにHを付けます。

チェックサムの計算範囲
アドレス データ チェックサム
F0H 41H 10H 42H 12H 40H 19H 15H 02H 今回求める数値 7FH

@まず、アドレスからデータまでの値を10進数に変換して合計します。
40H+19H+15H+02H
=64+25+21+2
=112

Aこれを128で割った余りを求めます。
112÷128=0・・・112(余り)

B128から余りを引く(これがチェックサムの値)。
128-112=16

C16進数に戻す。
16=10H

答え(チェックサム)=10H


GSリセット
 GSリセットは、機器の内部設定をGSの初期状態にリセットするコマンド・メッセージです。

【SysEx】:F0 41 10 42 12 40 00 7F 00 41 F7


GMシステム・オン
 「GM1 システム・オン」は、機器の内部設定をGMの初期状態にリセットするコマンド・メッセージです。
これを受信したGM機器は、GMスコアを正しく演奏できる状態に自動的になります。

【SysEx】:F0 7E 7F 09 01 F7