------------------------------------------------------------------------- System Common Messages ------------------------------------------------------------------------- 11110000 0iiiiiii System Exclusive. 0ddddddd This message makes up for all that MIDI .. doesn't support. (iiiiiii) is usually a .. seven-bit Manufacturer's I.D. code. If the 0ddddddd synthesizer recognizes the I.D. code as 11110111 its own, it will listen to the rest of the message (ddddddd). Otherwise, the message will be ignored. System Exclusive is used to send bulk dumps such as patch parameters and other non-spec data. (Note: Real-Time messages ONLY may be interleaved with a System Exclusive.) This message also is used for extensions called Universal Exclusive Messages. 11110001 Undefined. (Reserved) 11110010 0lllllll Song Position Pointer. 0mmmmmmm This is an internal 14 bit register that holds the number of MIDI beats (1 beat= six MIDI clocks) since the start of the song. l is the LSB, m the MSB. 11110011 0sssssss Song Select. The Song Select specifies which sequence or song is to be played. 11110100 Undefined. (Reserved) 11110101 Undefined. (Reserved) 11110110 Tune Request. Upon receiving a Tune Request, all analog synthesizers should tune their oscillators. 11110111 End of Exclusive. Used to terminate a System Exclusive dump (see above). ------------------------------------------------------------------------- System Real-Time Messages ------------------------------------------------------------------------- 11111000 Timing Clock. Sent 24 times per quarter note when synchronization is required (see text). 11111001 Timing Tick (1 tick per 10 ms). 11111010 Start. Start the current sequence playing. (This message will be followed with Timing Clocks). 11111011 Continue. Continue at the point the sequence was Stopped. 11111100 Stop. Stop the current sequence. 11111101 Undefined. (Reserved) 11111110 Active Sensing. Use of this message is optional. When initially sent, the receiver will expect to receive another Active Sensing message each 300ms (max), or it will be assume that the connection has been terminated. At termination, the receiver will turn off all voices and return to normal (non- active sensing) operation. 11111111 Reset. Reset all receivers in the system to power-up status. This should be used sparingly, preferably under manual control. In particular, it should not be sent on power-up. ------------------------------------------------------------------------- System Exclusive Messages ------------------------------------------------------------------------- All System Exclusive communication starts with F0 and ends with F7 (EOX). Manufacturer Specific System Exclusive 11110000 (F0) System Exclusive. 0iiiiiii Manufacturer's ID number (except 7EH and 7FH, see below) Followed by "anything" (no numbers larger than 127) 11110111 (F7) EOX: "End of System Exclusive" Universal System Exclusive 11110000 (F0) System Exclusive. 01111110 or 01111111 Non-Real Time (7EH) or Real Time (7FH) 0iiiiiii Sample Dump, File Dump, MIDI Show Control, etc.. Followed by different codes depending on protocol (see below). : 11110111 (F7) EOX: "End of System Exclusive" Currently Defined Messages (in Hex): Non-Real Time (7EH) SUB-ID #1 SUB-ID #2 Description ========= ========= =========== 00 -- Unused 01 (not used) Sample Dump Header 02 (not used) Sample Dump Packet 03 (not used) Sample Dump Request 04 nn MIDI Time Code Cueing messages 00 Special 01 Punch In Points 02 Punch Out Points 03 Delete Punch In Point 04 Delete Punch Out Point 05 Event Start Point 06 Event Stop Point 07 Event Start Point with add. info. 08 Event Stop Point with add. info. 09 Delete Event Start Point 0A Delete Event Stop Point 0B Cue Points 0C Cue Points with add. info. 0D Delete Cue Point 0E Event name in add. info. 05 nn Sample Dump Extensions 01 Multiple Loop Points 02 Loop Points Request 06 nn General Info 01 Identity Request 02 Identity Reply 07 nn MIDI File dump 00 Header 01 Data Dump 02 Request 08 nn MIDI Tuning Standard 00 Bulk Dump Request 01 Bulk Dump Reply 09 nn General MIDI 01 General MIDI System On 02 General MIDI System Off 7B (not used) End Of File 7C (not used) Wait 7D (not used) Cancel 7E (not used) NAK 7F (not used) ACK Real Time (7FH) SUB-ID #1 SUB-ID #2 Description ========= ========= =========== 00 -- Unused 01 nn MIDI Time Code 01 Full Message 02 User Bits 02 nn MIDI Show Control 00 MSC Extensions 01-7F MSC Commands 03 nn Notation Information 01 Bar Marker 02 Time Signature (Immediate) 42 Time Signature (Delayed) 04 nn Device Control 01 Master Volume 02 Master Balance 05 nn MIDI Time Code Cueing messages 00 Special 01 Punch In Points 02 Punch Out Points 03 (Reserved) 04 (Reserved) 05 Event Start Point 06 Event Stop Point 07 Event Start Point with add. info. 08 Event Stop Point with add. info. 09 (Reserved) 0A (Reserved) 0B Cue Points 0C Cue Points with add. info. 0D (Reserved) 0E Event name in add. info. 06 nn MIDI Machine Control 00-7F MIDI Machine Control Commands 07 nn MIDI Machine Control 00-7F MIDI Machine Control Responses 08 nn MIDI Tuning Standard 02 Note Change Notes: 1. iiiiiii: identification ID (0-127) 2. All bytes between the System Exclusive Status byte and EOX or the next Status byte must have zeros in the MSB. 3. The ID number can be obtained from the MMA or JMSC. 4. In no case should other Status or Data bytes (except Real-Time) be interleaved with System Exclusive, regardless of whether or not the ID code is recognized. 5. EOX or any other Status byte, except Real-Time, will terminate a System Exclusive message, and should be sent immediately at its conclusion.