INPUT

PRESET CODES

NORMAL CODES

CODES WITH SHIFT
(hold 1 player start)

COIN 1 5
COIN 2 6
START 1 1
START 2 2 ESC
1 RIGHT R arrow Tab
1 LEFT L arrow Enter
1 UP U arrow Tilde(adj volume, gamma, etc )
1 DOWN D arrow P (pause)
1 SW 1 L-ctrl 5 (Coin A)
1 SW 2 L-alt
1 SW 3 space
1 SW 4 L-shift
1 SW 5 Z
1 SW 6 X
1 SW 7 C
1 SW 8 V
START 1 1
START 2 2 Esc
2 RIGHT G
2 LEFT D
2 UP R
2 DOWN F
2 SW 1 A
2 SW 2 S
2 SW 3 Q
2 SW 4 W
2 SW 5 I
2 SW 6 K
2 SW 7 J
2 SW 8 L
THE FOLLOWING CODES FOR THE I-PAC4 ONLY
COIN 3 7  
COIN 4 8  
START 3 3  
START 4 4  
3 RIGHT L  
3 LEFT J  
3 UP I  
3 DOWN K  
3 SW 1 R-CTRL  
3 SW 2 R-SHIFT  
3 SW 3 ENTER  
3 SW 4 O  
3 SW 5    
3 SW 6    
3 SW 7    
3 SW 8    
4 RIGHT U  
4 LEFT V  
4 UP Y  
4 DOWN N  
4 SW 1 B  
4 SW 2 E  
4 SW 3 H  
4 SW 4 M  
4 SW 5    
4 SW 6    
4 SW 7    
4 SW 8    

USING THE IN-BUILT CODE-SET

When the board is first powered on, it contains a pre-loaded code set. This matches the MAME default key codes as the table above indicates. For many users there is no need to do any re-assignment, just power up and play.

You may want to re-program the codes if any of the following apply:

· You use an emulator or other PC application without a key re-mapper. (the "ctrl" and "space" keys used for buttons in MAME perform control functions in Callus for example so these keys have to be re-assigned)

· You don't want people to be able to access the MAME game config menus by using shift buttons (for example game contests etc)

· You want to limit coin insert to a real coin slot rather than using shift button feature.

INSTALLATION:

The board automatically detects which interface it is connected to (USB or PS/2).

You do not need to install any drivers or software from the Ultimarc CD to get the board to operate.

Connect one side of each switch to the screw terminals as indicated on PCB. "Daisy chain" the other side of all switches together and connect to either of the "GND" terminals on PCB. Some micro-switches have 3 connections – only use the ones marked "NO" and "COM". Don't connect anything to the "NC" tag. Below is a diagram showing an example of 3 joystick micro-switches connected to inputs on the I-PAC board.

The gauge of wire used is not critical. Any insulated stranded wire will do providing it is thick enough to be gripped by the screw connectors. The wire we supply in our wiring kit is 16 X 0.2 mm.

You can connect more than one switch to one I-PAC input, to perform the same function. For example you might want to have side flipper buttons connected to the same inputs as fire buttons as these are used in different games. This applies to joysticks too. You can connect a 4 and an 8-way stick to the same inputs. (But check our 4-8 way switchable sticks though!)

schematic

I-PAC wiring

If you are using the LED harness, plug it onto the 10 pin header. Note that one pin of the header is missing. This is to ensure the polarised plug can only be inserted the correct way round.

Plug one end of cable into DIN connector marked "PC" and other end to motherboard keyboard or USB connector. Connect normal keyboard to connector marked "KBD" (optional and does not apply in USB mode, you can leave the keyboard "as-is".)

If using USB: Start windows. With Windows running plug in the USB cable. Windows will detect the device and automatically load drivers. The drivers for this device are on the Windows CD ROM. There are no Ultimarc drivers for the I-PAC.

BASIC TESTING.

Boot PC into DOS or Windows and run a text program such as Notepad. Observe the LED on the I-PAC should display a flash pattern and then light continuously.
Press various player 2 buttons (some of the player 1 buttons are mapped to non-displayable codes such as ALT so best to use player 2). You should see characters displayed, just as if they were typed on the keyboard.

ADVANCED TESTING (optional)

If in DOS, enter COPY CON to suppress the command prompt. On a keyboard plugged into the pass-through, press CTRL-ALT-P. (press and hold each key in this order). Enter "T" in the menu to enter test mode. All pressed buttons and joysticks will be displayed on the screen. The input will be shown, followed by the code which is currently assigned, followed by the shifted code, if one is assigned. Test all buttons and joystick switches. If all OK reboot to exit. Now ready to play!

PROGRAMMING (optional)

There are two methods of programming the board. The WinIPAC IPD utility can be downloaded and run from Windows or IPACUTIL in DOS See programming instructions for details, OR you can enter the Interactive Programming and Test Mode by pressing CTRL-ALT-P on a keyboard connected to the pass through. See here for instructions. You might also have to do some setting-up in MAME because buttons 5 and 6 are not normally assigned by default in MAME and must be programmed. (press tab in any game).

SHIFT MODE

Pressing and holding 1player start enables shift mode with access to the following keys (when "MAME" setting is used):

2 player start=Esc – for jumping back to the menu

Joystick left=Enter – for running games in Windows and for MAME game config menu

Joystick right=Tab – for entering MAME config menu

Joystick up=~ - for entering MAME volume/gamma menu

Joystick down=P MAME pause key

1 fire (button 1)=5 – for simulating coin insert.


The above shift keys can be changed/turned off as required if the board is programmed.

MAME HINT: to get past "Type OK to continue" prompt, just move joystick left then right.

NOTES: PC should pass BIOS keyboard self-test with or without a normal keyboard connected. The unit is capable of being used in a closed arcade cabinet with no additional keyboard or controls and motherboard booting into an emulation menu. If an auxiliary keyboard is connected it can be used fully and even used during gameplay alongside your control panel.

USB NOTES: In USB mode the keyboard pass-thru connector does still work, and the I-PAC translates the PS/2 keyboard protocol into USB. This is primarily for using interactive programming and test mode. It is recommended that, with I-PAC in USB mode, you normally connect your PS/2 or USB keyboard directly to the PC.

USB DOS SUPPORT: Most PCs support a USB keyboard in DOS mode so I-PAC in USB mode MAY work in DOS. (USB keyboard support may have to be enabled in the BIOS). HOWEVER: many BIOSes have poor USB support which prevent use for gaming, as the response is too slow. USB is intended for Windows use, either in a "DOS box" or a windows application.

USING TWO I-PACs TOGETHER: Two boards can be used for doubling the number of inputs. The second board can be connected to the pass-thru connector of the first. Or either connect both boards to USB or the first to the keyboard port and second to USB. Each board can be individually programmed with the required code set, then the two boards can be connected together as above.

WIRING TWO JOYSTICKS TO THE SAME CONNECTIONS: This is fine, and is often done when using a dedicated 4-way joystick alongside an 8-way. Both joysticks could be wired to the Player 1 inputs. They will both perform the same function of course.

LEDs: The three LEDs use the following inputs, which become bdirectional:
Player 1 Button 7
Player 2 button 7
Player 1 button 8
These inputs can still be used for buttons even if LEDs are connected but note that when the buttons are pressed the LEDs will light. You can wire your own LEDs to these connections.

LED HARNESS: (Optional). The LED harness plugs onto the 10-way header on the board. The LEDs are connected to the harness via a removeable plug. This can be disconnected to allow the LEDs to be mounted through a panel. Ensure to note which way round the plug is fitted to the LED. The LEDs can be tested by pressing caps lock, scroll lock and num lock on a pass-thru keyboard. If you have connected the I-PAC to the PC using USB, in mame.ini change "led_mode" from "ps/2" to "usb"

IMPORTANT NOTE!
The LED harness and the PCB take 5 volts from the PC motherboard. Ensure no exposed parts of either touch to ground. If this occurs the motherboard could be damaged. Most motherboards supply the 5 volts to the keyboard connector via a tiny wired-in fuse which looks like a resistor. If the 5 volts is shorted this fuse will need to be replaced which is not easy!

Mount the PCB on a wooden control panel or other insulator, or if this cannot be done, use stand-off pillars. When the LEDs are connected to the harness a small length of pin is left exposed. This can be bent over to secure the plug and should be insulated with tape as one pin on each LED is connected directly to 5 volts.

HEADER PLUG AND LED WIRING DIAGRAM:
The diagram below will help if you decide to make your own LED connections. The header plug pins are shown looking from the top.

header

TROUBLESHOOTING

General Approach:

The on-board self-test LED gives a display of functional checks, see later in this section for more details.
Remember that the I-PAC emulates a keyboard. So if you bear this in mind, you can use any program that displays text to test the response with certain limitations. Notepad or the DOS prompt can be used for example. You can connect a short piece of wire to GND and use the other end to touch onto various input connections, and characters should be typed on the screen. Bear in mind, though, that the default MAME configuration includes many non-printing keys such as ALT, CTRL and the arrow keys, so trying the player 2 inputs is best as these are all printable characters.
But Notepad or DOS cannot tell you whether an input is "stuck" though so is not a complete test. For this you need to use the I-PAC test mode or Ghostkey.exe. (A DOS program). For Windows, the best test by far is the Passmark keyboard Test which I can recommend downloading. It's a 30-day trial version but hopefully you will have it working by then!

Problem: Player 2 buttons 5 and 6 not working.
This is not an I-PAC problem! By default, MAME does not have these buttons assigned to any keycodes. Just go into the MAME controls menu (press tab in a game) and assign them. Button 5 is "I" and Button 6 is "K".

Problem: No shift functions work.
Part of the shift function design means that to avoid "stuck" keys, shift functions are disabled when any key is pressed. So loss of shift functions means you have a shorted or stuck switch. Problem is, which one? There are two ways to determine this. The on-board LED gives an indication of which input is shorted, see later in this section.
Or use the built-in test mode:
Run any text-display program such as Notepad, or if you are in DOS type "COPY CON" to turn off the command prompt. With a keyboard plugged into the pass-through port, press CTRL-ALT-P (press and hold each key in this order). You will go into programming mode. If the MAME/ALT jumper is set to MAME you will go right into test mode. If not, you will see a menu. Enter "T" for test mode. The offending stuck input(s) will be displayed on the screen.

Problem: Cannot program. Utility hangs at end of programming.
If you are using the PS/2 connection, and do not have any USB keyboard on your PC, you will need to check that in the PC BIOS, "USB keyboard support" or "Legacy USB Support" is DISABLED, otherwise WinIPAC will not program properly.
Another cause of this is having non-switch items connected to inputs. In general, the inputs must be "open" (ie no switch pressed) for programming to work. This may not be the case if you have other things connected such as a game board connected at the same time as the I-PAC. Email for further advice on this if you must have other devices connected as there are workarounds.

Problem: Erratic behaivour of joystick directions. Shift functions not working. "Stuck" keys.
A very common cause is connection of the inputs to the "NC" contact on the switches instead of "NO". See the "no shift functions work" heading above for more info. This type of problem usually occurs when a large number of switches are incorrectly connected. The self-test LED will indicate this problem.

Problem: Slow response and stuck keys in Windows 98 when using I-PAC in USB mode.
This is caused by the motherboard USB controller not working in Windows. The keyboard (and therefore I-PAC) is relying on the slow BIOS for support instead of the Windows USB controller drivers. Go into the BIOS setup and disable USB keyboard support or "legacy port 60-64 support". If the I-PAC stops working completely then this is the problem. Now go into device manager in Windows and check the USB controller for any driver problem.

Problem: In USB mode, the I-PAC was not detected properly once before and now I can't get it out of this state.
You will need to remove it from Windows and let it re-detect. Go into Control Panel, System, Device Manager, Hardware. Open up the USB controller by clicking on the plus sign next to it. Under this heading will be displayed all the USB devices. Right click on all devices one by one except the controller itself and Root Hubs and select "uninstall". Now unplug and re-plug the I-PAC. It should be re-detected.

Problem: In USB mode, it is only detected as "Unknown Device" or "device has a problem".
Under certain conditions, shorted inputs can cause this, or inputs that are held at 5 volts. This may happen either because of a wiring error (see steps for checking this, above) or the I-PAC inputs being connected to something other than an open-circuit switch. If you need to connect non-switch devices please email for advice.

Problem: MAME32: Intermittently sticking in one direction.
Several people have reported this, and it's not an I-PAC problem. If you check the I-PAC installation using the Passmark Keyboard Test you will probably find that this works fine. This seems to be a MAME32 issue affecting keyboards, not just the I-PAC. Two things to try: Upgrade to the latest Direct-X version and also ensure "Use Joystick" is disabled (this refers to a PC Game-port device). If you find that either of these fixes this problem please email me.

Problem: (USB Only) Board appears not to work until WinIPAC is run every time following reboot. Yellow exclamation marks in Control Panel, Device Manager.
This is a rare Windows XP problem (fixed in Vista), and is caused by a registry error. It is suspected that this problem occurs if the board is regularly swapped from one USB port to another, or different board versions used on the same PC.
Ensure you are using the latest version of WinIPAC (March 2007) which has a permanent workaround for this problem. Installing the latest version should cure the problem with no further action needed.

Troubleshooting using the I-PAC Self-Test LED (Later boards only)

The self-test LED indicates status and errors by using flash patterns.

This is the sequence of events on power-up:

Power applied: One short flash
Then
PS/2 Interface detected: a second short flash and then if switch test passed: LED stays lit

Or
USB Interface detected
Then
USB Interface initialized by PC and switch test passed: LED stays lit

Or
If inputs test fails: LED flashes a number of times to indicate which switch is shorted or faulty. LED then stays off. This does not necessarily mean the board will not work, but indicates a switch wiring or other problem which should be investigated. Check the table below for the failing input. Check switch wiring. Try disconnecting this wire and see if the flash pattern changes.

Error Conditions:

LED never lights:
Board faulty, cable faulty, PC not powering up correctly.

LED gives two short flashes and the I-PAC is connected via USB:
The board has mis-detected a PS/2 interface. Check USB controller is enabled and working on the PC. Try another USB device as a test.

LED gives one short flash then stays off:
I-PAC has detected a USB controller but the PC is not detecting the device as having been connected. Check USB drivers on PC.

LED flashes 3 or more times after initially lighting:
Switch test failed. Check chart below for failing input. Check switch wiring. Try disconnecting this wire and see if the flash pattern changes.

LED lights as soon as power is applied, never flashes but just stays on constantly:
See the first line of the table below

Switch test failure codes.
Count the number of flashes after the first time the LED lights
The table shows the input which needs to be investigated. Check for incorrectly-wired switches. Try disconnecting this switch. The test might now pass. If more than one input is failing, the pattern may change, indicating a second failing input.

Number of Flashes I-PAC VE I-PAC 2 J-PAC I-PAC 4 player 1-2 I-PAC 4 player 3-4
Stays on constantly 1 D 1 sw 6 1 sw 6    
3 1 right 2 up 1 up    
4 2 right 2 right coin 1    
5 1 left 2 sw 1 2 up coin 1 coin 3
6 2 left 2 left coin 2 2 right 4 right
7 1 up 2 sw 3 1 down coin 2 coin 4
8 2 up 2 down start1 2 left 4 left
9 1 down 2 sw 5 2 down start1 start3
10 2 down 2 sw 2 start 2 2 up 4 up
11 1 sw 1 1 right 1 left start 2 start 4
12 2 sw 1 2 sw 4 2 sw 8 2 down 4 down
13 1 sw 2 1 left 2 left 1 right 3 right
14 2 sw 2 start1 2 sw 6 2 sw 1 4 sw 1
15 1 sw 3 1 up 1 right 1 left 3 left
16 2 sw 3        
17 1 sw 4 1 down 2 right 1 up 3 up
18 2 sw 4        
19 1 sw 5 1 sw 1 1 sw 1 1 down 3 down
20 2 sw 5 coin 2 2 sw 5 2 sw 2 4 sw 2
21 1 sw 6 1 sw 2 2 sw 1 1 sw 1 3 sw 1
22 2 sw 6 coin 1 2 sw 4 2 sw 3 4 sw 3
23 start1 1 sw 3 1 sw 2 1 sw 2 3 sw 2
24 start2 start 2 1 sw 5 2 sw 4 4 sw 4
25 coin 1 1 sw 4 2 sw 2 1 sw 3 3 sw 3
26 coin 2 1 sw 8 1 sw 6 2 sw 5 4 sw 5
27 1D 1 sw 5 1 sw 3 1 sw 4 3 sw 4
28 2D 2 sw 7 1 sw 7 2 sw 6 4 sw 6
29 1C 1 sw 6 2 sw 3 1 sw 5 3 sw 5
30 2C 2 sw 8 1 sw 8 2 sw 7 4 sw 7
31 1B 1 sw 7 2 sw 7 1 sw 6 3 sw 6
32 2B     2 sw 8 4 sw 8
33 1A     1 sw 7 3 sw 7
34 2A 2 sw 6 1 sw 4 1 sw 8 3 sw 8