Joystick Emulator for SFIV PC

I’ve got a custom arcade cab that I modified to run SFIV in addition to its usual roster. I’m using a custom 4 player control board that I built using a shell that’s run by an ultimarc ipac 48-switch controller. The ipac converts arcade switch presses into keyboard signals sent to the PC inside the cabinet which works great for most of my apps but not so well for SFIV because it only allows you to map one player to keyboard control by default. After searching around on here and other forums I discovered an app called PPJoy that creates a virtual joystick that can be mapped to keyboard input. This works alright for player 2, but this particular app has some issues (xp32 only, doesn’t run as a service, etc). It is the only app of this kind I’ve been able to locate.

Has anyone else with a DIY arcade stick run into this issue and if so, have you found a more elegant solution than the one I have currently in place?



Do you need to use a keyboard? Couldn’t you use 2 identical padhacked controllers?

Thanks for the reply. Adding a couple padhacked controllers and redundantly wiring them to p1 and p2 would work, but it would add to the wiring complexity of what is already a pretty complex controller. Right now its over 100 individual wires internally with four control wires that plug into the PC (one PS2 KB wire for all of the standard arcade buttons like players 1-4, coin/start, front-end management, one ps2 mouse wire for the trackball and two USB wires for the players 3-4 joysticks which are magnetic analog sticks). Pad hacking would require that I redundantly wire them to p1 and p2 and add a another two cables coming out of the control board or replacing the p1 and p2 controls altogether with the pad hacked boards and reprogramming all of the other apps I have on the cabinet that rely on the existing control scheme.

The PPJoy solution works right now, but its not a great app and it restricts the OS I run on the cabinet. Im trying to find out if theres a solution thats better than what Im doing now. Ideally if there were a way to get SFIV to natively recognize two players over keyboard input that would be the best solution but I suspect that wont be possible for a number of reasons. Most KBs cant process the number of simultaneous inputs necessary for 2 player play (not to mention that playing on an actual KB is just lame) and since many arcade control boards for PC use KB-style input not allowing for also discourages unscrupulous arcade owners from attempting to build their own SFIV cabinet and charging people for play rather than buying a legitimate one.


Honestly using a couple of Cthulhu boards is probably your best bet. BUT you can make any program in XP run as a service I believe if that was one of your gripes with PPJoy. Check here What other OS were you trying to run?

Registering an EXE not designed to run as a service doesnt automatically mean itll work as a service properly. PPJoy in particular has a GUI that needs to stay open while the keyboard to joystick mapping is taking place so Im not optimistic that itll play nice. This is one of five non server computers in the house and its the only one not on Win7 64. The XP thing isnt a dealbreaker for me since there are other compelling compatibility reasons to keep the cabinet on xp32 but I just wanted to know if there were any other software options since from my own research I havent found any. I havent had the chance to do any real load testing with PPJoy to make sure that during 2 player operation I wont get any controller lag. Player 1 through the ipac works flawlessly. I barely even touch SFIV on the PS3 or 360 anymore because the cabinet plays so well and has online.

The chuthulu boards might not be a bad idea and are more in line with what Im already running using the ultimarc. I have to say I like the idea using this on my PS3. In spite of the fact that its 48 x 21 x 10 and over 40lbs I designed the control board to be removed from the cabinet separately and plugged into whatever so the idea that I can easily make it console compatible is appealing (although now Im getting back into building an unpowered USB hub into controller to consolidate the number of USB connections I have coming out the back).

Thanks for the suggestion.

This is the setup in question BTW:


I ran into problems trying to use PPJoy for my SF4 cabinet setup (using a JPAC) too.

Check out this thread, it’s what ended up working for me. It allows 2 player keyboard control without PPJoy being installed:

I’d suggest remapping the alt, ctrl, and shift keys that are assigned by default to letters or something. I did run into problems with focus attacks and stuff because of that.

Hope that helps!

There is JoyToKey which allows you to do this as well and just has to run in the system tray and supports up to 16 joysticks (adding startup entries is easy enough so you can set it to start when windows starts).

Joy2Key does the opposite of what he is trying to achieve. PPJOY maps keyboard keys to joystick inputs. J2K maps joysticks inputs to keyboard keys. I say swapping in Cthulhus and having a script that starts j2k when mame or naomi emus start is the best way, but then i’d also have a ps3 in there on a KVM switch so I could get some blazblue going…

Thanks Sky Zero, an ini hack that adds 2 player kb support to the game directly is the ideal solution for my exact problem. I wasn’t optimistic that one existed but I’m glad it does. I originally did have the default CTRL, ALT, Space mapping when I first installed the game and I quickly changed it when I realized it was causing issues.

As for Thirteen’s suggestion about the PS3, I know right? It’s great that there’s a PC version of SFIV but not a whole lot of other fighters like BlazBlue or Tekken get PC versions. I have two PS3s right now and I may end up trying to bundle it into the cab. Only problem there is I’m running a Wells Gardner D9400 27" CRT analog monitor and the PS3 doesn’t do VGA out by default.

Thanks for the help guys. This was definitely the right place to ask this question and I look forward to posting more in the future.


HDFury is unfortunately quite expensive…

what videocard are u using and how did u get it working with the D9400

Thirteen, the HDFury Blue is what I was looking at to potentially do this. From what I’ve read it appears to be what I would need and monoprice has it for around $60 which is more than reasonable. Is that the one you were thinking of?

MonkeyRoach, the Wells Gardners are straight VGA so they’ll work with any video card. Originally I was using the 25k EGA that came with the cabinet (purchased as a working Gauntlet Dark Legacy game). I bought an Ultimarc Arcade VGA PCI-E to run the original arcade monitor only to discover later that the Ultimarc at that time didn’t support EGA monitors. I eventually got the monitor working through a couple video driver software hacks only to discover that the quality of the original display was pretty low across most games (dark screen, lotta bleed). After days of adjustments and playing with the pots I ordered the d9400 and it looked beautiful one the first try, although I needed a friend to help me load that 110lb CRT into the cabinet as it doesn’t have handles. :slight_smile:

Only bummer is the game is 16x9 and the monitor is 4:3 but SFIV automatically corrects the aspect ratio so you still have the same amount of ring size, only with smaller characters and I can see more of the stage’s vertical real estate.


I made a tutorial here: