| / | コメント |
|---|---|
| .COMMENT 文字列 | 曲タイトル設定 |
| (I) .INITIALIZE |
初期化 |
| (Ach,tr) .ASSIGN tr {ch} (Ach,tr, trkv,trkf,trks,trkm, cmnt) .ASSIGN tr {ch, trkv,trkf,trks,trkm, cmnt} |
トラック宣言&チャンネルアサイン |
| (On) .TEMPO n |
テンポ設定 |
| (Tn1,n2,...) .track n1,n2,…,n8 {...} |
MML書き込みトラック指定 |
|
(Pn1,n2,...) / (P) .play {n1,n2,…,n8} / .play |
演奏制御 |
| .RELATIVE_VELOCITY md | 相対ベロシティMMLの指定 |
.PATTERN name, trkf
{ MML } |
[未実装] パターントラック |
| .INCLUDE filename | ZMSファイル読み込み) |
| (Zn) .MASTER_CLOCK n |
全音符の絶対音長(分解能)設定 |
|---|---|
| .GATETIME_RESOLUTION n | ゲートタイムのレート設定 |
| .OCTAVE_MODE str | オクターブ指定方法の設定 |
| .METER m/n | 拍子設定 |
| .KEY{n,type,m} .KEY str |
調号設定 |
| (Mtr,size) | トラック確保 |
| (Bn) | ベースチャンネル設定 |
| (Dn) | デバッグコマンド有効/無効スイッチ |
| .WAVE_FORM wv,lt,lp{dt0,...,dt65555 } .WAVEFORM wv,lm,ls,le,lt,comment{dt0,dt1,...(,dt4294967295)} |
波形メモリの登録 |
| .LEGACY_*1_TIE n | 音長*1の音をタイと見なすかどうかの設定 |
| .DEFINE %,...{...} | マクロ定義 |
| .HALT n | ウエイト挿入 |
| .CURRENT_MIDI_OUT if | MIDI出力デフォルトインターフェース選択 |
|---|---|
| (Xn1,n2,...) | MIDI生データ (エクスクルーシブメッセージ)送信 |
| .MIDI_DATA if,comment{n1,n2,...} | |
| .EXCLUSIVE if,comment{n1,n2,...} | |
| .ROLAND_EXCLUSIVE dev,mdl,if,comment{n1,n2,...} | ローランド系楽器へのエクスクルーシブメッセージ送信 (モデルIDが1バイトのもの) |
| .ROLAND_EXCLUSIVE2 dev,mdlH,mdlL,if,comment{n1,n2,...} | ローランド系楽器へのエクスクルーシブメッセージ送信 (モデルIDが2バイトのもの) |
| .YAMAHA_EXCLUSIVE dev,mdl,if,comment{n1,...} | ヤマハ系楽器へのエクスクルーシブメッセージ送信 |
| .XG_EXCLUSIVE dev,if,comment {n1,...} | XG音源へのエクスクルーシブメッセージ送信 |
| .MIDI_DUMP mddfilename |
[未実装] MIDIダンプデータ(バルクダンプデータ)送信 |
| .GM_SYSTEM_ON if | GM音源初期化 |
|---|---|
| .GM2_SYSTEM_ON if | GM2音源初期化 |
| .SC88_MODE_SETmd,id,if | SC88のモード設定 |
|---|---|
| .SC88_REVERB id,if{n1,...,n8} | SC88のリバーブパラメータ設定 |
| .SC88_CHORUS id,if{n1,...,n9} | SC88のコーラスパラメータ設定 |
| .SC88_DELAY id,if{n1,...,n11} | SC88のディレイパラメータ設定 |
| .SC88_EQUALIZER id,if{n1,...,n4} | SC88のイコライザパラメータ設定 |
|
.SC88_PART_SETUP pt,id,if{n1,...,n127} .SC88_PART_PARAMETER pt,id{n1,...,n127} |
SC88のパートのパラメータの設定変更 |
| .SC88_DRUM_SETUP map,key,id,if{n1,...,n9} | SC88のドラム・セットアップ設定 |
| .SC88_DRUM_NAME map,id,if str |
[未実装] SC88のドラムセット名の設定 |
| .SC88_USER_INST bk,pgm, id,if {n1,...,n11} |
[未実装] SC88のユーザー音色の設定 |
| .SC88_USER_DRUM st,nt, id,if {n1,...,n12} |
[未実装] SC88のユーザードラムセットの設定 |
|
.XG_SYSTEM_ON id,if .XG_INIT id,if |
XG音源初期化 |
|---|---|
| .XG_EXCLUSIVE id,if,comment {n1,…} | XG音源へのエクスクルーシブメッセージ |
| .XG_PRINT id,if str | XG音源ディスプレイへの文字列表示 |
| .XG_DISPLAY id,if {n1,...,n16} | XG音源グラフィックディスプレイへのドットパターン表示 |
| .XG_EQUALIZER id,if {n1,...,n6} | XG音源5バンド・イコライザ・パターン簡易設定 |
| .DX_BULK_DUMP dev,format No,if, comment {n1,...} | DX7バルクダンプ送信 |
|---|
| .MU100_VOICE_MAP map,id,if | MU100 ボイスマップ選択 |
|---|---|
| .MU100_NATIVE_MAP | MU100 native map選択 |
| .MU100_BASIC_MAP | MU100 basic map(互換map)選択 |
'/'より後ろをコメントとして無視する。
単なるコメント行だが、
'/'と違うのはコンパイルされたデータにも残るという点。
(zmc2/ztomではメタイベントFF03,
sequence nameに変換される)。
曲のタイトル、制作日時、
自分の名前等をZMSファイル先頭に記述するのが一般的。
.COMMENTは1つのZMS内に複数書くことが出来るが、
曲のタイトルとして有効になるのは最初の一つだけである。
Z-MUSICシステムとMIDI楽器に対して初期化メッセージを送出する。 通常、おまじないのように、ZMSの先頭に書くが、 zmc3/zmc3使用時にはシステムの初期化は自動的に行われるため、 下記の音源初期化が不要である場合は特に記述する必要はない。 また、 V3システムでも最低限の初期化は演奏時に行われるためこれまた記述は不要。
MIDI音源に対しての具体的な送信メッセージ内容に関しては以下の通り:
(注意)[V3]やzmc2では、 隠しとして(i2)や(i3)、 .initialize 2や.initialize 3のようにすることで、 自分が想定しているZ-MUSICのバージョンが [V2]か[V3]かを指定できる。 zmc2では、(i3)のように、 [V3]を指定した場合Warningを出す。
トラックtrの使用を宣言しつつ、
チャンネルchをトラックtrへアサインする。
チャンネル番号はベースチャンネル変更コマンドによって、
その対象デバイスが変動する
((Bn)コマンド参照)。
chの部分に規定の文字列を指定することによって
(Bn)コマンドの
影響を受けずに絶対的に指定することも可能である。具体的には以下の通り:
MIDI1〜16 (PORT Aの)MIDIチャンネル1〜16
MIDI1-1〜16 PORT AのMIDIチャンネル1〜16
MIDI2-1〜16 PORT BのMIDIチャンネル1〜16
MIDI3-1〜16 PORT CのMIDIチャンネル1〜16
MIDI4-1〜16 PORT DのMIDIチャンネル1〜16
|
(a1,2) .assign 2 {1} | トラック2の使用を宣言し、チャンネル1へ 割り当てる。 ここでいうチャンネル1とは、(B0)なら FMチャンネル1だし、 (B1)ならMIDIチャンネル1。 |
|
(aMIDI1,3) .assign 3 {MIDI1} | トラック3の使用を宣言し、 (PORT Aの)MIDIチャンネル1へ割り当てる。 |
|
(aMIDI2-3,4) .assign 4 {MIDI2-3} | トラック4の使用を宣言し、 PORT BのMIDIチャンネル3へ割り当てる。 |
ただし、zmc3においてのみ、 この(A...)や.assign ...によるトラック宣言なしで、 いきなり演奏トラックのmmlを書き始めることが可能。 この場合、(AMIDI1,1)(t1) が省略されているものと見なす。
同様に、zmc3についてのみ、 (AMIDIn,n) (トラック番号とチャンネル番号が等しい)を省略可能。
ただし制限があり、このように(AMIDI..)が省略された場合は、 どうも[back..]がうまく機能しないようである。
テンポnを設定する。
設定後、1分間にn個の4分音符を演奏するようになる。
20≦n≦300。
ただし、タイマーAモードの時は77以下は強制的に77となる。
(注意) zmc2ではタイマーの区別はない。 (元のX680x0にはA,Bという二つの演奏タイマーが存在し、 デフォルトのTIMER Bを使う代わりに TIMER Aを使うことで、 より正確にテンポを刻むことができた。 しかし、TIMER A/Bの指定はmml中では行えなかった)
MMLをトラックn1〜n8へ書き込む。n2以降は省略可能。
(注意)zmc2/zmc3では一度に書き込めるトラック数の制限が解除されている。 (Z-MUSIC V2では最大8つだった)。
演奏を開始する。
全パラメータを省略して(P)のみでは全トラックの演奏を開始する。
トラック番号を指定する場合は、そのトラックのみ演奏する。
(注意)zmc2では (Pn1,n2,...)はすべて(p)相当と見なす。 zmc3では同制限なし。
初期状態では_ ~は相対音量のMMLであるが、 これを相対ベロシティとして用いることもできる。 本命令はこの変換についての設定を行うもの。
md=_~ あるいはmd=~_ とすると、 相対ベロシティは _ ~で行うことができるようになる。 一方、md=@U またはmd=U とすると、 相対ベロシティは従来どおりU±n, @U±nで指定することになり、 _~は相対音量の操作MMLとして機能する。
パターントラックを定義する。 パターントラックとは曲中頻繁に使うリズムパターンなどを固有の名前を与えて定義し、 曲中任意に呼び出すことができる演奏トラックのこと。 具体的には、本命令でパターントラックを定義し、MML
で曲中で呼び出す。
nameはパターン名を表し、
これは251文字以内の英数字文字列で指定する。
trkfは
.ASSIGN命令のtrkfに相当するもので、
トラック処理頻度を表す。
設定範囲は1-256で、省略可能。省略時は1が設定される。
filenameで指定したファイルを読み込み、
.INCLUDE文と置換する(挿入する)。
filenameで指定出来るファイルはZMS(ZMC),CNFで、
拡張子省略時は'ZMC'が自動添付される。
全音符の絶対音長を設定する。 (I)コマンドでデフォルト値192が自動設定される(つまり四分音符あたり48ということ)。 通常は設定する必要はない。 1920, 480, 192, 144, 128, 96といった数値を設定するのが一般的。 例えばn=480とすると、四分音符の音長 (Ticks Per Quarter Note, TQPN) は 480÷4=120 となる。
MML Qの最大値 (ゲートタイムの分解能)を設定する。初期設定時は8になっている。 大きな値に設定すれば、より細かなゲートタイム指定が行えるようになる。
オクターブの指定方法の設定を行う。
通常(デフォルト)は> でオクターブが1下がり、< で1上がるが、
.octave_mode NEC
とすることにより、これとは逆に
> でオクターブが1上がり、< で1下がるようになる。
HuBASIC, SHARP, X68k のいずれかを指定した場合は、 デフォルト状態が維持される。
|
備考: > < とオクターブ移動の関係について 世の中の大多数のMMLでは、上記"NEC"でいうところの 「> でオクターブが1上がり、< で1下がる」を採用していますが、 SHARPのパソコンで採用されていた(ハドソンの)HuBASICのMMLではこれが逆になっています。 どちらが意味的に正しいのかというのは分かりませんが、 少なくとも日本国内においては前者の意味づけが多数派であることは間違いないと思います。 Z-MUSICはX680x0のOPMDRV互換であり、 これはHuBASICのMMLが元になっているため、 Z-MUSICコンパチのzmc2/zmc3も、 「> でオクターブが1下がり、< で1上がる」 ようになっています。 # 求むS-BASIC, FMシリーズ/PASOPIA/MSX等々での情報 (笑) |
拍子の設定を行う。 ただし、あくまで演奏データに対する付加情報的な意味合いしか持たず、 演奏に何ら影響を与えるものではない。 一方で、ただし、SMFのメタイベントとしては記録されるため、 プレーヤでの拍子の進行を正しくしたい場合などには、 設定が必須となる。 曲の途中で拍子が変わるような場合は、 代わりに演奏トラック部のMML [METER m/n]を用いればよい。
m/nは、 音楽的な拍子をそのまま分数表現で与えることができる。
調号の設定を行う。 ただし、あくまで演奏データに対する付加情報的な意味合いしか持たず、 演奏に何ら影響を与えるものではない。 ただし、SMFのメタイベントとしては記録されるため、 プレーヤでの調号表示を正しくしたい場合などには、設定が必須となる (気が利くプレーヤなら、C♯な音を短調時D♭と表示してくれるかも知れない)。
曲の途中で転調するような場合は、 代わりに演奏トラック部のMML [KEY ...]を用いればよい。
トラックtrにバッファサイズsizeバイト確保する。
(注意)V3/zmc2ではsizeの大きさの制限はなし。 従って指定自体意味をなさず、 (M...)の記述をすべて省略できる。
ベースチャンネルを設定する。
| n=0 | FM音源基準 | チャンネル番号1〜8がFM音源,9がADPCM,10〜25がMIDIになる |
| n=1 | MIDI音源基準 | チャンネル番号1〜16がMIDI,17〜24がFM音源,25がADPCMになる。 |
(注意: 上記の例は(AMIDI1,2)とすることもでき、 通常こちらの表現が使われるため、 本MML (Bn)はあまり用いられない)
[@],[!],[end]コマンドの有効化/無効化スイッチ。 n=0で無効、n=1で有効となる。
(注意)(Dn)は演奏トラック中に記述しても有効。
これに限らず一般に、
演奏トラック中に共通コマンドを混在させることが可能(zmc2でのみ不可)
波形メモリを登録する。波形番号wvに、 ユーザが自由に波形を登録し、 ピッチモジュレーション(MML @M), ARCC(MML @A), エンハンスドベロシティシーケンス(MML [VELOCITY.DEPTH] (zmc3未実装)), アゴーギク(MML [AGOGIK.DEPTH](zmc3未実装)) にて利用可能。波形は整数で表し、 各要素は離散的な波形構成値と見なされる (各要素間の補間はなされない)。 ちなみに波形番号0〜7はプリセット波形などが設定されておりリザーブされている。
lmは、 波形を最後まで処理を終えたあとどうループさせるかを設定するもの。
| 0 (1SHOT) | → | ワンショット (波形を一度実行したら最後の値を継続する) |
| 1 (REPEAT) | →→→→.... | リピート (波形の終点までいったならばループポイントに戻る) |
| 2 (ALTERNATE) | →←→←.... | オルタニティヴ (波形のループ開始点から終点まで交互に反復する) |
lsは、 何番目のデータをループ開始点に設定するかを決めるパラメータで、 省略すると0、すなわちデータの先頭がループ開始点と見なされる。
leは、 何番目のデータをループ終了点に設定するかを決めるパラメータで、 省略すると最後の波形データの位置が自動的に設定される。
ltはループ回数を表し、 ループ領域を何回ループさせるかを設定する。 0を指定した場合または省略時には、無限ループと見なされる。
commentは、その波形に対するコメントで、 '{'を含まない255文字以内の任意の文字列を設定可能。
波形データは符号付き16ビット整数で構成する。 データの個数は65535個まで。それ以上は設定できない。
歴史的な理由により、 Z-MUSIC(V2)ではデフォルトで音長*1の音は常にタイとみなされる。 つまり、下記の2つの例の演奏結果はまったく同じとなる。
一方で、V3では音長*1はタイと見なされない。
zmc2/zmc3では、音長*1をタイと見なすかどうかをユーザーが設定できる。
zmc3では、引数を0, 1とする以外に、
OFF, ONとすることもできる。
V3マクロの説明を別途参照のこと。
共通コマンド部の、この.halt命令が指定された位置で n/60秒待つコマンド。 GSリセット直後など、ウエイトが必要となる部分で入れると良い。
nが省略された場合には、 無条件でnに60が指定されたものと解釈する。 つまり、1秒待つ。
(注) 元々オリジナルのV3では、
マニュアルに説明が記載されていないものの、
上記のような機能を普通に使うことができた。
要するに、隠しMML的なもの。
ただし、オリジナルのV3での機能は、「n回分垂直同期を待つ」であり、
正確にはzmc3に実装された機能とは異なる。
MIDI出力を行う際のデフォルトインターフェースを選択する。 MIDI入出力関連命令のほぼすべてに送受対象インターフェースを指定出来るようになっているが、 この指定を省略した場合や[V2] ZMSコマンドなどの一部の送受対象インターフェースを指定出来ない命令を使用した時に、 本命令によって設定されたインターフェースがデフォルトとして選択される。 [V3]では .CURRENT_MIDI_OUTで設定したインターフェースをカレントMIDI-OUTインターフェースと呼ぶ。
MIDIの生データを送信。 パラメータをいくつでも書くことが出来る ((X..)以外は複数行に渡っても可)。 データに128以上を指定すると、 その値を7ビットごとに分けて下位から送信される。
ローランド系の楽器へエクスクルーシブメッセージを送る。 複数行に分けて記述可能。 エクスクルーシブ・ヘッダやチェックサム・バイトは自動生成して送信してくれる。
ローランド系の楽器へエクスクルーシブメッセージを送る。 基本的には .ROLAND_EXCLUSIVE と同じだが、 モデルIDが2バイトになっている点が異なる。
XV-5080やSD-90、Fantomシリーズなど、 近年の楽器は、モデルIDが2バイトになっているものがあり、 それに対応したもの。
なお、 .ROLAND_EXCLUSIVE2 は使用可能だが、 [ROLAND_EXCLUSIVE2] はまだないので注意。
ヤマハ製のMIDI機器へエクスクルーシブメッセージを送信する。
エクスクルーシブヘッダや転送バイト数・チェックサムは、
送信メッセージ内容から自動算出し自動送信する。なお送信の際、
使用するヤマハエクスクルーシブタイプはバルクダンプである。
なお、
XG専用命令の項を参照のこと。
ファイルネームfilenameのFORMAT0のスタンダードMIDIファイルをMIDIポートifに送信する。
FORMAT1,FORMAT2のスタンダードMIDIファイルを送信することはできない。
filenameの拡張子省略時には ([V2]との互換性保持のため) '.MDD'が自動添付される。スタンダードMIDIファイルの場合は '.MID'や'.SMF'といった拡張子を明記する必要がある。
ifを省略した場合は .current_midi_outで選択したカレントMIDIポートへ出力される。
GM音源の初期化を行う。
ifを省略した場合は
.current_midi_outで選択したカレントMIDIポートへ出力される。
GM2音源の初期化を行う。
ifを省略した場合は
.current_midi_outで選択したカレントMIDIポートへ出力される。
GS音源の初期化を行う。
{...}内のパラメータは必ず16個設定しなくてはならない。
パラメータ各値の総和は音源の同時発音数以内に収める必要がある。
また、10番目のパラメータはリズムパートに相当する。
パラメータは119個まで。
パラメータは8個まで。
GS音源のコンソールに文字列を表示する。
GS音源のSC55のグラフィックディスプレイにドットパターンを表示する。 パラメータは必ず16個。
.sc55_display $10 { %0001000000010000
%0000100000100000
%0111111111111100
%0000000100000000
%0011111111111000
%0000000100000000
%0111111111111100
%0001000100010000
%0000100100100000
%1111111111111110
%0000000000000000
%0011111111111000
%0010000000001000
%0010000000001000
%0011111111111000
%0010000000001000 }
SC88のモード設定を行う。
mdはモード値を表し、md=
0
1
でsingleモード、
md=
1
2
でdoubleモードが設定される。
zmc3の場合、1,2の代わりにsingle, doubleでも同様の指定が可能。
注: 本家Z-MUSIC V3のマニュアルでは
0,1で指定する旨記載されているが、1,2の誤り。
# 以前はこのマニュアル自体も間違えてました。すみません・・・
大枠は.sc55_reverbと同じ。 パラメータn8がREVERB PRE-DELAY TIMEとなっている点が異なる。
大枠は.sc55_chorusと同じ。 パラメータn9がCHORUS SEND LEVEL TO DELAYとなっている点が異なる。
パラメータは4個で、それぞれ
| パラメータ | 名称 | 指定可能値 | 意味 |
|---|---|---|---|
| n1 | EQ LOW FREQ | 0,1 | 200Hz,400Hz |
| n2 | EQ LOW GAIN | $34〜$4c | -12〜+12dB |
| n3 | EQ HIGH FREQ | 0,1 | 3kHz,6kHz |
| n4 | EQ HIGH GAIN | $34〜$4c | -12〜+12dB |
おおむね.sc55_part_setupと同じ。
MIDIポートifに接続されたSC88のドラム・セットアップの設定を行う。
パラメータ(n1〜n9)は9個まで任意の個数設定可能。
| パラメータ | 名称 | 指定可能値 | 意味 |
|---|---|---|---|
| n1 | PLAY KEY NUMBER | 0〜127 | |
| n2 | LEVEL | 0〜127 | |
| n3 | ASSIGN GROUP NUMBER | 0:NON, 1〜127 | 複数音色をグループ化するときのグループ番号(ハイハットのオープンとクローズなど、排他的な鳴り方をする音色用) |
| n4 | PANPOT | 0:RANDOM, 0(LEFT)〜64〜127(RIGHT) | |
| n5 | REVERB DEPTH | 0〜127: 0.0〜1.0 | |
| n6 | CHORUS DEPTH | 0〜127: 0.0〜1.0 | |
| n7 | Rx NOTE OFF | 0〜1: OFF/ON | NOTE OFFを受信するか無視するか |
| n8 | Rx NOTE ON | 0〜1: OFF/ON | NOTE ONを受信するか無視するか |
| n9 | DELAY SEND LEVEL | 0〜127: 0.0〜1.0 |
MIDIポートifに接続されたSC88のドラムセット名の設定を行う。
mapはマップナンバーを表し設定範囲は0,1。
ユーザードラムセットの名前を設定する場合には、
USER65,またはUSER66という文字列を与えて指定する。
strはドラムセット名を表す文字列で、
"〜"で括り12文字以内で指定する。
MIDIポートifに接続されたSC88ユーザー音色の設定を行う。
bkは設定先音色バンク番号を表し、設定範囲は0,1。
bk=0がバリエーション番号64,
bk=1がバリエーション番号65に対応する。
パラメータ(n1〜n11)は、
11個まで任意の個数設定可能。
| パラメータ | 名称 | 指定可能値 | 意味 |
|---|---|---|---|
| n1 | SOURCE TONE#(MAP) | 1,2 | |
| n2 | BANK NUMBER MSB | 0〜127 | |
| n3 | PROGRAM NUMBER | 1〜128 | |
| n4 | Vibrato rate | $00〜$7f: -64〜+63 | |
| n5 | Vibrato depth | $00〜$7f: -64〜+63 | |
| n6 | TVF cutoff freq. | $00〜$7f: -64〜+63 | |
| n7 | TVF resonance | $00〜$7f: -64〜+63 | |
| n8 | TVF&TVA Env.attack | $00〜$7f: -64〜+63 | |
| n9 | TVF&TVA Env.decay | $00〜$7f: -64〜+63 | |
| n10 | TVF&TVA Env.release | $00〜$7f: -64〜+63 | |
| n11 | Vibrato delay | $00〜$7f: -64〜+63 |
MIDIポートifに接続されたSC88のユーザードラムセットの設定を行う。
パラメータ(n1〜n12)は12個まで任意の個数設定可能。
| パラメータ | 名称 | 指定可能値 | 意味 |
|---|---|---|---|
| n1 | PLAY KEY NUMBER | 0〜127 | |
| n2 | LEVEL | 0〜127 | |
| n3 | ASSIGN GROUP NUMBER | 0:NON, 1〜127 | 複数音色をグループ化するときのグループ番号(ハイハットのオープンとクローズなど、排他的な鳴り方をする音色用) |
| n4 | PANPOT | 0:RANDOM, 0(LEFT)〜64〜127(RIGHT) | |
| n5 | REVERB DEPTH | 0〜127: 0.0〜1.0 | |
| n6 | CHORUS DEPTH | 0〜127: 0.0〜1.0 | |
| n7 | Rx NOTE OFF | 0〜1: OFF/ON | NOTE OFFを受信するか無視するか |
| n8 | Rx NOTE ON | 0〜1: OFF/ON | NOTE ONを受信するか無視するか |
| n9 | DELAY SEND LEVEL | 0〜127: 0.0〜1.0 | |
| n10 | SOURCE DRUM SET#(MAP) | 1, 2 | |
| n11 | PROGRAM NUMBER | 0〜127 | |
| n12 | SOURCE NOTE NUMBER | 0〜127 |
MIDIポートifに接続されたXG音源の初期化を行う。 idはXG音源のデバイスIDで省略可能、省略時は$10。
XG音源へエクスクルーシブメッセージを送信する。 エクスクルーシブ・ヘッダは自動送信する。
なお、送信の際、 使用するヤマハ・エクスクルーシブ・タイプはパラメータチェンジ。
commentをつけることで、 '{'以外の255文字を用いて送信内容に関する注釈を与えることが出来る (省略可能)。
MIDIポートifに接続されたXG音源のディスプレイに文字列を表示する。 文字列strは"〜"で括り32文字以内に収めなければならない。
MIDIポートifに接続されたXG音源のグラフィックディスプレイにドットパターン(16x16)を表示する。 パラメータ(n1〜n16)は必ず16個。
.XG_DISPLAY $10 { %0001000000010000
%0000100000100000
%0111111111111100
%0000000100000000
%0011111111111000
%0000000100000000
%0111111111111100
%0001000100010000
%0000100100100000
%1111111111111110
%0000000000000000
%0011111111111000
%0010000000001000
%0010000000001000
%0011111111111000
%0010000000001000 }
MIDIポートifに接続されたXG音源(5バンドEQ搭載機種)のイコライザ・パラメータの設定を行う。 パラメータ(n1〜n6)は6個以内で任意の個数設定可能。 n1については、数値指定だけなく文字列による指定も可能。
ヤマハ製のMIDI機器であるDX7に対してエクスクルーシブメッセージ (特にバルクダンプ)を送信する。 エクスクルーシブヘッダや転送バイト数・チェックサムは、 送信メッセージ内容から自動算出し自動送信する。
DX7のバルクダンプに限っては、 ヤマハの通常の音源のエクスクルーシブメッセージ仕様と若干異なる (チェックサムにバイトカウントを含まない) ため、 .YAMAHA_EXCLUSIVE では正しいデータを送信できない。 .EXCLUSIVEでしのぐか、 代わりにこれを用いること。
主に、 XG音源のDX7プラグインボードの音色設定のために用いられることとなるだろう。
.mu100_basic_mapと.mu100_native_mapは それぞれMU basic map, MU native mapを選択する。
.mu100_voice_mapはmapで MU100のキャピタル音色のボイスマップを選択し、 map=0でMU basicマップ、 map=1でMU100Nativeマップが設定される。 map=0, map=1の代わりにそれぞれ map=basic, map=native としてもよい。