Check out AutoHotkey. You could make up scripts to run before your emu's to remap whatever key to whatever key combo you want.
Eg.
p::Pause
or
p:::F9
or
p::{Alt Pause}
Tony, these are spot on except for the code for p to F9 has an extra : should just be p::F9. If you want them all mapped to the P key you can do this:
p::send {pF9Pause}{Alt Down}Pause{Alt up}
or
p::send pF9Pause^Pause
However depending on what program you're running autohotkey may not do the trick as not all emulators with fixed mapping recognize remapping. The way around this would be to remap in your registry. The following is taken from
Autohotkey ForumsRemapping via the Registry's "Scancode Map"
Advantages:
Registry remapping is generally more pure and effective than AutoHotkey's remapping. For example, it works in a broader variety of games, it has no known alt-tab issues, and it is capable of firing AutoHotkey's hook hotkeys (whereas AutoHotkey's remapping requires a workaround).
If you choose to make the registry entries manually (explained below), absolutely no external software is needed to remap your keyboard. Even if you use KeyTweak to make the registry entries for you, KeyTweak does not need to stay running all the time (unlike AutoHotkey).
Disadvantages:
Registry remapping is relatively permanent: a reboot is required to undo the changes or put new ones into effect.
Its effect is global: it cannot create remappings specific to a particular user, application, or locale.
It cannot send keystrokes that are modified by Shift, Control, Alt, or AltGr. For example, it cannot remap a lowercase character to an uppercase one.
It is not supported on Windows 95/98/Me (AutoHotkey can do some limited Win9x remapping).
It supports only the keyboard (AutoHotkey has mouse remapping and some limited joystick remapping).
How to Apply Changes to the Registry: There are at least two methods to remap keys via the registry:
Use a program like KeyTweak (freeware) to visually remap your keys. It will change the registry for you.
Remap keys manually by creating a .reg file (plain text) and loading it into the registry. This is demonstrated at
www.autohotkey.com/forum/post-56216.html#56216Let me know what works and what doesn't.