
USER MANUAL
Exclusive
System exclusive (or sysex) messages are used to transfer information that may be
specific to a given
MIDI device. Generally, the actual data that is used describe a sound (usually called a program or
patch) is not usable by another device, even from the same manufacturer. This is because the sound
generating architecture varies dramatically between devices.
System exclusive messages begin with the system exclusive status byte (240, or $F0), followed by a
manufacturer's ID code. The number of data bytes that follow are determined by the manufacturer.
Finally, the message is terminated by an end of exclusive (EOX) status byte (247, or $F7). So as not to
get stuck reading an endless system exclusive message if the EOX is missing, the MIDI specification
states that any status byte (other than real-time) acts to terminate a system exclusive message.
If you want to write a device editor or librarian stack, you will be primarily concerned with system
exclusive messages. The device's maker specifies its system exclusive format. Some manufacturers
include a detailed system exclusive specification with each unit they sell. Others requires that you
contact them directly to request system exclusive documentation for the device.
System exclusive messages usually get sent as a result of requesting them, either by sending a
system exclusive message to your device requesting a patch dump, or by a front panel invocation. As
with all MIDI messages, if you receive a system exclusive message that you don't understand or are
not interested in, simply ignore it and all associated data bytes.
A final note on system exclusive: Since this is the most flexible form of MIDI message, you might
expect that this is where extensions to the MIDI specification would take place. Well, extensions have
already been added here, with certain MIDI Time Code messages—which help to marry MIDI with
SMPTE Time Code—and with the Sample Dump Standard format.
Additional status notes
Here are some notes on special status conditions and messages.
Running status
Channel messages (voice and mode) can have running status. That is, if the next channel status byte
is the same as the last, it may be omitted. The receiver assumes that the accompanying data is of the
same status as was last sent. Receipt of any other status byte except real-time terminates running
status.
Running status is especially convenient for sending strings of note-on and note-off messages, when
using "note on with velocity of 0" for note off, and for output of continuous controllers. This allows you
to cut the length of such strings by one-third.
Undefined and unimplemented status
Undefined status bytes are reserved and should not be used. Any undefined or unimplemented status
bytes received should be ignored. Any subsequent data bytes should be ignored until the next legal
status byte is received. In this way, these unused status bytes can be added to the MIDI specification
in the future without breaking your program.
Rev 1.1 - Page
75
Содержание 3x
Страница 1: ...User Manual User Manual User Manual User Manual...
Страница 79: ...USER MANUAL Retailler Rev 1 1 Page 79...