Roland Electronic Keyboard GW 8 User Guide

Model: GW-8  
Date:  
2008. 8. 1  
MIDI Implementation  
Version: 1.00  
Hold 1 (Controller number 64)  
1. Receive data  
Status  
BnH  
2nd byte  
40H  
3rd byte  
vvH  
Channel Voice Messages  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127) 0-63 = OFF, 64-127 = ON  
*
Not received when the MIDI Rx Switch parameter (SYSTEM MIDI) is OFF.  
Portamento (Controller number 65)  
Note off  
Status  
BnH  
2nd byte  
41H  
3rd byte  
vvH  
Status  
2nd byte  
kkH  
3rd byte  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
8nH  
vvH  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
9nH  
kkH  
00H  
n = MIDI channel number:  
kk = note number:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
00H - 7FH (0 - 127)  
*
The Portamento Switch parameter (Perform Tone Edit) will change.  
vv = note off velocity:  
Sostenuto (Controller number 66)  
Status  
BnH  
2nd byte  
42H  
3rd byte  
Note on  
vvH  
Status  
2nd byte  
kkH  
3rd byte  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
9nH  
vvH  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
n = MIDI channel number:  
kk = note number:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
01H - 7FH (1 - 127)  
Soft (Controller number 67)  
vv = note on velocity:  
Status  
BnH  
2nd byte  
43H  
3rd byte  
vvH  
Control Change  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
Bank Select (Controller number 0, 32)  
Status  
BnH  
2nd byte  
00H  
3rd byte  
Legato Foot Switch (Controller number 68)  
mmH  
Status  
BnH  
2nd byte  
44H  
3rd byte  
BnH  
20H  
llH  
vvH  
n = MIDI channel number:  
mm, ll = Bank number:  
0H - FH (ch.1 - 16)  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
00 00H - 7F 7FH (bank.1 - bank.16384)  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
Modulation (Controller number 1)  
*
The Legato Switch parameter (Perform Tone Edit) will change.  
Status  
BnH  
2nd byte  
01H  
3rd byte  
vvH  
Resonance (Controller number 71)  
Status  
BnH  
n = MIDI channel number:  
vv = Modulation depth:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
2nd byte  
47H  
3rd byte  
vvH  
n = MIDI channel number:  
vv= Resonance value (relative change)  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
*
Not received when the Rx Modulation parameter (SYSTEM MIDI) is OFF.  
:
Portamento Time (Controller number 5)  
*
The Resonance parameter (Perform Tone Edit) will change.  
Status  
BnH  
2nd byte  
05H  
3rd byte  
vvH  
Release Time (Controller number 72)  
Status  
BnH  
n = MIDI channel number:  
vv = Portamento Time:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
2nd byte  
48H  
3rd byte  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
Data Entry (Controller number 6, 38)  
vv = Release Time value (relative change)  
:
Status  
BnH  
2nd byte  
06H  
3rd byte  
mmH  
llH  
*
The Release Time parameter (Perform Tone Edit) will change.  
BnH  
26H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
mm, ll = the value of the parameter specified by RPN/NRPN  
mm = MSB, ll = LSB  
Attack time (Controller number 73)  
Status  
BnH  
2nd byte  
49H  
3rd byte  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
Volume (Controller number 7)  
vv = Attack time value (relative change)  
:
Status  
BnH  
2nd byte  
07H  
3rd byte  
vvH  
*
The Attack Time parameter (Perform Tone Edit) will change.  
n = MIDI channel number:  
vv = Volume:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
Cutoff (Controller number 74)  
Status  
BnH  
2nd byte  
4AH  
3rd byte  
*
The Level parameter (Perform Tone Edit) will change.  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
Panpot (Controller number 10)  
vv = Cutoff value (relative change):  
Status  
BnH  
2nd byte  
0AH  
3rd byte  
vvH  
*
The Cutoff parameter (Perform Tone Edit) will change.  
n = MIDI channel number:  
vv = Panpot:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (Left - Center - Right)  
Decay Time (Controller number 75)  
Status  
BnH  
2nd byte  
4BH  
3rd byte  
*
The Pan parameter (Perform Tone Edit) will change.  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
Expression (Controller number 11)  
vv = Decay Time value (relative change)  
:
Status  
BnH  
2nd byte  
0BH  
3rd byte  
vvH  
*
The Decay Time parameter (Perform Tone Edit) will change.  
n = MIDI channel number:  
vv = Expression:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
Copyright © 2008 ROLAND CORPORATION  
All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND CORPORATION.  
1
1PS  
 
MIDI Implementation  
Channel Mode Messages  
System Realtime Messages  
*
Not received when the MIDI Rx Switch parameter (SYSTEM MIDI) is OFF.  
Timing Clock  
Status  
All Sounds Off (Controller number 120)  
F8H  
Status  
2nd byte  
3rd byte  
BnH  
78H  
00H  
*
When “Timing Clock” is received, the song/style player is synchronized to an external  
clock according to the following table.  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
*
When this message is received, all notes currently sounding on the corresponding  
channel will be turned off.  
SYSTEM Rx Sync  
OFF  
Response  
A
Song/Style will neither start/stop nor follow the tempo of the  
external “Timing Clock” (F8) and “Start/Stop” (FA/FC) messages.  
ON  
If  
a
Song/Style receives “Start/Stop” (FA/FC), it will follow  
Status  
Reset All Controllers (Controller number 121)  
automatically Internal or External Timing related to the presence or  
not of the incoming “Timing Clock” (F8) messages (except the USB  
Memory Player).  
2nd byte  
3rd byte  
BnH  
79H  
00H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
When this message is received, the following controllers will be set to their reset values.  
Song/Style Start  
Status  
*
Controller  
Reset value  
FAH  
Pitch Bend Change  
Polyphonic Key Pressure  
Channel Pressure  
Modulation  
Expression  
Hold 1  
+/-0 (center)  
0 (off)  
*
When “Start” is received, the song/style player start.  
0 (off)  
0 (off)  
Song Continue  
Status  
127 (max)  
0 (off)  
FBH  
Sostenuto  
0 (off)  
Soft  
0 (off)  
*
When “Continue” is received, the song player continue to play from the current position.  
RPN  
unset; previously set data will not change  
unset; previously set data will not change  
NRPN  
Song/Style Stop  
Status  
All Notes Off (Controller number 123)  
Status  
FCH  
2nd byte  
3rd byte  
BnH  
7BH  
00H  
*
When “Stop” is received, the song/style player stop.  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
Active Sensing  
*
When All Notes Off is received, all notes on the corresponding channel will be turned  
off. However, if Hold 1 or Sostenuto is ON, the sound will be continued until these are  
turned off.  
Status  
FEH  
*
When “Active Sensing” is received, the unit will begin monitoring the intervals of all  
further messages. While monitoring, if the interval between messages exceeds 420 ms,  
the same processing will be carried out as when All Sounds Off, All Notes Off and Reset  
All Controllers are received, and message interval monitoring will be halted.  
OMNI OFF (Controller number 124)  
Status  
2nd byte  
3rd byte  
BnH  
7CH  
00H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
The same processing will be carried out as when All Notes Off is received.  
System Common Message  
*
OMNI ON (Controller number 125)  
Song Position Pointer  
Status  
2nd byte  
3rd byte  
Status  
2nd byte  
3rd byte  
hhH  
BnH  
7DH  
00H  
F2H  
llH  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
ll = song position LSB: 00H - 7FH  
hh = song position MSB: 00H - 7FH  
*
The same processing will be carried out as when All Notes Off is received. OMNI ON  
will not be turned on.  
MONO (Controller number 126)  
System Exclusive Message  
Status  
2nd byte  
3rd byte  
Status  
F0H  
Data byte  
Status  
F7H  
BnH  
7EH  
mmH  
iiH, ddH, ......,eeH  
n = MIDI channel number:  
mm = mono number:  
0H - FH (ch.1 - 16)  
00H - 10H (0 - 16)  
F0H:  
System Exclusive Message status  
ii = ID number:  
an ID number (manufacturer ID) to indicate the manufacturer  
whose Exclusive message this is. Roland's manufacturer ID is  
41H.  
*
*
The same processing will be carried out as when All Notes Off is received.  
The Mono/Poly parameter (Perform Tone Edit) will change.  
ID numbers 7EH and 7FH are extensions of the MIDI standard;  
Universal Non-realtime Messages (7EH) and Universal Realtime  
Messages (7FH).  
POLY (Controller number 127)  
Status  
2nd byte  
3rd byte  
dd,...,ee = data:  
F7H:  
00H - 7FH (0 - 127)  
BnH  
7FH  
00H  
EOX (End Of Exclusive)  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
*
*
The same processing will be carried out as when All Notes Off is received.  
The Mono/Poly parameter (Perform Tone Edit) will change.  
Of the System Exclusive messages received by this device, the Universal Non-realtime  
messages and the Universal Realtime messages and the Data Set (DT1) messages will be set  
automatically.  
3
 
MIDI Implementation  
Master Fine Tuning  
Universal Non-realtime System Exclusive Messages  
Status  
F0H  
Data byte  
Status  
F7H  
7FH, 7FH, 04H, 03H, llH, mmH  
Identity Request Message  
Status  
F0H  
Data byte  
Status  
F7H  
Byte  
F0H  
7FH  
7FH  
04H  
03H  
llH  
Explanation  
7EH, dev, 06H, 01H  
Exclusive status  
ID number (universal realtime message)  
Device ID (Broadcast)  
Byte  
F0H  
7EH  
dev  
Explanation  
Exclusive status  
Sub ID#1 (Device Control)  
Sub ID#2 (Master Fine Tuning)  
Master Fine Tuning LSB  
Master Fine Tuning MSB  
EOX (End Of Exclusive)  
ID number (Universal Non-realtime Message)  
Device ID (dev: 10H - 1FH, 7FH)  
Sub ID#1 (General Information)  
Sub ID#2 (Identity Request)  
06H  
01H  
F7H  
mmH  
F7H  
EOX (End Of Exclusive)  
mm, ll: 00 00H - 40 00H - 7F 7FH (-100 - 0 - +99.9 [cents])  
*
When this message is received, Identity Reply message (p. 8) will be transmitted.  
Master Coarse Tuning  
GM1 System On  
Status  
F0H  
Data byte  
Status  
F7  
Status  
F0H  
Data byte  
Status  
F7H  
7FH, 7FH, 04H, 04H, llH, mmH  
7EH, 7FH, 09H, 01H  
Byte  
F0H  
7FH  
7FH  
04H  
04H  
llH  
Explanation  
Byte  
F0H  
7EH  
7FH  
09H  
01H  
F7H  
Explanation  
Exclusive status  
Exclusive status  
ID number (universal realtime message)  
Device ID (Broadcast)  
ID number (Universal Non-realtime Message)  
Device ID (Broadcast)  
Sub ID#1 (Device Control)  
Sub ID#2 (Master Coarse Tuning)  
Master Coarse Tuning LSB  
Master Coarse Tuning MSB  
EOX (End Of Exclusive)  
Sub ID#1 (General MIDI Message)  
Sub ID#2 (General MIDI 1 On)  
EOX (End Of Exclusive)  
mmH  
F7H  
GM2 System On  
Status  
F0H  
Data byte  
Status  
F7H  
llH:  
ignored (processed as 00H)  
7EH 7FH 09H 03H  
mmH:  
28H - 40H - 58H (-24 - 0 - +24 [semitones])  
Byte  
F0H  
7EH  
7FH  
09H  
03H  
F7H  
Explanation  
Global Parameter Control  
Exclusive status  
ID number (Universal Non-realtime Message)  
Device ID (Broadcast)  
Reverb Parameters  
Sub ID#1 (General MIDI Message)  
Sub ID#2 (General MIDI 2 On)  
EOX (End Of Exclusive)  
Status  
F0H  
Data byte  
Status  
F7H  
7FH, 7FH, 04H, 05H, 01H, 01H,  
01H, 01H, 01H, ppH, vvH  
Byte  
F0H  
7FH  
7FH  
04H  
05H  
01H  
01H  
01H  
01H  
01H  
ppH  
vvH  
Explanation  
GM System Off  
Status  
F0H  
Exclusive status  
Data byte  
Status  
F7H  
ID number (universal realtime message)  
Device ID (Broadcast)  
Sub ID#1 (Device Control)  
Sub ID#2 (Global Parameter Control)  
Slot path length  
7EH, 7F, 09H, 02H  
Byte  
F0H  
7EH  
7FH  
09H  
02H  
F7H  
Explanation  
Exclusive status  
ID number (Universal Non-realtime Message)  
Device ID (Broadcast)  
Parameter ID width  
Value width  
Sub ID#1 (General MIDI Message)  
Sub ID#2 (General MIDI Off)  
EOX (End Of Exclusive)  
Slot path MSB  
Slot path LSB (Effect 0101: Reverb)  
Parameter to be controlled.  
Value for the parameter.  
pp=0 Reverb Type  
Universal Realtime System Exclusive Messages  
vv = 00H Small Room  
vv = 01H Medium Room  
vv = 02H Large Room  
vv = 03H Medium Hall  
vv = 04H Large Hall  
vv = 08H Plate  
Master Volume  
Status  
F0H  
Data byte  
Status  
F7H  
7FH, 7FH, 04H, 01H, llH, mmH  
Byte  
F0H  
7FH  
7FH  
04H  
01H  
llH  
Explanation  
Exclusive status  
pp=1 Reverb Time  
ID number (universal realtime message)  
Device ID (Broadcast)  
vv = 00H - 7FH 0 - 127  
EOX (End Of Exclusive)  
F7H  
Sub ID#1 (Device Control)  
Sub ID#2 (Master Volume)  
Master Volume lower byte  
Master Volume upper byte  
EOX (End Of Exclusive)  
mmH  
F7H  
*
The lower byte (llH) of Master Volume will be handled as 00H.  
4
 
MIDI Implementation  
Chorus Parameters  
Controller  
Status  
Status  
F0H  
Data byte  
Status  
F7H  
Data byte  
Status  
7FH, 7FH, 04H, 05H, 01H, 01H,  
01H, 01H, 02H, ppH, vvH  
F0H  
7FH, 7FH, 09H, 03H, 0nH, ccH, ppH, rrH  
F7H  
Byte  
F0H  
7FH  
7FH  
09H  
03H  
0nH  
ccH  
ppH  
rrH  
Explanation  
Byte  
F0H  
7FH  
7FH  
04H  
05H  
01H  
01H  
01H  
01H  
02H  
ppH  
vvH  
Explanation  
Exclusive status  
Exclusive status  
ID number (universal realtime message)  
Device ID (Broadcast)  
ID number (universal realtime message)  
Device ID (Broadcast)  
Sub ID#1 (Device Control)  
Sub ID#2 (Global Parameter Control)  
Slot path length  
Sub ID#1 (Controller Destination Setting)  
Sub ID#2 (Control Change)  
MIDI Channel (00 - 0F)  
Controller number (01 - 1F, 40 - 5F)  
Controlled parameter  
Parameter ID width  
Value width  
Controlled range  
Slot path MSB  
pp=0 Pitch Control  
Slot path LSB (Effect 0102: Chorus)  
Parameter to be controlled.  
Value for the parameter.  
pp=0 Chorus Type  
vv=0 Chorus1  
rr = 28H - 58H -24 - +24 [semitones]  
pp=1 Filter Cutoff Control  
rr = 00H - 7FH -9600 - +9450 [cents]  
pp=2 Amplitude Control  
rr = 00H - 7FH 0 - 200%  
vv=1 Chorus2  
pp=3 LFO Pitch Depth  
vv=2 Chorus3  
rr = 00H - 7FH 0 - 600 [cents]  
pp=4 LFO Filter Depth  
vv=3 Chorus4  
vv=4 FB Chorus  
rr = 00H - 7FH 0 - 2400 [cents]  
pp=5 LFO Amplitude Depth  
rr = 00H - 7FH 0 - 100%  
vv=5 Flanger  
pp=1 Mod Rate  
vv= 00H - 7FH 0 - 127  
pp=2 Mod Depth  
F7H  
EOX (End Of Exclusive)  
vv = 00H - 7FH 0 - 127  
pp=3 Feedback  
Scale/Octave Tuning Adjust  
Status  
F0H  
Data byte  
Status  
F7  
vv = 00H - 7FH 0 - 127  
pp=4 Send To Reverb  
vv = 00H - 7FH 0 - 127  
EOX (End Of Exclusive)  
7EH, 7FH, 08H, 08H, ffH, ggH, hhH, ssH...  
Byte  
F0H  
7EH  
7FH  
08H  
08H  
ffH  
Explanation  
F7H  
Exclusive status  
ID number (Universal Non-realtime Message)  
Device ID (Broadcast)  
Channel Pressure  
Status  
F0H  
Data byte  
Status  
F7H  
Sub ID#1 (MIDI Tuning Standard)  
Sub ID#2 (scale/octave tuning 1-byte form)  
Channel/Option byte 1  
7FH, 7FH, 09H, 01H, 0nH, ppH, rrH  
Byte  
F0H  
7FH  
7FH  
09H  
01H  
0nH  
ppH  
rrH  
Explanation  
bits 0 to 1 = channel 15 to 16  
bit 2 to 6 = Undefined  
Exclusive status  
ID number (universal realtime message)  
Device ID (Broadcast)  
ggH  
hhH  
ssH  
Channel byte 2  
bits 0 to 6 = channel 8 to 14  
Channel byte 3  
Sub ID#1 (Controller Destination Setting)  
Sub ID#2 (Channel Pressure)  
MIDI Channel (00 - 0F)  
bits 0 to 6 = channel 1 to 7  
12 byte tuning offset of 12 semitones from C to B  
00H = -64 [cents]  
Controlled parameter  
Controlled range  
40H = 0 [cents] (equal temperament)  
7FH = +63 [cents]  
pp=0 Pitch Control  
rr = 28H - 58H -24 - +24 [semitones]  
pp=1 Filter Cutoff Control  
rr = 00H - 7FH -9600 - +9450 [cents]  
pp=2 Amplitude Control  
rr = 00H - 7FH 0 - 200%  
pp=3 LFO Pitch Depth  
F7H  
EOX (End Of Exclusive)  
rr = 00H - 7FH 0 - 600 [cents]  
pp=4 LFO Filter Depth  
rr = 00H - 7FH 0 - 2400 [cents]  
pp=5 LFO Amplitude Depth  
rr = 00H - 7FH 0 - 100%  
EOX (End Of Exclusive)  
F7H  
5
 
MIDI Implementation  
Key-based Instrument Controllers  
2. Data Transmission  
Channel Voice Messages  
Note off  
Status  
F0H  
Data byte  
Status  
F7H  
7FH, 7FH, 0AH, 01H, 0nH, kkH, nnH, vvH  
Byte  
F0H  
7FH  
7FH  
0AH  
01H  
0nH  
kkH  
nnH  
vvH  
Explanation  
Exclusive status  
ID number (universal realtime message)  
Device ID (Broadcast)  
Sub ID#1 (Key-Based Instrument Control)  
Sub ID#2 (Controller)  
MIDI Channel (00 - 0FH)  
Key Number  
Status  
2nd byte  
3rd byte  
8nH  
kkH  
vvH  
9nH  
kkH  
00H  
n = MIDI channel number:  
kk = note number:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
00H - 7FH (0 - 127)  
vv = note off velocity:  
Control Number  
Value  
Note on  
nn=07H Level  
Status  
2nd byte  
kkH  
3rd byte  
vv = 00H - 7FH  
nn=0AH  
0 - 200% (Relative)  
Pan  
9nH  
vvH  
n = MIDI channel number:  
kk = note number:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
01H - 7FH (1 - 127)  
vv = 00H - 7FH  
nn=5BH  
Left - Right (Absolute)  
Reverb Send  
vv = note on velocity:  
vv = 00H - 7FH  
nn=5D  
0 - 127 (Absolute)  
Chorus Send  
Control Change  
vv = 00H - 7FH  
:
0 - 127 (Absolute)  
:
F7  
EOX (End Of Exclusive)  
This parameter affects drum instruments only.  
Bank Select (Controller number 0, 32)  
Status  
BnH  
2nd byte  
00H  
3rd byte  
*
mmH  
BnH  
20H  
llH  
Data set 1 DT1 (12H)  
n = MIDI channel number:  
mm, ll = Bank number:  
0H - FH (ch.1 - 16)  
00 00H - 7F 7FH (bank.1 - bank.16384)  
Status  
F0H  
Data byte  
Status  
F7H  
41H, dev, 42H, 12H, aaH, bbH,  
ccH, ddH, ... eeH, sum  
*
Not transmitted when Tx Program Change parameter (SYSTEM MIDI) is OFF.  
Byte  
F0H  
41H  
dev  
Explanation  
Modulation (Controller number 1)  
Exclusive status  
Status  
BnH  
2nd byte  
01H  
3rd byte  
ID number (Roland)  
Device ID (dev: 10H - 1FH, 7FH)  
Model ID (GS)  
vvH  
n = MIDI channel number:  
vv = Modulation depth:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
42H  
12H  
aaH  
Command ID (DT1)  
Address MSB:  
Address:  
upper byte of the starting address of the  
transmitted data  
*
Not transmitted when Tx Modulation parameter (SYSTEM MIDI) is OFF.  
bbH  
ccH  
middle byte of the starting address of the  
transmitted data  
Portamento Time (Controller number 5)  
Status  
BnH  
2nd byte  
05H  
3rd byte  
Address LSB:  
Data:  
lower byte of the starting address of the  
transmitted data  
vvH  
n = MIDI channel number:  
vv = Portamento Time:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
ddH  
the actual data to be transmitted. Multiple bytes  
of data are transmitted starting from the address.  
:
:
Data Entry (Controller number 6, 38)  
eeH  
sum  
F7H  
Data  
Status  
BnH  
2nd byte  
06H  
3rd byte  
mmH  
llH  
Checksum  
EOX (End Of Exclusive)  
BnH  
26H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
mm, ll = the value of the parameter specified by RPN/NRPN  
mm = MSB, ll = LSB  
*
*
The amount of data that can be transmitted at one time depends on the type of data, and  
data will be transmitted from the specified starting address and size.  
Data larger than 256 bytes will be divided into packets of 256 bytes or less, and each  
packet will be sent at an interval of about 20 ms.  
Volume (Controller number 7)  
Status  
BnH  
2nd byte  
07H  
3rd byte  
vvH  
n = MIDI channel number:  
vv = Volume:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
Panpot (Controller number 10)  
Status  
BnH  
2nd byte  
0AH  
3rd byte  
vvH  
n = MIDI channel number:  
vv = Panpot:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (Left - Center - Right),  
Expression (Controller number 11)  
Status  
BnH  
2nd byte  
0BH  
3rd byte  
vvH  
n = MIDI channel number:  
vv = Expression:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
6
 
MIDI Implementation  
Hold 1 (Controller number 64)  
Portamento control (Controller number 84)  
Status  
BnH  
2nd byte  
40H  
3rd byte  
Status  
BnH  
2nd byte  
54H  
3rd byte  
vvH  
kkH  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
n = MIDI channel number:  
kk = source note number:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
00H - 7FH (0 - 127) 0-63 = OFF, 64-127 = ON  
Portamento (Controller number 65)  
Effect 1 (Reverb Send Level) (Controller number 91)  
Status  
BnH  
2nd byte  
41H  
3rd byte  
Status  
BnH  
2nd byte  
5BH  
3rd byte  
vvH  
vvH  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
n = MIDI channel number:  
vv = Reverb Send Level:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
Effect 3 (Chorus Send Level) (Controller number 93)  
Sostenuto (Controller number 66)  
Status  
BnH  
2nd byte  
5DH  
3rd byte  
Status  
BnH  
2nd byte  
42H  
3rd byte  
vvH  
vvH  
n = MIDI channel number:  
vv = Chorus Send Level:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127)  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
Program Change  
Soft (Controller number 67)  
Status  
2nd byte  
Status  
BnH  
2nd byte  
43H  
3rd byte  
CnH  
ppH  
vvH  
n = MIDI channel number:  
pp = Program number:  
0H - FH (ch.1 - 16)  
n = MIDI channel number:  
vv = Control value:  
0H - FH (ch.1 - 16)  
00H - 7FH (prog.1 - prog.128)  
00H - 7FH (0 - 127) 0 - 63 = OFF, 64 - 127 = ON  
*
Not transmitted when Tx Program Change parameter (SYSTEM MIDI) is OFF.  
Resonance (Controller number 71)  
Status  
BnH  
2nd byte  
47H  
3rd byte  
vvH  
Pitch Bend Change  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
Status  
2nd byte  
3rd byte  
vv= Resonance value (relative change):  
EnH  
llH  
mmH  
n = MIDI channel number:  
mm, ll = Pitch Bend value:  
0H - FH (ch.1 - 16)  
Release Time (Controller number 72)  
00 00H - 40 00H - 7F 7FH (-8192 - 0 - +8191)  
Status  
BnH  
2nd byte  
48H  
3rd byte  
vvH  
Channel Mode Messages  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
vv = Release Time value (relative change):  
All Sounds Off (Controller number 120)  
Status  
2nd byte  
3rd byte  
Attack time (Controller number 73)  
Status  
BnH  
BnH  
78H  
00H  
2nd byte  
49H  
3rd byte  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
Status  
Reset All Controllers (Controller number 121)  
vv = Attack time value (relative change): 00H - 40H - 7FH (-64 - 0 - +63)  
2nd byte  
3rd byte  
BnH  
79H  
00H  
Cutoff (Controller number 74)  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
Status  
BnH  
2nd byte  
4AH  
3rd byte  
vvH  
All Notes Off (Controller number 123)  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
00H - 40H - 7FH (-64 - 0 - +63)  
vv = Cutoff value (relative change):  
Status  
2nd byte  
3rd byte  
BnH  
7BH  
00H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
Decay Time (Controller number 75)  
Status  
BnH  
2nd byte  
4BH  
3rd byte  
vvH  
MONO (Controller number 126)  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
Status  
2nd byte  
3rd byte  
vv = Decay Time value (relative change): 00H - 40H - 7FH (-64 - 0 - +63)  
BnH  
7EH  
mmH  
n = MIDI channel number:  
mm = mono number:  
0H - FH (ch.1 - 16)  
00H - 10H (0 - 16)  
Vibrato Rate (Controller number 76)  
Status  
BnH  
2nd byte  
4CH  
3rd byte  
vvH  
POLY (Controller number 127)  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
Status  
2nd byte  
3rd byte  
vv = Vibrato Rate value (relative change): 00H - 40H - 7FH (-64 - 0 - +63)  
BnH  
7FH  
00H  
n = MIDI channel number: 0H - FH (ch.1 - 16)  
System Realtime Messages  
Timing Clock  
Vibrato Depth (Controller number 77)  
Status  
BnH  
2nd byte  
4DH  
3rd byte  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
vv = Vibrato Depth Value (relative change): 00H - 40H - 7FH (-64 - 0 - +63)  
Status  
F8H  
Vibrato Delay (Controller number 78)  
Status  
BnH  
2nd byte  
4EH  
3rd byte  
*
Not transmitted when the Tx Clock parameter (SYSTEM MIDI) is OFF.  
vvH  
n = MIDI channel number:  
0H - FH (ch.1 - 16)  
vv = Vibrato Delay value (relative change): 00H - 40H - 7FH (-64 - 0 - +63)  
7
 
MIDI Implementation  
Song/Style Start  
Status  
3. Parameter Address Map  
FAH  
GS (Model ID = 42H)  
*
*
Not transmitted when the Tx Start/Stop parameter (SYSTEM MIDI) is OFF.  
This message is transmitted when the song/style player is started.  
* System Parameter  
+-----------------------------------------------------------------+  
| Start  
|
|
|
|
Address |  
Description  
Song Continue  
Status  
|-------------+---------------------------------------------------|  
|
|
40 00 7F | 0aaa aaaa | Mode Set  
(0, 127) |  
GS-RESET, GS-EXIT |  
|
|
FBH  
+-----------------------------------------------------------------+  
*
*
Not transmitted when the Tx Start/Stop parameter (SYSTEM MIDI) is OFF.  
* Part Parameter  
This message is transmitted when the song player is started not from the beginning.  
+-----------------------------------------------------------------+  
| Start  
|
|
|
|
Address |  
Description  
|-------------+---------------------------------------------------|  
Song/Style Stop  
Status  
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 1x 40 | 0aaa aaaa | Scale Tuning C  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
(0 - 127) |  
-64 - +63 [cent] |  
|
|
40 1x 41 | 0aaa aaaa | Scale Tuning C#  
FCH  
|
|
40 1x 42 | 0aaa aaaa | Scale Tuning D  
|
|
*
*
Not transmitted when the Tx Start/Stop parameter (SYSTEM MIDI) is OFF.  
This message is transmitted when the song/style player is stopped.  
40 1x 43 | 0aaa aaaa | Scale Tuning D#  
|
|
40 1x 44 | 0aaa aaaa | Scale Tuning E  
|
|
40 1x 45 | 0aaa aaaa | Scale Tuning F  
Active Sensing  
Status  
|
|
40 1x 46 | 0aaa aaaa | Scale Tuning F#  
|
|
FEH  
40 1x 47 | 0aaa aaaa | Scale Tuning G  
|
|
40 1x 48 | 0aaa aaaa | Scale Tuning G#  
*
This message is transmitted constantly at intervals of approximately 250 msec.  
|
|
40 1x 49 | 0aaa aaaa | Scale Tuning A  
|
|
System Common Message  
40 1x 4A | 0aaa aaaa | Scale Tuning A#  
|
|
40 1x 4B | 0aaa aaaa | Scale Tuning B  
|
|
Song Position Pointer  
Status  
+-----------------------------------------------------------------+  
x: BLOCK NUMBER (0-F)  
2nd byte  
3rd byte  
hhH  
Part 1 (MIDI ch = 1) x = 1  
Part 2 (MIDI ch = 2) x = 2  
F2H  
llH  
:
:
:
Part 9 (MIDI ch = 9) x = 9  
Part10 (MIDI ch = 10) x = 0  
Part11 (MIDI ch = 11) x = A  
Part12 (MIDI ch = 12) x = B  
ll = song position LSB: 00H - 7FH  
hh = song position MSB: 00H - 7FH  
:
:
:
*
Not transmitted when the Tx Song Position parameter (SYSTEM MIDI) is OFF.  
Part16 (MIDI ch = 16) x = F  
System Exclusive Message  
Status  
F0H  
Data byte  
Status  
F7H  
iiH, ddH, ......,eeH  
F0H:  
System Exclusive Message status  
ii = ID number:  
an ID number (manufacturer ID) to indicate the manufacturer  
whose Exclusive message this is. Roland's manufacturer ID is  
41H.  
ID numbers 7EH and 7FH are extensions of the MIDI standard;  
Universal Non-realtime Messages (7EH) and Universal Realtime  
Messages (7FH).  
dd,...,ee = data:  
F7H:  
00H - 7FH (0 - 127)  
EOX (End Of Exclusive)  
Universal Non-realtime System Exclusive Message  
Identity Reply Message (GW-8)  
Receiving Identity Request Message, the GW-8 send this message.  
Status  
F0H  
Data byte  
Status  
F7H  
7EH, dev, 06H, 02H, 41H, 36H, 02H,  
00H, 00H, 00H, 07H, 00H, 00H  
Byte  
Explanation  
F0H  
Exclusive status  
7EH  
ID number (Universal Non-realtime Message)  
Device ID (dev: 10H - 1FH)  
Sub ID#1 (General Information)  
Sub ID#2 (Identity Reply)  
ID number (Roland)  
dev  
06H  
02H  
41H  
36H 02H  
00H 00H  
00H 07H 00H 00H  
F7H  
Device family code  
Device family number code  
Software revision level  
EOX (End of Exclusive)  
8
 
 
MIDI Implementation  
Examples of Actual MIDI Messages  
4. Supplementary Material  
<Example 1> 92 3E 5F  
Decimal and Hexadecimal Table  
(An "H" is appended to the end of numbers in hexadecimal notation.)  
In MIDI documentation, data values and addresses/sizes of Exclusive messages, etc. are  
expressed as hexadecimal values for each 7 bits.  
9n is the Note-on status, and n is the MIDI channel number. Since 2H = 2, 3EH = 62, and  
5FH = 95, this is a Note-on message with MIDI CH = 3, note number 62 (note name is D4),  
and velocity 95.  
The following table shows how these correspond to decimal numbers.  
<Example 2> CE 49  
CnH is the Program Change status, and n is the MIDI channel number. Since EH = 14 and  
49H = 73, this is a Program Change message with MIDI CH = 15, program number 74.  
+------+------++------+------++------+------++------+------+  
| D  
| H  
|| D  
| H  
|| D  
| H  
|| D  
| H  
|
+------+------++------+------++------+------++------+------+  
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 | 00H ||  
1 | 01H ||  
2 | 02H ||  
3 | 03H ||  
4 | 04H ||  
5 | 05H ||  
6 | 06H ||  
7 | 07H ||  
8 | 08H ||  
9 | 09H ||  
10 | 0AH ||  
11 | 0BH ||  
12 | 0CH ||  
13 | 0DH ||  
14 | 0EH ||  
15 | 0FH ||  
16 | 10H ||  
17 | 11H ||  
18 | 12H ||  
19 | 13H ||  
20 | 14H ||  
21 | 15H ||  
22 | 16H ||  
23 | 17H ||  
24 | 18H ||  
25 | 19H ||  
26 | 1AH ||  
27 | 1BH ||  
28 | 1CH ||  
29 | 1DH ||  
30 | 1EH ||  
31 | 1FH ||  
32 | 20H ||  
33 | 21H ||  
34 | 22H ||  
35 | 23H ||  
36 | 24H ||  
37 | 25H ||  
38 | 26H ||  
39 | 27H ||  
40 | 28H ||  
41 | 29H ||  
42 | 2AH ||  
43 | 2BH ||  
44 | 2CH ||  
45 | 2DH ||  
46 | 2EH ||  
47 | 2FH ||  
48 | 30H ||  
49 | 31H ||  
50 | 32H ||  
51 | 33H ||  
52 | 34H ||  
53 | 35H ||  
54 | 36H ||  
55 | 37H ||  
56 | 38H ||  
57 | 39H ||  
58 | 3AH ||  
59 | 3BH ||  
60 | 3CH ||  
61 | 3DH ||  
62 | 3EH ||  
63 | 3FH ||  
64 | 40H ||  
65 | 41H ||  
66 | 42H ||  
67 | 43H ||  
96 | 60H |  
97 | 61H |  
98 | 62H |  
99 | 63H |  
<Example 3> EA 00 28  
EnH is the Pitch Bend Change status, and n is the MIDI channel number. The 2nd byte (00H  
= 0) is the LSB and the 3rd byte (28H = 40) is the MSB, but Pitch Bend Value is a signed  
number in which 40 00H (= 64 x 12+80 = 8192) is 0, so this Pitch Bend Value is  
28 00H - 40 00H = 40 x 12+80 - (64 x 12+80) = 5120 - 8192 = -3072  
68 | 44H || 100 | 64H |  
69 | 45H || 101 | 65H |  
70 | 46H || 102 | 66H |  
71 | 47H || 103 | 67H |  
72 | 48H || 104 | 68H |  
73 | 49H || 105 | 69H |  
74 | 4AH || 106 | 6AH |  
75 | 4BH || 107 | 6BH |  
76 | 4CH || 108 | 6CH |  
77 | 4DH || 109 | 6DH |  
78 | 4EH || 110 | 6EH |  
79 | 4FH || 111 | 6FH |  
80 | 50H || 112 | 70H |  
81 | 51H || 113 | 71H |  
82 | 52H || 114 | 72H |  
83 | 53H || 115 | 73H |  
84 | 54H || 116 | 74H |  
85 | 55H || 117 | 75H |  
86 | 56H || 118 | 76H |  
87 | 57H || 119 | 77H |  
88 | 58H || 120 | 78H |  
89 | 59H || 121 | 79H |  
90 | 5AH || 122 | 7AH |  
91 | 5BH || 123 | 7BH |  
92 | 5CH || 124 | 7CH |  
93 | 5DH || 125 | 7DH |  
94 | 5EH || 126 | 7EH |  
95 | 5FH || 127 | 7FH |  
If the Pitch Bend Sensitivity is set to 2 semitones, -8192 (00 00H) will cause the pitch to  
change -200 cents, so in this case -200 x (-3072) ÷ (-8192) = -75 cents of Pitch Bend is being  
applied to MIDI channel 11.  
<Example 4> B3 64 00 65 00 06 0C 26 00 64 7F 65 7F  
BnH is the Control Change status, and n is the MIDI channel number. For Control Changes,  
the 2nd byte is the control number, and the 3rd byte is the value. In a case in which two or  
more messages consecutive messages have the same status, MIDI has a provision called  
“running status” which allows the status byte of the second and following messages to be  
omitted. Thus, the above messages have the following meaning.  
B3  
64 00  
65 00  
06 0C  
26 00  
64 7F  
65 7F  
MIDI ch.4, lower byte of RPN parameter number:  
(MIDI ch.4) upper byte of RPN parameter number:  
(MIDI ch.4) upper byte of parameter value:  
00H  
00H  
0CH  
00H  
7FH  
7FH  
(B3)  
(B3)  
(B3)  
(B3)  
(B3)  
(MIDI ch.4) lower byte of parameter value:  
+------+------++------+------++------+------++------+------+  
(MIDI ch.4) lower byte of RPN parameter number:  
(MIDI ch.4) upper byte of RPN parameter number:  
D: decimal  
H: hexadecimal  
In other words, the above messages specify a value of 0C 00H for RPN parameter number  
00 00H on MIDI channel 4, and then set the RPN parameter number to 7F 7FH.  
*
*
Decimal values such as MIDI channel, bank select, and program change are listed as one  
greater than the values given in the above table.  
A 7-bit byte can express data in the range of 128 steps. For data where greater precision  
is required, we must use two or more bytes. For example, two hexadecimal numbers aa  
bbH expressing two 7-bit bytes would indicate a value of aa x 128+bb.  
In the case of values which have a +/- sign, 00H = -64, 40H = +/-0, and 7FH = +63, so  
that the decimal expression would be 64 less than the value given in the above chart. In  
the case of two types, 00 00H = -8192, 40 00H = +/-0, and 7F 7FH = +8191. For example, if  
aa bbH were expressed as decimal, this would be aa bbH - 40 00H = aa x 128+bb - 64 x  
128.  
RPN parameter number 00 00H is Pitch Bend Sensitivity, and the MSB of the value indicates  
semitone units, so a value of 0CH = 12 sets the maximum pitch bend range to +/-12  
semitones (1 octave). (On sound generators the LSB of Pitch Bend Sensitivity is ignored, but  
the LSB should be transmitted anyway (with a value of 0) so that operation will be correct  
on any device.)  
*
*
Once the parameter number has been specified for RPN or NRPN, all Data Entry messages  
transmitted on that same channel will be valid, so after the desired value has been  
transmitted, it is a good idea to set the parameter number to 7F 7FH to prevent accidents.  
This is the reason for the (B3) 64 7F (B3) 65 7F at the end.  
Data marked “Use nibbled data” is expressed in hexadecimal in 4-bit units. A value  
expressed as a 2-byte nibble 0a 0bH has the value of a x 16+b.  
<Example 1> What is the decimal expression of 5AH?  
From the preceding table, 5AH = 90  
It is not desirable for performance data (such as Standard MIDI File data) to contain many  
events with running status as given in <Example 4>. This is because if playback is halted  
during the song and then rewound or fast-forwarded, the sequencer may not be able to  
transmit the correct status, and the sound generator will then misinterpret the data. Take  
care to give each event its own status.  
<Example 2> What is the decimal expression of the value 12 34H given as hexadecimal for  
each 7 bits?  
From the preceding table, since 12H = 18 and 34H = 52  
18 x 128+52 = 2356  
It is also necessary that the RPN or NRPN parameter number setting and the value setting  
be done in the proper order. On some sequencers, events occurring in the same (or  
consecutive) clock may be transmitted in an order different than the order in which they  
were received. For this reason it is a good idea to slightly skew the time of each event (about  
1 tick for TPQN = 96, and about 5 ticks for TPQN = 480).  
<Example 3> What is the decimal expression of the nibbled value 0A 03 09 0D?  
From the preceding table, since 0AH = 10, 03H = 3, 09H = 9, 0DH = 13  
((10 x 16+3) x 16+9) x 16+13 = 41885  
<Example 4> What is the nibbled expression of the decimal value 1258?  
*
TPQN: Ticks Per Quarter Note  
16 ) 1258  
16 )  
16 )  
78 ...10  
4 ...14  
0 ... 4  
Since from the preceding table, 0 = 00H, 4 = 04H, 14 = 0EH, 10 = 0AH, the result is: 00 04 0E  
0AH.  
9
 
MIDI Implementation  
Example of an Exclusive Message and  
Calculating a Checksum  
Roland Exclusive messages are transmitted with a checksum at the end (before F7) to make  
sure that the message was correctly received. The value of the checksum is determined by  
the address and data (or size) of the transmitted Exclusive message.  
How to calculate the checksum  
(hexadecimal numbers are indicated by "H")  
The checksum is a value derived by adding the address, size, and checksum itself and  
inverting the lower 7 bits.  
Here's an example of how the checksum is calculated. We will assume that in the Exclusive  
message we are transmitting, the address is aa bb cc ddH and the data or size is ee ffH.  
aa + bb + cc + dd + ee + ff = sum  
sum ÷ 128 = quotient ... remainder  
128 - remainder = checksum  
The Scale Tune Feature (address: 40 1x 40)  
The scale Tune feature allows you to finely adjust the individual pitch of the notes from C  
through B. Though the settings are made while working with one octave, the fine  
adjustments will affect all octaves. By making the appropriate Scale Tune settings, you can  
obtain a complete variety of tuning methods other than equal temperament. As examples,  
three possible types of scale setting are explained below.  
Equal Temperament  
This method of tuning divides the octave into 12 equal parts. It is currently the most widely  
used form of tuning, especially in occidental music. On the GW-8, the default settings for  
the Scale Tune feature produce equal temperament.  
Just Temperament (Tonic of C)  
The principal triads resound much more beautifully than with equal temperament, but this  
benefit can only be obtained in one key. If transposed, the chords tend to become  
ambiguous. The example given involves settings for a key in which C is the keynote.  
Arabian Scale  
By altering the setting for Scale Tune, you can obtain a variety of other tunings suited for  
ethnic music. For example, the settings introduced below will set the unit to use the Arabian  
Scale.  
Example Settings  
Note name  
Equal  
Just Temperament  
Arabian Scale  
Temperament(Key-tone C)  
C
0
0
0
0
0
0
0
0
0
0
0
0
0
-6  
C#  
D
-8  
+45  
-2  
+4  
+16  
-14  
-2  
Eb  
E
-12  
-51  
-8  
F
F#  
G
-10  
+2  
+14  
-16  
+14  
-12  
+43  
-4  
G#  
A
+47  
0
Bb  
B
-10  
-49  
The values in the table are given in cents. Convert these values to hexadecimal, and transmit  
them as Exclusive data.  
For example, to set the tune (C-B) of the Part 1 Arabian Scale, send the following data:  
F0 41 10 42 12 40 11 40 3A 6D 3E 34 0D 38 6B 3C 6F 40 36 0F 76 F7  
10  
 

RCA DVD VCR Combo DRC6355N User Guide
RCA Portable Stereo System TC1801 User Guide
ReliOn Humidifier Model H 0565 0 User Guide
Rio Audio Portable CD Player SP90 User Guide
Roland Musical Instrument HP107 User Guide
Rotel Stereo Amplifier RC 1070 User Guide
Samsung Camcorder WB2100 User Guide
Samsung Home Theater System HT DB390 User Guide
Sanyo Vacuum Cleaner SC 24L User Guide
Seagate Home Theater System ST336807LW LC User Guide