add directory study
This commit is contained in:
171
study/sabre/os/files/Sound/MIDI/MIDIStreamSpec1.00.txt
Normal file
171
study/sabre/os/files/Sound/MIDI/MIDIStreamSpec1.00.txt
Normal file
@@ -0,0 +1,171 @@
|
||||
MIDI 1.0 Specification:
|
||||
|
||||
Status Data Byte(s) Description
|
||||
D7----D0 D7----D0
|
||||
-------------------------------------------------------------------------
|
||||
Channel Voice Messages
|
||||
-------------------------------------------------------------------------
|
||||
1000cccc 0nnnnnnn Note Off event.
|
||||
0vvvvvvv This message is sent when a
|
||||
note is released (ended).
|
||||
(nnnnnnn) is the note number.
|
||||
(vvvvvvv) is the velocity.
|
||||
|
||||
1001cccc 0nnnnnnn Note On event.
|
||||
0vvvvvvv This message is sent when a
|
||||
note is depressed (start).
|
||||
(nnnnnnn) is the note number.
|
||||
(vvvvvvv) is the velocity.
|
||||
|
||||
1010cccc 0nnnnnnn Polyphonic Key Pressure (After-touch).
|
||||
0vvvvvvv This message is sent when the pressure
|
||||
(velocity) of a previously
|
||||
triggered note changes.
|
||||
(nnnnnnn) is the note number.
|
||||
(vvvvvvv) is the new velocity.
|
||||
|
||||
1011cccc 0ccccccc Control Change.
|
||||
0vvvvvvv This message is sent when a controller
|
||||
value changes. Controllers include devices
|
||||
such as pedals and levers.
|
||||
Certain controller numbers are reserved
|
||||
for specific purposes. See Channel Mode Messages.
|
||||
(ccccccc) is the controller number.
|
||||
(vvvvvvv) is the new value.
|
||||
|
||||
1100cccc 0ppppppp Program Change.
|
||||
This message sent when the patch number changes.
|
||||
(ppppppp) is the new program number.
|
||||
|
||||
1101nnnn 0ccccccc Channel Pressure (After-touch).
|
||||
This message is sent when the channel pressure
|
||||
changes. Some velocity-sensing keyboards do not
|
||||
support polyphonic after-touch. Use this
|
||||
message to send the single greatest velocity
|
||||
(of all te current depressed keys).
|
||||
(ccccccc) is the channel number.
|
||||
|
||||
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 by using reserved controller
|
||||
numbers. The numbers are:
|
||||
|
||||
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)
|
||||
.pa
|
||||
-------------------------------------------------------------------------
|
||||
System Common Messages
|
||||
-------------------------------------------------------------------------
|
||||
11110000 0iiiiiii System Exclusive.
|
||||
0ddddddd This message makes up for all that MIDI
|
||||
.. doesn't support. (iiiiiii) is 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.)
|
||||
|
||||
11110001 Undefined.
|
||||
|
||||
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.
|
||||
|
||||
11110101 Undefined.
|
||||
|
||||
11110110 Tune Request.
|
||||
Upon receiving a Tune Request, all analog
|
||||
sythesizers should tune their oscillators.
|
||||
|
||||
11110111 End of Exclusive.
|
||||
Used to terminate a System Exclusive
|
||||
dump (see above).
|
||||
.pa
|
||||
-------------------------------------------------------------------------
|
||||
System Real-Time Messages
|
||||
-------------------------------------------------------------------------
|
||||
11111000 Timing Clock.
|
||||
Sent 24 times per quarter note when
|
||||
synchronization is required (see text).
|
||||
|
||||
11111001 Undefined.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
-- Greg, lee@uhccux.uhcc.hawaii.edu
|
||||
Reference in New Issue
Block a user