Suggested Joystick Configurations


TODO: Merge with SDL_Joystick_mapping and/or remove.

TODO: Aint this something like/for Common_User_Interface_Recommendations?

These are some suggested joystick configurations based on DaveC's proposals.


  • Case 1 would be good for any native games but also games that used analog or trackballs like Centipede, Missile Command, or for emulating mouse movement like in ST/Amiga.
  • Case 2 would be the ideal and recommended one for use in emulators and any game requiring traditional 8-way control. Typical 4-switch, 8-way controllers always were easier to hit the orthogonals (horizontal/vertical) than diagonals. This is because it is harder to keep 2 switches closed simultaneously than one. This would include Atari-2600 type joysticks, Nintendo cross pads, PSX pads, MD, SNES, etc.
  • Case 3 would be useful for those isometric oriented games like Desert Strike, Zaxxon, etc. that are mostly diagonal but still use some vertical/horizontal.
  • Case 4 would be useful for other non-game apps like text entry etc. Hit the dead zone at the wrong time in a game and well... you're dead. Because of this it it is not ideal for action gaming applications.
  • Case 5 Horizontal/vertical 4-way. Useful for 4-way games such as Pac-man. The thick purple lines separate directions for visualization. Anything from sw8 to sw1+sw2 would be "UP" and so on. Must be slightly rotated to make all zones even in size. I picked the rotation this way as it follows the arc your thumb would make while playing.
  • Case 6 Diagonal 4-way. Useful for 4-way diagonal-only games such as Q*Bert. The thick purple lines separate directions for visualization. Must be slightly rotated to make all zones even in size.

Developers should think about these different configs, and include in the menu option screen a choice between a couple. MAME for example would be able to use case 1, 2, 3, 5, 6. Megadrive and most other emus would probably only need case 2. Atari-ST would use case 1 for mouse and then switch to case 2 using joystick mode.


miq01 coded a small application to test the joystic configurations suggested in this page. Binaries can be downloaded here and sources here

Personal tools