ittyMidi Player Color Screen ShotIttyMidi - Changing the way you practice and perform your music
IttyMIDI.com - Home PageIttyMIDI.com - Product SearchIttyMIDI.com - PublicationsIttyMIDI.com - MIDI FilesIttyMIDI.com - Shopping CartIttyMIDI.com - About Us
ittyMIDI.com Software Products

ittyMIDI Player

-Buy Registration
-Buy CDROM
-Download Upgrade

ittyMIDI Drummer

ittyMIDI SysEx Manager

 
ittyMIDI.com Hardware Products

Palm IIIxe Bundle
MIDI Converter Box
Converter Box Cable
Serial to MIDI Cable
MIDI Discrete Encoder

ittyMIDI Compatible Products
 

ittyMIDI.com Services

Custom Development

 
 
 
This table is here courtesy of the MIDI Manufacturers Association. It was taken from the MMA web site. To check on the MMA site For the original version, click here.

Table 1 of 3 - Summary of MIDI Messages

The following table lists many of the major MIDI messages in numerical (binary) order. This table is intended as an overview of MIDI, and is by no means complete.

See also:

  • Table 2 - Expanded Messages List (Status Bytes)
  • Table 3 - Summary of Control Change Messages (Data Bytes)

Additional messages are listed in the printed documentation available from the MMA.

WARNING! Details about implementing these messages can dramatically impact
compatibility with other products. We strongly recommend consulting the official

Complete MIDI 1.0 Detailed Specification
for additional information.


               Table 1: MIDI 1.0 Specification Message Summary
             Updated 1995 By the MIDI Manufacturers Association


Status       Data Byte(s)     Description
D7----D0     D7----D0
-------------------------------------------------------------------------
Channel Voice Messages [nnnn = 0-15 (MIDI Channel Number 1-16)]
-------------------------------------------------------------------------
1000nnnn     0kkkkkkk         Note Off event.
             0vvvvvvv         This message is sent when a
                              note is released (ended).
                              (kkkkkkk) is the key (note) number.
                              (vvvvvvv) is the velocity.

1001nnnn     0kkkkkkk         Note On event.
             0vvvvvvv         This message is sent when a
                              note is depressed (start).
                              (kkkkkkk) is the key (note) number.
                              (vvvvvvv) is the velocity.

1010nnnn     0kkkkkkk         Polyphonic Key Pressure (Aftertouch).
             0vvvvvvv         This message is most often sent by
			      pressing down on the key after it
			      "bottoms out". 
                              (kkkkkkk) is the key (note) number.
                              (vvvvvvv) is the pressure value.

1011nnnn     0ccccccc         Control Change.
             0vvvvvvv         This message is sent when a controller
                              value changes.  Controllers include devices
                              such as pedals and levers.
                              Controller numbers 120-127 are reserved
                              as "Channel Mode Messages" (below).
                              (ccccccc) is the controller number.
                              (vvvvvvv) is the new value (0-119).

1100nnnn     0ppppppp         Program Change.
                              This message sent when the patch number changes.
                              (ppppppp) is the new program number.

1101nnnn     0vvvvvvv         Channel Pressure (After-touch).
                              This message is most often sent by pressing down
			      on the key after it "bottoms out". This message
			      is different from polyphonic after-touch. Use
			      this message to send the single greatest
                              pressure value (of all the current depressed keys).
                              (vvvvvvv) is the pressure value.

1110nnnn     0lllllll         Pitch Wheel Change.
             0mmmmmmm         This message is sent to indicate a change in the
                              pitch wheel.  The pitch wheel is measured by a
                              fourteen bit value. Center (no pitch change) is
                              2000H.  Sensitivity is a function of the 
                              transmitter.
                              (llllll) are the least significant 7 bits.
                              (mmmmmm) are the most significant 7 bits.

-------------------------------------------------------------------------
Channel Mode Messages  (See also Control Change, above)
-------------------------------------------------------------------------
1011nnnn     0ccccccc         Channel Mode Messages.
             0vvvvvvv         This the same code as the Control
                              Change (above), but implements Mode
                              control and special message by using
			      reserved controller numbers 120-127.
			      The commands are:

                              All Sound Off.
			      When All Sound Off is received
                              all oscillators will turn off, and
			      their volume envelopes are set to
			      zero as soon as possible.
			      c = 120, v =   0: All Sound Off
			      Reset All Controllers.
			      When Reset All Controllers is received,
			      all controller values are reset to their
			      default values. (See specific Recommended
			      Practices for defaults).
			      c = 121, v =   x: Value must only be zero
						unless otherwise allowed
						in a specific Recommended
						Practice.
			      Local Control.
                              When Local Control is Off, all devices
                              on a given channel will respond only to
                              data received over MIDI.  Played data, etc.
                              will be ignored.  Local Control On
                              restores the functions of the normal
                              controllers.
                              c = 122, v =   0: Local Control Off
                              c = 122, v = 127: Local Control On

                              All Notes Off.
                              When an All Notes Off is received,
                              all oscillators will turn off.
                              c = 123, v =   0: All Notes Off
                              (See text for description of actual
                              mode commands.)
                              c = 124, v =   0: Omni Mode Off
                              c = 125, v =   0: Omni Mode On
                              c = 126, v =   M: Mono Mode On (Poly Off)
                              where M is the number of channels
                              (Omni Off) or 0 (Omni On)
                              c = 127, v =   0: Poly Mode On (Mono Off)
                              (Note: These four messages also cause
                               All Notes Off)

-------------------------------------------------------------------------
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                      Undefined.  (Reserved)

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.


IttyMIDI.com - Home PageIttyMIDI.com - Product SearchIttyMIDI.com - PublicationsIttyMIDI.com - MIDI FilesIttyMIDI.com - Product SupportIttyMIDI.com - Privacy PolicyIttyMIDI.com - About Us

©Copyright 2004 MicroTools Inc., all rights reserved