Digital Piano
DP-900
MIDI IMPLEMENTATION
Date: Jun.10, 2003
Version 1.00
1. Section 1. Receive Data
■Channel Voice Messages
●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)
*The velocity values of Note Off messages are ignored.
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)
*These message can affect only MIDI notes.
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 |
●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)
*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 |
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
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 = 7FH (127) |
*Received volume messages affect received note event levels, and cannot affect internal keyboard notes.
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)
*These message can affect only MIDI notes.
*These message can affect only MIDI notes.
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)
*These message can affect only MIDI notes.
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) 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 |
2nd byte |
3rd byte |
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)
*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 |
|
|
mm, ll: 00 00H - 40 00H - 7F 7FH |
|
|
(-100 - 0 - +99.99 cents), |
|
|
Initial Value = 40 00H (±0 cent) |
7FH 7FH |
--- --- |
RPN null |
|
|
Set condition where RPN and NRPN are |
|
|
unspecified. The data entry messages after |
|
|
set RPN null will be ignored. (No Data entry |
|
|
messages are required after RPN null). |
|
|
Settings already made will not change. |
|
|
mm, ll: ignored |
●Program Change
Status |
2nd 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
----------------------------------------------------------
1Grand Piano1
2Grand Piano2
3Piano + Strings
4Piano + Choir
5Electric Piano1
6Electric Piano2
7Vibraphone
8Electric Piano+Choir
9Harpsichord
10Organ Flute
11Harpsichord + Strings
12Harpsichord + Choir
13Church Organ
14Rotary Organ
15Organ + Strings
16Organ + Choir
17Strings
18Slow Strings
19Strings + Choir
20Strings + Brass
21* |
Jazz Scat |
22* |
Choir |
23* |
Choir + Harp |
24* |
Choir + Bell |
25Grand Piano1 + Electric Piano1
26Grand Piano1 + Electric Piano2
27Grand Piano1 + Harpsichord
28Grand Piano1 + Organ Flute
29Grand Piano1 + Church Organ
30Grand Piano1 + Rotary Organ
31Grand Piano1 + Strings
32Grand Piano1 + Slow Strings
33* |
Grand Piano1 |
+ Jazz Scat |
34* |
Grand Piano1 |
+ Choir |
35Grand Piano2 + Electric Piano1
36Grand Piano2 + Electric Piano2
37Grand Piano2 + Harpsichord
38Grand Piano2 + Organ Flute
39Grand Piano2 + Church Organ
40Grand Piano2 + Rotary Organ
41Grand Piano2 + Strings
42 |
Grand Piano2 + Slow Strings |
43* |
Grand Piano2 + Jazz Scat |
44* |
Grand Piano2 + Choir |
45Electric Piano1 + Harpsichord
46Electric Piano1 + Organ Flute
47Electric Piano1 + Church Organ
48Electric Piano1 + Rotary Organ
49Electric Piano1 + Strings
50Electric Piano1 + Slow Strings
51* |
Electric Piano1 |
+ Jazz Scat |
52* |
Electric Piano1 |
+ Choir |
53Electric Piano2 + Harpsichord
54Electric Piano2 + Organ Flute
55Electric Piano2 + Church Organ
56Electric Piano2 + Rotary Organ
57Electric Piano2 + Strings
58Electric Piano2 + Slow Strings
59* |
Electric Piano2 |
+ Jazz Scat |
60* |
Electric Piano2 |
+ Choir |
61Harpsichord + Church Organ
62Harpsichord + Rotary Organ
63Harpsichord + Strings
64Harpsichord + Slow Strings
65* |
Harpsichord + Jazz Scat |
66* |
Harpsichord + Choir |
67Organ Flute + Church Organ
68Organ Flute + Rotary Organ
69Organ Flute + Strings
70Organ Flute + Slow Strings
71* |
Organ Flute + Jazz Scat |
72* |
Organ Flute + Choir |
73Church Organ + Strings
74Church Organ + Slow Strings
75* |
Church Organ + Jazz Scat |
76* |
Church Organ + Choir |
77Rotary Organ + Strings
78Rotary 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 |
85Grand Piano1/Acoustic Bass
86Grand Piano2/Acoustic Bass
87Electric Piano1/Electric Bass
88Electric Piano2/Electric Bass
89Harpsichord/Strings
90Organ Flute/Organ Bass
91Church Organ/Organ Bass
92Rotary Organ/Lower Organ
93Strings/Pizzicato
94Slow Strings/Pizzicato
95* |
Jazz Scat/Acoustic Bass(HP-2/3) |
96* |
Choir/Strings |
97Grand Piano1/Acoustic Bass & Cymbal
98Grand Piano2/Acoustic Bass & Cymbal
99Electric Piano1/Acoustic Bass
100Electric Piano2/Acoustic Bass
101Harpsichord/Organ Flute
102Organ Flute/Strings
103Church Organ/Strings
104Rotary Organ/Electric Bass
105Strings/Choir
106Slow Strings/Choir
107* |
Jazz Scat/Acoustic Bass & Cymbal |
108* |
Choir/Church Organ |
109Grand Piano1/Strings
110Grand Piano2/Strings
2
111Electric Piano1/Strings
112Electric Piano2/Strings
113Harpsichord/Acoustic Bass
114Organ Flute/Choir
115Church Organ/Choir
116Jazz Organ/Rotary Organ
117Oboe/Strings
118Flute/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.
■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.
●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)
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)
*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 |
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 the DP-900 are; Universal Nonrealtime System Exclusive messages, and Data Set (DT1).
3