M-AUDIO 49 User Manual

Page of 24
     
|
     15
KeyRIg 49 User Guide
MIDI Messages In-Depth
11
Program & Bank Changes 
When the MIDI standard was first established, it enabled the user to access only 128 different sounds using program change
messages (0-127). As MIDI devices grew to be more sophisticated and contain more sounds, bank change messages were included
in an updated MIDI specification to allow for more than 128 sounds to be accessed.
The language MIDI uses to communicate between
musical instruments only allows for program 
change commands 0-127, for a total of 128 
possible programs (127 programs + program
“0” = 128 programs total). Because of inherent
limitations of the MIDI communication protocol,
the number of directly accessible programs (using 
program change messages) cannot easily be 
expanded beyond 128. Thus, a system of banks,
with 128 sounds in each, has been created that 
enables manufacturers to overcome the 128-sound 
MIDI limit.
128 Banks with 128 sounds in each bank is the 
basic principle used to expand the number of
accessible sounds  However, to avoid reaching the 
new limit of the resulting 16,384 possible sounds 
(128 banks x 128 programs) accessible using a
bank change combined with a program change, 
another layer of banks was added  The result is a 
system of 128 banks that can contain 128 sub-
banks in each of them, which, in turn, can contain 
128 sounds (programs) within them 
Bank change messages are useful when calling 
up sounds from a large library that may exist in a
particular sound module or software synth  For 
example devices that are built with Roland’s GS
specification or Yamaha’s XG specification require 
you to specify a bank change in order to access the 
extra voices and effects that these devices provide.
MIDI CC 0 is the bank select MSB (Most
Significant Byte) message. This MIDI message is
7-bit in size and can be used to select any of 128 
banks. This message can be used in conjunction
with MIDI CC 32 which is bank select LSB (Least
Significant Byte): a separate 7-bit message 
allowing additional selection of any of another 128 
sub-banks  The combination of Bank MSB and 
LSB messages gives a 14-bit message that can 
select any of a possible 16,384 banks. Each bank
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
"ANK
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM
0ROGRAM