diff --git a/input/drivers/dinput.c b/input/drivers/dinput.c index fc413769ef..e70f64c1db 100644 --- a/input/drivers/dinput.c +++ b/input/drivers/dinput.c @@ -77,6 +77,110 @@ struct dinput_input struct pointer_status pointer_head; /* dummy head for easier iteration */ }; +const struct rarch_key_map rarch_key_map_dinput[] = { + { DIK_LEFT, RETROK_LEFT }, + { DIK_RIGHT, RETROK_RIGHT }, + { DIK_UP, RETROK_UP }, + { DIK_DOWN, RETROK_DOWN }, + { DIK_RETURN, RETROK_RETURN }, + { DIK_TAB, RETROK_TAB }, + { DIK_INSERT, RETROK_INSERT }, + { DIK_DELETE, RETROK_DELETE }, + { DIK_RSHIFT, RETROK_RSHIFT }, + { DIK_LSHIFT, RETROK_LSHIFT }, + { DIK_LCONTROL, RETROK_LCTRL }, + { DIK_END, RETROK_END }, + { DIK_HOME, RETROK_HOME }, + { DIK_NEXT, RETROK_PAGEDOWN }, + { DIK_PRIOR, RETROK_PAGEUP }, + { DIK_LALT, RETROK_LALT }, + { DIK_SPACE, RETROK_SPACE }, + { DIK_ESCAPE, RETROK_ESCAPE }, + { DIK_BACKSPACE, RETROK_BACKSPACE }, + { DIK_NUMPADENTER, RETROK_KP_ENTER }, + { DIK_NUMPADPLUS, RETROK_KP_PLUS }, + { DIK_NUMPADMINUS, RETROK_KP_MINUS }, + { DIK_NUMPADSTAR, RETROK_KP_MULTIPLY }, + { DIK_DIVIDE, RETROK_KP_DIVIDE }, + { DIK_GRAVE, RETROK_BACKQUOTE }, + { DIK_PAUSE, RETROK_PAUSE }, + { DIK_NUMPAD0, RETROK_KP0 }, + { DIK_NUMPAD1, RETROK_KP1 }, + { DIK_NUMPAD2, RETROK_KP2 }, + { DIK_NUMPAD3, RETROK_KP3 }, + { DIK_NUMPAD4, RETROK_KP4 }, + { DIK_NUMPAD5, RETROK_KP5 }, + { DIK_NUMPAD6, RETROK_KP6 }, + { DIK_NUMPAD7, RETROK_KP7 }, + { DIK_NUMPAD8, RETROK_KP8 }, + { DIK_NUMPAD9, RETROK_KP9 }, + { DIK_0, RETROK_0 }, + { DIK_1, RETROK_1 }, + { DIK_2, RETROK_2 }, + { DIK_3, RETROK_3 }, + { DIK_4, RETROK_4 }, + { DIK_5, RETROK_5 }, + { DIK_6, RETROK_6 }, + { DIK_7, RETROK_7 }, + { DIK_8, RETROK_8 }, + { DIK_9, RETROK_9 }, + { DIK_F1, RETROK_F1 }, + { DIK_F2, RETROK_F2 }, + { DIK_F3, RETROK_F3 }, + { DIK_F4, RETROK_F4 }, + { DIK_F5, RETROK_F5 }, + { DIK_F6, RETROK_F6 }, + { DIK_F7, RETROK_F7 }, + { DIK_F8, RETROK_F8 }, + { DIK_F9, RETROK_F9 }, + { DIK_F10, RETROK_F10 }, + { DIK_F11, RETROK_F11 }, + { DIK_F12, RETROK_F12 }, + { DIK_A, RETROK_a }, + { DIK_B, RETROK_b }, + { DIK_C, RETROK_c }, + { DIK_D, RETROK_d }, + { DIK_E, RETROK_e }, + { DIK_F, RETROK_f }, + { DIK_G, RETROK_g }, + { DIK_H, RETROK_h }, + { DIK_I, RETROK_i }, + { DIK_J, RETROK_j }, + { DIK_K, RETROK_k }, + { DIK_L, RETROK_l }, + { DIK_M, RETROK_m }, + { DIK_N, RETROK_n }, + { DIK_O, RETROK_o }, + { DIK_P, RETROK_p }, + { DIK_Q, RETROK_q }, + { DIK_R, RETROK_r }, + { DIK_S, RETROK_s }, + { DIK_T, RETROK_t }, + { DIK_U, RETROK_u }, + { DIK_V, RETROK_v }, + { DIK_W, RETROK_w }, + { DIK_X, RETROK_x }, + { DIK_Y, RETROK_y }, + { DIK_Z, RETROK_z }, + { DIK_APOSTROPHE, RETROK_QUOTE }, + { DIK_COMMA, RETROK_COMMA }, + { DIK_MINUS, RETROK_MINUS }, + { DIK_SLASH, RETROK_SLASH }, + { DIK_SEMICOLON, RETROK_SEMICOLON }, + { DIK_EQUALS, RETROK_EQUALS }, + { DIK_LBRACKET, RETROK_LEFTBRACKET }, + { DIK_BACKSLASH, RETROK_BACKSLASH }, + { DIK_RBRACKET, RETROK_RIGHTBRACKET }, + { DIK_DECIMAL, RETROK_KP_PERIOD }, + { DIK_RCONTROL, RETROK_RCTRL }, + { DIK_RMENU, RETROK_RALT }, + { DIK_PERIOD, RETROK_PERIOD }, + { DIK_SCROLL, RETROK_SCROLLOCK }, + { DIK_CAPSLOCK, RETROK_CAPSLOCK }, + { DIK_NUMLOCK, RETROK_NUMLOCK }, + { 0, RETROK_UNKNOWN }, +}; + void dinput_destroy_context(void) { if (!g_dinput_ctx) diff --git a/input/drivers/sdl_input.c b/input/drivers/sdl_input.c index df4a5ee23f..6dd12f29d1 100644 --- a/input/drivers/sdl_input.c +++ b/input/drivers/sdl_input.c @@ -41,6 +41,183 @@ typedef struct sdl_input int mouse_l, mouse_r, mouse_m, mouse_wu, mouse_wd, mouse_wl, mouse_wr; } sdl_input_t; +const struct rarch_key_map rarch_key_map_sdl[] = { + { SDLK_BACKSPACE, RETROK_BACKSPACE }, + { SDLK_TAB, RETROK_TAB }, + { SDLK_CLEAR, RETROK_CLEAR }, + { SDLK_RETURN, RETROK_RETURN }, + { SDLK_PAUSE, RETROK_PAUSE }, + { SDLK_ESCAPE, RETROK_ESCAPE }, + { SDLK_SPACE, RETROK_SPACE }, + { SDLK_EXCLAIM, RETROK_EXCLAIM }, + { SDLK_QUOTEDBL, RETROK_QUOTEDBL }, + { SDLK_HASH, RETROK_HASH }, + { SDLK_DOLLAR, RETROK_DOLLAR }, + { SDLK_AMPERSAND, RETROK_AMPERSAND }, + { SDLK_QUOTE, RETROK_QUOTE }, + { SDLK_LEFTPAREN, RETROK_LEFTPAREN }, + { SDLK_RIGHTPAREN, RETROK_RIGHTPAREN }, + { SDLK_ASTERISK, RETROK_ASTERISK }, + { SDLK_PLUS, RETROK_PLUS }, + { SDLK_COMMA, RETROK_COMMA }, + { SDLK_MINUS, RETROK_MINUS }, + { SDLK_PERIOD, RETROK_PERIOD }, + { SDLK_SLASH, RETROK_SLASH }, + { SDLK_0, RETROK_0 }, + { SDLK_1, RETROK_1 }, + { SDLK_2, RETROK_2 }, + { SDLK_3, RETROK_3 }, + { SDLK_4, RETROK_4 }, + { SDLK_5, RETROK_5 }, + { SDLK_6, RETROK_6 }, + { SDLK_7, RETROK_7 }, + { SDLK_8, RETROK_8 }, + { SDLK_9, RETROK_9 }, + { SDLK_COLON, RETROK_COLON }, + { SDLK_SEMICOLON, RETROK_SEMICOLON }, + { SDLK_LESS, RETROK_LESS }, + { SDLK_EQUALS, RETROK_EQUALS }, + { SDLK_GREATER, RETROK_GREATER }, + { SDLK_QUESTION, RETROK_QUESTION }, + { SDLK_AT, RETROK_AT }, + { SDLK_LEFTBRACKET, RETROK_LEFTBRACKET }, + { SDLK_BACKSLASH, RETROK_BACKSLASH }, + { SDLK_RIGHTBRACKET, RETROK_RIGHTBRACKET }, + { SDLK_CARET, RETROK_CARET }, + { SDLK_UNDERSCORE, RETROK_UNDERSCORE }, + { SDLK_BACKQUOTE, RETROK_BACKQUOTE }, + { SDLK_a, RETROK_a }, + { SDLK_b, RETROK_b }, + { SDLK_c, RETROK_c }, + { SDLK_d, RETROK_d }, + { SDLK_e, RETROK_e }, + { SDLK_f, RETROK_f }, + { SDLK_g, RETROK_g }, + { SDLK_h, RETROK_h }, + { SDLK_i, RETROK_i }, + { SDLK_j, RETROK_j }, + { SDLK_k, RETROK_k }, + { SDLK_l, RETROK_l }, + { SDLK_m, RETROK_m }, + { SDLK_n, RETROK_n }, + { SDLK_o, RETROK_o }, + { SDLK_p, RETROK_p }, + { SDLK_q, RETROK_q }, + { SDLK_r, RETROK_r }, + { SDLK_s, RETROK_s }, + { SDLK_t, RETROK_t }, + { SDLK_u, RETROK_u }, + { SDLK_v, RETROK_v }, + { SDLK_w, RETROK_w }, + { SDLK_x, RETROK_x }, + { SDLK_y, RETROK_y }, + { SDLK_z, RETROK_z }, + { SDLK_DELETE, RETROK_DELETE }, +#ifdef HAVE_SDL2 + { SDLK_KP_0, RETROK_KP0 }, + { SDLK_KP_1, RETROK_KP1 }, + { SDLK_KP_2, RETROK_KP2 }, + { SDLK_KP_3, RETROK_KP3 }, + { SDLK_KP_4, RETROK_KP4 }, + { SDLK_KP_5, RETROK_KP5 }, + { SDLK_KP_6, RETROK_KP6 }, + { SDLK_KP_7, RETROK_KP7 }, + { SDLK_KP_8, RETROK_KP8 }, + { SDLK_KP_9, RETROK_KP9 }, +#else + { SDLK_KP0, RETROK_KP0 }, + { SDLK_KP1, RETROK_KP1 }, + { SDLK_KP2, RETROK_KP2 }, + { SDLK_KP3, RETROK_KP3 }, + { SDLK_KP4, RETROK_KP4 }, + { SDLK_KP5, RETROK_KP5 }, + { SDLK_KP6, RETROK_KP6 }, + { SDLK_KP7, RETROK_KP7 }, + { SDLK_KP8, RETROK_KP8 }, + { SDLK_KP9, RETROK_KP9 }, +#endif + { SDLK_KP_PERIOD, RETROK_KP_PERIOD }, + { SDLK_KP_DIVIDE, RETROK_KP_DIVIDE }, + { SDLK_KP_MULTIPLY, RETROK_KP_MULTIPLY }, + { SDLK_KP_MINUS, RETROK_KP_MINUS }, + { SDLK_KP_PLUS, RETROK_KP_PLUS }, + { SDLK_KP_ENTER, RETROK_KP_ENTER }, + { SDLK_KP_EQUALS, RETROK_KP_EQUALS }, + { SDLK_UP, RETROK_UP }, + { SDLK_DOWN, RETROK_DOWN }, + { SDLK_RIGHT, RETROK_RIGHT }, + { SDLK_LEFT, RETROK_LEFT }, + { SDLK_INSERT, RETROK_INSERT }, + { SDLK_HOME, RETROK_HOME }, + { SDLK_END, RETROK_END }, + { SDLK_PAGEUP, RETROK_PAGEUP }, + { SDLK_PAGEDOWN, RETROK_PAGEDOWN }, + { SDLK_F1, RETROK_F1 }, + { SDLK_F2, RETROK_F2 }, + { SDLK_F3, RETROK_F3 }, + { SDLK_F4, RETROK_F4 }, + { SDLK_F5, RETROK_F5 }, + { SDLK_F6, RETROK_F6 }, + { SDLK_F7, RETROK_F7 }, + { SDLK_F8, RETROK_F8 }, + { SDLK_F9, RETROK_F9 }, + { SDLK_F10, RETROK_F10 }, + { SDLK_F11, RETROK_F11 }, + { SDLK_F12, RETROK_F12 }, + { SDLK_F13, RETROK_F13 }, + { SDLK_F14, RETROK_F14 }, + { SDLK_F15, RETROK_F15 }, +#ifdef HAVE_SDL2 + { SDLK_NUMLOCKCLEAR, RETROK_NUMLOCK }, +#else + { SDLK_NUMLOCK, RETROK_NUMLOCK }, +#endif + { SDLK_CAPSLOCK, RETROK_CAPSLOCK }, +#ifdef HAVE_SDL2 + { SDLK_SCROLLLOCK, RETROK_SCROLLOCK }, +#else + { SDLK_SCROLLOCK, RETROK_SCROLLOCK }, +#endif + { SDLK_RSHIFT, RETROK_RSHIFT }, + { SDLK_LSHIFT, RETROK_LSHIFT }, + { SDLK_RCTRL, RETROK_RCTRL }, + { SDLK_LCTRL, RETROK_LCTRL }, + { SDLK_RALT, RETROK_RALT }, + { SDLK_LALT, RETROK_LALT }, +#ifdef HAVE_SDL2 + /* { ?, RETROK_RMETA }, */ + /* { ?, RETROK_LMETA }, */ + { SDLK_LGUI, RETROK_LSUPER }, + { SDLK_RGUI, RETROK_RSUPER }, +#else + { SDLK_RMETA, RETROK_RMETA }, + { SDLK_LMETA, RETROK_LMETA }, + { SDLK_LSUPER, RETROK_LSUPER }, + { SDLK_RSUPER, RETROK_RSUPER }, +#endif + { SDLK_MODE, RETROK_MODE }, +#ifndef HAVE_SDL2 + { SDLK_COMPOSE, RETROK_COMPOSE }, +#endif + { SDLK_HELP, RETROK_HELP }, +#ifdef HAVE_SDL2 + { SDLK_PRINTSCREEN, RETROK_PRINT }, +#else + { SDLK_PRINT, RETROK_PRINT }, +#endif + { SDLK_SYSREQ, RETROK_SYSREQ }, + { SDLK_PAUSE, RETROK_BREAK }, + { SDLK_MENU, RETROK_MENU }, + { SDLK_POWER, RETROK_POWER }, + +#ifndef HAVE_SDL2 + { SDLK_EURO, RETROK_EURO }, +#endif + { SDLK_UNDO, RETROK_UNDO }, + + { 0, RETROK_UNKNOWN }, +}; + static void *sdl_input_init(void) { settings_t *settings; diff --git a/input/drivers/x11_input.c b/input/drivers/x11_input.c index aab712e214..1fc3deb8bc 100644 --- a/input/drivers/x11_input.c +++ b/input/drivers/x11_input.c @@ -46,6 +46,146 @@ typedef struct x11_input bool grab_mouse; } x11_input_t; +const struct rarch_key_map rarch_key_map_x11[] = { + { XK_BackSpace, RETROK_BACKSPACE }, + { XK_Tab, RETROK_TAB }, + { XK_Clear, RETROK_CLEAR }, + { XK_Return, RETROK_RETURN }, + { XK_Pause, RETROK_PAUSE }, + { XK_Escape, RETROK_ESCAPE }, + { XK_space, RETROK_SPACE }, + { XK_exclam, RETROK_EXCLAIM }, + { XK_quotedbl, RETROK_QUOTEDBL }, + { XK_numbersign, RETROK_HASH }, + { XK_dollar, RETROK_DOLLAR }, + { XK_ampersand, RETROK_AMPERSAND }, + { XK_apostrophe, RETROK_QUOTE }, + { XK_parenleft, RETROK_LEFTPAREN }, + { XK_parenright, RETROK_RIGHTPAREN }, + { XK_asterisk, RETROK_ASTERISK }, + { XK_plus, RETROK_PLUS }, + { XK_comma, RETROK_COMMA }, + { XK_minus, RETROK_MINUS }, + { XK_period, RETROK_PERIOD }, + { XK_slash, RETROK_SLASH }, + { XK_0, RETROK_0 }, + { XK_1, RETROK_1 }, + { XK_2, RETROK_2 }, + { XK_3, RETROK_3 }, + { XK_4, RETROK_4 }, + { XK_5, RETROK_5 }, + { XK_6, RETROK_6 }, + { XK_7, RETROK_7 }, + { XK_8, RETROK_8 }, + { XK_9, RETROK_9 }, + { XK_colon, RETROK_COLON }, + { XK_semicolon, RETROK_SEMICOLON }, + { XK_less, RETROK_LESS }, + { XK_equal, RETROK_EQUALS }, + { XK_greater, RETROK_GREATER }, + { XK_question, RETROK_QUESTION }, + { XK_at, RETROK_AT }, + { XK_bracketleft, RETROK_LEFTBRACKET }, + { XK_backslash, RETROK_BACKSLASH }, + { XK_bracketright, RETROK_RIGHTBRACKET }, + { XK_dead_circumflex, RETROK_CARET }, + { XK_underscore, RETROK_UNDERSCORE }, + { XK_grave, RETROK_BACKQUOTE }, + { XK_a, RETROK_a }, + { XK_b, RETROK_b }, + { XK_c, RETROK_c }, + { XK_d, RETROK_d }, + { XK_e, RETROK_e }, + { XK_f, RETROK_f }, + { XK_g, RETROK_g }, + { XK_h, RETROK_h }, + { XK_i, RETROK_i }, + { XK_j, RETROK_j }, + { XK_k, RETROK_k }, + { XK_l, RETROK_l }, + { XK_m, RETROK_m }, + { XK_n, RETROK_n }, + { XK_o, RETROK_o }, + { XK_p, RETROK_p }, + { XK_q, RETROK_q }, + { XK_r, RETROK_r }, + { XK_s, RETROK_s }, + { XK_t, RETROK_t }, + { XK_u, RETROK_u }, + { XK_v, RETROK_v }, + { XK_w, RETROK_w }, + { XK_x, RETROK_x }, + { XK_y, RETROK_y }, + { XK_z, RETROK_z }, + { XK_Delete, RETROK_DELETE }, + { XK_KP_0, RETROK_KP0 }, + { XK_KP_1, RETROK_KP1 }, + { XK_KP_2, RETROK_KP2 }, + { XK_KP_3, RETROK_KP3 }, + { XK_KP_4, RETROK_KP4 }, + { XK_KP_5, RETROK_KP5 }, + { XK_KP_6, RETROK_KP6 }, + { XK_KP_7, RETROK_KP7 }, + { XK_KP_8, RETROK_KP8 }, + { XK_KP_9, RETROK_KP9 }, + { XK_KP_Decimal, RETROK_KP_PERIOD }, + { XK_KP_Divide, RETROK_KP_DIVIDE }, + { XK_KP_Multiply, RETROK_KP_MULTIPLY }, + { XK_KP_Subtract, RETROK_KP_MINUS }, + { XK_KP_Add, RETROK_KP_PLUS }, + { XK_KP_Enter, RETROK_KP_ENTER }, + { XK_KP_Equal, RETROK_KP_EQUALS }, + { XK_Up, RETROK_UP }, + { XK_Down, RETROK_DOWN }, + { XK_Right, RETROK_RIGHT }, + { XK_Left, RETROK_LEFT }, + { XK_Insert, RETROK_INSERT }, + { XK_Home, RETROK_HOME }, + { XK_End, RETROK_END }, + { XK_Page_Up, RETROK_PAGEUP }, + { XK_Page_Down, RETROK_PAGEDOWN }, + { XK_F1, RETROK_F1 }, + { XK_F2, RETROK_F2 }, + { XK_F3, RETROK_F3 }, + { XK_F4, RETROK_F4 }, + { XK_F5, RETROK_F5 }, + { XK_F6, RETROK_F6 }, + { XK_F7, RETROK_F7 }, + { XK_F8, RETROK_F8 }, + { XK_F9, RETROK_F9 }, + { XK_F10, RETROK_F10 }, + { XK_F11, RETROK_F11 }, + { XK_F12, RETROK_F12 }, + { XK_F13, RETROK_F13 }, + { XK_F14, RETROK_F14 }, + { XK_F15, RETROK_F15 }, + { XK_Num_Lock, RETROK_NUMLOCK }, + { XK_Caps_Lock, RETROK_CAPSLOCK }, + { XK_Scroll_Lock, RETROK_SCROLLOCK }, + { XK_Shift_R, RETROK_RSHIFT }, + { XK_Shift_L, RETROK_LSHIFT }, + { XK_Control_R, RETROK_RCTRL }, + { XK_Control_L, RETROK_LCTRL }, + { XK_Alt_R, RETROK_RALT }, + { XK_Alt_L, RETROK_LALT }, + { XK_Meta_R, RETROK_RMETA }, + { XK_Meta_L, RETROK_LMETA }, + { XK_Super_L, RETROK_LSUPER }, + { XK_Super_R, RETROK_RSUPER }, + { XK_Mode_switch, RETROK_MODE }, + { XK_Multi_key, RETROK_COMPOSE }, + { XK_Help, RETROK_HELP }, + { XK_Print, RETROK_PRINT }, + { XK_Sys_Req, RETROK_SYSREQ }, + { XK_Break, RETROK_BREAK }, + { XK_Menu, RETROK_MENU }, + /*{ ?, RETROK_POWER },*/ + { XK_EuroSign, RETROK_EURO }, + { XK_Undo, RETROK_UNDO }, + + { 0, RETROK_UNKNOWN }, +}; + static void *x_input_init(void) { driver_t *driver = driver_get_ptr(); diff --git a/input/input_keymaps.c b/input/input_keymaps.c index a7e4538ec0..5f43f6b5bc 100644 --- a/input/input_keymaps.c +++ b/input/input_keymaps.c @@ -24,20 +24,6 @@ #include "../config.h" #endif -#ifdef HAVE_DINPUT -#undef DIRECTINPUT_VERSION -#define DIRECTINPUT_VERSION 0x0800 -#include -#endif - -#if defined(HAVE_SDL) || defined(HAVE_SDL2) -#include "SDL.h" -#endif - -#ifdef HAVE_X11 -#include -#endif - #ifdef __APPLE__ #include "drivers/apple_keycode.h" #endif @@ -173,433 +159,6 @@ const struct input_key_map input_config_key_map[] = { { NULL, RETROK_UNKNOWN }, }; -#ifdef HAVE_X11 -const struct rarch_key_map rarch_key_map_x11[] = { - { XK_BackSpace, RETROK_BACKSPACE }, - { XK_Tab, RETROK_TAB }, - { XK_Clear, RETROK_CLEAR }, - { XK_Return, RETROK_RETURN }, - { XK_Pause, RETROK_PAUSE }, - { XK_Escape, RETROK_ESCAPE }, - { XK_space, RETROK_SPACE }, - { XK_exclam, RETROK_EXCLAIM }, - { XK_quotedbl, RETROK_QUOTEDBL }, - { XK_numbersign, RETROK_HASH }, - { XK_dollar, RETROK_DOLLAR }, - { XK_ampersand, RETROK_AMPERSAND }, - { XK_apostrophe, RETROK_QUOTE }, - { XK_parenleft, RETROK_LEFTPAREN }, - { XK_parenright, RETROK_RIGHTPAREN }, - { XK_asterisk, RETROK_ASTERISK }, - { XK_plus, RETROK_PLUS }, - { XK_comma, RETROK_COMMA }, - { XK_minus, RETROK_MINUS }, - { XK_period, RETROK_PERIOD }, - { XK_slash, RETROK_SLASH }, - { XK_0, RETROK_0 }, - { XK_1, RETROK_1 }, - { XK_2, RETROK_2 }, - { XK_3, RETROK_3 }, - { XK_4, RETROK_4 }, - { XK_5, RETROK_5 }, - { XK_6, RETROK_6 }, - { XK_7, RETROK_7 }, - { XK_8, RETROK_8 }, - { XK_9, RETROK_9 }, - { XK_colon, RETROK_COLON }, - { XK_semicolon, RETROK_SEMICOLON }, - { XK_less, RETROK_LESS }, - { XK_equal, RETROK_EQUALS }, - { XK_greater, RETROK_GREATER }, - { XK_question, RETROK_QUESTION }, - { XK_at, RETROK_AT }, - { XK_bracketleft, RETROK_LEFTBRACKET }, - { XK_backslash, RETROK_BACKSLASH }, - { XK_bracketright, RETROK_RIGHTBRACKET }, - { XK_dead_circumflex, RETROK_CARET }, - { XK_underscore, RETROK_UNDERSCORE }, - { XK_grave, RETROK_BACKQUOTE }, - { XK_a, RETROK_a }, - { XK_b, RETROK_b }, - { XK_c, RETROK_c }, - { XK_d, RETROK_d }, - { XK_e, RETROK_e }, - { XK_f, RETROK_f }, - { XK_g, RETROK_g }, - { XK_h, RETROK_h }, - { XK_i, RETROK_i }, - { XK_j, RETROK_j }, - { XK_k, RETROK_k }, - { XK_l, RETROK_l }, - { XK_m, RETROK_m }, - { XK_n, RETROK_n }, - { XK_o, RETROK_o }, - { XK_p, RETROK_p }, - { XK_q, RETROK_q }, - { XK_r, RETROK_r }, - { XK_s, RETROK_s }, - { XK_t, RETROK_t }, - { XK_u, RETROK_u }, - { XK_v, RETROK_v }, - { XK_w, RETROK_w }, - { XK_x, RETROK_x }, - { XK_y, RETROK_y }, - { XK_z, RETROK_z }, - { XK_Delete, RETROK_DELETE }, - { XK_KP_0, RETROK_KP0 }, - { XK_KP_1, RETROK_KP1 }, - { XK_KP_2, RETROK_KP2 }, - { XK_KP_3, RETROK_KP3 }, - { XK_KP_4, RETROK_KP4 }, - { XK_KP_5, RETROK_KP5 }, - { XK_KP_6, RETROK_KP6 }, - { XK_KP_7, RETROK_KP7 }, - { XK_KP_8, RETROK_KP8 }, - { XK_KP_9, RETROK_KP9 }, - { XK_KP_Decimal, RETROK_KP_PERIOD }, - { XK_KP_Divide, RETROK_KP_DIVIDE }, - { XK_KP_Multiply, RETROK_KP_MULTIPLY }, - { XK_KP_Subtract, RETROK_KP_MINUS }, - { XK_KP_Add, RETROK_KP_PLUS }, - { XK_KP_Enter, RETROK_KP_ENTER }, - { XK_KP_Equal, RETROK_KP_EQUALS }, - { XK_Up, RETROK_UP }, - { XK_Down, RETROK_DOWN }, - { XK_Right, RETROK_RIGHT }, - { XK_Left, RETROK_LEFT }, - { XK_Insert, RETROK_INSERT }, - { XK_Home, RETROK_HOME }, - { XK_End, RETROK_END }, - { XK_Page_Up, RETROK_PAGEUP }, - { XK_Page_Down, RETROK_PAGEDOWN }, - { XK_F1, RETROK_F1 }, - { XK_F2, RETROK_F2 }, - { XK_F3, RETROK_F3 }, - { XK_F4, RETROK_F4 }, - { XK_F5, RETROK_F5 }, - { XK_F6, RETROK_F6 }, - { XK_F7, RETROK_F7 }, - { XK_F8, RETROK_F8 }, - { XK_F9, RETROK_F9 }, - { XK_F10, RETROK_F10 }, - { XK_F11, RETROK_F11 }, - { XK_F12, RETROK_F12 }, - { XK_F13, RETROK_F13 }, - { XK_F14, RETROK_F14 }, - { XK_F15, RETROK_F15 }, - { XK_Num_Lock, RETROK_NUMLOCK }, - { XK_Caps_Lock, RETROK_CAPSLOCK }, - { XK_Scroll_Lock, RETROK_SCROLLOCK }, - { XK_Shift_R, RETROK_RSHIFT }, - { XK_Shift_L, RETROK_LSHIFT }, - { XK_Control_R, RETROK_RCTRL }, - { XK_Control_L, RETROK_LCTRL }, - { XK_Alt_R, RETROK_RALT }, - { XK_Alt_L, RETROK_LALT }, - { XK_Meta_R, RETROK_RMETA }, - { XK_Meta_L, RETROK_LMETA }, - { XK_Super_L, RETROK_LSUPER }, - { XK_Super_R, RETROK_RSUPER }, - { XK_Mode_switch, RETROK_MODE }, - { XK_Multi_key, RETROK_COMPOSE }, - { XK_Help, RETROK_HELP }, - { XK_Print, RETROK_PRINT }, - { XK_Sys_Req, RETROK_SYSREQ }, - { XK_Break, RETROK_BREAK }, - { XK_Menu, RETROK_MENU }, - /*{ ?, RETROK_POWER },*/ - { XK_EuroSign, RETROK_EURO }, - { XK_Undo, RETROK_UNDO }, - - { 0, RETROK_UNKNOWN }, -}; -#endif - -#if defined(HAVE_SDL) || defined(HAVE_SDL2) -const struct rarch_key_map rarch_key_map_sdl[] = { - { SDLK_BACKSPACE, RETROK_BACKSPACE }, - { SDLK_TAB, RETROK_TAB }, - { SDLK_CLEAR, RETROK_CLEAR }, - { SDLK_RETURN, RETROK_RETURN }, - { SDLK_PAUSE, RETROK_PAUSE }, - { SDLK_ESCAPE, RETROK_ESCAPE }, - { SDLK_SPACE, RETROK_SPACE }, - { SDLK_EXCLAIM, RETROK_EXCLAIM }, - { SDLK_QUOTEDBL, RETROK_QUOTEDBL }, - { SDLK_HASH, RETROK_HASH }, - { SDLK_DOLLAR, RETROK_DOLLAR }, - { SDLK_AMPERSAND, RETROK_AMPERSAND }, - { SDLK_QUOTE, RETROK_QUOTE }, - { SDLK_LEFTPAREN, RETROK_LEFTPAREN }, - { SDLK_RIGHTPAREN, RETROK_RIGHTPAREN }, - { SDLK_ASTERISK, RETROK_ASTERISK }, - { SDLK_PLUS, RETROK_PLUS }, - { SDLK_COMMA, RETROK_COMMA }, - { SDLK_MINUS, RETROK_MINUS }, - { SDLK_PERIOD, RETROK_PERIOD }, - { SDLK_SLASH, RETROK_SLASH }, - { SDLK_0, RETROK_0 }, - { SDLK_1, RETROK_1 }, - { SDLK_2, RETROK_2 }, - { SDLK_3, RETROK_3 }, - { SDLK_4, RETROK_4 }, - { SDLK_5, RETROK_5 }, - { SDLK_6, RETROK_6 }, - { SDLK_7, RETROK_7 }, - { SDLK_8, RETROK_8 }, - { SDLK_9, RETROK_9 }, - { SDLK_COLON, RETROK_COLON }, - { SDLK_SEMICOLON, RETROK_SEMICOLON }, - { SDLK_LESS, RETROK_LESS }, - { SDLK_EQUALS, RETROK_EQUALS }, - { SDLK_GREATER, RETROK_GREATER }, - { SDLK_QUESTION, RETROK_QUESTION }, - { SDLK_AT, RETROK_AT }, - { SDLK_LEFTBRACKET, RETROK_LEFTBRACKET }, - { SDLK_BACKSLASH, RETROK_BACKSLASH }, - { SDLK_RIGHTBRACKET, RETROK_RIGHTBRACKET }, - { SDLK_CARET, RETROK_CARET }, - { SDLK_UNDERSCORE, RETROK_UNDERSCORE }, - { SDLK_BACKQUOTE, RETROK_BACKQUOTE }, - { SDLK_a, RETROK_a }, - { SDLK_b, RETROK_b }, - { SDLK_c, RETROK_c }, - { SDLK_d, RETROK_d }, - { SDLK_e, RETROK_e }, - { SDLK_f, RETROK_f }, - { SDLK_g, RETROK_g }, - { SDLK_h, RETROK_h }, - { SDLK_i, RETROK_i }, - { SDLK_j, RETROK_j }, - { SDLK_k, RETROK_k }, - { SDLK_l, RETROK_l }, - { SDLK_m, RETROK_m }, - { SDLK_n, RETROK_n }, - { SDLK_o, RETROK_o }, - { SDLK_p, RETROK_p }, - { SDLK_q, RETROK_q }, - { SDLK_r, RETROK_r }, - { SDLK_s, RETROK_s }, - { SDLK_t, RETROK_t }, - { SDLK_u, RETROK_u }, - { SDLK_v, RETROK_v }, - { SDLK_w, RETROK_w }, - { SDLK_x, RETROK_x }, - { SDLK_y, RETROK_y }, - { SDLK_z, RETROK_z }, - { SDLK_DELETE, RETROK_DELETE }, -#ifdef HAVE_SDL2 - { SDLK_KP_0, RETROK_KP0 }, - { SDLK_KP_1, RETROK_KP1 }, - { SDLK_KP_2, RETROK_KP2 }, - { SDLK_KP_3, RETROK_KP3 }, - { SDLK_KP_4, RETROK_KP4 }, - { SDLK_KP_5, RETROK_KP5 }, - { SDLK_KP_6, RETROK_KP6 }, - { SDLK_KP_7, RETROK_KP7 }, - { SDLK_KP_8, RETROK_KP8 }, - { SDLK_KP_9, RETROK_KP9 }, -#else - { SDLK_KP0, RETROK_KP0 }, - { SDLK_KP1, RETROK_KP1 }, - { SDLK_KP2, RETROK_KP2 }, - { SDLK_KP3, RETROK_KP3 }, - { SDLK_KP4, RETROK_KP4 }, - { SDLK_KP5, RETROK_KP5 }, - { SDLK_KP6, RETROK_KP6 }, - { SDLK_KP7, RETROK_KP7 }, - { SDLK_KP8, RETROK_KP8 }, - { SDLK_KP9, RETROK_KP9 }, -#endif - { SDLK_KP_PERIOD, RETROK_KP_PERIOD }, - { SDLK_KP_DIVIDE, RETROK_KP_DIVIDE }, - { SDLK_KP_MULTIPLY, RETROK_KP_MULTIPLY }, - { SDLK_KP_MINUS, RETROK_KP_MINUS }, - { SDLK_KP_PLUS, RETROK_KP_PLUS }, - { SDLK_KP_ENTER, RETROK_KP_ENTER }, - { SDLK_KP_EQUALS, RETROK_KP_EQUALS }, - { SDLK_UP, RETROK_UP }, - { SDLK_DOWN, RETROK_DOWN }, - { SDLK_RIGHT, RETROK_RIGHT }, - { SDLK_LEFT, RETROK_LEFT }, - { SDLK_INSERT, RETROK_INSERT }, - { SDLK_HOME, RETROK_HOME }, - { SDLK_END, RETROK_END }, - { SDLK_PAGEUP, RETROK_PAGEUP }, - { SDLK_PAGEDOWN, RETROK_PAGEDOWN }, - { SDLK_F1, RETROK_F1 }, - { SDLK_F2, RETROK_F2 }, - { SDLK_F3, RETROK_F3 }, - { SDLK_F4, RETROK_F4 }, - { SDLK_F5, RETROK_F5 }, - { SDLK_F6, RETROK_F6 }, - { SDLK_F7, RETROK_F7 }, - { SDLK_F8, RETROK_F8 }, - { SDLK_F9, RETROK_F9 }, - { SDLK_F10, RETROK_F10 }, - { SDLK_F11, RETROK_F11 }, - { SDLK_F12, RETROK_F12 }, - { SDLK_F13, RETROK_F13 }, - { SDLK_F14, RETROK_F14 }, - { SDLK_F15, RETROK_F15 }, -#ifdef HAVE_SDL2 - { SDLK_NUMLOCKCLEAR, RETROK_NUMLOCK }, -#else - { SDLK_NUMLOCK, RETROK_NUMLOCK }, -#endif - { SDLK_CAPSLOCK, RETROK_CAPSLOCK }, -#ifdef HAVE_SDL2 - { SDLK_SCROLLLOCK, RETROK_SCROLLOCK }, -#else - { SDLK_SCROLLOCK, RETROK_SCROLLOCK }, -#endif - { SDLK_RSHIFT, RETROK_RSHIFT }, - { SDLK_LSHIFT, RETROK_LSHIFT }, - { SDLK_RCTRL, RETROK_RCTRL }, - { SDLK_LCTRL, RETROK_LCTRL }, - { SDLK_RALT, RETROK_RALT }, - { SDLK_LALT, RETROK_LALT }, -#ifdef HAVE_SDL2 - /* { ?, RETROK_RMETA }, */ - /* { ?, RETROK_LMETA }, */ - { SDLK_LGUI, RETROK_LSUPER }, - { SDLK_RGUI, RETROK_RSUPER }, -#else - { SDLK_RMETA, RETROK_RMETA }, - { SDLK_LMETA, RETROK_LMETA }, - { SDLK_LSUPER, RETROK_LSUPER }, - { SDLK_RSUPER, RETROK_RSUPER }, -#endif - { SDLK_MODE, RETROK_MODE }, -#ifndef HAVE_SDL2 - { SDLK_COMPOSE, RETROK_COMPOSE }, -#endif - { SDLK_HELP, RETROK_HELP }, -#ifdef HAVE_SDL2 - { SDLK_PRINTSCREEN, RETROK_PRINT }, -#else - { SDLK_PRINT, RETROK_PRINT }, -#endif - { SDLK_SYSREQ, RETROK_SYSREQ }, - { SDLK_PAUSE, RETROK_BREAK }, - { SDLK_MENU, RETROK_MENU }, - { SDLK_POWER, RETROK_POWER }, - -#ifndef HAVE_SDL2 - { SDLK_EURO, RETROK_EURO }, -#endif - { SDLK_UNDO, RETROK_UNDO }, - - { 0, RETROK_UNKNOWN }, -}; -#endif - -#ifdef HAVE_DINPUT -const struct rarch_key_map rarch_key_map_dinput[] = { - { DIK_LEFT, RETROK_LEFT }, - { DIK_RIGHT, RETROK_RIGHT }, - { DIK_UP, RETROK_UP }, - { DIK_DOWN, RETROK_DOWN }, - { DIK_RETURN, RETROK_RETURN }, - { DIK_TAB, RETROK_TAB }, - { DIK_INSERT, RETROK_INSERT }, - { DIK_DELETE, RETROK_DELETE }, - { DIK_RSHIFT, RETROK_RSHIFT }, - { DIK_LSHIFT, RETROK_LSHIFT }, - { DIK_LCONTROL, RETROK_LCTRL }, - { DIK_END, RETROK_END }, - { DIK_HOME, RETROK_HOME }, - { DIK_NEXT, RETROK_PAGEDOWN }, - { DIK_PRIOR, RETROK_PAGEUP }, - { DIK_LALT, RETROK_LALT }, - { DIK_SPACE, RETROK_SPACE }, - { DIK_ESCAPE, RETROK_ESCAPE }, - { DIK_BACKSPACE, RETROK_BACKSPACE }, - { DIK_NUMPADENTER, RETROK_KP_ENTER }, - { DIK_NUMPADPLUS, RETROK_KP_PLUS }, - { DIK_NUMPADMINUS, RETROK_KP_MINUS }, - { DIK_NUMPADSTAR, RETROK_KP_MULTIPLY }, - { DIK_DIVIDE, RETROK_KP_DIVIDE }, - { DIK_GRAVE, RETROK_BACKQUOTE }, - { DIK_PAUSE, RETROK_PAUSE }, - { DIK_NUMPAD0, RETROK_KP0 }, - { DIK_NUMPAD1, RETROK_KP1 }, - { DIK_NUMPAD2, RETROK_KP2 }, - { DIK_NUMPAD3, RETROK_KP3 }, - { DIK_NUMPAD4, RETROK_KP4 }, - { DIK_NUMPAD5, RETROK_KP5 }, - { DIK_NUMPAD6, RETROK_KP6 }, - { DIK_NUMPAD7, RETROK_KP7 }, - { DIK_NUMPAD8, RETROK_KP8 }, - { DIK_NUMPAD9, RETROK_KP9 }, - { DIK_0, RETROK_0 }, - { DIK_1, RETROK_1 }, - { DIK_2, RETROK_2 }, - { DIK_3, RETROK_3 }, - { DIK_4, RETROK_4 }, - { DIK_5, RETROK_5 }, - { DIK_6, RETROK_6 }, - { DIK_7, RETROK_7 }, - { DIK_8, RETROK_8 }, - { DIK_9, RETROK_9 }, - { DIK_F1, RETROK_F1 }, - { DIK_F2, RETROK_F2 }, - { DIK_F3, RETROK_F3 }, - { DIK_F4, RETROK_F4 }, - { DIK_F5, RETROK_F5 }, - { DIK_F6, RETROK_F6 }, - { DIK_F7, RETROK_F7 }, - { DIK_F8, RETROK_F8 }, - { DIK_F9, RETROK_F9 }, - { DIK_F10, RETROK_F10 }, - { DIK_F11, RETROK_F11 }, - { DIK_F12, RETROK_F12 }, - { DIK_A, RETROK_a }, - { DIK_B, RETROK_b }, - { DIK_C, RETROK_c }, - { DIK_D, RETROK_d }, - { DIK_E, RETROK_e }, - { DIK_F, RETROK_f }, - { DIK_G, RETROK_g }, - { DIK_H, RETROK_h }, - { DIK_I, RETROK_i }, - { DIK_J, RETROK_j }, - { DIK_K, RETROK_k }, - { DIK_L, RETROK_l }, - { DIK_M, RETROK_m }, - { DIK_N, RETROK_n }, - { DIK_O, RETROK_o }, - { DIK_P, RETROK_p }, - { DIK_Q, RETROK_q }, - { DIK_R, RETROK_r }, - { DIK_S, RETROK_s }, - { DIK_T, RETROK_t }, - { DIK_U, RETROK_u }, - { DIK_V, RETROK_v }, - { DIK_W, RETROK_w }, - { DIK_X, RETROK_x }, - { DIK_Y, RETROK_y }, - { DIK_Z, RETROK_z }, - { DIK_APOSTROPHE, RETROK_QUOTE }, - { DIK_COMMA, RETROK_COMMA }, - { DIK_MINUS, RETROK_MINUS }, - { DIK_SLASH, RETROK_SLASH }, - { DIK_SEMICOLON, RETROK_SEMICOLON }, - { DIK_EQUALS, RETROK_EQUALS }, - { DIK_LBRACKET, RETROK_LEFTBRACKET }, - { DIK_BACKSLASH, RETROK_BACKSLASH }, - { DIK_RBRACKET, RETROK_RIGHTBRACKET }, - { DIK_DECIMAL, RETROK_KP_PERIOD }, - { DIK_RCONTROL, RETROK_RCTRL }, - { DIK_RMENU, RETROK_RALT }, - { DIK_PERIOD, RETROK_PERIOD }, - { DIK_SCROLL, RETROK_SCROLLOCK }, - { DIK_CAPSLOCK, RETROK_CAPSLOCK }, - { DIK_NUMLOCK, RETROK_NUMLOCK }, - { 0, RETROK_UNKNOWN }, -}; -#endif - #ifdef EMSCRIPTEN const struct rarch_key_map rarch_key_map_rwebinput[] = { { 37, RETROK_LEFT },