Add support for the OpenDingux platform
[picodrive.git] / platform / opendingux / inputmap.c
diff --git a/platform/opendingux/inputmap.c b/platform/opendingux/inputmap.c
new file mode 100644 (file)
index 0000000..0398fc6
--- /dev/null
@@ -0,0 +1,55 @@
+#include <stdlib.h>
+#include <SDL_keysym.h>
+
+#include "../libpicofe/input.h"
+#include "../libpicofe/in_sdl.h"
+#include "../common/input_pico.h"
+
+const struct in_default_bind in_sdl_defbinds[] = {
+       { SDLK_UP,              IN_BINDTYPE_PLAYER12, GBTN_UP },
+       { SDLK_DOWN,    IN_BINDTYPE_PLAYER12, GBTN_DOWN },
+       { SDLK_LEFT,    IN_BINDTYPE_PLAYER12, GBTN_LEFT },
+       { SDLK_RIGHT,   IN_BINDTYPE_PLAYER12, GBTN_RIGHT },
+       { SDLK_LSHIFT,  IN_BINDTYPE_PLAYER12, GBTN_A },
+       { SDLK_LALT,    IN_BINDTYPE_PLAYER12, GBTN_B },
+       { SDLK_LCTRL,   IN_BINDTYPE_PLAYER12, GBTN_C },
+       { SDLK_RETURN,  IN_BINDTYPE_PLAYER12, GBTN_START },
+       { SDLK_ESCAPE,  IN_BINDTYPE_EMU, PEVB_MENU },
+       { SDLK_TAB,             IN_BINDTYPE_EMU, PEVB_PICO_PPREV },
+       { SDLK_BACKSPACE,       IN_BINDTYPE_EMU, PEVB_PICO_PNEXT },
+       { SDLK_BACKSPACE,       IN_BINDTYPE_EMU, PEVB_STATE_SAVE },
+       { SDLK_TAB,             IN_BINDTYPE_EMU, PEVB_STATE_LOAD },
+       { SDLK_SPACE,   IN_BINDTYPE_EMU, PEVB_FF },
+       { 0, 0, 0 }
+};
+
+const struct menu_keymap in_sdl_key_map[] =
+{
+       { SDLK_UP,      PBTN_UP },
+       { SDLK_DOWN,    PBTN_DOWN },
+       { SDLK_LEFT,    PBTN_LEFT },
+       { SDLK_RIGHT,   PBTN_RIGHT },
+       { SDLK_LCTRL,   PBTN_MOK },
+       { SDLK_LALT,    PBTN_MBACK },
+       { SDLK_SPACE,   PBTN_MA2 },
+       { SDLK_LSHIFT,  PBTN_MA3 },
+       { SDLK_TAB,     PBTN_L },
+       { SDLK_BACKSPACE,       PBTN_R },
+};
+
+const char * const in_sdl_key_names[SDLK_LAST] = {
+       [SDLK_UP] = "UP",
+       [SDLK_DOWN] = "DOWN",
+       [SDLK_LEFT] = "LEFT",
+       [SDLK_RIGHT] = "RIGHT",
+       [SDLK_LCTRL] = "A",
+       [SDLK_LALT] = "B",
+       [SDLK_LSHIFT] = "X",
+       [SDLK_SPACE] = "Y",
+       [SDLK_TAB] = "L",
+       [SDLK_BACKSPACE] = "R",
+       [SDLK_RETURN] = "START",
+       [SDLK_ESCAPE] = "SELECT",
+       [SDLK_POWER] = "POWER",
+       [SDLK_PAUSE] = "LOCK",
+};