Digital Piano Date: Jun.10, 2003
DP-900
MIDI IMPLEMENTATION
1. Section 1. Receive Data
■
Channel Voice Messages
●
Note off
Status
8nH kkH vvH
9nH kkH 00H
2nd byte 3rd byte
❍
Hold 1 (Controller number 64)
Status
BnH 40H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
* These message can affect only MIDI notes.
2nd byte 3rd byte
Version 1.00
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)
* The velocity values of Note Off messages are ignored.
●
Note on
Status
9nH kkH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
kk = note number : 00H-7FH (0-127)
vv = note on velocity : 01H-7FH (1-127)
* Note numbers outside the range of 15-113 are transposed to the nearest octave
within this range.
* Transpose function does not affect the recognized note numbers.
●
Control Change
* The value specified by a Control Change message will not be reset even by a
Program Change, etc.
❍
Data Entry (Controller number 6, 38)
Status
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
❍
Volume (Controller number 7)
Status
BnH 07H vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Volume : 00H-7FH (0-127), Initial Value = 7FH (127)
2nd byte 3rd byte
2nd byte 3rd byte
2nd byte 3rd byte
❍
Sostenuto (Controller number 66)
Status
BnH 42H vvH
n=MIDI channel number : 0H-FH (ch.1-ch.16)
vv=Control value : 00H-7FH (0-127) 0-63 = OFF 64-127 = ON
* These message can affect only MIDI notes.
❍
Soft (Controller number 67)
Status
BnH 43H vvH
n=MIDI channel number : 0H-FH (ch.1-ch.16)
vv=Control value : 00H-7FH (0-127)
* These message can affect only MIDI notes.
❍
Effect 1 (Reverb Send Level) (Controller number 91)
Status
BnH 5BH vvH
n=MIDI channel number : 0H-FH (ch.1-ch.16)
vv=Control value : 00H-7FH (0-127) 0-63 = OFF 64-127 = ON
* Reverb message shall be recieved as a basic channel.
* Received reverb messages through basic channel affect all parts and internal
keyboard notes.
❍
RPN MSB/LSB (Controller number 100, 101)
Status
BnH 65H mmH
BnH 64H llH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
mm = upper byte of parameter number specified by RPN(MSB)
ll = lower byte of parameter number specified by RPN(LSB)
2nd byte 3rd byte
2nd byte 3rd byte
2nd byte 3rd byte
2nd byte 3rd byte
* Received volume messages affect received note event levels, and cannot affect
internal keyboard notes.
❍
Expression (Controller number 11)
Status
BnH 0BH vvH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
vv = Expression : 00H-7FH (0-127), Initial Value = 7FH (127)
* These message can affect only MIDI notes.
2nd byte 3rd byte
* 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.
1
On the DP-900, RPN can be used to modify the following parameters.
RPN Data entry Explanation
MSB LSB MSB LSB
00H 01H mmH llH Master Fine Tuning
7FH 7FH --- --- RPN null
●
Program Change
Status 2nd byte
CnH ppH
n = MIDI channel number : 0H-FH (ch.1-ch.16)
pp = Program number : 00H..77H (prog.1..prog.120)
Received program change message are assigned as follows.
prog. tone
---------------------------------------------------------1 Grand Piano1
2 Grand Piano2
3 Piano + Strings
4 Piano + Choir
5 Electric Piano1
6 Electric Piano2
7 Vibraphone
8 Electric Piano+Choir
9 Harpsichord
10 Organ Flute
11 Harpsichord + Strings
12 Harpsichord + Choir
13 Church Organ
14 Rotary Organ
15 Organ + Strings
16 Organ + Choir
17 Strings
18 Slow Strings
19 Strings + Choir
20 Strings + Brass
21* Jazz Scat
22* Choir
23* Choir + Harp
24* Choir + Bell
25 Grand Piano1 + Electric Piano1
26 Grand Piano1 + Electric Piano2
27 Grand Piano1 + Harpsichord
28 Grand Piano1 + Organ Flute
29 Grand Piano1 + Church Organ
30 Grand Piano1 + Rotary Organ
31 Grand Piano1 + Strings
32 Grand Piano1 + Slow Strings
33* Grand Piano1 + Jazz Scat
34* Grand Piano1 + Choir
35 Grand Piano2 + Electric Piano1
36 Grand Piano2 + Electric Piano2
37 Grand Piano2 + Harpsichord
38 Grand Piano2 + Organ Flute
39 Grand Piano2 + Church Organ
40 Grand Piano2 + Rotary Organ
41 Grand Piano2 + Strings
mm, ll: 00 00H - 40 00H - 7F 7FH
(-100 - 0 - +99.99 cents),
Initial Value = 40 00H (±0 cent)
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
42 Grand Piano2 + Slow Strings
43* Grand Piano2 + Jazz Scat
44* Grand Piano2 + Choir
45 Electric Piano1 + Harpsichord
46 Electric Piano1 + Organ Flute
47 Electric Piano1 + Church Organ
48 Electric Piano1 + Rotary Organ
49 Electric Piano1 + Strings
50 Electric Piano1 + Slow Strings
51* Electric Piano1 + Jazz Scat
52* Electric Piano1 + Choir
53 Electric Piano2 + Harpsichord
54 Electric Piano2 + Organ Flute
55 Electric Piano2 + Church Organ
56 Electric Piano2 + Rotary Organ
57 Electric Piano2 + Strings
58 Electric Piano2 + Slow Strings
59* Electric Piano2 + Jazz Scat
60* Electric Piano2 + Choir
61 Harpsichord + Church Organ
62 Harpsichord + Rotary Organ
63 Harpsichord + Strings
64 Harpsichord + Slow Strings
65* Harpsichord + Jazz Scat
66* Harpsichord + Choir
67 Organ Flute + Church Organ
68 Organ Flute + Rotary Organ
69 Organ Flute + Strings
70 Organ Flute + Slow Strings
71* Organ Flute + Jazz Scat
72* Organ Flute + Choir
73 Church Organ + Strings
74 Church Organ + Slow Strings
75* Church Organ + Jazz Scat
76* Church Organ + Choir
77 Rotary Organ + Strings
78 Rotary Organ + Slow Strings
79* Rotary Organ + Jazz Scat
80* Rotary Organ + Choir
81* Strings + Jazz Scat
82* Strings + Choir
83* Slow Strings + Jazz Scat
84* Slow Strings + Choir
85 Grand Piano1/Acoustic Bass
86 Grand Piano2/Acoustic Bass
87 Electric Piano1/Electric Bass
88 Electric Piano2/Electric Bass
89 Harpsichord/Strings
90 Organ Flute/Organ Bass
91 Church Organ/Organ Bass
92 Rotary Organ/Lower Organ
93 Strings/Pizzicato
94 Slow Strings/Pizzicato
95* Jazz Scat/Acoustic Bass(HP-2/3)
96* Choir/Strings
97 Grand Piano1/Acoustic Bass & Cymbal
98 Grand Piano2/Acoustic Bass & Cymbal
99 Electric Piano1/Acoustic Bass
100 Electric Piano2/Acoustic Bass
101 Harpsichord/Organ Flute
102 Organ Flute/Strings
103 Church Organ/Strings
104 Rotary Organ/Electric Bass
105 Strings/Choir
106 Slow Strings/Choir
107* Jazz Scat/Acoustic Bass & Cymbal
108* Choir/Church Organ
109 Grand Piano1/Strings
110 Grand Piano2/Strings
2
111 Electric Piano1/Strings
112 Electric Piano2/Strings
113 Harpsichord/Acoustic Bass
114 Organ Flute/Choir
115 Church Organ/Choir
116 Jazz Organ/Rotary Organ
117 Oboe/Strings
118 Flute/Slow Strings
119* Jazz Scat/Choir
120* Choir/Organ Flute
* "A+B" means tones for dual, and "A|B" means tones for split.
* "—" and any program number other than those listed above are ignored.
* 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.
* Received program change messages through channel 1-16 affect each part
individually.
* Received program change messages through basic channel affect part on the
corresponding channel and internal keyboard notes.
* Tones marked with an asterisk ("*") cannot be selected from the panel.
Status 2nd byte 3rd byte
BnH 7DH 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. *1
●
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 : 00H-10H (0-16)
* The same processing will be carried out as when All Notes Off is received. *1
●
POLY (Controller number 127)
Status 2nd byte 3rd byte
BnH 7FH 00H
n = MIDI channel number : 0H-FH (ch.1-ch.16)
■
Channel Mode Messages
●
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
Expression 127 (max)
Hold 1 0 (off)
Sostenuto 0(off)
Soft 0(off)
●
Local Control (Controller number 122)
Status 2nd byte 3rd byte
BnH 7AH vvH
n=MIDI channel number : 0H - FH (ch.1 - ch.16)
vv=Value : 00H, 7FH (0, 127) 0=OFF 127=ON
●
All Notes Off (Controller number 123)
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.
* The same processing will be carried out as when All Notes Off is received. *1
Note:
*1 The Mode doesn't change (OMNI OFF, POLY remains).
■
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
360 msec, the same processing will be carried out as when All Notes Off and Reset
All Controllers are received, and message interval monitoring will be halted.
■
System Exclusive Message
Status
F0H iiH, ddH, ......,eeH F7H
F0H : System Exclusive Message status
ii = ID number : an ID number (manufacturer ID) to indicate the manufacturer
dd,...,ee = data : 00H-7FH (0-127)
F7H : EOX (End Of Exclusive)
The System Exclusive Messages received by the DP-900 are; Universal Nonrealtime System Exclusive messages, and Data Set (DT1).
Data byte Status
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).
●
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. *1
●
OMNI ON (Controller number 125)
3