●Note Off
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 the drum part, this message is not received by certain instruments.
●Note On
Status 2nd byte 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
* 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 byte 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)
* If “GM1 System On” is received, Bank Select is not received.
* Bank Select is transmitted at power-on and when “GM2 System On” is received.
* Bank Select processing will be suspended until a Program Change message is received.
○Modulation (Controller Number 1)
Status 2nd byte 3rd byte
BnH 01H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Modulation depth: 00H–7FH (0–127)
* 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 byte 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 byte 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
mm = MSB, ll = LSB
○Volume (Controller Number 7)
Status 2nd byte 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.
○Pan (Controller Number 10)
Status 2nd byte 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 might not be capable of being panned all the way to the left or right, or might not be able to respond to this message.
○Expression (Controller Number 11)
Status 2nd byte 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.
○Hold 1 (Controller Number 64)
Status 2nd byte 3rd byte
BnH 40H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H–7FH (0–127)
○Portamento (Controller Number 65)
Status 2nd byte 3rd byte
BnH 41H vvH
1
Page 2
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H–7FH (0–127)
0–63 = OFF, 64–127 = ON
○Sostenuto (Controller Number 66)
Status 2nd byte 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 byte 3rd byte
BnH 43H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H–7FH (0–127)
* Some Tones will not exhibit any change.
○Resonance (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.
○Effect 1 (Reverb Send Level) (Controller Number 91)
Status 2nd byte 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 byte 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.
○RPN MSB/LSB (Controller Number 100, 101)
2
Page 3
Status 2nd byte 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
* 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>
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),
Refer to 4. Supplementary Material,
“About Tuning”
00H 02H mmH --- Master Coarse Tuning
mm: 00H–40H–7FH
(-64–0–+63 semitones),
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 a condition in which RPN is not
specified. 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 byte
CnH ppH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
pp = Program number: 00H–7FH (prog.1–prog.128)
* The sound will change beginning with the next note-on after the Program Change is received.
●Channel Pressure
Status 2nd byte
DnH vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Channel Pressure: 00H–7FH (0–127)
* The resulting effect is determined by System Exclusive messages. With the initial settings there will be no effect.
●Pitch Bend Change
Status 2nd byte 3rd byte
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)
* 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 byte
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 byte
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)
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
●All Notes Off (Controller Number 123)
3
Page 4
Status 2nd byte 3rd byte
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 byte
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 byte
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 byte
BnH 7EH mmH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
mm = mono number: 01H (1)
* The same processing will be carried out as when All Notes Off is received, and the corresponding channel will be set to Mode 4
(M=1). Only M=1 is supported.
●POLY (Controller Number 127)
Status 2nd byte 3rd byte
BnH 7FH 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, and the corresponding channel will be set to Mode 3.
■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 Universal Non-realtime System Exclusive messages.
●System Exclusive Messages Related to Mode Settings
These messages are used to initialize a device to GM mode.
When creating performance data, you should insert “GM1 System On” at the beginning of a GM1 score, or “GM2 System On” at the
beginning of a GM2 score. However, each song should contain only the single mode message that is appropriate for that song. (Do not
insert multiple mode setting messages in the same song.)
“GM System On” uses Universal Non-realtime Message format.
○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 GM1
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)
* Once this message is received, Bank Select is no longer received.
* 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.
●Universal Realtime System Exclusive Messages
○Master Volume
4
Page 5
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)
llH: ignored (processed as 00H)
mmH: 00H–7FH 0–127
* 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)
○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, F7H
01H, 01H, 01H, ppH, vvH
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, F7H
01H, 01H, 02H, ppH, vvH
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
5
Page 6
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)
○Scale/Octave Tuning Adjust
Status Data byte Status
F0H 7EH, 7FH, 08H, 08H, ffH, ggH, F7H
hhH, ssH...
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
bits 2 to 6 = Undefined
ggH Channel byte2
6
Page 7
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, F7H
kkH, nnH, vvH...
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 Controller Number
vvH Value
F7H EOX (End Of Exclusive)
○Identity Request Message
Status Data byte Status
F0H 7EH, 10H, 06H, 01H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-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
2.Transmit Data
■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 On
Status 2nd byte 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 byte 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 byte 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)
○Expression (Controller Number 11)
Status 2nd byte 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)
○Hold 1 (Controller Number 64)
Status 2nd byte 3rd byte
BnH 40H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
7
Page 8
vv = Control value: 00H–7FH (0–127)
○Sostenuto (Controller Number 66)
Status 2nd byte 3rd byte
BnH 42H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H-7FH (0-127)
0 = OFF, 127 = ON
○Soft (Controller Number 67)
Status 2nd byte 3rd byte
BnH 43H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H–7FH (0–127)
○Effect 1 (Reverb Send Level) (Controller Number 91)
Status 2nd byte 3rd byte
BnH 5BH vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
vv = Control value: 00H–7FH (0–127)
●Program Change
Status 2nd byte
CnH ppH
n = MIDI channel number: 0H–FH (ch.1–ch.16)
pp = Program number: 00H–7FH (prog.1–prog.128)
■System Exclusive Messages
○Identity Reply
Status Data byte Status
F0H 7EH, 10H, 06H, 02H, 41H, 19H, 03H, F7H
00H, 00H, 1CH, 01H, 00H, 00H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
10H Device ID
06H Sub ID#1 (General Information)
02H Sub ID#2 (Identity Reply)
41H ID number (Roland)
19H Device family code (LSB)
03H Device family code (MSB)
00H Device family number code (LSB)
00H Device family number code (MSB)
1CH Software revision level
01H Software revision level
00H Software revision level
00H Software revision level
F7H EOX (End of Exclusive)
3.Supplementary Material
●Decimal and Hexadecimal Table
In MIDI documentation, data values and addresses/sizes of exclusive messages etc. are expressed as hexadecimal values for each 7
bits.
The following table shows how these correspond to decimal numbers.
* Decimal values such as MIDI channel, bank select, and program change are listed as one (1) greater than the values given in the
above table.
* A 7-bits 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-bits 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.
* Data marked “nibbled” is expressed in hexadecimal in 4-bits 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
<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
<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?
16) 1258
16) 78... 10
16) 4... 14
---------------
0... 4
Since from the preceding table, 0 = 00H, 4 = 04H, 14 = 0EH, 10 = 0AH, the answer is 00 04 0E 0AH.
●Examples of Actual MIDI Messages
<Example 1> 92 3E 5F
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.
<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 (Flute in GS).
<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 128 + 0 = 8192) is 0, so this Pitch Bend Value is 28 00H
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 controller 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.
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.
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 GS sound sources 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, 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.
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 source will then misinterpret the data. Take care to give each event its own status.
It is also necessary that the RPN 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).
* TPQN: Ticks Per Quarter Note
●About Tuning
In MIDI, individual Parts are tuned by sending RPN #1 (Master Fine Tuning) to the appropriate MIDI channel.
In MIDI, all parts can be tuned by sending RPN#1 to each of the MIDI channels that you are using.
RPN#1 allows you to specify the tuning with an accuracy of approximately 0.012 cents (to be precise, 100/8192 cents).
One cent is 1/100th of a semitone.
9
Page 10
Frequently used tuning values are given in the following table for your reference. Values are in hexadecimal (decimal in
parentheses).
Digital Piano MIDI Implementation Chart Date: Aug. 1. 2021
Model:FP-30X Version:1.00
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Function... | Transmitted | Recognized | Remarks |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Basic Channel Default | 1 | 1–16 | |
| Changed | 1–16 | 1–16 | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Mode Default | Mode 3 | Mode 3 | *1 |
| Messages | X | Mode 3,4 (M = 1) | |
| Altered | ************** | | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Note Number : | 15–113 | 0–127 | |
| True Voice | ************** | 0–127 | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Velocity Note On | O | O | |
| Note Off | O | O | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| After Touch Key’s | X | X | |
| Channel’s | X | O | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Pitch Bend | X | O | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Control Change 0,32 | O | O | Bank select |
| 1 | X | O | Modulation |
| 5 | X | O | Portamento time |
| 6,38 | X | O | Data entry |
| 7 | X | O | Volume |
| 10 | X | O | Panpot |
| 11 | X | O | Expression |
| 64 | O | O | Hold 1 |
| 65 | X | O | Portamento |
| 66 | O | O | Sostenuto |
| 67 | O | O | Soft |
| 71 | X | O | Resonance |
| 72 | X | O | Release time |
| 73 | X | O | Attack time |
| 74 | X | O | Cutoff |
| 75 | X | O | Decay time |
| 76 | X | O | Vibrato rate |
| 77 | X | O | Vibrato depth |
| 78 | X | O | Vibrato delay |
| 84 | X | O | Portamento control |
| 91 | O | O (Reverb) | General purpose effects 1 depth |
| 93 | X | O (Chorus) | General purpose effects 3 depth |
| 100,101 | X | O | RPN LSB, MSB |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Program Change | O | O | |
| : True Number | ************** | 0–127 | Program No. 1–128 |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| System Exclusive | O | O | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| System Common : Song Position | X | X | |
| : Song Select | X | X | |
| : Tune Request | X | X | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| System Real Time : Clock | X | X | |
| : Commands | X | X | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Aux Messages : All Sound Off | X | O | |
| : Reset All Controllers | X | O | |
| : Local On/Off | O | X | |
| : All Notes Off | X | O (123–127) | |
| : Active Sensing | X | X | |
| : System Reset | X | X | |
+------------------------------------------+-------------------+--------------------+---------------------------------+
| Notes | *1 Only M=1 is supported |
+------------------------------------------+--------------------------------------------------------------------------+
Mode 1 : OMNI ON, POLY Mode 2 : OMNI ON, MONO O : Yes
Mode 3 : OMNI OFF, POLY Mode 4 : OMNI OFF, MONO X : No
17
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.