Chapter 5 Appendices
Roland Exclusive Messages
1. Data Format for Exclusive Messages
Roland’s MIDI implementation uses the following data format for all Exclusive messages (type IV):
Byte | Description |
|
|
F0H | Exclusive Status |
41H | Manufacturer ID (Roland) |
DEV | Device ID |
MDL | Model ID |
CMD | Command ID |
[BODY] | Main data |
F7H | End of exclusive |
|
|
•MIDI status: F0H, F7H
An Exclusive message must be flanked by a pair of status codes, starting with a Manufacturer ID immediately after F0H (MIDI version 1.0).
•Manufacturer ID: 41H
The Manufacturer ID identifies the manufacturer of a MIDI instrument that sends an Exclusive message. Value 41H represents Roland’s Manufacturer ID.
•Device ID: DEV
The Device ID contains a unique value that identifies individual devices in the implementation of several MIDI instruments. It is usually set to
•Model ID: MDL
The Model ID contains a value that identifies one model from another. Different models, however, may share an identical Model ID if they handle similar data.
The Model ID format may contain 00H in one or more places to provide an extended data field. The following are examples of valid Model IDs, each representing a unique model:
01H
02H
03H 00H, 01H 00H, 02H
00H, 00H, 01H
•Command ID: CMD
The Command ID indicates the function of an Exclusive message. The Command ID format may contain 00H in one or more places to provide an extended data field. The following are examples of valid Command IDs, each representing a unique function:
01H
02H
03H 00H, 01H 00H, 02H
00H, 00H, 01H
•Main data: BODY
This field contains a message to be exchanged across an interface. The exact data size and content will vary with the Model ID and Command ID.
2. Address-mapped Data Transfer
Address mapping is a technique for transferring messages conforming to the data format given in Section 1. It assigns a series of
•One-way transfer procedure (See Section 3 for details.)
This procedure is suited to the transfer of a small amount of data. It sends out an Exclusive message completely independent of the receiving device's status.
Connection Diagram
Device A | 1 | Device B | |
MIDI OUT | 2 | MIDI IN | |
MIDI IN | MIDI OUT | ||
|
Connection at point 2 is essential for “Request data” procedures. (See Section 3.)
This procedure initiates a predetermined transfer sequence (handshaking) across the interface before data transfer takes place. Handshaking ensures that reliability and transfer speed are high enough to handle a large amount of data.
Connection Diagram
Device A | 1 | Device B | |
MIDI OUT | 2 | MIDI IN | |
MIDI IN | MIDI OUT | ||
|
Connection at points 1 and 2 is essential.
Notes on the above procedures
*There are separate Command IDs for different transfer procedures.
*Devices A and B cannot exchange data unless they use the same transfer procedure, share identical Device ID and Model ID, and are ready for communication.
3. One-way Transfer Procedure
This procedure sends out data until it has all been sent and is used when the messages are so short that answerbacks need not be checked.
For longer messages, however, the receiving device must acquire each message in time with the transfer sequence, which inserts 20 milliseconds intervals.
Types of Messages
Message | Command ID |
|
|
Request data 1 | RQ1 (11H) |
Data set 1 | DT1 (12H) |
|
|
•Request data #1: RQ1 (11H)
(This device does not use this procedure)
This message is sent out when there is a need to acquire data from a device at the other end of the interface. It contains data for the address and size that specify designation and length, respectively, of data required.
On receiving an RQ1 message, the remote device checks its memory for the data address and size that satisfy the request.
If it finds them and is ready for communication, the device will transmit a “Data set 1 (DT1)” message, which contains the requested data. Otherwise, the device won't send out anything.
Byte | Description | |
F0H | Exclusive Status | |
41H | Manufacturer ID (Roland) | |
DEV | Device ID | |
MDL | Model ID |
|
11H | Command ID | |
aaH | Address MSB | |
| ||
| ||
|
| LSB |
ssH | Size | MSB |
| ||
| ||
|
| LSB |
sum | Check sum | |
F7H | End of exclusive | |
|
|
|
38