Project Key Mapping

djvj

Administrator
Staff member
Developer
New home for this project!!
(old location)

What we are shooting for:


Main Goal:

  • One key configuration compatible with every emulator



Challenge:

  • Finding what emus do not work with certain keys
  • Some emus have hardcoded keys that trigger certain functions (like save state slot) in the emu that cannot be mapped or even used for normal gameplay keys
  • Example, SSF and all the entire row of number keys cannot be mapped to anything



Alt Goals:

  • Minimum keymapper profiles needed across all systems
  • Easier to share emulator configs and keymapper profiles with others



What we need:

  • As many project members as possible that can take an allotment of emus and test them with the project's current default keys.
  • This may be as simple as setting the keys in the controller settings and seeing if the emu takes it.
  • Report back any keys not able to be assigned to controls
  • If any changes are needed to the initial keys, we may need everyone to retest their assigned emus.
  • More people who volunteer to help, less emus each of you have to test.



Keys we want to avoid and already know have issues for Player 1 and 2 for buttons 1 through 10:

  • All number keys (this is not the numpad)
  • Modifier keys (alt, ctrl, shift)
  • Enter
  • Symbols (,./;'[]\-=`)
  • Tab
  • P (often used as a pause key)



Current list of ideal keys can be found here: https://www.dropbox.com/s/ot4n0qa00ny7jlf/Recomended Controls-new version.docx?dl=0
Player 1 and 2 are crucial that they must have keys that work across all emus.
Player 3 and 4 are allowed to use keys that could not be assigned to Player 1 and 2.
After Player 4, there is just not enough keys on the keyboard to assign. So if you are trying to play Saturn Bomberman with 10 people, you obviously need to assign joysticks as your controls in SSF.
After button 10, emus that may require that many keys, would probably not have the limitations of certain keys being used, and allow anything to be mapped.
PC systems will require the entire keyboard in many cases, these need not be discussed because they will require custom controls set in most cases.


List of emus:

  1. 1964
  2. AAE
  3. Arnold
  4. Atari800
  5. Bgb
  6. BizHawk
  7. BlueMSX
  8. BlueStacks
  9. Bsnes
  10. Casual Games
  11. CCS64
  12. CDiEmu
  13. Cxbx
  14. Daphne
  15. Daphne Singe
  16. DCVG5K
  17. Demul
  18. DeSmuME
  19. DFend
  20. DICE
  21. Dolphin
  22. Dolphin Triforce
  23. DWJukebox
  24. Dxbx
  25. DXWnd
  26. Emma 02
  27. Emu7800
  28. ePSXe
  29. ePV-1000
  30. EZ Flasher
  31. Fceux
  32. Final Burn Alpha
  33. Flash Game Player
  34. Flash Player Projector
  35. FoFiX
  36. FourDO
  37. FreeDO
  38. FreezeSMS
  39. FS-UAE
  40. Fusion
  41. Future Pinball
  42. Gambatte
  43. GameCom
  44. GeePee32
  45. Gens
  46. GEST
  47. Handy
  48. Hatari
  49. Higan
  50. Jaguar Tempest 2000 Emulator
  51. JNes
  52. JPcsp
  53. Kat5200
  54. Magic Engine
  55. Makaron
  56. MakaronEX
  57. MAME
  58. Mednafen
  59. Meka
  60. MESS
  61. MFME
  62. MUGEN
  63. Nebula
  64. NeoRaine
  65. Nestopia
  66. Nintendulator
  67. No$GBA
  68. Nostalgia
  69. NullDC
  70. Ootake
  71. OpenBOR
  72. OpenMSX
  73. ParaJVE
  74. PCLauncher
  75. PCSX2
  76. PCSXR
  77. Phoenix
  78. PicoDrive
  79. PlayGuy
  80. PokeMini
  81. PPSSPP
  82. Project Tempest
  83. Project64
  84. ProSystem
  85. PSXfin
  86. PSXMAME
  87. puNES
  88. Radikal Bikers Emu
  89. Regen
  90. RetroArch
  91. ScummVM
  92. Sega Model 2 Emulator
  93. Snes9x
  94. Spectaculator
  95. SSF
  96. Steem
  97. Stella
  98. SuperModel
  99. T98-Next
  100. Turbo Engine 16
  101. TwoMbit
  102. U64Emu Platinum Edition
  103. UberNES
  104. UNZ
  105. VBA Link
  106. Virtual APF
  107. Virtual Aquarius
  108. Virtual Jaguar
  109. Visual Pinball
  110. VisualBoyAdvance-M
  111. VivaNonno
  112. WinAPE
  113. WinArcadia
  114. WinKawaks
  115. WinUAE
  116. WinUAE Loader
  117. WinVICE
  118. Xebra
  119. XM6
  120. Yabause
  121. ZiNc
  122. ZSNESw



Emulators assigned to:

  • 1-20: Name??
  • 21-40: Name??
  • 41-60: Name??
  • 61-80: Name??
  • 81-100: Name??
  • 101-121: Name??



IF YOU ARE NOT A PROJECT MEMBER BUT WOULD LIKE TO HELP WITH THIS PROJECT, SEND ME A PM REQUESTING MEMBERSHIP, SUBJECT: "PROJECT KEY MAPPING MEMBERSHIP REQUEST"


PLEASE ALSO STATE WHAT EMULATORS YOU WANT TO WORKS ON. YOU CAN DO AS MANY OR AS LITTLE AS YOU CHOOSE.
 
Last edited:

paulmichel21

New member
RL Member
my base to work
for this to work you must create an ahk containing only keyboard remapping
then would have to tell the hyperlaunch that Remapping this ahk universal with their respective ahk emultaor KeyMapper
Now, when you want to upgrade for example MAME is not necessary to assign the keys again.
this is for any upgrade like.


est.jpg

0 :: 0 Select
0 :: 0 Select Game
1 :: 1 Players 1 start buttons
1 :: Left Shift Player 1 Start
1 :: - Enter
1 :: 1 Toggles 1 or 2 Player Mode
2 :: 2 Players 2 start buttons
2 :: W Player 2 Start
2 :: 2 Start Game
3 :: 3 Players 3 start buttons
4 :: 4 Players 4 start buttons
5 :: 5 Adds Time
5 :: 5 Insert coin 1
6 :: 6 Insert coin 2
7 :: 7 Insert coin 3
8 :: 8 Insert coin 4
9 :: 9 Reset
10 :: up Controller (Player 1) UP
11 :: dow Controller (Player 1) DOWN
12 :: left Controller (Player 1) LEFT
13 :: right Controller (Player 1) RIGHT
14 :: Left Ctrl Fire 1 (Player 1)
15 :: Left Alt Fire 2 (Player 1)
16 :: Space Fire 3 (Player 1)
17 :: Left Shift Fire 4 (Player 1)
18 :: Z Fire 5 (Player 1)
19 :: X Fire 6(Player 1)
20 :: R Controller (Player 2) UP
21 :: F Controller (Player 2) DOWN
22 :: G Controller (Player 2) LEFT
23 :: D Controller (Player 2) RIGHT
24 :: A Fire 1 (Player 2)
25 :: S Fire 2 (Player 2)
26 :: Q Fire 3 (Player 2)
27 :: W Fire 4 (Player 2)
28 :: C Fire 5 (Player 2)
29 :: V Fire 6 (Player 2)
29 :: Esc Exit from game
30 :: tab Config
31 :: P Pause the game

- - - Updated - - -

MAME - Keymap

Code:
http://pastebin.com/Mamwc818

Atari 2600 - stella keymap

Code:
http://pastebin.com/rCxDcYkf
 
Last edited:

djvj

Administrator
Staff member
Developer
Fixed the dropbox link on the first post. Dropbox disabled all links in May from a security flaw. Had to go and re-enable it.
 

evilecho

New member
Hello all... I am looking forward to contributing to this project. I don't mean to sound thick, but is there a purple dinosaur level tutorial on how to prep HyperLaunch for this functionality? I tried to follow paulmichel21's post but got stuck at "tell the hyperlaunch that Remapping this ahk universal with their respective ahk emultaor KeyMapper" The only thing I have available in the GLOBAL->Settings->Main Settings->Keymapper section the only keymapper in the drop down menu is xpadder and joytokey... if I leave it blank HyperLaunch throws out an error. I've searched forums, I might be using the wrong keywords, but I have no been able to find anything to help me. Thanks in advanced.

v/r
EvilEcho
 

djvj

Administrator
Staff member
Developer
Welcome evilecho, thanks for taking an interest in the project!

Blank is not a valid choice and a known bug, this was fixed in beta. That field must contain something and the only viable options are the other choices. Also use_global works too.

I don't think there is anything on the HL side to really do for this, it's more about seeing what keys can or cannot be used in each emu and trying to figure out the best keymapping to be used globally while taking into account all the emus we support. We need to identify what emus have very stringent mapping and do not allow certain keys to be mapped. SSF for example, does not allow number keys at all to be used. This makes it difficult to try and use a globally defined mapping with this emu. if we want to have our defaults use number keys.
 

nosh

New member
RL Member
Welcome evilecho, thanks for taking an interest in the project!

Blank is not a valid choice and a known bug, this was fixed in beta. That field must contain something and the only viable options are the other choices. Also use_global works too.

I don't think there is anything on the HL side to really do for this, it's more about seeing what keys can or cannot be used in each emu and trying to figure out the best keymapping to be used globally while taking into account all the emus we support. We need to identify what emus have very stringent mapping and do not allow certain keys to be mapped. SSF for example, does not allow number keys at all to be used. This makes it difficult to try and use a globally defined mapping with this emu. if we want to have our defaults use number keys.

Number keys are also commonly used for save/load state in many emulators. It can be done with SSF but it isnt straight forward, I actually have 4 players worth of keys mapped for SSF that do not conflict with keys used by SSF.
 

bleasby

RocketLauncher Developer
Developer
as a starting point, I would just take the last keyboard configuration that polemicist posted, and start to go emulator by emulator configuring the controls one by one, and making notes about the emulators that you are able to configure two and four players, on a organized google docs spreedsheet for example, with this default key assignment.

If you find any emulator that does not work with them, try to find out why and write the details to share the info.
 

evilecho

New member
Okay, I was getting ahead of myself. I was also trying to create an ahk file to map the current config to default config of the emulator. I just cant get that to work for what ever reason.
 

Ninja2bseen

Member
RL Member
Hi djvj, I'm not bragging just trying to figure out if I could help. I use xpadder for p1 and p2 controls. I have buttons matched to the set like 5 is always select and 1 is always start etc. I have p1 and p2 set for 75 systems. Are you just needing the profiles uploaded?
 
Last edited:

Potts43

New member
RL Member
Hi, years ago I ran into this issue of key mapping. I was advised to reconfig/remap emus to match Mames defaults. The reason I had to finally agree was due to future pinball using the function keys. Is there a simple way to config emus like spectaculator & win vice as most games use strange keys or joystick.
 

timmyb

New member
RL Member
I started something similar before I found this project so I put it on gDocs.
Spreadsheet Here

My idea being if I can get the relation of all the controllers then I can have more freedom with the keyboard. I'm coming at it with a ps3/360 controller.
 
Last edited:

Ninja2bseen

Member
RL Member
I don't have those emus but good luck! Potts and Timmy, u are jr members like me, are you able to see thanks for posts. I think us jrs can't do it and I think djvj and nosh think I'm crazy :D since I can't see them. U too?
 

timmyb

New member
RL Member
yeah->
PiGfO2c.png
 

Ninja2bseen

Member
RL Member
Funny, I guess it's just me that can't thank posts! It's silly, and not a user issue I think as it's tape same concept as hyperspin, I just don't have the access here. Well thanks for checking!
 

djvj

Administrator
Staff member
Developer
You should be good now ninja, look again.

And no, this project does not just need profiles uploaded. That's not even mentioned in the "What we need" section above. The project needs to have it's default keys tested on all emus and report back what emus give an issue with assigning those keys.
 

timmyb

New member
RL Member
Hi guys! So I'd like to help out with this project. Would you mind listing the emulators that you've taken?
Ill be tracking it here: http://goo.gl/W7hZ5H That is editable by anyone.
Reply in this thread and I'll add it myself or just put it in the spreadsheet yourself. I'm going to start at the bottom and work up. Hopefully I'll have less of a chance of working over something that someone has all ready done.
If I don't hear from anyone I'll just press on as this is something that is holding me up from getting system configured. Thanks :D
 
Last edited:

DesertBlade

New member
Just joined the project. Do we have a shared location of config files already configured to the standard keyset? I am setting up 2 Hyperlaunch machines this next month, using I-PACs and would like to standardize and hope I can piggyback on some previous work.
 
Top