Joy Mapping Stop = "J0B6" # Hotkey Modifier (HMod) + Back/Select stops the emulator
Joy Mapping Save State = "J0B5" # HMod + R saves the emulator state
Joy Mapping Hotkey Modifier = "J0B8" # Hotkeys are only active while Home (Xbox / PS) button is held
Joy Mapping Stop = "J0B6" # Back/Select stops the emulator
Joy Mapping Save State = "J0B5" # R saves the emulator state
Joy Mapping Hotkey Modifier = "" # Hotkey Modifier is disabled
Joy Mapping Stop = "J0B6,J0B7,J1B6,J2B6" # J0 Back, J0 Start, J1 Back and J2 Back each stop the emulator
Joy Mapping Stop = "J0B6,J0B7,J1B6,J2B6" # J0 HMod + J0 Back, J0 HMod + J0 Start, J1 HMod + J1 Back, and J2 HMod + J2 Back each stop the emulator
Joy Mapping Hotkey Modifier = "J0B8,J1B8,J2B8" # Hotkey Modifier (HMod) is set to Home button on joypads 0, 1 and 2
Joy Mapping Stop = "J0B6" # only J0 can stop the emulator (with HMod + Back)
Joy Mapping Save State = J*B5 # any joypad can save the state (with their HMod + R)
Joy Mapping Hotkey Modifier = "J*B8" # sets up the hotkey modifier for every joypad (Home button)To
apply my patch, download mupen64plus-core-2.5 (or the bundle) and
navigate to the directory mupen64plus-core(-2.5) which contains all the
files and the src directory. Move the patch there and run
patch -p0 < hotkey.patchImportant: This patch might not work with the current Git version due to changes in eventloop.c. If there's any interest, I'll adjust it.
Drawbacks:
The same input used for the hotkeys is still registered by the input
plugin, e.g., pressing HMod + A triggers the according hotkey function
(if any) and passes the 'A' input to the input plugin (that's how it
always used to be, anyway). I haven't found any clean way to prevent
this, and it's probably not a big deal.
To the M64 team:
Thanks
for the awesome emulator, the great command line interface, and the
nice code. It was fairly easy to implement the features without knowing
the code. So far I haven't encountered any bugs with my additions, I
hope I didn't forget anything and I tried to make it as clean as
possible. If you'd like to include the feature and there's something
missing, let me know and I'll work on it.