inputmap.c 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #include <stdlib.h>
  2. #include <SDL_keysym.h>
  3. #include "../libpicofe/input.h"
  4. #include "../libpicofe/in_sdl.h"
  5. #include "../common/input_pico.h"
  6. #include "../common/plat_sdl.h"
  7. const struct in_default_bind in_sdl_defbinds[] = {
  8. { SDLK_UP, IN_BINDTYPE_PLAYER12, GBTN_UP },
  9. { SDLK_DOWN, IN_BINDTYPE_PLAYER12, GBTN_DOWN },
  10. { SDLK_LEFT, IN_BINDTYPE_PLAYER12, GBTN_LEFT },
  11. { SDLK_RIGHT, IN_BINDTYPE_PLAYER12, GBTN_RIGHT },
  12. { SDLK_LSHIFT, IN_BINDTYPE_PLAYER12, GBTN_A },
  13. { SDLK_LALT, IN_BINDTYPE_PLAYER12, GBTN_B },
  14. { SDLK_LCTRL, IN_BINDTYPE_PLAYER12, GBTN_C },
  15. { SDLK_RETURN, IN_BINDTYPE_PLAYER12, GBTN_START },
  16. { SDLK_ESCAPE, IN_BINDTYPE_EMU, PEVB_MENU },
  17. { SDLK_TAB, IN_BINDTYPE_EMU, PEVB_PICO_PPREV },
  18. { SDLK_BACKSPACE, IN_BINDTYPE_EMU, PEVB_PICO_PNEXT },
  19. { SDLK_BACKSPACE, IN_BINDTYPE_EMU, PEVB_STATE_SAVE },
  20. { SDLK_TAB, IN_BINDTYPE_EMU, PEVB_STATE_LOAD },
  21. { SDLK_SPACE, IN_BINDTYPE_EMU, PEVB_FF },
  22. { 0, 0, 0 }
  23. };
  24. const struct menu_keymap in_sdl_key_map[] = {
  25. { SDLK_UP, PBTN_UP },
  26. { SDLK_DOWN, PBTN_DOWN },
  27. { SDLK_LEFT, PBTN_LEFT },
  28. { SDLK_RIGHT, PBTN_RIGHT },
  29. { SDLK_LCTRL, PBTN_MOK },
  30. { SDLK_LALT, PBTN_MBACK },
  31. { SDLK_SPACE, PBTN_MA2 },
  32. { SDLK_LSHIFT, PBTN_MA3 },
  33. { SDLK_TAB, PBTN_L },
  34. { SDLK_BACKSPACE, PBTN_R },
  35. };
  36. const int in_sdl_key_map_sz = sizeof(in_sdl_key_map) / sizeof(in_sdl_key_map[0]);
  37. const struct menu_keymap in_sdl_joy_map[] = {
  38. { SDLK_UP, PBTN_UP },
  39. { SDLK_DOWN, PBTN_DOWN },
  40. { SDLK_LEFT, PBTN_LEFT },
  41. { SDLK_RIGHT, PBTN_RIGHT },
  42. /* joystick */
  43. { SDLK_WORLD_0, PBTN_MOK },
  44. { SDLK_WORLD_1, PBTN_MBACK },
  45. { SDLK_WORLD_2, PBTN_MA2 },
  46. { SDLK_WORLD_3, PBTN_MA3 },
  47. };
  48. const int in_sdl_joy_map_sz = sizeof(in_sdl_joy_map) / sizeof(in_sdl_joy_map[0]);
  49. const char * const _in_sdl_key_names[SDLK_LAST] = {
  50. [SDLK_UP] = "UP",
  51. [SDLK_DOWN] = "DOWN",
  52. [SDLK_LEFT] = "LEFT",
  53. [SDLK_RIGHT] = "RIGHT",
  54. [SDLK_LCTRL] = "A",
  55. [SDLK_LALT] = "B",
  56. #if defined(__GCW0__)
  57. [SDLK_LSHIFT] = "X",
  58. [SDLK_SPACE] = "Y",
  59. #else
  60. [SDLK_LSHIFT] = "Y",
  61. [SDLK_SPACE] = "X",
  62. #endif
  63. [SDLK_RETURN] = "START",
  64. [SDLK_ESCAPE] = "SELECT",
  65. #if defined(__RG350__) || defined(__OPENDINGUX__)
  66. [SDLK_HOME] = "POWER",
  67. [SDLK_TAB] = "L1",
  68. [SDLK_BACKSPACE] = "R1",
  69. [SDLK_PAGEUP] = "L2",
  70. [SDLK_PAGEDOWN] = "R2",
  71. [SDLK_KP_DIVIDE] = "L3",
  72. [SDLK_KP_PERIOD] = "R3",
  73. #else
  74. [SDLK_TAB] = "L",
  75. [SDLK_BACKSPACE] = "R",
  76. [SDLK_POWER] = "POWER",
  77. [SDLK_PAUSE] = "LOCK",
  78. #endif
  79. };
  80. const char * const (*in_sdl_key_names)[SDLK_LAST] = &_in_sdl_key_names;