Roland exclusive messages, 38 chapter 5 appendices, Data format for exclusive messages – Roland GI-20 User Manual

Page 38: Address-mapped data transfer, One-way transfer procedure, Midi status: f0h, f7h, Manufacturer id: 41h, Device id: dev, Model id: mdl, Command id: cmd

Advertising
background image

38

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):

•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
00H–0FH, a value smaller by one than that of a basic channel, but value
00H–1FH may be used for a device with several basic channels.

•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 memory-resident
records—waveform and tone data, switch status, and parameters, for
example, to specific locations in a machine-dependent address space, thereby
allowing access to data residing at the address a message specifies.


Address-mapped data transfer is therefore independent of models and data
categories. This technique allows use of two different transfer procedures:
one-way transfer and handshake transfer.

•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

Connection at point 2 is essential for “Request data” procedures.

(See Section 3.)

•Handshake-transfer procedure (This device

does not use this procedure)

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

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

•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

F0H

41H

DEV

MDL

CMD

[BODY]

F7H

Description

Exclusive Status

Manufacturer ID (Roland)

Device ID

Model ID

Command ID

Main data

End of exclusive

MIDI OUT

MIDI IN

MIDI IN

MIDI OUT

Device A

Device B

1

2

MIDI OUT

MIDI IN

MIDI IN

MIDI OUT

Device A

Device B

1

2

Message

Request data 1

Data set 1

Command ID

RQ1 (11H)

DT1 (12H)

Byte

F0H

41H

DEV

MDL

11H

aaH

|

|

ssH

|

|

sum

F7H

Description

Exclusive Status

Manufacturer ID (Roland)

Device ID

Model ID

Command ID

Address MSB

|

|

LSB

Size MSB

|

|

LSB

Check sum

End of exclusive

Advertising