■
●
●
●
●
❍
❍
❍
❍
❍
❍
❍
❍
Digital Piano Date:July. 30, 2005
Model:KR107
MIDI Implementation
Version:1.00
* Messages for which [model name] is indicated are applicable only to that specific model.
1. Receive data
Channel Voice Messages
Note off
Status
8nH kkH vvH
9nH kkH 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = note off velocity : 00H-7FH (0-127)
* For Drum Parts, these messages are received when Rx.NOTE OFF = ON for each
Instrument.
* The velocity values of Note Off messages are ignored.
Note on
Status
9nH kkH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = note on velocity : 01H-7FH (1-127)
* Not received when Rx.NOTE MESSAGE = OFF. (Initial value is ON)
* For Drum Parts, not received when Rx.NOTE ON = OFF for each Instrument.
Polyphonic Key Pressure
Status
AnH kkH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = key pressure : 00H-7FH (0-127)
* Not received when Rx.POLY PRESSURE (PAf) = OFF. (Initial value is ON)
* The resulting effect is determined by System Exclusive messages. With the initial
settings, there will be no effect.
Control Change
* When Rx.CONTROL CHANGE = OFF, all control change messages except for Channel
Mode messages will be ignored.
* The value specified by a Control Change message will not be reset even by a Program
Change, etc.
Bank Select (Controller number 0, 32)
Status
BnH 00H mmH
BnH 20H llH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm, ll = Bank number : 00H, 00H-7FH, 7FH (bank.1-bank.16384), Initial Value = 00
* Not received when Rx.BANK SELECT = OFF.
* “Rx.BANK SELECT” is set to OFF by “GM1 System On,” and Bank Select message will
be ignored.
* “Rx.BANK SELECT” is set to ON by “GM2 System On.”
* “Rx.BANK SELECT” is set to ON by power-on Reset or by receiving “GS RESET.”
* When Rx.BANK SELECT LSB = OFF, Bank number LSB (llH) will be handled as 00H
regardless of the received value. However, when sending Bank Select messages, you
have to send both the MSB (mmH) and LSB (llH, the value should be 00H) together.
* Bank Select processing will be suspended until a Program Change message is received.
* The GS format “Variation number” is the value of the Bank Select MSB (Controller
number 0) expressed in decimal.
* Some other GS devices do not recognize the Bank Select LSB (Controller number 32).
2nd byte 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
00H (bank.1)
Modulation (Controller number 1)
Status 2nd bytes 3rd byte
BnH 01H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Modulation depth : 00H-7FH (0-127)
* Not received when Rx.MODULATION = OFF. (Initial value is ON)
* The resulting effect is determined by System Exclusive messages. With the initial
settings, this is Pitch Modulation Depth.
Portamento Time (Controller number 5)
Status 2nd bytes 3rd byte
BnH 05H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Portamento Time : 00H-7FH (0-127), Initial value = 00H (0)
* This adjusts the rate of pitch change when Portamento is ON or when using the
Portamento Control. A value of 0 results in the fastest change.
Data Entry (Controller number 6, 38)
Status 2nd bytes 3rd byte
BnH 06H mmH
BnH 26H llH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm, ll = the value of the parameter specified by RPN/NRPN
mm = MSB, ll = LSB
Volume (Controller number 7)
Status 2nd bytes 3rd byte
BnH 07H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Volume : 00H-7FH (0-127), Initial Value = 64H (100)
* Volume messages are used to adjust the volume balance of each Part.
* Not received when Rx.VOLUME = OFF. (Initial value is ON)
Pan (Controller number 10)
Status 2nd bytes 3rd byte
BnH 0AH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = pan : 00H-40H-7FH (Left-Center-Right), Initial Value = 40H
(Center)
* For Rhythm Parts, this is a relative adjustment of each Instrument’s pan setting.
* Some Tones are not capable of being panned all the way to the left or right.
* Not received when Rx.PANPOT = OFF. (Initial value is ON)
Expression (Controller number 11)
Status 2nd bytes 3rd byte
BnH 0BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Expression : 00H-7FH (0-127), Initial Value = 7FH (127)
* This adjusts the volume of a Part. It can be used independently from Volume messages.
Expression messages are used for musical expression within a performance; e.g.,
expression pedal movements, crescendo and decrescendo.
* Not received when Rx.EXPRESSION = OFF. (Initial value is ON)
Hold 1 (Controller number 64)
Status 2nd bytes 3rd byte
BnH 40H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
* Not received when Rx.HOLD1 = OFF. (Initial value is ON)
Copyright © 2005 ROLAND CORPORATION
1PS
All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND CORPORATION.
1
❍
❍
❍
❍
❍
❍
❍
❍
❍
❍
❍
❍
❍
❍
Portamento (Controller number 65)
Status 2nd bytes 3rd byte
BnH 41H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
* Not received when Rx.PORTAMENTO = OFF. (Initial value is ON)
Sostenuto (Controller number 66)
Status 2nd bytes 3rd byte
BnH 42H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
* Not received when Rx.SOSTENUTO = OFF. (Initial value is ON)
Soft (Controller number 67)
Status 2nd bytes 3rd byte
BnH 43H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
* Not received when Rx.SOFT = OFF. (Initial value is ON)
* Some Tones will not exhibit any change.
Filter Resonance (Timbre/Harmonic Intensity) (Controller number 71)
Status 2nd byte 3rd byte
BnH 47H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv= Resonance value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value = 40H (no change)
* Some Tones will not exhibit any change.
Release Time (Controller number 72)
Status 2nd byte 3rd byte
BnH 48H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Release Time value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value = 40H (no change)
* Some Tones will not exhibit any change.
Attack time (Controller number 73)
Status 2nd byte 3rd byte
BnH 49H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Attack time value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value=40H (no change)
* Some Tones will not exhibit any change.
Cutoff (Controller number 74)
Status 2nd byte 3rd byte
BnH 4AH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Cutoff value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value = 40H (no change)
* Some Tones will not exhibit any change.
Decay Time (Controller number 75)
Status 2nd byte 3rd byte
BnH 4BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Decay Time value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value = 40H (no change)
* Some Tones will not exhibit any change.
Vibrato Rate (Controller number 76)
Status 2nd byte 3rd byte
BnH 4CH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Vibrato Rate value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value = 40H (no change)
* Some Tones will not exhibit any change.
Vibrato Depth (Controller number 77)
Status 2nd byte 3rd byte
BnH 4DH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Vibrato Depth Value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial Value = 40H (no change)
* Some Tones will not exhibit any change.
Vibrato Delay (Controller number 78)
Status 2nd byte 3rd byte
BnH 4EH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Vibrato Delay value (relative change) : 00H-7FH(-64 - 0 - +63),
Initial value=40H (no change)
* Some Tones will not exhibit any change.
Portamento control (Controller number 84)
Status 2nd bytes 3rd byte
BnH 54H kkH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = source note number : 00H-7FH (0-127)
* A Note-on received immediately after a Portamento Control message will change
continuously in pitch, starting from the pitch of the Source Note Number.
* If a voice is already sounding for a note number identical to the Source Note Number,
this voice will continue sounding (i.e., legato) and will, when the next Note-on is
received, smoothly change to the pitch of that Note-on.
* The rate of the pitch change caused by Portamento Control is determined by the
Portamento Time value.
Example 1.
On MIDI Description Result
90 3C 40 Note on C4 C4 on
B0 54 3C Portamento Control from C4 no change (C4 voice still sunding)
90 40 40 Note on E4 glide from C4 to E4
80 3C 40 Note off C4 no change
80 40 40 Note off E4 E4 off
Example 2.
On MIDI Description Result
B0 54 3C Portamento Control from C4 no change
90 40 40 Note on E4 E4 is played with glide from C4 to E4
80 40 40 Note off E4 E4 off
Effect 1 (Reverb Send Level) (Controller number 91)
Status 2nd bytes 3rd byte
BnH 5BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127), Initial Value = 28H (40)
* This message adjusts the Reverb Send Level of each Part.
Effect 3 (Chorus Send Level) (Controller number 93)
Status 2nd bytes 3rd byte
BnH 5DH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127), Initial Value = 00H (0)
* This message adjusts the Chorus Send Level of each Part.
2
❍
❍
●
●
NRPN MSB/LSB (Controller number 98, 99)
Status 2nd bytes 3rd byte
BnH 63H mmH
BnH 62H llH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm = upper byte (MSB) of the parameter number specified by NRPN
ll = lower byte (LSB) of the parameter number specified by NRPN
* Rx.NRPN is set to OFF by power-on reset or by receiving “GM1 System On” or “GM2
System On,” and NRPN message will be ignored. NRPN message will be received when
Rx.NRPN = ON, or by receiving “GS RESET.”
* The value set by NRPN will not be reset even if Program Change or Reset All Controllers
is received.
**NRPN**
The NRPN (Non Registered Parameter Number) message allows an extended range of
control changes to be used.
To use these messages, you must first use NRPN MSB and NRPN LSB messages to specify
the parameter to be controlled, and then use Data Entry messages to specify the value of the
specified parameter. Once an NRPN parameter has been specified, all Data Entry messages
received on that channel will modify the value of that parameter. To prevent accidents, it is
recommended that you set RPN Null (RPN Number = 7FH/7FH) when you have finished
setting the value of the desired parameter. Refer to Section 4. Supplementary material
“Examples of actual MIDI messages” <Example 4> (p. 14). On the GS devices, Data entry
LSB (llH) of NRPN is ignored, so it is no problem to send Data entry MSB (mmH) only
(without Data entry LSB).
On this instrument, NRPN can be used to modify the following parameters.
NRPN Data entry
MSB LSB MSB Description
01H 08H mmH Vibrato Rate (relative change)
01H 09H mmH Vibrato Depth (relative change)
01H 0AH mmH Vibrato Delay (relative change)
01H 20H mmH TVF Cutoff Frequency (relative change)
01H 21H mmH TVF Resonance (relative change)
01H 63H mmH TVF&TVA Envelope Attack Time (relative change)
01H 64H mmH TVF&TVA Envelope Decay Time (relative change)
01H 66H mmH TVF&TVA Envelope Release Time (relative change)
18H rrH mmH Drum Instrument Pitch Coarse (relative change)
1AH rrH mmH Drum Instrument TVA Level (absolute change)
1CH rrH mmH Drum Instrument Panpot (absolute change)
1DH rrH mmH Drum Instrument Reverb Send Level (absolute change)
1EH rrH mmH Drum Instrument Chorus Send Level (absolute change)
* Parameters marked “relative change” will change relatively to the preset value(40H).
Even among different GS devices, “relative change” parameters may sometimes differ in
the way the sound changes or in the range of change.
* Parameters marked “absolute change” will be set to the absolute value of the parameter,
regardless of the preset value.
* Data entry LSB (llH) is ignored.
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
mm : 0EH-40H-72H (-50 - 0 - +50)
rr : key number of drum instrument
mm : 00H-40H-7FH (-63 - 0 - +63 semitone)
rr : key number of drum instrument
mm : 00H-7FH (zero-maximum)
rr : key number of drum instrument
mm : 00H, 01H-40H-7FH (Ramdom, Left-Center-Right)
rr : key number of drum instrument
mm : 01H-7FH (zero-maximum)
rr : key number of drum instrument
mm : 01H-7FH (zero-maximum)
RPN MSB/LSB (Controller number 100, 101)
Status 2nd bytes 3rd byte
BnH 65H mmH
BnH 64H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm = upper byte (MSB) of parameter number specified by RPN
ll = lower byte (LSB) of parameter number specified by RPN
* Not received when Rx.RPN = OFF. (Initial value is ON)
* The value specified by RPN will not be reset even by messages such as Program Change
or Reset All Controller.
**RPN**
The RPN (Registered Parameter Number) messages are expanded control changes, and each
function of an RPN is described by the MIDI Standard.
To use these messages, you must first use RPN MSB and RPN LSB messages to specify the
parameter to be controlled, and then use Data Entry messages to specify the value of the
specified parameter. Once an RPN parameter has been specified, all Data Entry messages
received on that channel will modify the value of that parameter. To prevent accidents, it is
recommended that you set RPN Null (RPN Number = 7FH/7FH) when you have finished
setting the value of the desired parameter.Refer to Section 4. “Examples of actual MIDI
messages” <Example 4> (p. 14).
On this instrument, RPN can be used to modify the following parameters.
RPN Data entry
MSB LSB MSB LSB Explanation
00H 00H mmH --- Pitch Bend Sensitivity
00H 01H mmH llH Master Fine Tuning
00H 02H mmH --- Master Coarse Tuning
00H 05H mmH llH Modulation Depth Range
7FH 7FH --- --- RPN null
mm : 00H-18H (0-24 semitones),
Initial Value = 02H (2 semitones)
ll : ignored (processed as 00h)
specify up to 2 octaves in semitone steps
mm, ll : 00 00H - 40 00H - 7F 7FH (-100 - 0 - +99.99 cents),
Initial Value = 40 00H (0 cent)
ll : ignored (processed as 00h)
specify up to 2 octaves in semitone steps
Refer to 4. Supplementary material, “About tuning” (p. 15)
mm : 28H - 40H - 58H (-24 - 0 - +24 semitones),
Initial Value = 40H (0 cent)
ll : ignored (processed as 00h)
mm : 00H - 04H (0 - 4 semitones)
ll : 00H - 7FH (0 - 100 cents)100/128 Cent/Value
Set condition where RPN and NRPN are unspecified. The
data entry messages after set RPN null will be ignored.
(No Data entry messages are required after RPN null).
Settings already made will not change.
mm, ll : ignored
Program Change
Status 2nd bytes
CnH ppH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
pp = Program number : 00H-7FH (prog.1-prog.128)
* Not received when Rx.PROGRAM CHANGE = OFF (Initial value is ON).
* After a Program Change message is received, the sound will change beginning with the
next Note-on. Voices already sounding when the Program Change message was
received will not be affected.
* For Drum Parts, Program Change messages will not be received on bank numbers 129-
16384 (the value of Control Number 0 is other than 0 (00H)).
Channel Pressure
Status 2nd bytes
DnH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Channel Pressure : 00H-7FH (0-127)
* Not received when Rx.CH PRESSURE (CAf) = OFF (Initial value is ON).
* The resulting effect is determined by System Exclusive messages. With the initial
settings there will be no effect.
3
●
■
●
●
●
●
●
●
●
●
■
●
■
Pitch Bend Change
Status 2nd byte 3rd bytes
EnH llH mmH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm, ll = Pitch Bend value : 00 00H - 40 00H - 7F 7FH (-8192 - 0 - +8191)
* Not received when Rx.PITCH BEND = OFF. (Initial value is ON)
* The resulting effect is determined by System Exclusive messages. With the initial
settings the effect is Pitch Bend.
Channel Mode Messages
All Sounds Off (Controller number 120)
Status
BnH 78H 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* When this message is received, all currently-sounding notes on the corresponding
channel will be turned off immediately.
Reset All Controllers (Controller number 121)
Status
BnH 79H 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* When this message is received, the following controllers will be set to their reset values.
Controller Reset value
Pitch Bend Change 0 (Center)
Polyphonic Key Pressure 0 (off)
Channel Pressure 0 (off)
Modulation 0 (off)
Expression 127 (max)
Hold 1 0 (off)
Portamento 0 (off)
Sostenuto 0 (off)
Soft 0 (off)
RPN unset; previously set data will not change
NRPN unset; previously set data will not change
Loacl Control(Controller number 122)
Status
BnH 7AH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H, 7FH (0,127)
All Notes Off (Controller number 123)
Status
BnH 7BH 00H
2nd byte 3rd bytes
2nd byte 3rd bytes
2nd byte 3rd bytes
00H : Local Off
7FH : Local On
2nd byte 3rd bytes
OMNI ON (Controller number 125)
Status 2nd byte 3rd bytes
BnH 7DH 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* OMNI ON is only recognized as “All notes off”; the Mode doesn’t change (OMNI OFF
remains).
MONO (Controller number 126)
Status 2nd byte 3rd bytes
BnH 7EH mmH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm = mono number : 00H-10H (0-16)
* The same processing will be carried out as when All Sounds Off and All Notes Off is
received, and the corresponding channel will be set to Mode 4 (M = 1) regardless of the
value of “mono number.”
POLY (Controller number 127)
Status 2nd byte 3rd bytes
BnH 7FH 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* The same processing will be carried out as when All Sounds Off and All Notes Off is
received, and the corresponding channel will be set to Mode 3.
System Realtime Message
Active Sensing
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.
System Exclusive Message
Status
F0H iiH, ddH, ......, eeH F7H
F0H : System Exclusive Message status
ii = ID number : an ID number (manufacturer ID) to indicate the manufacturer whose
dd,...,ee = data : 00H-7FH (0-127)
F7H : EOX (End Of Exclusive)
Data byte Status
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).
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* 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.
OMNI OFF (Controller number 124)
Status
BnH 7CH 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
* The same processing will be carried out as when All Notes Off is received.
2nd byte 3rd bytes
4
The System Exclusive Messages received by this instrument are; messages related to mode
settings, Universal Realtime System Exclusive messages and Data Set (DT1).
●
❍
❍
❍
❍
●
❍
❍
❍
System exclusive messages related to mode settings
These messages are used to initialize a device to GS or General MIDI mode, or change the
operating mode. When creating performance data, a “GM1 System On” message should be
inserted at the beginning of a General MIDI 1 score, a “GM2 System On” message at the
beginning of a General MIDI 2 score, and a “GS Reset” message at the beginning of a GS
music data. Each song should contain only one mode message as appropriate for the type of
data. (Do not insert two or more mode setting messages in a single song.)
“GM System On” uses Universal Non-realtime Message format. “GS Reset” uses Roland
system Exclusive format “Data Set 1 (DT1).”
GM1 System On
This is a command message that resets the internal settings of the unit to the General MIDI
initial state (General MIDI System-Level 1). After receiving this message, this instrument
will automatically be set to the proper condition for correctly playing a GM score.
Status Data byte Status
F0H 7EH, 7FH, 09H, 01H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub ID#1 (General MIDI Message)
01H Sub ID#2 (General MIDI 1 On)
F7H EOX (End Of Exclusive)
* When this message is received, Rx.BANK SELECT will be OFF and Rx.NRPN will be
OFF.
* There must be an interval of at least 50 ms between this message and the next.
GM2 System On
This is a command message that resets the internal settings of the unit to the General MIDI
initial state (General MIDI System-Level 2). After receiving this message, this instrument
will automatically be set to the proper condition for correctly playing a GM2 score.
Status Data byte Status
F0H 7EH 7FH 09H 03H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub ID#1 (General MIDI Message)
03H Sub ID#2 (General MIDI 2 On)
F7H EOX (End Of Exclusive)
* When this message is received, this instrument will be able to receive the messages
specified by General MIDI 2, and use the General MIDI 2 soundmap.
* There must be an interval of at least 50 ms between this message and the next.
GM System Off
“GM System Off” is a command message that resets the internal state of this instrument
from the GM state to its native condition. This instrument will reset to the GS default state.
Status Data byte Status
F0H 7EH, 7FH, 09H, 02H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub-ID#1 (General MIDI message)
02H Sub-ID#2 (General MIDI Off)
40H EOX (End of exclusive)
* There must be an interval of at least 50 ms between this message and the next.
GS reset
GS Reset is a command message that resets the internal settings of a device to the GS initial
state. This message will appear at the beginning of GS music data, and a GS device that
receives this message will automatically be set to the proper state to correctly playback GS
music data.
Status Data byte Status
F0H 41H, 10H, 42H, 12H, 40H, 00H, 7FH, 00H, 41H F7H
Byte Explanation
F0H Exclusive status
41H ID number (Roland)
10H Device ID (dev: 00H-1FH (1-32), Initial value is 10H (17))
42H Model ID (GS)
12H Command ID (DT1)
40H Address MSB
00H Address
7FH Address LSB
00H Data (GS reset)
41H Checksum
F7H EOX (End Of Exclusive)
* When this message is received, Rx.NRPN will be ON.
* There must be an interval of at least 50 ms between this message and the next.
Universal Realtime System Exclusive Messages
Master volume
Status Data byte Status
F0H 7FH, 7FH, 04H, 01H, llH, mmH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control messages)
01H Sub ID#2 (Master Volume)
llH Master volume lower byte
mmH Master volume upper byte
F7H EOX (End Of Exclusive)
* The lower byte (llH) of Master Volume will be handled as 00H.
Master Fine Tuning
Status Data byte Status
F0H 7FH, 7FH, 04H, 03H, llH, mmH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control)
03H Sub ID#2 (Master Fine Tuning)
llH Master Fine Tuning LSB
mmH Master Fine Tuning MSB
F7H EOX (End Of Exclusive)
mm, ll : 00 00H - 40 00H - 7F 7FH(-100 - 0 - +99.9 [cents])
Master Coarse Tuning
Status Data byte Status
F0H 7FH, 7FH, 04H, 04H, llH, mmH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control)
04H Sub ID#2 (Master Coarse Tuning)
llH Master Coarse Tuning LSB
mmH Master Coarse Tuning MSB
F7H EOX (End Of Exclusive)
llH : ignored (processed as 00H)
mmH : 28H - 40H - 58H (-24 - 0 - +24 [semitones])
5
●
❍
❍
❍
❍
❍
Global Parameter Control
Parameters of the Global Parameter Control are newly provided for the General MIDI 2.
Reverb Parameters
Status Data byte Status
F0H 7FH, 7FH, 04H, 05H, 01H, 01H, 01H, 01H, 01H, ppH, vvH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control)
05H Sub ID#2 (Global Parameter Control)
01H Slot path length
01H Parameter ID width
01H Value width
01H Slot path MSB
01H Slot path LSB (Effect 0101: Reverb)
ppH Parameter to be controlled.
vvH Value for the parameter.
F7H EOX (End Of Exclusive)
pp=0 Reverb Type
vv = 00H Small Room (Room1)
vv = 01H Medium Room (Room2)
vv = 02H Large Room (Room3)
vv = 03H Medium Hall (Hall1)
vv = 04H Large Hall (Hall2)
vv = 08H Plate (Plate)
pp=1 Reverb Time
vv = 00H - 7FH 0 - 127
Chorus Parameters
Status Data byte Status
F0H 7FH, 7FH, 04H, 05H, 01H, 01H, 01H, 01H, 02H, ppH, vvH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control)
05H Sub ID#2 (Global Parameter Control)
01H Slot path length
01H Parameter ID width
01H Value width
01H Slot path MSB
02H Slot path LSB (Effect 0102: Chorus)
ppH Parameter to be controlled.
vvH Value for the parameter.
F7H EOX (End Of Exclusive)
pp=0 Chorus Type
vv=0 Chorus1
vv=1 Chorus2
vv=2 Chorus3
vv=3 Chorus4
vv=4 FB Chorus
vv=5 Flanger
pp=1 Mod Rate
vv= 00H - 7FH 0 - 127
pp=2 Mod Depth
vv = 00H - 7FH 0 - 127
pp=3 Feedback
vv = 00H - 7FH 0 - 127
pp=4 Send To Reverb
vv = 00H - 7FH 0 - 127
Channel Pressure
Status Data byte Status
F0H 7FH, 7FH, 09H, 01H, 0nH, ppH, rrH F7H
0nH MIDI Channel (00 - 0F)
ppH Controlled parameter
rrH Controlled range
F7H EOX (End Of Exclusive)
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
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[%]
Controller
Status Data byte Status
F0H 7FH, 7FH, 09H, 03H, 0nH, ccH, ppH, rrH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
09H Sub ID#1 (Controller Destination Setting)
03H Sub ID#2 (Control Change)
0nH MIDI Channel (00 - 0F)
ccH Controller number (01 - 1F, 40 - 5F)
ppH Controlled parameter
rrH Controlled range
F7H EOX (End Of Exclusive)
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
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[%]
Scale/Octave Tuning Adjust
Status Data byte Status
F0H 7EH, 7FH, 08H, 08H, ffH, ggH, hhH, ssH... F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
08H Sub ID#1 (MIDI Tuning Standard)
08H Sub ID#2 (scale/octave tuning 1-byte form)
ffH Channel/Option byte1
bits 0 to 1 = channel 15 to 16
bit 2 to 6 = Undefined
ggH Channel byte2
bits 0 to 6 = channel 8 to 14
hhH Channel byte3
bits 0 to 6 = channel 1 to 7
ssH 12 byte tuning offset of 12 semitones from C to B
00H = -64 [cents]
40H = 0 [cents] (equal temperament)
7FH = +63 [cents]
F7H EOX (End Of Exclusive)
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
09H Sub ID#1 (Controller Destination Setting)
01H Sub ID#2 (Channel Pressure)
6
❍
●
❍
●
❍
■
●
●
●
❍
❍
❍
❍
❍
❍
Key-Based Instrument Controllers
Status Data byte Status
F0H 7FH, 7FH, 0AH, 01H, 0nH, kkH, nnH, vvH... F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
0AH Sub ID#1 (Key-Based Instrument Control)
01H Sub ID#2 (Controller)
0nH MIDI Channel (00 - 0FH)
kkH Key Number
nnH Control Number
vvH Value
F7H EOX (End Of Exclusive)
nn=07H Level
vv = 00H - 7FH 0 - 200[%] (Relative)
nn=0AH Pan
vv = 00H - 7FH Left - Right (Absolute)
nn=5BH Reverb Send
vv = 00H - 7FH 0 - 127 (Absolute)
nn=5D Chorus Send
vv = 00H - 7FH 0 - 127 (Absolute)
* This parameter effects drum instruments only.
Universal Non-realtime System Exclusive Messages
Identity Request Message
Status Data byte Status
F0H 7FH, 10H, 06H, 01H F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
10H Device ID
06H Sub ID#1 (General Information)
01H Sub ID#2 (Identity Request)
F7H EOX (End Of Exclusive)
* Device ID = 10H or 7FH
Data transmission
This instrument can receive the various parameters using System Exclusive messages.
The exclusive message of GS format data has a model ID of 42H and a device ID of 10H (17),
and it is common to all the GS devices.
Data set 1DT1
This is the message that actually performs data transmission, and is used when you wish to
transmit the data.
Status Data byte Status
F0H 41H, 10H, 42H, 12H, aaH, bbH, ccH, ddH, ... eeH, sum F7H
Byte Explanation
F0H Exclusive status
41H ID number (Roland)
10H Device ID
42H Model ID (GS)
12H Command ID (DT1)
aaH Address MSB: upper byte of the starting address of the transmitted
data
bbH Address: middle byte of the starting address of the transmitted data
ccH Address LSB: lower byte of the starting address of the transmitted
data
ddH Data: the actual data to be transmitted. Multiple bytes of data are
transmitted starting from the address.
:
:
eeH Data
sum Checksum
F7H EOX (End Of Exclusive)
* The amount of data that can be transmitted at one time depends on the type of data, and
data can be received only from the specified starting address and size. Refer to the
Address and Size given in Section 3 (p. 9).
* Data larger than 128 bytes must be divided into packets of 128 bytes or less. If “Data Set
1” is transmitted successively, there must be an interval of at least 40 ms between
packets.
* Regarding the checksum please refer to section 4 (p. 15).
2. Transmit data
Arranger data can not be transmitted.
Channel Voice Messages
Note off
Status
8nH kkH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = note off velocity : 00H-7FH (0-127)
* Note off message is sent out with the velocity of 40H.
Note on
Status
9nH kkH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = note on velocity : 01H-7FH (1-127)
Control Change
Bank Select (Controller number 0, 32)
Status
BnH 00H mmH
BnH 20H llH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm, ll = Bank number : 00H, 00H-7FH, 7FH (bank.1-bank.16384)
Volume (Controller number 7)
Status
BnH 07H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Volume : 00H-7FH (0-127)
Expression (Controller number 11)
Status
BnH 0BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Expression : 00H-7FH (0-127)
Hold 1 (Controller number 64)
Status
BnH 40H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
Sostenuto (Controller number 66)
Status
BnH 42H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
Soft (Controller number 67)
Status
BnH 43H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
2nd byte 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
2nd bytes 3rd byte
7
Effect 1 (Reverb Send Level) (Controller number 91)
Status 2nd bytes 3rd byte
BnH 5BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
Effect 3 (Chorus Send Level) (Controller number 93)
Status 2nd bytes 3rd byte
BnH 5DH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
Program Change
Status 2nd bytes
CnH ppH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
pp = Program number : 00H-7FH (prog.1-prog.128)
Pitch Bend Change
Status 2nd byte 3rd bytes
EnH llH mmH
❍
❍
●
●
■
●
●
■
❍
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm, ll = Pitch Bend value : 00 00H - 40 00H - 7F 7FH (-8192 - 0 - +8191)
System Realtime Message
Realtime Clock
Status
F8H
Active sensing
Status
FEH
* This will be transmitted constantly at intervals of approximately 250 ms.
System exclusive messages
Identity Reply
Status
F0H 7EH, 10H, 06H, 02H, 41H, 42H, 00H, 00H, 12H, 00H, 01H, 00H, 00H F7H
Byte
F0H Exclusive status
7EH ID number (universal non-realtime message)
10H Device ID (use the same as the device ID of Roland)
06H Sub ID#1 (General Information)
02H Sub ID#2 (Identity Reply)
41H ID number (Roland)
42H Device family code (LSB)
00H Device family code (MSB)
00H Device family number code (LSB)
12H Device family number code (MSB)
00H Software revision level
01H Software revision level
00H Software revision level
00H Software revision level
F7H EOX (End of Exclusive)
Data byte Status
Explanation
8
3. Parameter Address Map (Model ID = 42H)
This map indicates address, size, Data (range), Parameter, Description, and Default Value of parameters which can be transferred using and “Data set 1 (DT1).”
All the numbers of address, size, Data, and Default Value are indicated in 7-bit Hexadecimal-form.
Address Block map
An outlined address map of the Exclusive Communication is as follows;
Address (H) Block
40 00 00 +—————————————————————————+
40 01 3F +—————————————————————————+
40 1x 00 +—————————————————————————+
40 2x 5A +—————————————————————————+
41 m0 00 +—————————————————————————+
41 m8 7F +—————————————————————————+
48 00 00 +—————————————————————————+
48 01 10 +—————————————————————————+
48 1D 0F +—————————————————————————+
49 m0 00 +—————————————————————————+
49 mE 17 +—————————————————————————+
There are two ways in which GS data is transmitted: Individual Parameter Transmission in which individual parameters are transmitted one by one, and Bulk Dump Transmission in which a
large amount of data is transmitted at once.
| SYSTEM PARAMETERS | Individual
| PART PARAMETERS | Individual
| (x = 0-F) |
| SRUM SETUP PARAMETERS | Individual
| (m = 0-1) |
| SYSTEM PARAMETERS | Bulk
| PART PARAMETERS | Bulk
| DRUM SETUP PARAMETER | Bulk
| (m = 0-1) |
9
■
■
●
Individual Parameters
Individual Parameter Transmission transmits data (or requests data) for one parameter as one exclusive message (one packet of “F0 ..... F7”).
In Individual Parameter Transmission, you must use the Address and Size listed in the following “Parameter Address Map.” Addresses marked at “#” cannot be used as starting addresses.
System Parameters
Parameters related to the system of the device are called System Parameters.
Address (H)
40 00 00 00 00 04 0018-07E8 MASTER TUNE -100.0 - +100.0 [cent] 00 04 00 00 0 [cent]
40 00 01# Use nibblized data.
40 00 02#
40 00 03#
* Refer to section 4. Supplementary material, “About tuning” (p. 15).
40 00 04 00 00 01 00-7F MASTER VOLUME 0-127 7F 127
40 00 05 00 00 01 28-58 MASTER KEY-SHIFT -24 - +24 [semitones] 40 0 [semitones]
40 00 06 00 00 01 01-7F MASTER PAN -63 (LEFT) - +63 (RIGHT) 40 0 (CENTER)
40 00 7F 00 00 01 00 MODE SET 00 = GS Reset,
* Refer to “System exclusive messages related to mode settings” (p. 5).
40 01 10 00 00 10 00-40 VOICE RESERVE Part 10 (Drum Part) 02 2
40 01 11# Part 1 06 6
40 01 12# Part 2 02 2
40 01 13# Part 3 02 2
40 01 14# Part 4 02 2
40 01 15# Part 5 02 2
40 01 16# Part 6 02 2
40 01 17# Part 7 02 2
40 01 18# Part 8 02 2
40 01 19# Part 9 02 2
40 01 1A# Part 11 00 0
40 01 :# :
40 01 1F# Part 16 00 0
* The sum total of voices in the voice reserve function must be equal to or less than the number of the maximum polyphony. The maximum polyphony of this instrument is 128. For
compatibility with other GS models, it is recommended that the maximum polyphony be equal or less than 24.
Size (H) Data (H) Parameter Description Default Value (H) Description
(= F0 7F 7F 04 01 00 vv F7)
127 = Exit GS mode(Rx. only)