This instrument contains two sound generators: one for accompaniment (GM2) and
one for keyboard performance.
Normally, data received at the MIDI IN connector will control only the sound generator for keyboard performance. However by changing the “MIDI IN Mode” setting, you
can control the GM2 sound generator from MIDI In.
For instructions on changing the “MIDI IN Mode,” refer to the Owner’s Manual.
For instructions on controlling each sound generator, refer to the “Received data”
section.
MIDI IN Mode
Mode Explanation
MODE 1 Control the instrument as a GM2 sound generator.
MODE 2 Channels 5 through 10 and Channels 12,14,15 are transmitted
to the GM2 sound generator, and all other channels are
transmitted to the keyboard sound generator.
KEYBOARD
The correspondence between channels and parts in each mode is described below.
* Valid in dual mode if a piano sound is assigned to part 2.
All channels are sent to the lower part for keyboard performance.
2. Transmit Channel
Keyboard and Transmit Channel
You can control external MIDI devices using the VR-09’s MIDI OUT connector. Data
describing what is played on the upper part, the lower part, and the pedal part is
transmitted over MIDI channels for the respective parts.
Messages from the expression pedal and PC Numbers set in the Registrations are
transmitted on the Control channel.
The channels used for transmission can be changed individually for each Registration. For instructions on how to change the transmission channels, refer to the
Owner’s Manual.
3. Receive Data
[GM2] This indicates that the message will be received if the MIDI IN
Mode is MODE 1 and the unit is in GM2 mode. Use GM2 System
On (p. 5) to select GM2 mode.
[GM1] This indicates that the message will be received if the MIDI IN
Mode is MODE 1 and the unit is in GM1 mode. Use GM1 System
On (p. 5) to select GM1 mode.
[VR-09] This indicates that the message will be received on the
keyboard part if the MIDI IN Mode is MODE 2. For details on the
keyboard part, refer to “1. Receive Channel” (p. 1).
Channel Voice Messages
Note o [GM2] [GM1] [VR-09]
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 o velocity: 00H-7FH (0-127)
* The velocity values of Note O messages are ignored.
Note on [GM2] [GM1] [VR-09]
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
* The value specied by a Control Change message will not be reset even by a
Program Change, etc.
Bank Select (Controller number 0, 32) [GM2]
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: 00 00H-7F 7FH (bank.1-bank.16384),
Initial Value = 00 00H (bank.1)
* After receiving “GM1 System On,” Bank Select messages will be ignored. After
receiving “GM2 System On,” Bank Select messages will be recognized.
* Bank Select processing will be suspended until a Program Change message is
received.
* Not Received in keyboard part. Specication of the tones used by keyboard parts is
accomplished using System Exclusive messages (p. 11).
Channel (default) Content Transmitted
UPPER (4) Key information from the upper part is
transmitted.
LOWER (3) Key information from the lower part is
transmitted.
PEDAL (2) Performance information from the pedal
part is transmitted.
(when using a pedalboard)
PIANO DUAL2 (1) Key information is transmitted if a piano
sound is assigned to part 2 in dual mode.
CONTROL (16) Expression pedal information and PC
Numbers set in the Registrations are
transmitted.
* The PC Number is transmitted when Send PC Switch is set to ON.
* For more details regarding the data that is transmitted, refer to “4. Transmit Data”
(p. 7).
1PS
All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND CORPORATION.
Portamento Time (Controller number 5) [GM2] [VR-09]
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) [GM2] [GM1]
[VR-09]
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 specied by RPN/NRPN
mm = MSB, ll = LSB
Volume (Controller number 7) [GM2] [GM1] [VR-09]
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.
* Volume messages cannot independently control the layered parts of the keyboard
part. If you need to independently control the parts that are layered on the
keyboard part, you must use system exclusive messages for the keyboard part (p.
11) [VR-09].
Sostenuto (Controller number 66) [GM2] [VR-09]
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) [GM2] [VR-09]
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
* Eects may vary depending on the tone used.
Resonance (Controller number 71) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 47H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
* With certain tones, there may be no eect at all.
Release Time (Controller number 72) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 48H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
Panpot (Controller number 10) [GM2] [GM1] [VR-09]
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)
* This does not aect eects such as reverb or rotary sound.
Expression (Controller number 11) [GM2] [GM1]
[VR-09]
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.
* If received on the Control Channel while MIDI IN Mode 2 is in eect, this changes
the VR-09’s overall volume in the same manner as the expression pedal. The volume
of individual keyboard parts cannot be controlled independently [VR-09].
Hold 1 (Controller number 64) [GM2] [GM1] [VR-09]
Status 2nd bytes 3rd byte
BnH 40H vvH
* With certain tones, there may be no eect at all.
Attack Time (Controller number 73) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 49H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
* With certain tones, there may be no eect at all.
Eect 3 (Chorus Send Level) (Controller number 93)
[GM2]
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.
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127)
Portamento (Controller number 65) [GM2] [VR-09]
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
2
Page 3
MIDI Implementation
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 of parameter number specied by RPN (MSB)
ll = lower byte of parameter number specied by RPN (LSB)
* Not received when Rx.RPN = OFF. (Initial value is ON)
* The value specied 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 rst 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 specied parameter. Once an RPN parameter has been specied, 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 nished setting the value of the desired parameter.Refer to Section 6.
“Examples of actual MIDI messages” <Example 4> (p. 14).
On the VR-09, RPN can be used to modify the following parameters.
RPN Data entry
MSB LSB MSB LSB Explanation
00H 00H mmH --- Pitch Bend Sensitivity [GM2] [GM1]
[VR-09]
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 [GM2] [GM1] [VR-09]
mm, ll: 20 00H - 40 00H - 60 00H (-50 - 0 +50 cents), Initial Value = 40 00H (0 cent)
ll: ignored (processed as 00h)
Refer to 6. Supplementary material,
“About tuning” (p. 15)
00H 02H mmH --- Master Coarse Tuning [GM2] [GM1]
[VR-09]
mm: 10H - 40H - 70H (-48 - 0 - +48
semitones), Initial Value = 40H (0 cent)
ll: ignored (processed as 00h)
00H 05H mmH llH Modulation Depth Range [GM2]
mm, ll: 00 00H - 06 00H
(0 - 16384 * 600 / 16384 cent)
7FH 7FH --- --- RPN null
Set condition where RPN and NRPN are
unspecied. 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 [GM2] [GM1]
Status 2nd bytes
CnH ppH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
pp = Program number: 00H-7FH (prog.1-prog.128)
* 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 aected.
* Not Received in keyboard part.
* Specication of the tones used by keyboard parts is accomplished using System
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll = Pitch Bend value: 00 00H - 40 00H - 7F 7FH
(-8192 - 0 - +8191)
3
Page 4
MIDI Implementation
Channel Mode Messages
All Sounds O (Controller number 120) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 78H 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* When this message is received, all notes currently sounding on the corresponding
channel will be turned o.
Reset All Controllers (Controller number 121) [GM2]
Status 2nd byte 3rd byte
BnH 79H 00H
n = MIDI channel number: 0H - FH (Ch.1 - 16)
* When this message is received, the following controllers will be set to their reset
values.
Controller Reset value
Pitch Bend Change ±0 (center)
Polyphonic Key Pressure 0 (o)
Channel Pressure 0 (o)
Modulation 0 (o)
Expression 127 (max) However, the controller will be
at minimum.
Hold 1 0 (o )
Sostenuto 0 (o )
Soft 0 (o )
RPN unset; previously set data will not change
NRPN unset; previously set data will not change
MONO (Controller number 126) [GM2] [VR-09]
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 O and All Notes O 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) [GM2] [VR-09]
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 O and All Notes O is
received, and the corresponding channel will be set to Mode 3.
Active Sensing
Status
FEH
* Once an Active Sensing message is received, the unit will begin monitoring the
interval between all subsequent messages. If there is an interval of 420 ms or
longer between messages while monitoring is active, the same processing as when
All Sound O, All Notes O, and Reset All Controllers messages are received will be
carried out. The unit will then stop monitoring the message interval.
All Notes O (Controller number 123) [GM2] [GM1]
[VR-09]
Status 2nd byte 3rd bytes
BnH 7BH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* When All Notes O is received, all notes on the corresponding channel will be
turned o. However if Hold 1 or Sostenuto is ON, the sound will be continued until
these are turned o.
OMNI OFF (Controller number 124) [GM2] [VR-09]
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 O is received.
OMNI ON (Controller number 125) [GM2] [VR-09]
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 o”; the Mode doesn’t change (OMNI OFF
remains).
4
Page 5
MIDI Implementation
System Exclusive Messages
Status Data byte Status
F0H iiH, ddH, ......, eeH F7H
F0H: System Exclusive Message status
ii = ID number: 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 the VR-09 are; messages related to mode
settings, Universal Realtime System Exclusive messages, Universal Non-realtime
System Exclusive messages and Data Set (DT1).
System exclusive messages related to mode settings
These messages are used to initialize a device to General MIDI mode or change the
operating mode.
When creating performance data, a “GM2 System On” or “GM1 System On” message
should be inserted at the beginning of a General MIDI score. 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.)
GM1 System On
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 messages is received, this instrument will turn to the GM mode.
* Not received in keyboard part.
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)
Universal Non-realtime System Exclusive Messages
Identity Reply Message
Status Data byte Status
F0H 7EH, dev, 06H, 01H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (universal non-realtime message)
dev Device ID (10H, 7FH)
06H Sub ID#1 (General Information)
01H Sub ID#2 (Identity Request)
F7H EOX (End of Exclusive)
* When this message is received, this unit will transmit the appropriate Identity Reply
message (p. 8).
Universal Realtime System Exclusive Messages
Master volume [GM2]
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 [GM2]
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)
Status Data byte Status
F0H 7FH, 7FH, 04H, 04H, llH, mmH F7H
* When this messages is received, this instrument will turn to the GM mode.
* Not received in keyboard part.
GM System O
Status Data byte Status
F0H 7EH, 7F, 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 O )
F7H EOX (End of Exclusive)
* Not Received in keyboard part.
* This message has no meaning for this unit.
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control messages)
04H Sub ID#2 (Master Coarse Tuning)
llH Master Coarse Tuning LSB
mmH Master Coarse Tuning MSB
F7H EOX (End of Exclusive)
Status Data byte Status
F0H 7EH, 7FH, 08H, 08H, H, 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)
H Channel/Option byte 1
bits 0 to 1 = channel 15 to 16
bit 2 to 6 = Undened
ggH Channel byte 2
bits 0 to 6 = channel 8 to 14
hhH Channel byte 3
bits 0 to 6 = channel 1 to 7
ssH 12 byte tuning oset 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 [GM2]
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 - 0F)
kkH Key Number
nnH Control Number
vvH Value
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))
: :
F7 EOX (End of Exclusive)
* This parameter aects drum instruments only.
6
Page 7
MIDI Implementation
Data transmission
VR-09 can receive the various parameters using System Exclusive messages.
When keyboard part in MIDI IN Mode: Mode 2, the exclusive message has a model ID
of 62H and a device ID of 10H (17).
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, iiH, 12H, aaH, bbH, ccH, F7H
ddH, ... eeH, sum
F0H 41H, 10H, nnH, nnH, nnH, 12H, aaH, F7H (VR-09 Synth
bbH, ccH, ddH, ... eeH, sum Section)
Byte Explanation
F0H Exclusive status
41H ID number (Roland)
10H Device ID
iiH Model ID (Keyboard part: 62H)
nnH VR-09 Synth Section Model ID (00H 00H 71H)
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 specied starting address and size.
Refer to the Address and Size given in “5. Parameter Address Map” (p. 11).
* 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 “Example of an Exclusive Message and
Calculating a Checksum” (p. 14).
4. Transmit Data
Channel Voice Messages
Note o
Status 2nd byte 3rd byte
8nH kkH 40H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: 24H-60H (36-96)
* When the transpose is set to 0.
* Note o 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: 24H-60H (36-96)
* When the transpose is set to 0.
vv = note on velocity: 0AH-7FH (10-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)
Initial Value = FH (ch.16)
mm, ll = Bank number: 00 00H - 7F 7FH (bank.1-bank.16384)
* The bank number stored in the registration will be transmitted on the control
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)
* Program numbers stored in the Registrations are transmitted via the Control
Channel.
7
Page 8
MIDI Implementation
Pitch Bend Range
Status 2nd bytes 3rd bytes
EnH IIH mmH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
pp = Program number: 00 00H-40 00H-7F 7FH (-8192 -0- +8192)
System Realtime Message
Realtime Clock
Status
F8H
Start
Status
FAH
* Transmitted when a song is started in Composer.
Continue
Status
FBH
* Transmitted when a song is started in Composer from a point other than the
beginning of the song.
System Exclusive Messages
Universal Non-realtime System Exclusive Message
Identity Reply Message
Reply messages vary according to the MIDI IN mode.
(When MIDI In Mode is set to Mode 1)
Status Data byte Status
F0H 7EH, 10H, 06H, 02H, 41H, 42H, 00H, F7H
00H, 1CH, 00H, 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)
42H Device family code (LSB)
00H Device family code (MSB)
00H Device family number code (LSB)
1CH 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)
Stop
Status
FCH
* Transmitted when Composer is stopped.
Active Sensing
Status
FEH
* This will be transmitted constantly at intervals of approximately 250 ms.
(When MIDI In Mode is set to Mode 2 or KEYBOARD)
Status Data byte Status
F0H 7EH, 10H, 06H, 02H, 41H, 62H, 00H, F7H
00H, 06H, 00H, 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)
62H Device family code (LSB)
00H Device family code (MSB)
00H Device family number code (LSB)
06H 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)
8
Page 9
MIDI Implementation
System exclusive messages associated with MIDI Visual
Control
MIDI Visual Control ON
Status Data byte Status
F0H 7EH, dev, 0CH, 01H, 10H, 00H, 00H, F7H
01H, 0FH, 0FH, sum
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
dev Device ID (xed at 00H)
0CH Sub ID#1
01H Sub ID#2
10H Address MSB
00H Address
00H Address LSB
01H Data (MIDI Visual Control ON)
0FH Data (Clip Ctrl Rx MIDI ch: 16)
0FH Data (ColorCtrl Rx MIDI ch: 16)
sum Checksum
F7H EOX (End of Exclusive)
MIDI Visual Control OFF
Status Data byte Status
F0H 7EH, dev, 0CH, 01H, 10H, 00H, 00H, F7H
00H, sum
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
dev Device ID (xed at 00H)
0CH Sub ID#1
01H Sub ID#2
10H Address MSB
00H Address
00H Address LSB
00H Data (MIDI Visual Control OFF)
sum Checksum
F7H EOX (End of Exclusive)
KEYBOARD RANGE
Status Data byte Status
F0H 7EH, dev, 0CH, 01H, 10H, 30H, 02H, F7H
55H, 60H, sum
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
dev Device ID (xed at 00H)
0CH Sub ID#1
01H Sub ID#2
10H Address MSB
30H Address
02H Address LSB
55H Data (Keyboard Range Lower)
60H Data (Keyboard Range Upper)
sum Checksum
F7H EOX (End of Exclusive)
NOTE MESSAGE ENABLED ASSIGNABLE
Status Data byte Status
F0H 7EH, dev, 0CH, 01H, 10H, 00H, 03H, F7H
01H, sum
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
dev Device ID (xed at 00H)
0CH Sub ID#1
01H Sub ID#2
10H Address MSB
00H Address
03H Address LSB
01H Data (Assignable)
sum Checksum
F7H EOX (End of Exclusive)
NOTE MESSAGE ENABLED OFF
Status Data byte Status
F0H 7EH, dev, 0CH, 01H, 10H, 00H, 03H, F7H
00H, sum
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
dev Device ID (xed at 00H)
0CH Sub ID#1
01H Sub ID#2
10H Address MSB
00H Address
03H Address LSB
00H Data (OFF)
sum Checksum
F7H EOX (End of Exclusive)
System exclusive messages related to V-LINK settings
V-LINK ON
Status Data byte Status
F0H 41H, dev, 00H, 51H, 12H, 10H, 00H, 00H, F7H
01H, 0FH, 0FH, sum
Byte Explanation
F0H Exclusive status
41H ID number
dev Device ID (xed at 10H)
00H Model ID#1 (DV-7PR)
51H Model ID#2 (DV-7PR)
12H Command ID (DT1)
10H Address MSB
00H Address
00H Address LSB
01H Data (V-LINK ON)
0FH Data (Clip Ctrl Rx MIDI ch:16)
0FH Data (ColorCtrl Rx MIDI ch:16)
sum Checksum
F7H EOX (End of Exclusive)
9
Page 10
MIDI Implementation
V-LINK OFF
Status Data byte Status
F0H 41H, dev, 00H, 51H, 12H, 10H, 00H, 00H, F7H
00H, sum
Byte Explanation
F0H Exclusive status
41H ID number
dev Device ID (xed at 10H)
00H Model ID#1 (DV-7PR)
51H Model ID#2 (DV-7PR)
12H Command ID (DT1)
10H Address MSB
00H Address
00H Address LSB
00H Data (V-LINK OFF)
sum Checksum
F7H EOX (End of Exclusive)
KEYBOARD RANGE
Status Data byte Status
F0H 41H, dev, 00H, 51H, 12H, 10H, 30H, 02H, F7H
55H, 60H, sum
Byte Explanation
F0H Exclusive status
41H ID number
dev Device ID (xed at 10H)
00H Model ID#1 (DV-7PR)
51H Model ID#2 (DV-7PR)
12H Command ID (DT1)
10H Address MSB
30H Address
02H Address LSB
55H Data (Keyboard Range Lower)
60H Data (Keyboard Range Upper)
sum Checksum
F7H EOX (End of Exclusive)
NOTE MESSAGE ENABLED OFF
Status Data byte Status
F0H 41H, dev, 00H, 51H, 12H, 10H, 00H, 03H, F7H
00H, sum
Byte Explanation
F0H Exclusive status
41H ID number
dev Device ID (xed at 10H)
00H Model ID#1 (DV-7PR)
51H Model ID#2 (DV-7PR)
12H Command ID (DT1)
10H Address MSB
00H Address
03H Address LSB
00H Data (OFF)
sum Checksum
F7H EOX (End of Exclusive)
NOTE MESSAGE ENABLED ASSIGNABLE
Status Data byte Status
F0H 41H, dev, 00H, 51H, 12H, 10H, 00H, 03H, F7H
02H, sum
Byte Explanation
F0H Exclusive status
41H ID number
dev Device ID (xed at 10H)
00H Model ID#1 (DV-7PR)
51H Model ID#2 (DV-7PR)
12H Command ID (DT1)
10H Address MSB
00H Address
03H Address LSB
02H Data (assignable)
sum Checksum
F7H EOX (End of Exclusive)
10
Page 11
MIDI Implementation
5. Parameter Address Map
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.
VR-09 [Keyboard part: ModelID = 62H]
* Addresses marked at “#” cannot be used as starting addresses.
+------------------------------------------------------------------------------+
| Start | |
| Address | Description |
|-------------+----------------------------------------------------------------|
| 00 00 00 | System |
|-------------+----------------------------------------------------------------|
| 01 01 00 | Upper Part Information (PIANO) |
| 01 02 00 | Upper Part Information (SYNTH DUAL2) |
| 01 03 00 | Upper Part Information (SYNTH) |
|-------------+----------------------------------------------------------------|
| 01 11 00 | Lower Part Information (PIANO LOWER) |
| 01 13 00 | Lower Part Information (SYNTH LOWER) |
|-------------+----------------------------------------------------------------|
| 01 31 00 | Upper Part Information (PIANO DUAL2) |
|-------------+----------------------------------------------------------------|
| 01 41 00 | DRUM Part Information |
|-------------+----------------------------------------------------------------|
| 02 00 00 | ORGAN Information (UPPER) |
| 02 01 00 | ORGAN Information (LOWER) |
| 02 02 00 | ORGAN Information (PEDAL) |
+------------------------------------------------------------------------------+
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.
13
Page 14
MIDI Implementation
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.
<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 - 40 00H = 40 x 128 + 0 - (64 x 128 + 0) = 5120 - 8192 = -3072
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.
Example of an Exclusive Message and Calculating a
Checksum
Roland Exclusive messages are transmitted with a checksum at the end (before F7)
to make sure that the message was correctly received. The value of the checksum is
determined by the address and data (or size) of the transmitted exclusive message.
How to Calculate the Checksum (Hexadecimal Num-
bers are Indicated by ‘H’)
The checksum is a value derived by adding the address, size and checksum itself and
inverting the lower 7 bits.
Here’s an example of how the checksum is calculated. We will assume that in the
exclusive message we are transmitting, the address is aa bb ccH and the data or size
is dd ee H.
aa + bb + cc + dd + ee + = sum
sum / 128 = quotient ... remainder
128 - remainder = checksum
(However, the checksum will be 0 if the remainder is 0.)
<Example> With “JP8 Brass” set as the SYNTH tone
* Keyboard part tone settings are enabled when MIDI IN Mode is set to MODE 2.
According to the “Parameter Address Map,” since the address for the tone number
in the upper part information for the VR-09 [Keyboard part] is 01 0p 01H and the
SYNTH Part Oset Value is p = 3, the address is then 01 03 01H. Since the tone map
(Keyboard part) gives TONE NUMBER = 59H, BANK SELECT MSB = 01H, BANK SELECT
LSB = 00H for the “JP8 Brass” tone number, (we get the following):
(1) Exclusive Status, (2) ID (Roland), (3) Device ID (17), (4) Model ID, (5) Command ID
(DT1), (6) End of Exclusive
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).
Once the parameter number has been specied for RPN or NRPN, all Data Entry
messages transmitted on that same channel will be valid, so after the desired value
has been transmitted, it is a good idea to set the parameter number to 7F 7FH to
prevent accidents. This is the reason for the (B3) 64 7F (B3) 65 7F at the end.
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 or NRPN parameter number setting and the value
setting be done in the proper order. On some sequencers, events occurring in the
same (or consecutive) clock may be transmitted in an order dierent 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).
This means that F0 41 10 62 12 01 03 01 59 01 00 21 F7 is the message we transmit.
14
Page 15
MIDI Implementation
About Tuning
In MIDI, individual Parts are tuned by sending RPN #1 (Master Fine Tuning) to the
appropriate MIDI channel.
In MIDI, an entire device is tuned by either sending RPN #1 to all MIDI channels being
used, or by sending a System Exclusive MASTER TUNE (address 40 00 00H).
RPN #1 allows tuning to be specied in steps of approximately 0.012 cents (to be
precise, 100/8192 cent), and System Exclusive MASTER TUNE allows tuning in steps of
0.1 cent. One cent is 1/100th of a semitone.
The values of RPN #1 (Master Fine Tuning) and System Exclusive MASTER TUNE are
added together to determine the actual pitch sounded by each Part.
Frequently used tuning values are given in the following table for your reference.
Values are in hexadecimal (decimal in parentheses).
* 1 O X is selectable.
* 2 Not received in the keyboard part
* 3 With MIDI IN Mode 2
* 4 With MIDI IN Mode 1
* 5 Received in GM2 mode
* 6 Received in General MIDI mode
* 7 Recognized as M≠1 even if M=1.
Bank select
Modulation
Portamento time
Data entry
Panpot
Expression
Hold 1
Portamento
Sostenuto
Soft
Resonance
Release time
Attack time
Cuto
Decay time
Vibrato rate
Vibrato depth
Eect 1 depth
Eect 3 depth
RPN LSB, MSB
Date: Feb 1, 2013
Version: 1.00
Mode 1 : OMNI ON, POLY Mode 2 : OMNI ON, MONO
Mode 3 : OMNI OFF, POLY Mode 4 : OMNI OFF, MONO
O : Yes
X : No
21
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.