As with the ButtonBox2
design, the +5v power supply for this circuit is taken from the 6 pin mini-din
keyboard connector, SK2. So you must have a keyboard extension lead
plugged between you PC's keyboard connector and SK2 on the interface card for
this circuit to work. This is useful because you don't have to have the
JAMMA loom plugged in to program the Atmel processor!
The Interface Card PCB has been designed so that the following JAMMA loom
pins are connected to the PCB for use as switch inputs: Pins 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, R, S, T, U, V, W, X, Y, Z, a, b and c. Any
PC key stroke can be assigned to any one of these connections making the
control interface fully customizable.
Switch Controls
The Interface Card PCB has been designed such that the JAMMA cabinet
switches and controls are connected using the BB2 direct method, i.e. there is
no matrix of connections. The BB2 direct method supports up to 27
switches which is enough for this interface card and makes the PCB design very
simple. If you want to use more than 27 switches then this can be done
by using the connector PL2 and attaching the BB2
matrix-card.
In addition to the JAMMA switches/controls I have also added some
configuration key switches (SW1 to SW7) to the Interface Card PCB. The
reason for this is so that you do not have to have a PC Keyboard attached in
order to make ArcadeOS or MAME configuration changes. The switches can
be configured with any key stoke by using the BB2 configuration software GUI.
The most useful ones are of course 'Esc', 'Return', 'Tab', 'F2', 'F3', etc.
for MAME and I have also included 'L' for ArcadeOS which is the toggle key for
Locking/Unlocking the software.
Links LK1, LK2 and LK3 enable/disable the JAMMA loom switches for the JAMMA
pins s (tilt), r (service switch) and 15 (test) so that SW1, SW2 and SW3 can
be used for other key stoke configurations.
Programming the Atmel AT90S8015
It should be noted that the method of programming Atmel processor (IC3) is
slightly different than that of the original ButtonBox2. Just use a 25
way standard printer cable to connect your PC's printer port to connector SK4
on the Interface Card PCB. This cable should be left in place after IC3
has been programmed because it is also used for the monitor switching
circuit.
To program IC3 attach 4 jumper links to LK8, LK9, LK10 & LK11 and power
up your PC. Use the ButtonBox2
software and instructions to program the device.
DON'T FORGET to remove jumper links LK8, LK9, LK10 and LK11 when IC3 has
been programmed before doing anything else!
Once IC3 has been programmed you can download your keystroke configuration
by running the BB2 GUI. The GUI also has settings for key bounce delays.