Actually, using Xpadder you can do this on a per-ROM basis. Name your profile for that game the same as the ROM name, for example: FILE: Cool Dudes On Pizza Cutters.zip -> PROFILE: Cool Dudes On Pizza Cutters Then in LaunchBefore you call it up using the command line like this: LaunchBefore=C:/Xpadder/Xpadder.exe "[ROM]" /M The "[ROM]" variable passes the ROM file name without the extension, so it will call the profile you created. I use this method for all my PC games, since no two Windows games are ever the same. No idea how to get around the need for a full keyboard though. That one will be a bit more tricky.