I have a 4-player Xtension controller which is one of the older variety, and so it's comprised of an IPAC2 (for players 1 & 3) and MINIPAC (for players 2 & 4).
I like to toggle between Keyboard and Xinput modes depending on MAME vs. Steam. But I wanted to do this programmatically instead of with the physical button mappings. So I tried using the command line, passing in the corresponding IPC file into WinIPAC.exe
I have 4 such .IPC files -- one to switch to keyboard mappings, and one to switch to xinput mappings, for both boards.
Unfortunately this doesn't work -- loading the files at the command line properly sets the mapping but it doesn't actually change the "mode" of the board (from keyboard to xinput or vice versa).
I found
this post on Reddit of a user having the exact same issue and what he discovered is that .ipc files that we create ourselves do not properly switch the mode, but the "default" .ipc files that ship with WinIPAC (in the Defaults folder of the install path) do. So his advice was to start with one of these .ipc files, make any necessary changes, and then save to your own. This works! But unfortunately, the Defaults only include a Minipac.ipc file, and not a Minipac-xinput.ipc file (like other board types have). So I can now programmatically from the command line switch from xinput to keyboard using the Minipac.ipc-based file I created. But I cannot switch from keyboard to xinput. Is there a trick to getting xinput-based .ipc files to properly flip the mode when loaded? Does anyone know where I can find a "default" minipac-xinput.ipc file?