Yamaha DSP5D Manual Do Utilizador

Página de 409
MIDI Data Format
368
PM5D/PM5D-RH V2 / DSP5D Owner’s Manual    
Reference section
MIDI Data Format
This section explains the format of the data that the PM5D is able to understand, send, and receive.
In addition to the messages described here, you can use the MIDI REMOTE function or the MIDI EVENT settings of the 
SCENE function to transmit any type of command.
1 CHANNEL MESSAGE
1.1 NOTE OFF
(8n)
Reception
These messages are echoed to MIDI OUT if [OTHER ECHO] is ON.
They are received if [Rx CH] matches, and used to control effects.
1.2 NOTE ON
(9n)
Reception
These messages are echoed to MIDI OUT if [OTHER ECHO] is ON.
They are received if [Rx CH] matches, and used to control effects.
1.3 CONTROL CHANGE
(Bn)
Two types of control change can be transmitted and received; [NRPN] (Non-
Registered Parameter Numbers) and freely-assigned [TABLE] (16CH x 110) 
messages. Select either [TABLE] or [NRPN].
Reception
These messages are echoed to MIDI OUT if [Control Change ECHO] is ON.
If [TABLE MULTI] is selected, these messages are received when [Control 
Change Rx] is ON, and will control parameters according to the settings of the 
[Control assign table]. If [TABLE SINGLE] is selected, these messages are 
received when [Control Change Rx] is ON and [Rx CH] matches, and will 
control parameters according to the settings of the [Control assign table]. For 
the parameters that can be assigned, refer to p.341.
If [NRPN] is selected, these messages are received when [Control Change Rx] is 
ON and the [Rx CH] matches; the four messages NRPN control number (62h, 
63h) and DATA ENTRY control number (06h, 26h) are used to control the 
specified parameter.
Transmission
If [TABLE MULTI] is selected, and if [Control Change Tx] is ON when you 
operate a parameter that is assigned in the [Control assign table], these 
messages will be transmitted. If [TABLE SINGLE] is selected, and if [Control 
Change Tx] is ON when you operate a parameter that is assigned in the [Control 
assign table], these messages are transmitted on the [Tx CH] channel. For the 
parameters that can be assigned, refer to p.341.
If [NRPN] is selected, and if [Control Change Tx] is ON when you operate a 
specified parameter, the four messages NRPN control number (62h, 63h) and 
DATA ENTRY control number (06h, 26h) are transmitted on the [Tx CH] 
channel.
Control Change messages are not used for transmission to PM5D Editor 
because there is no guarantee that the contents of the assignment tables will 
match. (Parameter Change messages are always used.)
Control Change numbers 0 and 32 are for selecting banks.
If [TABLE] is selected
Equation for converting a Control Value to parameter data
paramSteps = paramMax - paramMin + 1;
add
= paramWidth / paramSteps;
mod
= paramWidth - add * paramSteps;
curValue
= parm * add + mod / 2;
(1) If the assigned parameter has fewer than 128 steps
paramWidth = 128; rxValue = Control value;
(2) If the assigned parameter has 128 or more but less than 
16,384 steps
paramWidth = 16384;
(2-1) When High and Low data is received
rxValue = Control value(High) * 128 + Control value(Low);
(2-2) When Low data is received
rxValue = (curValue & 16256) + Control value(Low);
(2-3) When High data is received
rxValue = Control value(High) * 128 + (curValue & 127);
(3) If the assigned parameter has 16,384 or more but less than 
2,097,152 steps
paramWidth = 2097152;
(3-1) When High, Middle, and Low data is received
rxValue = Control value(High) * 16384 + Control value(Middle) * 128 + Control 
value(Low);
(3-2) When only Low data is received
rxValue = (curValue & 2097024) + Control value(Low);
(3-3) When only Middle data is received
rxValue = (curValue & 2080895) + Control value(Middle) * 128;
(3-4) When only High data is received
rxValue = (curValue & 16383) + Control value(High) * 16384;
(3-5) When only Middle and Low data is received
rxValue = (curValue & 2080768) + Control value(Middle) * 128 + Control 
value(Low);
(3-6) When only High and Low data is received
rxValue = (curValue & 16256) + Control value(High) * 16384 + Control value(Low);
(3-7) When only High and Middle data is received
rxValue = (curValue & 127) + Control value(High) * 16384 + Control value(Middle) 
* 128;
if ( rxValue > paramWidth)
rxValue = paramWidth;
param = ( rxValue - mod / 2) / add;
If [NRPN] is selected
STATUS
1000nnnn 8n
Note off message
DATA
0nnnnnnn nn
Note number
0vvvvvvv vv
Velocity(ignored)
STATUS
1001nnnn 9n
Note on message
DATA
0nnnnnnn nn
Note number
0vvvvvvv vv
Velocity (1-127:on, 0:off)
STATUS
1011nnnn Bn
Control change
DATA
00
Control number (00)
0vvvvvvv vv
Control Value (0-127)
STATUS
1011nnnn Bn
Control change
DATA
20
Control number (32)
0vvvvvvv vv
Control Value (0-127)
STATUS
1011nnnn Bn
Control change
DATA
0nnnnnnn nn
Control number (1-31,33-95,102-119) *
0vvvvvvv vv
Control Value (0-127)
 * Numbers 0, 32, and 96–101 cannot be used.
STATUS
1011nnnn Bn
Control change
DATA
01100010 62
NRPN LSB
0vvvvvvv vv
Parameter number LSB
STATUS
1011nnnn Bn
Control change *
DATA
01100011 63
NRPN MSB
0vvvvvvv vv
Parameter number MSB
STATUS
1011nnnn Bn
Control change *
DATA
00000110 06
Data entry MSB
0vvvvvvv vv
Parameter data MSB
STATUS
1011nnnn Bn
Control change *
DATA
00100110 26
Data entry LSB
0vvvvvvv vv
Parameter data LSB
 * The STATUS byte of the second and subsequent messages need not 
be added during transmission. Reception must occur correctly 
whether or not the status byte is omitted.