|
Start by assembling the JAMMA-Prog kit.
The trigger inverter circuits will need to be fitted because the
Xbox 360 game pad features analog triggers.
The start-up hold circuits, as well as the 20 pin fighting board
headers will not be used and can be omitted. |
|
This will be the source of the player 1 controller board - a Mad
Catz controller. |
|
Remove the screws, take the board out.
Determine that the PCB uses a common ground layout. That is, one
side of each button is connected to ground. This can be verified by
with a multimeter on continuity mode.
Matrix button layouts, which some genuine Microsoft Xbox 360
controllers have, are unsuitable for game pad hacks of this nature.
|
|
On the reverse side of the board left trigger/potentiometer
assembly is visible. The right hand side trigger has already been
removed.
One side of the trigger potentiometer is ground, the other is VCC,
with the wiper in the middle. Plug the controller into a USB port
and use a multimeter set on the DC volts range to determine which is
which. |
|
When the trigger is the idle there is 0V on the wiper. |
|
When the trigger is fully pressed, the wiper is at or close to
VCC.
Remove both left and right trigger potentiometers. Solder a wire to
one of the potentiometer's VCC pads. Solder another wire to the
potentiometer's ground pad. These will be connected to player 1 VCC
and GND respectively on the JAMMA-Prog.
This VCC is 3.3V and it powers the trigger inverter circuits. Do not
use the 5V USB bus power for VCC.
The wiper from the left trigger is connected to K4 INV JAMMA-Prog
and the wiper from the right trigger is connected to K3 INV on the
JAMMA-Prog. |
|
Solder a wire to each digital input on the game pad. Wire it to
its respective terminal on the JAMMA-Prog. Use the Xbox pin label
stick for reference.
Note that I have soldered the wire to the wrong side of the X button
(the ground side) by mistake in the photo.
|
|
For player 2, I will use the controller board PCB from an third
party Xbox 360 arcade stick. The buttons are connected with two pin
headers. I have one connected as an example. |
|
Turn the board over. Look at the pads for the button headers.
Notice that one side of each pair is connected to ground, except for
the right trigger (RT) and left trigger (LT). In the case of the two
trigger inputs, they are switched to VCC with the button. You can
confirm this with a voltmeter in the same way as the game pad.
The reason for this is the chipset unused inside the arcade stick is
the same one that's found inside a regular game pad. It's just using
the analog input in a digital fashion. To connect this input to a
standard JAMMA common ground switch, a trigger inverter circuit will
be required, just like a the game pad hack.
Just to make it clear, the 3.3V from the switch header is used for
VCC, not the 5V USB bus power. |
|
Now the RT and LT from the player 2 controller board are connected
to K3 INV and K4 INV on the JAMMA-Prog respectively. While the rest
of the buttons and switches are wired to the terminal array,
according to the labels.
Attach the USB cable to a bracket of some kind with a cable tie.
This functions as a strain relief, which is necessary to prevent the
USB cable from being ripped out from its controller board. |
|
Now the jumper wires can be installed to map which buttons and
joysticks go to which Xbox 360 controller functions. In this case I
have left the XB button functional on the player 1 controller board.
Player 2 XB button has been connected to SW1 button on the
JAMMA-Prog board itself. |