DIGITAL PIANO |
MIDI Implementation |
Date: June. 1, 2000 |
Model HP-557R |
Version: 1.00 |
|
KR-277/377/577/977/1077 |
|
|
1. Receive data
*Messages for which [model name] is indicated are applicable only to that specific model. Messages for which [other than KR-277] is indicated are applicable to units other than the KR-277 (i.e., the HP-557R, KR-377/577/977/1077).
■Channel Voice Messages
●Note off
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.
Status |
2nd byte |
3rd byte |
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 |
2nd bytes |
3rd byte |
9nH |
kkH |
vvH |
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) 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 |
2nd bytes |
3rd byte |
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 |
2nd bytes |
3rd byte |
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 00H (bank.1)
*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).
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)
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)
Copyright © 2000 ROLAND CORPORATION |
1 |
|
All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND CORPORATION. |
||
|
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) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
09H |
mmH |
Vibrato Depth (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
0AH |
mmH |
Vibrato Delay (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
20H |
mmH |
TVF Cutoff Frequency (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
21H |
mmH |
TVF Resonance (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
63H |
mmH |
TVF&TVA Envelope Attack Time (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
64H |
mmH |
TVF&TVA Envelope Decay Time (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
01H |
66H |
mmH |
TVF&TVA Envelope Release Time (relative change) |
|
|
|
mm: 0EH-40H-72H (-50 - 0 - +50) |
18H rrH |
mmH |
Drum Instrument Pitch Coarse (relative change) |
|
|
|
|
rr : key number of drum instrument |
|
|
|
mm: 00H-40H-7FH (-63 - 0 - +63 semitone) |
1AH rrH |
mmH |
Drum Instrument TVA Level (absolute change) |
|
|
|
|
rr : key number of drum instrument |
|
|
|
mm: 00H-7FH (zero-maximum) |
1CH rrH |
mmH |
Drum Instrument Panpot (absolute change) |
|
|
|
|
rr : key number of drum instrument |
|
|
|
mm: 00H, 01H-40H-7FH (Ramdom, Left-Center-Right) |
1DH rrH |
mmH |
Drum Instrument Reverb Send Level (absolute change) |
|
|
|
|
rr : key number of drum instrument |
|
|
|
mm: 01H-7FH (zero-maximum) |
1EH rrH |
mmH |
Drum Instrument Chorus Send Level (absolute change) |
|
|
|
|
rr : key number of drum instrument |
mm:01H-7FH (zero-maximum)
*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.
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 |
|
|
|
mm: 00H-18H (0-24 semitones),Initial Value = 02H (2 semitones) |
|
|
|
ll : ignored (processed as 00h) |
|
|
|
specify up to 2 octaves in semitone steps |
|
00H 01H |
mmH llH |
Master Fine Tuning |
|
|
|
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) |
|
00H 02H |
mmH --- |
Master Coarse Tuning |
|
|
|
mm : 28H - 40H - 58H (-24 - 0 - +24 semitones), |
|
|
|
Initial Value = 40H (0 cent) |
|
|
|
ll : ignored (processed as 00h) |
|
00H 05H |
mmH llH |
Modulation Depth Range |
|
|
|
mm : 00H - 04H (0 - 4 semitones) |
|
|
|
ll : 00H - 7FH (0 - 100 cents) |
100/128 Cent/Value |
7FH 7FH |
--- --- |
RPN null |
|
|
|
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 12916384 (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 |
2nd byte |
3rd bytes |
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 |
2nd byte |
3rd bytes |
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 |
2nd byte |
3rd bytes |
BnH |
7AH |
vvH |
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H, 7FH (0, 127), 00H: Local Off, 7FH: Local On
●All Notes Off (Controller number 123)
Status |
2nd byte |
3rd bytes |
BnH |
7BH |
00H |
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 |
2nd byte |
3rd bytes |
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.
●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 |
Data byte |
Status |
F0H |
iiH, ddH, ......, eeH |
F7H |
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: 00H-7FH (0-127) F7H: EOX (End Of Exclusive)
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 General MIDI 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.
4
GM2 System On
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) |
|
*When this message is received, this instrument will reset to the GS default state.
*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]) |
|
●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 |
|
|
vv = 01H |
Medium Room |
|
|
vv = 02H |
Large Room |
|
|
vv = 03H |
Medium Hall |
|
|
vv = 04H |
Large Hall |
|
|
vv = 08H |
Plate |
|
pp=1 |
Reverb Time |
|
|
|
vv = 00H - 7FH |
0 - 127 |
|
5
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 |
|
|
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) |
|
|
|
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) |
|
|
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.
6
●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) |
|
●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 1 DT1
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. 14).
2. Transmit data
Arranger data can not be transmitted.
■Channel Voice Messages
●Note off
Status |
2nd byte |
3rd byte |
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 |
2nd bytes |
3rd byte |
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 |
2nd bytes |
3rd byte |
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 |
2nd bytes |
3rd byte |
|
BnH |
07H |
vvH |
|
n = MIDI channel number: 0H-FH (ch.1-ch.16) |
|
||
vv = Volume: 00H-7FH (0-127) |
|
|
|
Expression (Controller number 11) |
[KR-977/1077] |
||
Status |
2nd bytes |
3rd byte |
|
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 |
2nd bytes |
3rd byte |
|
BnH |
40H |
vvH |
|
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127) [other than KR-277]
vv = Control value: 00H, 7FH (0, 127) 0 = OFF, 127 = ON [KR-277]
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
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) [other than KR-277]
vv = Control value: 00H, 7FH (0, 127) 0 = OFF, 127 = ON [KR-277]
7