GM–GS–XG quick reference
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.
Ctrl # | Function | Notes | |||
---|---|---|---|---|---|
0 | Bank Select MSB | ❌ | *️⃣[1] | *️⃣ | On GS, this selects variation instruments. On XG, this selects banks. Common numbers:
|
1 | Modulation | ✅[2] | ✅ | ✅ | Vibrato by default |
5 | Portamento time | ❌ | ✅[1] | Value 0 is fastest | |
6 | Data entry MSB | *️⃣ | *️⃣ | *️⃣ | (Used for RPNs and NRPNs) |
7 | Volume | ✅[2] | ✅ | ✅ | |
10 | Pan | ✅[2] | ✅ | ✅ | |
11 | Expression | ✅[2] | ✅ | ✅ | |
32 | Bank Select LSB | ❌ | ❌[1] | ✅ | On GS/the SC-55, this does nothing. But the SC-88 onwards use this to select maps:
On XG, this selects variation instruments. |
38 | Data entry LSB | *️⃣ | *️⃣ | *️⃣ | (Used for RPNs and NRPNs) |
64 | Sustain | ✅[2] | ✅ | ✅ | AKA Hold |
65 | Portamento | ❌ | ✅[3] | ||
66 | Sostenuto | ❌ | ✅[3] | ||
67 | Soft | ❌ | ✅[3] | ||
84 | Portamento Control | ❌ | ✅[3] | ||
91 | Effect 1 depth | ❌ | ✅[3] | ✅ | GS and XG: Reverb send level |
93 | Effect 3 depth | ❌ | ✅[3] | ✅ | GS and XG: Chorus send level |
84 | Portamento Control | ❌ | ✅[3] | ||
98 | NRPN LSB | ❌ | *️⃣[3] | *️⃣ | (Used for NRPNs) |
99 | NRPN MSB | ❌ | *️⃣[3] | *️⃣ | (Used for NRPNs) |
100 | RPN LSB | *️⃣ | *️⃣[3] | *️⃣ | (Used for RPNs) |
101 | RPN MSB | *️⃣ | *️⃣[3] | *️⃣ | (Used for RPNs) |