GM–GS–XG quick reference: Difference between revisions

From DTM Wiki
Jump to navigation Jump to search
(More GS CC notes and cites)
(add XG stuff)
Line 12: Line 12:
! Notes
! Notes
|-
|-
| 0 || Bank Select MSB ||❌||*️⃣<ref name=mkii-p90>Roland SC-55mkII Owner's Manual, page 90.</ref>||*️⃣||On GS, this selects variation instruments.<br>On XG, this selects banks. Common numbers:
| 0 || Bank Select MSB ||❌||*️⃣<ref name=mkii-p90>Roland SC-55mkII Owner's Manual, page 90.</ref>||*️⃣<ref name=xg-p16>Yamaha XG Specifications, v 2.00, page 16.</ref>||On GS, this selects variation instruments.<br>On XG, this selects banks. Common numbers:
* 0 = most normal instruments
* 0 = most normal/melody instruments<ref name=xg-p16></ref>
* 126 = SFX
* 64 = SFX voices<ref name=xg-p16></ref>
* 127 = drumkits (sets part to drum mode)
* 126 = SFX kits<ref name=xg-p16></ref>
* 127 = drumkits (sets part to drum mode)<ref name=xg-p16></ref>
|-
|-
| 1 || Modulation ||✅<ref name=gm1-p2>General MIDI System Level 1 Specification, page 2</ref>||✅<ref name=mkii-p90></ref>||✅||Vibrato by default
| 1 || Modulation ||✅<ref name=gm1-p2>General MIDI System Level 1 Specification, page 2</ref>||✅<ref name=mkii-p90></ref>||✅<ref name=xg-p17>Yamaha XG Specifications, v 2.00, page 17.</ref>||On GS and XG, this is Vibrato by default<ref name=mkii-p90></ref><ref name=xg-p17></ref>
|-
|-
| 5 || Portamento time ||❌||✅<ref name=mkii-p90></ref>|| ||Value 0 is fastest
| 5 || Portamento time ||❌||✅<ref name=mkii-p90></ref>||✅<ref name=xg-p18>Yamaha XG Specifications, v 2.00, page 18.</ref>||Value 0 is shortest/fastest.<ref name=mkii-p90></ref><ref name=xg-p18></ref> On XG, it is cent-linear.<ref name=xg-p18></ref>
|- style="background: lightgrey"
|- style="background: lightgrey"
| ''6'' || ''Data entry MSB'' ||*️⃣||*️⃣<ref name=mkii-p90></ref>||*️⃣|| ''(Used for RPNs and NRPNs)''
| ''6'' || ''Data entry MSB'' ||*️⃣||*️⃣<ref name=mkii-p90></ref>||*️⃣<ref name=xg-p18></ref>|| ''(Used for RPNs and NRPNs)''
|-
|-
| 7 || Volume ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅||
| 7 || Volume ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅<ref name=xg-p18></ref>||
|-
|-
| 10 || Pan ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅||
| 10 || Pan ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅<ref name=xg-p18></ref>||
|-
|-
| 11 || Expression ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅||On GS, this is multiplied with Volume to control overall volume.<ref name=mkii-p90></ref>
| 11 || Expression ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p90></ref>||✅<ref name=xg-p18></ref>||On GS, this is multiplied with Volume to control overall volume.<ref name=mkii-p90></ref>
|-
|-
| 32 || Bank Select LSB ||❌||❌<ref name=mkii-p90></ref>||✅||On GS/the SC-55, this does nothing. But the SC-88 onwards use this to select maps:<br>
| 32 || Bank Select LSB ||❌||❌<ref name=mkii-p90></ref>||✅<ref name=xg-p16></ref>||On GS/the SC-55, this does nothing. But the SC-88 onwards use this to select maps:<br>
* 0 = default
* 0 = default
* 1 = SC-55
* 1 = SC-55
Line 35: Line 36:
* 3 = SC-88 Pro
* 3 = SC-88 Pro
* 4 = SC-8850/SC-8820
* 4 = SC-8850/SC-8820
On XG, this selects variation instruments.
On XG, this selects extension instruments.<ref name=xg-p16></ref>
|- style="background: lightgrey"
|- style="background: lightgrey"
| ''38'' || ''Data entry LSB'' ||*️⃣||*️⃣<ref name=mkii-p90></ref>||*️⃣|| ''(Used for RPNs and NRPNs)''
| ''38'' || ''Data entry LSB'' ||*️⃣||*️⃣<ref name=mkii-p90></ref>||*️⃣<ref name=xg-p18></ref>|| ''(Used for RPNs and NRPNs)''
|-
|-
| 64 || Sustain ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p91>Roland SC-55mkII Owner's Manual, page 91.</ref>||✅|| AKA Hold1<ref name=mkii-p91></ref>. 0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref>
| 64 || Sustain ||✅<ref name=gm1-p2></ref>||✅<ref name=mkii-p91>Roland SC-55mkII Owner's Manual, page 91.</ref>||✅<ref name=xg-p19>Yamaha XG Specifications, v 2.00, page 19.</ref>|| AKA Hold1<ref name=mkii-p91></ref>. 0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref><ref name=xg-p19></ref>
|-
|-
| 65 || Portamento ||❌||✅<ref name=mkii-p91></ref>||||0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref>
| 65 || Portamento ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p19></ref>||0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref><ref name=xg-p19></ref>
|-
|-
| 66 || Sostenuto ||❌||✅<ref name=mkii-p91></ref>||||0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref>
| 66 || Sostenuto ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p19></ref>||0–63 = Off, 64–127 = On.<ref name=mkii-p91></ref><ref name=xg-p19></ref>
|-
|-
| 67 || Soft ||❌||✅<ref name=mkii-p91></ref>||||
| 67 || Soft ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p20>Yamaha XG Specifications, v 2.00, page 20.</ref>||Aka Soft Pedal<ref name=xg-p20></ref>
|-
|-
| 84 || Portamento Control ||❌||✅<ref name=mkii-p91></ref>||||Value is MIDI note number.<ref name=mkii-p91></ref>
| 71 || Sound Controller 2 ||❌||❌||✅<ref name=xg-p20></ref>||On XG, called "Harmonic Content". Relative adjustment of filter resonance (64 is zero change).<ref name=xg-p20></ref><br>Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
|-
|-
| 91 || Effect 1 depth ||❌||✅<ref name=mkii-p91></ref>||✅||GS and XG: Reverb send level
| 72 || Sound Controller 3 ||❌||❌||✅<ref name=xg-p20></ref>||On XG, called "Release Time". Relative adjustment of envelope release time (64 is zero change).<ref name=xg-p20></ref><br>Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
|-
|-
| 93 || Effect 3 depth ||❌||✅<ref name=mkii-p91></ref>||✅||GS and XG: Chorus send level
| 73 || Sound Controller 4 ||❌||❌||✅<ref name=xg-p20></ref>||On XG, called "Attack Time". Relative adjustment of envelope attack time (64 is zero change).<ref name=xg-p20></ref><br>Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
|-
| 74 || Sound Controller 5 ||❌||❌||✅<ref name=xg-p21>Yamaha XG Specifications, v 2.00, page 21</ref>||On XG, called "Brightness". Relative adjustment of filter cutoff (64 is zero change).<ref name=xg-p21></ref><br>Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
|-
| 84 || Portamento Control ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p21></ref>||Value is MIDI note number.<ref name=mkii-p91></ref> On XG, ignores Portamento Time (always 0).<ref name=xg-p21></ref>
|-
| 91 || Effect 1 depth ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p21></ref>||GS and XG: Reverb send level<ref name=xg-p21></ref><ref name=mkii-p91></ref>
|-
| 93 || Effect 3 depth ||❌||✅<ref name=mkii-p91></ref>||✅<ref name=xg-p21></ref>||GS and XG: Chorus send level<ref name=xg-p21></ref><ref name=mkii-p91></ref>
|-
| 94 || Effect 4 depth ||❌||❌||✅<ref name=xg-p21></ref>||On XG: Variation send level.<ref name=xg-p21></ref><br>Not supported on GS/SC-55, but SC-88 and onwards use this for Delay Send (TODO: double check this is correct).
|- style="background: lightgrey"
| ''96'' || ''Data increment'' ||❌||❌||*️⃣<ref name=xg-p22></ref>|| ''(Used for RPNs and NRPNs)'' (TODO: check this)
|- style="background: lightgrey"
| ''97'' || ''Data decrement'' ||❌||❌||*️⃣<ref name=xg-p22>Yamaha XG Specifications, v 2.00, page 22</ref>|| ''(Used for RPNs and NRPNs)'' (TODO: check this)
|- style="background: lightgrey"
|- style="background: lightgrey"
| ''98'' || ''NRPN LSB'' ||❌||*️⃣<ref name=mkii-p91></ref>||*️⃣|| ''(Used for NRPNs)''
| ''98'' || ''NRPN LSB'' ||❌||*️⃣<ref name=mkii-p91></ref>||*️⃣|| ''(Used for NRPNs)''

Revision as of 02:08, 26 August 2024

This is a help page listing which MIDI messages can be used for common things across General MIDI, Roland GS and Yamaha XG.

Note that there doesn't seem to be a formal GS standard that is publicly available, so the Roland SC-55mkII manual is the best reference for GS.

Control Change messages
Ctrl # Function General MIDI Roland GS
Yamaha XG Notes
0 Bank Select MSB *️⃣[1] *️⃣[2] On GS, this selects variation instruments.
On XG, this selects banks. Common numbers:
  • 0 = most normal/melody instruments[2]
  • 64 = SFX voices[2]
  • 126 = SFX kits[2]
  • 127 = drumkits (sets part to drum mode)[2]
1 Modulation [3] [1] [4] On GS and XG, this is Vibrato by default[1][4]
5 Portamento time [1] [5] Value 0 is shortest/fastest.[1][5] On XG, it is cent-linear.[5]
6 Data entry MSB *️⃣ *️⃣[1] *️⃣[5] (Used for RPNs and NRPNs)
7 Volume [3] [1] [5]
10 Pan [3] [1] [5]
11 Expression [3] [1] [5] On GS, this is multiplied with Volume to control overall volume.[1]
32 Bank Select LSB [1] [2] On GS/the SC-55, this does nothing. But the SC-88 onwards use this to select maps:
  • 0 = default
  • 1 = SC-55
  • 2 = SC-88
  • 3 = SC-88 Pro
  • 4 = SC-8850/SC-8820

On XG, this selects extension instruments.[2]

38 Data entry LSB *️⃣ *️⃣[1] *️⃣[5] (Used for RPNs and NRPNs)
64 Sustain [3] [6] [7] AKA Hold1[6]. 0–63 = Off, 64–127 = On.[6][7]
65 Portamento [6] [7] 0–63 = Off, 64–127 = On.[6][7]
66 Sostenuto [6] [7] 0–63 = Off, 64–127 = On.[6][7]
67 Soft [6] [8] Aka Soft Pedal[8]
71 Sound Controller 2 [8] On XG, called "Harmonic Content". Relative adjustment of filter resonance (64 is zero change).[8]
Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
72 Sound Controller 3 [8] On XG, called "Release Time". Relative adjustment of envelope release time (64 is zero change).[8]
Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
73 Sound Controller 4 [8] On XG, called "Attack Time". Relative adjustment of envelope attack time (64 is zero change).[8]
Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
74 Sound Controller 5 [9] On XG, called "Brightness". Relative adjustment of filter cutoff (64 is zero change).[9]
Not supported on GS, but there is an NRPN. (TODO: Some later Sound Canvas models respond to this also. Which?)
84 Portamento Control [6] [9] Value is MIDI note number.[6] On XG, ignores Portamento Time (always 0).[9]
91 Effect 1 depth [6] [9] GS and XG: Reverb send level[9][6]
93 Effect 3 depth [6] [9] GS and XG: Chorus send level[9][6]
94 Effect 4 depth [9] On XG: Variation send level.[9]
Not supported on GS/SC-55, but SC-88 and onwards use this for Delay Send (TODO: double check this is correct).
96 Data increment *️⃣[10] (Used for RPNs and NRPNs) (TODO: check this)
97 Data decrement *️⃣[10] (Used for RPNs and NRPNs) (TODO: check this)
98 NRPN LSB *️⃣[6] *️⃣ (Used for NRPNs)
99 NRPN MSB *️⃣[6] *️⃣ (Used for NRPNs)
100 RPN LSB *️⃣ *️⃣[11] *️⃣ (Used for RPNs)
101 RPN MSB *️⃣ *️⃣[11] *️⃣ (Used for RPNs)

References

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 Roland SC-55mkII Owner's Manual, page 90.
  2. 2.0 2.1 2.2 2.3 2.4 2.5 2.6 Yamaha XG Specifications, v 2.00, page 16.
  3. 3.0 3.1 3.2 3.3 3.4 General MIDI System Level 1 Specification, page 2
  4. 4.0 4.1 Yamaha XG Specifications, v 2.00, page 17.
  5. 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 Yamaha XG Specifications, v 2.00, page 18.
  6. 6.00 6.01 6.02 6.03 6.04 6.05 6.06 6.07 6.08 6.09 6.10 6.11 6.12 6.13 6.14 6.15 Roland SC-55mkII Owner's Manual, page 91.
  7. 7.0 7.1 7.2 7.3 7.4 7.5 Yamaha XG Specifications, v 2.00, page 19.
  8. 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 Yamaha XG Specifications, v 2.00, page 20.
  9. 9.0 9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 Yamaha XG Specifications, v 2.00, page 21
  10. 10.0 10.1 Yamaha XG Specifications, v 2.00, page 22
  11. 11.0 11.1 Roland SC-55mkII Owner's Manual, page 92.

See also