[共通事項]
ch はMIDIチャネルで、 : コマンドで設定したものが使われます。
GS専用のSysExは、実データのmk dv md cmに当たる部分を事前にセッティングレジスタ#8~#11で設定しておく必要があります。(ディフォルトのmk=&41,dv=&10,md=&42,cm=&12でよければ設定不要)
csの部分はチェックサムとなっており、自動で計算されます。
XG専用のSysExは、実データのmk dv mdに当たる部分を事前にセッティングレジスタ#8~#11で設定しておく必要があります。
コマンドの引数にfl,fhのあるSysExは、同じ設定値を複数のMIDIチャネルに書き込むことができ、flを下位ビットからch1~8, fhを下位ビットからch9~16として、対応するビットが1になっているもののみが対象となります。
ビットの概念がよく解からないときは、引数を2進数で指定するといいでしょう。
flの部分を .00000000 とすると下の桁から順にch1~8に対応し、0でoff,1でonという指定ができるようになります。例えば、.00011010 とした場合は ch2,4,5 が対象となります。(fhも同様にしてch9~16に対応する)
コマンド | $0,n1[,n2][,...] |
実データ | F0 7E 7F n1 [n2] [...] F7 |
コマンド | $1,n1[,n2][,...] |
実データ | F0 7F 7F n1 [n2] [...] F7 |
コマンド | $2,n1[,n2][,...] |
実データ | F0 mk dv md cm n1 [n2] [...] cs F7 |
コマンド | $3,n1[,n2][,...] |
実データ | F0 mk dv md n1 [n2] [...] F7 |
コマンド | $4,mode |
実データ | (mode==0) F0 7E 7F 09 02 F7 (mode==1) F0 7E 7F 09 01 F7 (mode==2) F0 7E 7F 09 03 F7 |
コマンド | $5,mode |
実データ | (mode==0) F0 mk dv md 12 40 00 7F 7F cs F7 (mode==1) F0 mk dv md 12 40 00 7F 00 cs F7 (mode==2) F0 mk dv md 12 00 00 7F 00 cs F7 (mode==3) F0 mk dv md 12 00 00 7F 01 cs F7 |
コマンド | $6,mode |
実データ | (mode==0) F0 mk dv md 00 00 7E 00 F7 (mode==1) F0 mk dv md 00 00 7F 00 F7 |
コマンド | $7,set |
実データ | F0 mk dv md 00 00 7D set F7 |
コマンド | $8,reg,val |
実データ | F0 7F 7F 04 05 01 01 01 01 01 reg val F7 |
コマンド | $9,reg,val |
実データ | F0 7F 7F 04 05 01 01 01 01 02 reg val F7 |
コマンド | $10,set,reg,val |
実データ | F0 7F 7F 09 set ch reg val F7 |
コマンド | $11,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 01 (30+reg) n1 [n2] [...] cs F7 |
コマンド | $12,n1,n2,...,n7 |
実データ | F0 mk dv md 12 40 01 31 n1 cs F7 F0 mk dv md 12 40 01 32 n2 cs F7 |
コマンド | $13,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 01 (38+reg) n1 [n2] [...] cs F7 |
コマンド | $14,n1,n2,...,n8 |
実データ | F0 mk dv md 12 40 01 39 n1 cs F7 F0 mk dv md 12 40 01 3A n2 cs F7 |
コマンド | $15,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 01 (50+reg) n1 [n2] [...] cs F7 |
コマンド | $16,n1,n2,...,n10 |
実データ | F0 mk dv md 12 40 01 51 n1 cs F7 F0 mk dv md 12 40 01 52 n2 cs F7 |
コマンド | $17,n1,n2,...,n16 |
実データ | F0 mk dv md 12 40 01 10 n10 n1 n2 ... n16 cs F7 |
コマンド | $18,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 (10+gsch(ch)) reg n1 [n2] [...] cs F7 |
コマンド | $19,fl,fh,reg,n1[,n2][,...] |
実データ | (fl&(1<<0)) F0 mk dv md 12 40 11 reg n1 [n2] [...] cs F7 (fl&(1<<1)) F0 mk dv md 12 40 12 reg n1 [n2] [...] cs F7 (fh&(1<<0)) F0 mk dv md 12 40 19 reg n1 [n2] [...] cs F7 (fh&(1<<1)) F0 mk dv md 12 40 10 reg n1 [n2] [...] cs F7 (fh&(1<<2)) F0 mk dv md 12 40 1A reg n1 [n2] [...] cs F7 |
コマンド | $20,type,key |
実データ | F0 mk dv md 12 40 (10+gsch(ch)) 40 temper(type,key) cs F7 |
コマンド | $21,fl,fh,type,key |
実データ | (fl&(1<<0)) F0 mk dv md 12 40 11 40 temper(type,key) cs F7 (fl&(1<<1)) F0 mk dv md 12 40 12 40 temper(type,key) cs F7 (fh&(1<<0)) F0 mk dv md 12 40 19 40 temper(type,key) cs F7 (fh&(1<<1)) F0 mk dv md 12 40 10 40 temper(type,key) cs F7 (fh&(1<<2)) F0 mk dv md 12 40 1A 40 temper(type,key) cs F7 |
コマンド | $22,set,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 (20+gsch(ch)) ((10*set)+reg) n1 [n2] [...] cs F7 |
コマンド | $23,fl,fh,set,reg,n1[,n2][,...] |
実データ | (fl&(1<<0)) F0 mk dv md 12 40 21 reg n1 [n2] [...] cs F7 (fl&(1<<1)) F0 mk dv md 12 40 22 reg n1 [n2] [...] cs F7 (fh&(1<<0)) F0 mk dv md 12 40 29 reg n1 [n2] [...] cs F7 (fh&(1<<1)) F0 mk dv md 12 40 20 reg n1 [n2] [...] cs F7 (fh&(1<<2)) F0 mk dv md 12 40 2A reg n1 [n2] [...] cs F7 |
コマンド | $24,map,reg,note,n1[,n2][,...] |
実データ | F0 mk dv md 12 41 ((10*map)+reg) note n1 [n2] [...] cs F7 |
コマンド | $25,set,reg,note,n1[,n2][,...] |
実データ | F0 mk dv md 12 20 ((10*set)+reg) note n1 [n2] [...] cs F7 |
コマンド | $26,set,reg,note,n1[,n2][,...] |
実データ | F0 mk dv md 12 21 ((10*set)+reg) note n1 [n2] [...] cs F7 |
コマンド | $27,sw |
実データ | F0 mk dv md 12 40 (40+gsch(ch)) 22 sw cs F7 |
コマンド | $28,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 03 reg n1 [n2] [...] cs F7 |
コマンド | $29,"text" |
実データ | F0 mk dv md 12 10 00 00 text cs F7 |
コマンド | $30,page,n1,n2,...,n32 |
実データ | F0 mk dv md 12 10 (01+(page/2)) ((page%1)?40:00) pack(n1,n2,...,n32) cs F7 |
$30,0, .00000000,.00000000, .00000001,.10000000, .00000011,.11000000, .00000011,.11000000, .00000001,.10000000, .00000000,.10000000, .00001001,.11000000, .00000111,.00100000, .00000001,.00010000, .00000010,.10000000, .00000010,.10000000, .00000100,.01000000, .00000100,.00110000, .00000000,.00000000, .00000000,.00000000, .11011111,.10111101
コマンド | $31,page,time |
実データ | F0 mk dv md 12 20 01 time cs F7 F0 mk dv md 12 20 00 page cs F7 |
コマンド | $32,reg,n1[,n2][,...] |
実データ | F0 mk dv md 12 40 00 reg n1 [n2] [...] cs F7 |
コマンド | $33,reg,n1[,n2][,...] |
実データ | F0 mk dv md 02 01 reg n1 [n2] [...] F7 |
コマンド | $34,reg,n1[,n2][,...] |
実データ | F0 mk dv md 02 01 (20+reg) n1 [n2] [...] F7 |
コマンド | $35,reg,n1[,n2][,...] |
実データ | F0 mk dv md 02 01 (40+reg) n1 [n2] [...] F7 |
コマンド | $36,fx,reg,n1[,n2][,...] |
実データ | F0 mk dv md 03 fx reg n1 [n2] [...] F7 |
コマンド | $37,reg,n1[,n2][,...] |
実データ | F0 mk dv md 08 ch reg n1 [n2] [...] F7 |
コマンド | $38,fs,fl,fh,reg,n1[,n2][,...] |
実データ | (fl&(1<<0)) F0 mk dv md 08 00 reg n1 [n2] [...] F7 (fl&(1<<1)) F0 mk dv md 08 01 reg n1 [n2] [...] F7 (fh&(1<<0)) F0 mk dv md 08 08 reg n1 [n2] [...] F7 (fh&(1<<1)) F0 mk dv md 08 09 reg n1 [n2] [...] F7 |
コマンド | $39,type,key |
実データ | F0 mk dv md 08 ch 41 temper(type,key) F7 |
コマンド | $40,fs,fl,fh,type,key |
実データ | (fl&(1<<0)) F0 mk dv md 08 00 41 n1 [n2] [...] F7 (fl&(1<<1)) F0 mk dv md 08 01 41 n1 [n2] [...] F7 (fh&(1<<0)) F0 mk dv md 08 08 41 n1 [n2] [...] F7 (fh&(1<<1)) F0 mk dv md 08 09 41 n1 [n2] [...] F7 |
コマンド | $41,reg,n1[,n2][,...] |
実データ | F0 mk dv md 09 ch reg n1 [n2] [...] F7 |
コマンド | $42,fs,fl,fh,reg,n1[,n2][,...] |
実データ | (fl&(1<<0)) F0 mk dv md 09 00 reg n1 [n2] [...] F7 (fl&(1<<1)) F0 mk dv md 09 01 reg n1 [n2] [...] F7 (fh&(1<<0)) F0 mk dv md 09 08 reg n1 [n2] [...] F7 (fh&(1<<1)) F0 mk dv md 09 09 reg n1 [n2] [...] F7 |
コマンド | $43,set,reg,note,n1[,n2][,...] |
実データ | F0 mk dv md (30+set) reg note n1 [n2] [...] F7 |
コマンド | $44,"text" |
実データ | F0 mk dv md 06 00 00 text F7 |
コマンド | $45,hp,vp,n1,n2,...,n32 |
実データ | F0 mk dv md 07 ((16*vp)+hp) pack(n1,n2,...,n32) F7 |
$35,0,0, .00000000,.00000000, .00000000,.00000000, .00000001,.10000000, .00000011,.11000000, .00000011,.11000000, .00000001,.10000000, .00000000,.10000000, .00000011,.10000000, .00001101,.01000000, .00000001,.00100000, .00000010,.10000000, .00000010,.10000000, .00000100,.01000000, .00000100,.00100000, .00000100,.00000000, .10111101,.11011111