. This page describes the IPACUTIL utility which can be used to set up configuration files and download new settings to the board either on-the-fly or using the GUI interface

IPACUTIL GUI programming software by Robert Palmqvist.

This program runs in DOS in GUI or text mode. Works with USB or keyboard interface. It will also run in Windows 98/ME but also check out the WINIPAC utility for all Windows versions.




102 Key keyboard layout showing key numbers


For programming and running with the programmed settings, on older boards the MAME/ALT jumper must be set to "ALT".
Codes are kept even after power off. Setting the jumper back to MAME will use the default MAME settings but any already-programmed info will not be lost.
Note you do not need to program a new board if you use in default MAME mode (Jumper set to "MAME"). Current boards no longer have a MAME/ALT jumper.


Quickstart:
Simply run the program IPACUTIL.EXE. It will initialise with a default codes set which is shown in the installation instructions. A file will be written containing the codes, called ipacutil.cfg if this is not yet present. The program can be run from DOS or Windows. It requires a mouse so if using in DOS, a mouse driver needs to be loaded first.
The GUI shows two pages of boxes. One box for each I-PAC input terminal, and the code which is currently assigned to it. The inputs are designated as
"1,1" for Player 1 Button 1,
"1 U" for Player 1 Up,
"1 S" for 1 Player start etc.
It’s quite easy to get the hang of this system if you look at the numbering. The right hand side of each box shows the keyboard key number assigned to the input. These numbers are a PC standard. If you want to see what key these refer to, just right-click on the number and the key name eg "left arrow" etc will be displayed.

To assign codes perform the following:
Choose the "Unshifted" code page first by clicking on the page tab.
Click on the box for the input you want to change.
Press a key on your keyboard to assign the input to this key.
Repeat this for all the buttons you want to assign.
You can also assign a shift key. You need to choose which I-PAC input you want to use for a shift button. This must NOT be a key which is used in gameplay. Normally you would use the inputs which handle Coin or Start1, Start2 etc as a shift button.
To choose a shift key, click on the red "SHIFT" box and then click on the box for the I-PAC input you want to use as a shift button. If you don’t want a shift button at all, click on "SHIFT" and then click anywhere outside a code box. Now assign codes for "shifted" buttons. Click on the "Shifted" tab at the top of the page to display the shifted code page.
Now assign in the same way as the unshifted page. After assigning all the buttons you need, click on "Program". This will send all the programming information to the I-PAC board.
The board will then use these new codes.

Programming the IPAC4:
Note the alternative interactive programming method also works for the IPAC4. IPACUTIL can be used to program the IPAC4 by using a command line switch. The program needs to be run twice. This can be done manually or by using a batch file. A future Windows version of the program will incorporate the two steps into one. The IPAC4 board is divided into two pages. It is, from the programming point of view, two IPAC2 boards connected together.

The first page consists of:
Players 1 and 2 controls
Coin 1 and 2
Start 1 and 2

The second page consists of:
Players 3 and 4 controls
Coin 3 and 4
Start3 and 4

Each of these pages has it's own shift key which only shifts it's own page controls when held down. The first page is programmed exactly as the IPAC2. The second page is programmed by adding the command line switch "/2" eg IPACUTIL /2. When run with this switch, the GUI displays the correct designations, eg Player 3 and 4, coin 3 and 4, start 3 and 4. Make sure you have the latest version of the program, which was uploaded on 27 May 2002.


Additional Info:

Using the keyboard instead of mouse:

There is no need for a mouse or mouse driver to be installed to use the GUI interface. The keystrokes work as follows:
To assign a key-code to an input: Press the first, then second keyboard key corresponding to the identification of the I-PAC input to be changed, eg "1 2" , "2 C" etc, then press the required keyboard key to assign this key to the selected input.

To view information about any input: As above but keep "ctrl" key pressed.

To assign the shift button: Press "S" then use the arrow keys to select which input is to be the shift button. Press "enter" to assign or "esc" to abort.

To program the board: Press "P"


Config Files:
When the codes are sent to the I-PAC they are also stored in a config file. The default name is "IPACUTIL.CFG". This file can be renamed if it is required to save it. The file can be manually edited if required using a text editor.

Command Line Mode:
To run without the GUI, type "IPACUTIL <filename> /B" The <filename> is the name of the config file which stores all codes. This means codes can be re-programmed on the fly by choosing the correct config file name. You can save any number of config files under different names and call up the correct one when starting a different emulator. If no file name is specified the default IPACUTIL.CFG is used. If this file does not exist, it is created and set with a default code set.
Typing IPACUTIL /H will produce a help screen.



More on configuration files:
If you do not want to use the GUI interface, you can manually edit configuration files for the codes.
This is the format of the file:
One code per line. Starting with the unshifted codes and running down in the order the inputs are shown in the GUI.
After all the unshifted codes, the shifted codes are shown. At the end of the list is the input number for the shift key. You can generate config files either by editing or using the GUI and save them under any DOS-format file name. Then load this file into the I-PAC on the fly by entering "IPACUTIL <filename> /B" (/B = batch mode: ie no GUI).
You could do this in a batch file so you could have various batch files for different emulators or games.

Troubleshooting:

Error Messages:
Timeout Error: Causes: I-PAC not plugged in. I-PAC USB/PS/2 interface jumper incorrectly set (older boards only).
Checksum Error: Causes: Communication does exist but data corruption occurred on the sending.
Jumper Error: The MAME/ALT jumper is set to MAME (older boards only). This enables the default code set and disables programming.


Constant Timeout Errors in USB Mode:
Some PCs require a delay inserted in the download otherwise the BIOS cannot "keep up" with the download speed. Perform the following procedure: After a timeout error occurs, the USB cable must be unplugged and reconnected in order to reset the unit, otherwise another timeout will occur. Run IPACUTIL with the following command-line switches: IPACUTIL /B /D:60. This will start a download with no GUI and will insert a 60millisecond delay in between each downloaded byte. This should work with no timeout problem. Now every time the program is run, use the /D:60 switch. If using a Windows shortcut, the shortcut can be edited to include this switch (right-click on shortcut, choose "properties", "shortcut")