36
MIDI Implementation
 
9
System Realtime Message
 7 Active Sensing
Status
FEH
 * When Active Sensing is received, the unit will begin monitoring the intervals of all further mes-
sages. While monitoring, if the interval between messages exceeds 300 ms, the same processing 
will be carried out as when All Notes O are received, and message interval monitoring will be 
halted.
 7 System Exclusive Message
Status
F0H   : System Exclusive
F7H   : EOX (End of Exclusive)
 * Exclusive message can change either each parameter individually or all parameters, of a patch or 
tone.
 * Refer to Section 3 to see details.
3. Exclusive Communication
 
9
3.1 Message Format
Roland’s exclusive format (type IV) messages all have the following structure.
Byte Explanation
F0H Exclusive status
41H Roland ID
DEV Device-ID 
MDL Model-ID
CMD Command-ID
[BODY] Data
F7H EOX (End Of Exclusive)
 7 MIDI status (F0H), (F7H)
Exclusive messages are enclosed between two status bytes; a “maker ID” is required after the F0H 
status byte. <This is prescribed by MIDI Specication version 1.0.>
 7 Maker ID (41H)
This is Roland’s ID. The “maker ID” species the manufacturer whose exclusive message this is.
 7 Device ID “DEV”
This distinguishes between multiple devices. Normally, this will be a value that is one less than the 
“basic channel” (00H-0FH), but in the case of a device that has multiple basic channels, it may also 
be specied as (00H-1FH).
 7 Model ID “MDL”
This has a xed value for each model. However, if the same data is used by diering models, the 
same value is used. For expansion, (00H) is used; the number of (00H) is also used to dierentiate 
various things.
For example,
   (01H), 
   (02H), 
   (03H), 
   (00H, 01H), 
   (00H, 02H), 
   (00H, 00H, 01H)
each indicate dierent models.
 7 Command ID “CMD”
This indicates the role of the message.
For expansion, (OOH) is used; the number of (OOH) is also used to dierentiate various things.
For example,
   (01H), 
   (02H), 
   (03H), 
   (00H, 01H), 
   (00H, 02H), 
   (00H, 00H, 01H)
each indicate dierent roles.
 7 Data body [BODY]
This is the actual body of data that is transmitted or received. The size and content dier depending 
on the “model ID” and “command ID.”
 
9
3.2 Data Transfer Using Address Mapping
Address mapping is the method in which data is transferred according to the format described 
in section 3.1. With this method, waveform data, sound data, switch information, and parameters 
are assigned to the address space specied for each model, so that various types of data can be 
transferred by specifying its address.
This means that the data transfer method does not dier depending on the model or the type of 
data. There are two methods of transferring the data: one-way and handshake.
Depending on the model and on the type of data, one or another of the two methods is used, or in 
some cases only one method is possible.
 7 One-way method (see 3.3)
This method is suitable for transferring relatively small amounts of data; it transfers data by 
unilaterally transmitting an exclusive message.
Connection diagram
Device A
MIDI OUT
MIDI IN
MIDI IN
MIDI OUT
Device B
1
2
If “data request” (see 3) is used, connection 2 is required.
 7 Handshake method (see 3.4)
This method transfers data using bi-directional verication (handshaking) between the transmitting 
and receiving devices. When transferring large amounts of data, this method provides high 
reliability and faster transfer.
Connection diagram
Device A
MIDI OUT
MIDI IN
MIDI IN
MIDI OUT
Device B
1
2
Both connections 1 and 2 are required.
Regarding the above two methods
 * The “command ID” is xed according to the transfer method.
 * Data transfer cannot occur unless both device [A] and device [B] use the same method, are both 
in a state that allows them to transfer data, and are both set to matching “device ID” and “model 
ID .”
 
9
3.3 Transferring Data Using the One-Way 
Method
When transferring relatively small amount of data, this method transmits the data unilaterally 
without checking each message. However, when consecutively sending large amount of data, 
an appropriate interval of time (at least 20 msec) is inserted between transmissions. This method 
requires that the receiving device be able to correctly receive the data within that time.
Types of message
Byte Explanation
Request data 1  RQ1 
(11H)
Data set DT1 
(12H)