15 pin D-SUB FEMALE connector at the computer |
Pin
|
Name
|
Dir
|
Description |
1 |
+5V
|
|
+5 VDC
|
2 |
/B1
|
|
Button 1 |
3 |
X1
|
|
Joystick 1 - X |
4 |
GND
|
|
Ground
|
5 |
GND
|
|
Ground
|
6 |
Y1
|
|
Joystick 1 - Y |
7 |
/B2
|
|
Button 2 |
8 |
+5V
|
|
+5 VDC
|
9 |
+5V
|
|
+5 VDC
|
10
|
/B4
|
|
Button 4 |
11
|
X2
|
|
Joystick 2 - X |
12
|
MIDITXD
|
|
MIDI Transmit
|
13
|
Y2
|
|
Joystick 2 - Y |
14
|
/B3
|
|
Button 3 |
15
|
MIDIRXD
|
|
MIDI Receive
|
About MIDI Signals
How this document describe signalsMIDI Signals are like ASM instructions : First a byte gives the
instruction, if there is parameters, they follow the instruction byte using data
bytes.
For exemple, "Note off event (Key, Velocity)" for channel 0 will
be send as "Note off event" byte, then Key data byte, then Velocity data byte:
"1000 0000 - 0kkk kkkk - 0vvv vvvv" where kkkkkkk is the Key value and
vvvvvvv is the Velocity value. Data are always 7 bits, to allow the 0
beginning the data byte, when a parameter need more than 7 bits, it uses 2 data
bytes, again like in ASM: LSB followed by MSB.
Bytes table Type | Command | Byte | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Data | Data | 0 | Data | Channel | Note off event | 1000 | Channel | Note on event | 1001 | Channel | Polyphonic key pressure | 1010 | Channel | Control change | 1011 | Channel | Program change | 1100 | Channel | Channel pressure | 1101 | Channel | Pitch wheel change | 1110 | Channel | System Exclusive | System Exclusive Header | 1111 0000 | System Common | (Undefined) | 1111 0001 | Measure Information | 1111 0010 | Song Select | 1111 0011 | (Undefined) | 1111 0100 | (Undefined) | 1111 0101 | Tune Request | 1111 0110 | System Exclusive | System Exclusive End of block | 1111 0111 | System Real Time | Timing Clock In Play | 1111 1000 | Measure End | 1111 1001 | Start From 1st Measure | 1111 1010 | Continue Start | 1111 1011 | Timing Clock In End | 1111 1100 | ? | 1111 1101 | Active Sensing | 1111 1110 | System Reset | System Reset | 1111 1111 |
Channel SignalsThe 4 highest bits of a channel status byte is the instruction, the 4 lowest
ones is the channel number.
Note off event (key,
velocity) Note on event (key, velocity) Polyphonic key
pressure (key, after-touch) Control change (command address, command
value) Program change (program number) Channel pressure
(after-touch) Pitch wheel change (value lsb, value msb)
System ExclusiveThese two instructions are used to send special instructions to a MIDI
device, the instruction is made of a 2 bytes header, followed by data block(s)
(as many as needed) and then finish by an end of block byte.
System
Exclusive Header + Data (Identification code) + Data block(s) + System Exclusive
End of block
System Real TimeInstructions for synchronisation and rythm boxes control, send for all
channels.
Timing Clock In Play This clock is send while the
system is in "play" mode. There are 24 clock impulsions for 1 black
note.
Measure End Replace the Timing Clock In Play signal at
the end of every measure.
Start From 1st Measure This signal is
send when the master "play" key is pressed. The first Timing Clock In Play
must be send in the next 5ms following this signal.
Continue
Start This signal is send directly when the master "continue" key is
pressed. The next Timing Clock In Play must be send in the next 5ms following
this signal.
Timing Clock In End This signal is send when the
master is in wait-mode and is used to lock a PLL during a
pause.
Active Sensing no information available.
System CommonMeasure Information (measure number lsb, measure number
msb) Song Select (song number) Tune Request
System ResetSystem Reset Restart the whole system.
ParametersChannel Channel number from 0 to 15.
Key Key
number from 0 to 127, the central A is always number
60.
Velocity Velocity from 0 to 127 (0=Note off). If the
keyboard doesn"t have velocity, 64 is send as default.
After
touch After-touch from 0 to 127.
Command address Address
from 0 to 127. Except for the "Pitch bender", which is 0, there is no
specification for these.
Command value For controllers, from 0
to 127. For switches, 0=off, 127=on (other ore ignored).
Program
number Program number from 0 to 127.
Identification
code Society code from 0 to 127.
01 | 000 0001 | Sequential Systems | 40 | 100 0000 | Kawai | 41 | 100 0001 | Roland | 42 | 100 0010 | Korg | 43 | 100 0011 | Yamaha | Measure number Measure number
in 14 bits. The value is divided into 7 msb bits and 7 lsb bits to be able to
send them as data blocks. Note: Direction is Computer relative Joystick. Note: Use 100 kohm resistor. | 15 pin D-SUB MALE connector at the joystick cable |