Status2nd byte3rd byte
BnH06HmmH
BnH26HllH
n = MIDI channel number: 0H - FH (ch.1 - 16)
mm, ll = the value of the parameter specified by RPN/NRPN
mm = MSB, ll = LSB
Status
BnH65HmmH
BnH64HllH
n = MIDI channel number:0H - FH (ch.1 - 16)
mm = upper byte (MSB) of parameter number specified by RPN
ll = lower byte (LSB) of parameter number specified by RPN
<<< RPN >>>
Control Changes include RPN (Registered Parameter Numbers), which are extended.
When using RPNs, first RPN (Controller numbers 100 and 101; they can be sent in any
order) should be sent in order to select the parameter, then Data Entry (Controller numbers
6 and 38) should be sent to set the value. Once RPN messages are received, Data Entry
messages that is received at the same MIDI channel after that are recognized as changing
toward the value of the RPN messages. In order not to make any mistakes, transmitting
RPN Null is recommended after setting parameters you need.
This device receives the following RPNs.
RPNData entry
MSB, LSBMSB, LSBNotes
00H, 00HmmH, llHPitch Bend Sensitivity
00H, 01HmmH, llHChannel Fine Tuning
00H, 02HmmH, llHChannel Coarse Tuning
00H, 05HmmH, llHModulation Depth Range
7FH, 7FH---, ---RPN null
●
Program Change
Status
CnHppH
n = MIDI channel number:0H - FH (ch.1 - 16)
pp = Program number:00H - 7FH (prog.1 - prog.128)
mm, ll: 00 00H - 06 00H ( 0 - 16384 x 600 / 16384 cent)
RPN and NRPN will be set as “unspecified.” Once this
setting has been made, subsequent Parameter values that
were previously set will not change.
mm, ll: ignored
2nd byte
†
2
■
Channel Mode Messages
●
All Sounds Off (Controller number 120)
Status
BnH78H00H
n = MIDI channel number: 0H - FH (ch.1 - 16)
* When this message is received, all notes currently sounding on the corresponding
channel will be turned off.
●
Reset All Controllers (Controller number 121)
Status
BnH79H00H
n = MIDI channel number: 0H - FH (ch.1 - 16)
* When this message is received, the following controllers will be set to their reset values.
ControllerReset value
Pitch Bend Change±0 (center)
Channel Pressure0 (off)
Modulation0 (off)
Breath Type0 (min)
Expression127 (max)
Hold 10 (off)
Sostenuto0 (off)
Soft0 (off)
Hold 20 (off)
RPNunset; previously set data will not change
NRPNunset; previously set data will not change
2nd byte3rd byte
2nd byte3rd byte
MIDI Implementation
■
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
StatusData byteStatus
F0HiiH, ddH, ......,eeHF7H
F0H:System Exclusive Message status
ii = ID number:an ID number (manufacturer ID) to indicate the manufacturer whose
Of the System Exclusive messages received by this device, the Universal Non-realtime
messages and the Universal Realtime messages and the Data Request (RQ1) messages and
the Data Set (DT1) messages will be set automatically.
●
Universal Non-realtime System Exclusive Messages
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).
* The same processing will be carried out as when All Notes Off is received.
●
POLY (Controller number 127)
Status
BnH7FH00H
n = MIDI channel number: 0H - FH (ch.1 - 16)
* The same processing will be carried out as when All Notes Off is received.
2nd byte3rd byte
2nd byte3rd byte
2nd byte3rd byte
†
†
†
†
❍
Identity Request Message
Status
F0H7EH, dev, 06H, 01HF7H
ByteExplanation
F0HExclusive status
7EHID number (Universal Non-realtime Message)
devDevice ID (dev: 10H - 1FH (1 - 32), the initial value is 10H (17))
06HSub ID#1 (General Information)
01HSub ID#2 (Identity Request)
F7HEOX (End Of Exclusive)
* When this message is received, Identity Reply message (p. 7) will be transmitted.
❍
GM1 System On †
StatusData byteStatus
F0H7EH, 7FH, 09H, 01HF7H
ByteExplanation
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
01HSub ID#2 (General MIDI 1 On)
F7HEOX (End Of Exclusive)
❍
GM2 System On †
Status
F0H7EH 7FH 09H 03HF7H
Byte
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
03HSub ID#2 (General MIDI 2 On)
F7HEOX (End Of Exclusive)
Data byteStatus
Data byteStatus
Explanation
3
MIDI Implementation
❍
GM System Off †
Status
F0H7EH, 7F, 09H, 02HF7H
ByteExplanation
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
02HSub ID#2 (General MIDI Off)
F7HEOX (End Of Exclusive)
●
Universal Realtime System Exclusive Messages
❍
Master Volume †
Status
F0H7FH, 7FH, 04H, 01H, llH, mmHF7H
Byte
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
01HSub ID#2 (Master Volume)
llHMaster Volume lower byte
mmHMaster Volume upper byte
F7HEOX (End Of Exclusive)
* The lower byte (llH) of Master Volume will be handled as 00H.
❍
Master Fine Tuning
Status
F0H7FH, 7FH, 04H, 03H, llH, mmH F7H
Byte
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
03HSub ID#2 (Master Fine Tuning)
llHMaster Fine Tuning LSB
mmHMaster Fine Tuning MSB
F7HEOX (End Of Exclusive)
mm, ll: 00 00H - 40 00H - 7F 7FH (-100 - 0 - +99.9 [cents])
❍
Master Coarse Tuning †
Status
F0H7FH, 7FH, 04H, 04H, llH, mmHF7H
Byte
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
04HSub ID#2 (Master Coarse Tuning)
llHMaster Coarse Tuning LSB
mmHMaster Coarse Tuning MSB
F7HEOX (End Of Exclusive)
ByteExplanation
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
05HSub ID#2 (Global Parameter Control)
01HSlot path length
01HParameter ID width
01HValue width
01HSlot path MSB
01HSlot path LSB (Effect 0101: Reverb)
ppHParameter to be controlled.
vvHValue for the parameter.
F7HEOX (End Of Exclusive)
❍
Chorus Parameters †
Status
F0H7FH, 7FH, 04H, 05H, 01H, 01H, F7H
ByteExplanation
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
05HSub ID#2 (Global Parameter Control)
01HSlot path length
01HParameter ID width
01HValue width
01HSlot path MSB
02HSlot path LSB (Effect 0102: Chorus)
ppHParameter to be controlled.
vvHValue for the parameter.
F7HEOX (End Of Exclusive)
01H, 01H, 01H, ppH, vvH
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
Status
F0H7FH, 7FH, 0AH, 01H, 0nH, kkH, nnH, vvHF7H
ByteExplanation
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
0AHSub ID#1 (Key-Based Instrument Control)
01HSub ID#2 (Controller)
0nHMIDI Channel (00 - 0F)
kkHKey Number
nnHController Number
vvHValue
::
F7EOX (End Of Exclusive)
* This parameter affects drum instruments only.
●
Data Transmission
This instrument can use exclusive messages to exchange many varieties of internal settings
with other devices.
The model ID of the exclusive messages used by this instrument is 00H 00H 39H.
❍
Data Request 1 (RQ1)
This message requests the other device to transmit data. The address and size indicate the
type and amount of data that is requested.
When a Data Request message is received, if the device is in a state in which it is able to
transmit data, and if the address and size are appropriate, the requested data is transmitted
as a Data Set 1 (DT1) message. If the conditions are not met, nothing is transmitted.
ByteRemarks
F0HExclusive status
41HID number (Roland)
devDevdevice ID (dev: 10H, 7FH)
00HModel ID #1 (V-Piano Grand (GP-7))
00HModel ID #2 (V-Piano Grand (GP-7))
39Hmodel ID #3 (V-Piano Grand (GP-7))
11HCommand ID (RQ1)
aaHAddress MSB
bbHAddress
ccHAddress
ddHAddress LSB
ssHSize MSB
ttHSize
uuHSize
vvHSize LSB
sumChecksum
F7HEOX (End Of Exclusive)
* The size of data that can be transmitted at one time is fixed for each type of data. And
data requests must be made with a fixed starting address and size. Refer to the address
and size given in
This is the message that actually performs data transmission, and is used when you wish to
transmit the data.
Status
F0H41H, dev, 00H, 00H, 39H, 12H, aaH, bbH, F7H
ByteExplanation
F0HExclusive status
41HID number (Roland)
devDevice ID (dev: 10H, 7FH)
00HModel ID #1 (V-Piano Grand (GP-7))
00HModel ID #2 (V-Piano Grand (GP-7))
39HModel ID #3 (V-Piano Grand (GP-7))
12HCommand ID (DT1)
aaHAddress MSB: upper byte of the starting address of the data to be sent
bbHAddress: upper middle byte of the starting address of the data to be
ccHAddress: lower middle byte of the starting address of the data to be
ddHAddress LSB: lower byte of the starting address of the data to be sent.
eeHData: the actual data to be sent. Multiple bytes of data are transmitted
: :
ffHData
sumChecksum
F7HEOX (End Of Exclusive)
* The amount of data that can be transmitted at one time depends on the type of data, and
data will be transmitted from the specified starting address and size. Refer to the address
and size given in
* Data larger than 256 bytes will be divided into packets of 256 bytes or less, and each
packet will be sent at an interval of about 20 ms.
* Regarding the checksum, please refer to p. 12.
Data byteStatus
ccH, ddH, eeH, ... ffH, sum
sent
sent
in order starting from the address.
“Parameter Address Map”
(p. 7).
2. Data Transmission
■
Channel Voice Messages
●
Note off
Status
8nHkkHvvH
n = MIDI channel number:0H - FH (ch.1 - 16)
kk = note number:00H - 7FH (0 - 127)
vv = note of velocity:00H - 7FH (0 - 127)
Status
CnHppH
n = MIDI channel number:0H - FH (ch.1 - 16)
pp = Program number:00H - 7FH (prog.1 - prog.128)
■
System Realtime Messages
●
Timing Clock
Status
F8H
●
Start
Status
FAH
●
Stop
Status
FCH
2nd byte3rd byte
2nd byte
6
●
Active Sensing
Status
FEH
* This message is transmitted at intervals of approximately 250 msec.
■
System Exclusive Messages
Universal Non-realtime System Exclusive Message and Data Set 1 (DT1) are the only
System Exclusive messages transmitted by the V-Piano Grand.
●
Universal Non-realtime System Exclusive Message
❍
Identity Reply Message
Receiving Identity Request Message, the V-Piano Grand send this message.
Status
Data byteStatus
F0H7EH, dev, 06H, 02H, 41H, 39H, 02H, F7H
02H, 00H, 00H, 01H, 00H, 02H
Byte
Explanation
F0HExclusive status
7EHID number (Universal Non-realtime Message)
devDevice ID (use the same as the device ID of Roland)
06HSub ID#1 (General Information)
02HSub ID#2 (Identity Reply)
41HID number (Roland)
39H 02HDevice family code (V-Piano Grand (GP-7))
02H 00HDevice family number code (V-Piano Grand (GP-7))
00H 01H 00H 02H Software revision level
F7HEOX (End of Exclusive)
Explanation
F0HExclusive status
41HID number (Roland)
devDevice ID (dev: 10H)
00HModel ID #1 (V-Piano Grand (GP-7))
00HModel ID #2 (V-Piano Grand (GP-7))
39HModel ID #3 (V-Piano Grand (GP-7))
12HCommand ID (DT1)
aaHAddress MSB: upper byte of the starting address of the data to be sent
bbHAddress: upper middle byte of the starting address of the data to be
sent
ccHAddress: lower middle byte of the starting address of the data to be
sent
ddHAddress LSB: lower byte of the starting address of the data to be sent.
eeHData: the actual data to be sent. Multiple bytes of data are transmitted
in order starting from the address.
: :
ffHData
sumChecksum
F7HEOX (End Of Exclusive)
* The amount of data that can be transmitted at one time depends on the type of data, and
data will be transmitted from the specified starting address and size. Refer to the address
and size given in “Parameter Address Map” (p. 7).
* Data larger than 256 bytes will be divided into packets of 256 bytes or less, and each
packet will be sent at an interval of about 20 ms.
MIDI Implementation
3. Parameter Address Map
* Transmission of “#” marked address is divided to some packets.
1 V-Piano Grand (GP-7) (Model ID = 00H 00H 39H)
❍
Individual Parameters
* Please don’t use a parameter or a address marked <Reserved>.
* The parameters for Setup are temporary. If you want to leave the parameters after the V-
(An “H” is appended to the end of numbers in hexadecimal notation.)
In MIDI documentation, data values and addresses/sizes of Exclusive messages, etc. are
expressed as hexadecimal values for each 7 bits.
The following table shows how these correspond to decimal numbers.
* Decimal values such as MIDI channel and program change are listed as one greater than
the values given in the above table.
* A 7-bit byte can express data in the range of 128 steps. For data where greater precision
is required, we must use two or more bytes. For example, two hexadecimal numbers aa
bbH expressing two 7-bit bytes would indicate a value of aa x 128+bb.
* In the case of values which have a ± sign, 00H = -64, 40H = ±0, and 7FH = +63, so that the
decimal expression would be 64 less than the value given in the above chart. In the case
of two types, 00 00H = -8192, 40 00H = ±0, and 7F 7FH = +8191. For example, if aa bbH
were expressed as decimal, this would be aa bbH - 40 00H = aa x 128+bb - 64 x 128.
* Data marked “Use nibbled data” is expressed in hexadecimal in 4-bit units. A value
expressed as a 2-byte nibble 0a 0bH has the value of a x 16+b.
<Example 1>
What is the decimal expression of 5AH?
From the preceding table, 5AH = 90
<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 result is: 00 04 0E
0AH.
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 (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 12+80 = 8192) is 0, so this Pitch Bend Value is
28 00H - 40 00H = 40 x 12+80 - (64 x 12+80) = 5120 - 8192 = -3072
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.
BnH is the Control Change status, and n is the MIDI channel number. For Control Changes,
the 2nd byte is the control number, and the 3rd byte is the value. In a case in which two or
more messages consecutive messages have the same status, MIDI has a provision called
“running status” which allows the status byte of the second and following messages to be
omitted. Thus, the above messages have the following meaning.
B3 64 00MIDI ch.4, lower byte of RPN parameter number:00H
(B3) 65 00(MIDI ch.4) upper byte of RPN parameter number:00H
(B3) 06 0C(MIDI ch.4) upper byte of parameter value:0CH
(B3) 26 00(MIDI ch.4) lower byte of parameter value:00H
(B3) 64 7F(MIDI ch.4) lower byte of RPN parameter number:7FH
(B3) 65 7F(MIDI ch.4) upper byte of RPN parameter number:7FH
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 generators the LSB of Pitch Bend Sensitivity is ignored, but the
LSB should be transmitted anyway (with a value of 0) so that operation will be correct on
any device.)
Once the parameter number has been specified for RPN or NRPN, all Data Entry messages
transmitted on that same channel will be valid, so after the desired value has been
transmitted, it is a good idea to set the parameter number to 7F 7FH to prevent accidents.
This is the reason for the (B3) 64 7F (B3) 65 7F at the end.
It is not desirable for Performance data (such as Standard MIDI File data) to contain many
events with running status as given in <Example 4>. This is because if playback is halted
during the song and then rewound or fast-forwarded, the sequencer may not be able to
transmit the correct status, and the sound generator will then misinterpret the data. Take
care to give each event its own status.
It is also necessary that the RPN or NRPN parameter number setting and the value setting
be done in the proper order. On some sequencers, events occurring in the same (or
consecutive) clock may be transmitted in an order different than the order in which they
were received. For this reason it is a good idea to slightly skew the time of each event (about
1 tick for TPQN = 96, and about 5 ticks for TPQN = 480).
* TPQN: Ticks Per Quarter Note
11
MIDI Implementation
■
Example of an Exclusive Message and Calculating a
Checksum
Roland Exclusive messages (RQ1, DT1) are transmitted with a checksum at the end (before
F7) to make sure that the message was correctly received. The value of the checksum is
determined by the address and data (or size) of the transmitted Exclusive message.
●
How to calculate the checksum
(hexadecimal numbers are indicated by “H”)
The checksum is a value derived by adding the address, size, and checksum itself and
inverting the lower 7 bits.
Here’s an example of how the check sum is calculated. We will assume that in the Exclusive
message we are transmitting, the address is aa bb cc ddH and the data or size is ee ffH.
aa + bb + cc + dd + ee + ff = sum
sum ÷ 128 = quotient ... remainder
128 - remainder = checksum
<Example> Setting Temperament to JUST MINOR (DT1)
According to the “Parameter Address Map” (p. 7), the start address of System is 20 00 00
00H, the offset address of System Common is 00 00H, and the address of Temperament is 00
04H. Therefore the address of Temperament of System is;
20 00 00 00H
00 00H
+) 00 04H
20 00 00 04H
JUST MINOR has the value of 02H.
So the system exclusive message should be sent is;
F0411000 00 39 1220 00 00 0402??F7
(1)(2)(3)(4)(5)addressdatachecksum(6)
(1) Exclusive Status(2) ID (Roland)(3) Device ID (17)
(4) Model ID (V-Piano Grand (GP-7)) (5) Command ID (DT1) (6) End of Exclusive
X
X
O*3
X
X
X
X
O
X
O*3
O*3
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
O
**************
O
X
X
X
O
O
X
X
X
X
O
X
* 1 Only GM2 sound generator can be recognized.
* 2 Recognized as M=1 even if M≠1.
* 3 Transmitted if assigned to pedals.
Mode 2 : OMNI ON, MONO
Mode 4 : OMNI OFF, MONO
1–16
1–16
Mode 3
Mode 3, 4 (M = 1)
0–127
0–127
O
O
O*1
O*1
O*1
O
O*1
O*1
O*1
O*1
O*1
O
O*1
O*1
O
O*1
O*1
O*1
O*1
O
O*1
O
O
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O
O*1
O*1
O*1
O*1
O*1
O
0–127
O
X
X
X
X
X
O (120, 126, 127)
O
X
O (123–127)
O
X
Remarks
Memorized
* 2
Bank select
Modulation
Breath type
Foot type
Portamento time
Data entry
Volume
Balance
Panpot
Expression
General purpose controller 1
General purpose controller 2
General purpose controller 3
General purpose controller 4
Hold 1
Portamento
Sostenuto
Soft
Legato foot switch
Hold 2
Sound variation
Resonance
Release time
Attack Time
Cuttoff
Decay time
Vibrato rate
Vibrato depth
Vibrato delay
General purpose controller 5
General purpose controller 6
General purpose controller 7
General purpose controller 8
Portamento control
General purpose effects 1
Tremolo
General purpose effects 3
Celeste
Phaser
RPN LSB, MSB
Program No. 1–128
O : Yes
X : No
13
Correspondence Between Preset Tones and
Program Changes
To select any of the sounds listed below, transmit the relevant Program Change on the channel that's been set for V-Piano Rx Channel (default value:
ch. 1).
Bank Select
MSBLSB
-
--002V1 Studio
--003V1 Concert
--004V1 Session
--005V1 Mellow
--006V1 Bright
--007V1 Honky Tonk
--008Vintage Piano 2
--009V2 Studio
--010V2 Concert
--011V2 Session
--012V2 Clear
--013V2 Upright
--014Fortepiano
--015All Silver 1
--016All Triple
--017Glass Piano
--018Silver Dynamic
--019Silver Extreme
--020All Silver 2
--021Triple Power
--022Triple Mellow
--023Deep Resonant
--024Hybrid Silver
--025Vertical
--026V1 Impactance
--027Triple Large
--028Metallic SB
--029V-Concert Grand
--030V-Concert Mellow
-001Vintage Piano 1
Program
Number
Tone Name
14
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.