I was in the mood to play Chrono Trigger again and rather than put up with the disc loading times on my PS1 Final Fantasy Chronicles version, I figured I would just use an emulator.

Naturally I would prefer to use a controller rather than keyboard/mouse, so I grabbed my trusty 360 controller. Here's where things get tricky: I would like to be able to use both the analog stick (which is ideal for running around) and the D-pad (which is perfect for navigating menus) on the controller.

I tried SNES9x, and it doesn't appear to support mapping multiple buttons to the same input. I tried the latest version of bsnes/higan and it did support that feature, but my computer just isn't powerful enough to run the accuracy profile (the only profile available in current versions) without obnoxious audio problems. I tried the last version of bsnes/higan with the balanced/performance profiles (v0.98) and of course it doesn't support that feature.

Is there a performant SNES emulator that has that feature? Alternately is there a free & reliable utility that will help me achieve this functionality?


Joy2Key allows you to map joypad buttons to keyboard keys and older versions (version 3.7.4 is what I have on my PC) are free.

  • Do the diagonals for the analog stick work correctly for you? When I mapped the diagonals to both of their corresponding cardinal direction keys (i.e. mapping the up/left diagonal to both the up key and the left key), both higan & SNES9x accepted the diagonal input but wouldn't recognize the input when I rotated through a diagonal to a cardinal direction (that is, they would treat it as receiving no input). – Oblivious Sage Jan 30 '18 at 3:12
  • When I tried mapping the diagonals to separate keys in JoyToKey and SNES9x (not supported in higan), i.e. up to W, left to A, up/left diagonal to Q, it occasionally moved in the opposite direction from what I pressed if I rotated the analog stick. – Oblivious Sage Jan 30 '18 at 3:12
  • In the "Others" tab, try setting "Treshold for input" to a higher value, so it ignores the most minute inputs on analog sticks. Also, try checking the "Handle diagonal input as special case" to have diagonal input options available. – Elise Jan 30 '18 at 12:41
  • 1
    As an alternative, there is a much better program called XPadder, which allows you to remap your xbox controller buttons to anything on keyboard and has a much more user friendly interface and is generally just superior in every way to joy2key, but it's not free. If you had a PS4 controller instead, DS4Windows is pretty much like XPadder, but free. Joy2Key is just the most basic, free option you have and it does have a poor, outdated UI that's not user friendly at all... – Elise Jan 30 '18 at 12:44
  • OK, finally got it working reasonably. The key seemed to be setting the diagonal inputs to separate buttons (rather than to both of their corresponding cardinal buttons) and cranking the input threshold up to 50% or so, and then using SNES9x (since higan doesn't support mapping the diagonals). Thanks for your help! – Oblivious Sage Jan 31 '18 at 3:19

Thanks to Chippie's advice to use JoyToKey, I was able to get SNES9x to accept input from my 360 controller's left analog stick and D-pad.

To help others, here are the JoyToKey settings I used:
JoyToKey input mappingsJoyToKey options

And here is my SNES9x controller settings:
enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.