diff --git a/android/native/jni/input_android.c b/android/native/jni/input_android.c index d8320dbdf3..7e4d84bc1a 100644 --- a/android/native/jni/input_android.c +++ b/android/native/jni/input_android.c @@ -43,6 +43,7 @@ static int state_device_ids[MAX_PADS]; static uint64_t state[MAX_PADS]; static uint64_t keycode_lut[LAST_KEYCODE]; analog_t analog_state[MAX_PADS]; +static unsigned dpad_emulation[MAX_PLAYERS]; struct input_pointer { @@ -313,7 +314,7 @@ static void *android_input_init(void) g_settings.input.binds[i][RETRO_DEVICE_ID_JOYPAD_L3].joykey = (1ULL << RETRO_DEVICE_ID_JOYPAD_L3); g_settings.input.binds[i][RETRO_DEVICE_ID_JOYPAD_R3].joykey = (1ULL << RETRO_DEVICE_ID_JOYPAD_R3); - g_settings.input.dpad_emulation[i] = ANALOG_DPAD_LSTICK; + dpad_emulation[i] = ANALOG_DPAD_LSTICK; } for (i = 0; i < MAX_PLAYERS; i++) @@ -356,7 +357,7 @@ static void android_input_set_keybinds(void *data, unsigned device, * one for each of the 8 pads */ unsigned shift = 8 + (port * 8); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; + dpad_emulation[port] = ANALOG_DPAD_LSTICK; // NOTE - we have to add '1' to the bit mask because // RETRO_DEVICE_ID_JOYPAD_B is 0 @@ -370,7 +371,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "Logitech Rumblepad 2", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_BUTTON_2] |= ((RETRO_DEVICE_ID_JOYPAD_B+1) << shift); keycode_lut[AKEYCODE_BUTTON_1] |= ((RETRO_DEVICE_ID_JOYPAD_Y+1) << shift); keycode_lut[AKEYCODE_BUTTON_9] |= ((RETRO_DEVICE_ID_JOYPAD_SELECT+1) << shift); @@ -423,7 +424,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_GAMEMID: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; strlcpy(g_settings.input.device_names[port], "GameMID", sizeof(g_settings.input.device_names[port])); @@ -450,7 +451,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_ICONTROLPAD_HID_JOYSTICK: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "iControlPad HID Joystick profile", sizeof(g_settings.input.device_names[port])); @@ -469,7 +470,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_ICONTROLPAD_BLUEZ_IME: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "iControlPad SPP profile (using Bluez IME)", sizeof(g_settings.input.device_names[port])); @@ -537,7 +538,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_TOMMO_NEOGEOX_ARCADE: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "TOMMO Neogeo X Arcade", sizeof(g_settings.input.device_names[port])); @@ -595,7 +596,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "iDroid x360", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); keycode_lut[AKEYCODE_DPAD_LEFT] |= ((RETRO_DEVICE_ID_JOYPAD_LEFT+1) << shift); @@ -721,7 +722,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "Xbox", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_BUTTON_MODE] |= ((RARCH_MENU_TOGGLE + 1) << shift); keycode_lut[AKEYCODE_BACK] |= ((RETRO_DEVICE_ID_JOYPAD_SELECT+1) << shift); keycode_lut[AKEYCODE_BUTTON_SELECT] |= ((RETRO_DEVICE_ID_JOYPAD_SELECT+1) << shift); @@ -740,7 +741,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "WiseGroup PlayStation2", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_BUTTON_13] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_BUTTON_15] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); keycode_lut[AKEYCODE_BUTTON_16] |= ((RETRO_DEVICE_ID_JOYPAD_LEFT+1) << shift); @@ -844,7 +845,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "PlayStation3", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); keycode_lut[AKEYCODE_DPAD_LEFT] |= ((RETRO_DEVICE_ID_JOYPAD_LEFT+1) << shift); @@ -865,7 +866,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_MOGA: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "MOGA", sizeof(g_settings.input.device_names[port])); @@ -921,7 +922,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_JXD_S7300B: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "JXD S7300B", sizeof(g_settings.input.device_names[port])); @@ -1089,7 +1090,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_MAYFLASH_WII_CLASSIC: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "Mayflash Wii Classic", sizeof(g_settings.input.device_names[port])); @@ -1111,7 +1112,7 @@ static void android_input_set_keybinds(void *data, unsigned device, break; case DEVICE_SZMY_POWER_DUAL_BOX_WII: g_settings.input.device[port] = device; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; strlcpy(g_settings.input.device_names[port], "SZMy Power Dual Box Wii", sizeof(g_settings.input.device_names[port])); @@ -1190,7 +1191,7 @@ static void android_input_set_keybinds(void *data, unsigned device, strlcpy(g_settings.input.device_names[port], "OUYA", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); keycode_lut[AKEYCODE_DPAD_LEFT] |= ((RETRO_DEVICE_ID_JOYPAD_LEFT+1) << shift); @@ -1229,7 +1230,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "Xperia Play", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; if ((zeus_second_id != -1 && (zeus_second_id == id))) { @@ -1460,7 +1461,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "NVIDIA Shield", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_BUTTON_B] |= ((RETRO_DEVICE_ID_JOYPAD_A+1) << shift); keycode_lut[AKEYCODE_BUTTON_A] |= ((RETRO_DEVICE_ID_JOYPAD_B+1) << shift); keycode_lut[AKEYCODE_BUTTON_Y] |= ((RETRO_DEVICE_ID_JOYPAD_X+1) << shift); @@ -1475,7 +1476,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "MUCH iReadGo i5", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); @@ -1495,7 +1496,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "Wikipad", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; + dpad_emulation[port] = ANALOG_DPAD_DUALANALOG; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); @@ -1518,7 +1519,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "FC30 Gamepad", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); keycode_lut[AKEYCODE_DPAD_DOWN] |= ((RETRO_DEVICE_ID_JOYPAD_DOWN+1) << shift); @@ -1538,7 +1539,7 @@ static void android_input_set_keybinds(void *data, unsigned device, g_settings.input.device[port] = device; strlcpy(g_settings.input.device_names[port], "ccpCreations WiiUse IME", sizeof(g_settings.input.device_names[port])); - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; + dpad_emulation[port] = ANALOG_DPAD_NONE; /* Player 1 */ keycode_lut[AKEYCODE_DPAD_UP] |= ((RETRO_DEVICE_ID_JOYPAD_UP+1) << shift); @@ -1778,9 +1779,9 @@ static void android_input_poll(void *data) if (source & ~(AINPUT_SOURCE_TOUCHSCREEN | AINPUT_SOURCE_MOUSE)) { - if (g_settings.input.dpad_emulation[state_id] != ANALOG_DPAD_NONE) + if (dpad_emulation[state_id] != ANALOG_DPAD_NONE) engine_handle_dpad(event, motion_pointer, state_id, msg, sizeof(msg), source, debug_enable, - g_settings.input.dpad_emulation[state_id]); + dpad_emulation[state_id]); } else { diff --git a/apple/common/apple_input.c b/apple/common/apple_input.c index 493736bb87..bf99b29f96 100644 --- a/apple/common/apple_input.c +++ b/apple/common/apple_input.c @@ -276,7 +276,6 @@ static void apple_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L2].joykey = 23; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R2].joykey = 18; g_settings.input.binds[port][RARCH_MENU_TOGGLE].joykey = 27; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; break; case DEVICE_SIXAXIS: strlcpy(g_settings.input.device_names[port], "SixAxis/DualShock3", @@ -299,7 +298,6 @@ static void apple_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].joykey = 14; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].joykey = 15; g_settings.input.binds[port][RARCH_MENU_TOGGLE].joykey = 16; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; break; } } diff --git a/blackberry-qnx/qnx_input.c b/blackberry-qnx/qnx_input.c index 52957a6222..cbb1074a09 100644 --- a/blackberry-qnx/qnx_input.c +++ b/blackberry-qnx/qnx_input.c @@ -716,7 +716,6 @@ static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].def_joykey = SCREEN_L3_GAME_BUTTON; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].def_joykey = SCREEN_R3_GAME_BUTTON; g_settings.input.binds[port][RARCH_MENU_TOGGLE].def_joykey = SCREEN_MENU3_GAME_BUTTON; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; controller->port = port; port_device[port] = controller; break; @@ -741,7 +740,6 @@ static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].def_joykey = NO_BTN; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].def_joykey = NO_BTN; g_settings.input.binds[port][RARCH_MENU_TOGGLE].def_joykey = KEYCODE_P & 0xFF; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; controller->port = port; port_device[port] = controller; break; @@ -767,7 +765,6 @@ static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].def_joykey = NO_BTN; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].def_joykey = NO_BTN; g_settings.input.binds[port][RARCH_MENU_TOGGLE].def_joykey = KEYCODE_TILDE; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; controller->port = port; port_device[port] = controller; break; @@ -792,7 +789,6 @@ static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].def_joykey = 0; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].def_joykey = 0; g_settings.input.binds[port][RARCH_MENU_TOGGLE].def_joykey = 0; - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; controller->port = port; port_device[port] = controller; break; @@ -818,7 +814,6 @@ static void qnx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_L3].def_joykey = SCREEN_L3_GAME_BUTTON; g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_R3].def_joykey = SCREEN_R3_GAME_BUTTON; g_settings.input.binds[port][RARCH_MENU_TOGGLE].def_joykey = NO_BTN; //TODO: Find a good mappnig - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; controller->port = port; port_device[port] = controller; break; diff --git a/config.def.h b/config.def.h index 520581b01c..4be6e06dd9 100644 --- a/config.def.h +++ b/config.def.h @@ -448,14 +448,6 @@ static const bool input_autodetect_enable = true; #define RETRO_DEF_JOYPAD_R2 (1ULL << RETRO_DEVICE_ID_JOYPAD_R2) #define RETRO_DEF_JOYPAD_L3 (1ULL << RETRO_DEVICE_ID_JOYPAD_L3) #define RETRO_DEF_JOYPAD_R3 (1ULL << RETRO_DEVICE_ID_JOYPAD_R3) -#define RETRO_DEF_ANALOGL_DPAD_LEFT ((1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT)) -#define RETRO_DEF_ANALOGL_DPAD_RIGHT ((1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT)) -#define RETRO_DEF_ANALOGL_DPAD_UP ((1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP)) -#define RETRO_DEF_ANALOGL_DPAD_DOWN ((1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN)) -#define RETRO_DEF_ANALOGR_DPAD_LEFT ((1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT)) -#define RETRO_DEF_ANALOGR_DPAD_RIGHT ((1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT)) -#define RETRO_DEF_ANALOGR_DPAD_UP ((1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP)) -#define RETRO_DEF_ANALOGR_DPAD_DOWN ((1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN)) #else #define RETRO_DEF_JOYPAD_B NO_BTN #define RETRO_DEF_JOYPAD_Y NO_BTN @@ -508,14 +500,6 @@ static const bool input_autodetect_enable = true; #define RETRO_LBL_ANALOG_RIGHT_X_MINUS "Right Analog X -" #define RETRO_LBL_ANALOG_RIGHT_Y_PLUS "Right Analog Y +" #define RETRO_LBL_ANALOG_RIGHT_Y_MINUS "Right Analog Y -" -#define RETRO_LBL_ANALOG_LEFT_X_DPAD_L "Left Analog D-Pad Left" -#define RETRO_LBL_ANALOG_LEFT_X_DPAD_R "Left Analog D-Pad Right" -#define RETRO_LBL_ANALOG_LEFT_Y_DPAD_U "Left Analog D-Pad Up" -#define RETRO_LBL_ANALOG_LEFT_Y_DPAD_D "Left Analog D-Pad Down" -#define RETRO_LBL_ANALOG_RIGHT_X_DPAD_L "Right Analog D-Pad Left" -#define RETRO_LBL_ANALOG_RIGHT_X_DPAD_R "Right Analog D-Pad Right" -#define RETRO_LBL_ANALOG_RIGHT_Y_DPAD_U "Right Analog D-Pad Up" -#define RETRO_LBL_ANALOG_RIGHT_Y_DPAD_D "Right Analog D-Pad Down" #define RETRO_LBL_FAST_FORWARD_KEY "Fast Forward" #define RETRO_LBL_FAST_FORWARD_HOLD_KEY "Fast Forward Hold" #define RETRO_LBL_LOAD_STATE_KEY "Load State" @@ -576,16 +560,6 @@ static const struct retro_keybind retro_keybinds_1[] = { { true, RARCH_ANALOG_RIGHT_X_MINUS, RETRO_LBL_ANALOG_RIGHT_X_MINUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, { true, RARCH_ANALOG_RIGHT_Y_PLUS, RETRO_LBL_ANALOG_RIGHT_Y_PLUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, { true, RARCH_ANALOG_RIGHT_Y_MINUS, RETRO_LBL_ANALOG_RIGHT_Y_MINUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, -#ifdef RARCH_CONSOLE - { true, RARCH_ANALOG_LEFT_X_DPAD_LEFT, RETRO_LBL_ANALOG_LEFT_X_DPAD_L, RETROK_UNKNOWN, RETRO_DEF_ANALOGL_DPAD_LEFT, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_X_DPAD_RIGHT,RETRO_LBL_ANALOG_LEFT_X_DPAD_R, RETROK_UNKNOWN, RETRO_DEF_ANALOGL_DPAD_RIGHT, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_Y_DPAD_UP, RETRO_LBL_ANALOG_LEFT_Y_DPAD_U, RETROK_UNKNOWN, RETRO_DEF_ANALOGL_DPAD_UP, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_Y_DPAD_DOWN, RETRO_LBL_ANALOG_LEFT_Y_DPAD_D, RETROK_UNKNOWN, RETRO_DEF_ANALOGL_DPAD_DOWN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_X_DPAD_LEFT,RETRO_LBL_ANALOG_RIGHT_X_DPAD_L, RETROK_UNKNOWN, RETRO_DEF_ANALOGR_DPAD_LEFT, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_X_DPAD_RIGHT,RETRO_LBL_ANALOG_RIGHT_X_DPAD_R,RETROK_UNKNOWN, RETRO_DEF_ANALOGR_DPAD_RIGHT, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_Y_DPAD_UP, RETRO_LBL_ANALOG_RIGHT_Y_DPAD_U,RETROK_UNKNOWN, RETRO_DEF_ANALOGR_DPAD_UP, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_Y_DPAD_DOWN, RETRO_LBL_ANALOG_RIGHT_Y_DPAD_D,RETROK_UNKNOWN, RETRO_DEF_ANALOGR_DPAD_DOWN, 0, AXIS_NONE }, -#endif { true, RARCH_TURBO_ENABLE, RETRO_LBL_TURBO_ENABLE, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, { true, RARCH_FAST_FORWARD_KEY, RETRO_LBL_FAST_FORWARD_KEY, RETROK_SPACE, NO_BTN, 0, AXIS_NONE }, @@ -651,16 +625,6 @@ static const struct retro_keybind retro_keybinds_rest[] = { { true, RARCH_ANALOG_RIGHT_X_MINUS, RETRO_LBL_ANALOG_RIGHT_X_MINUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, { true, RARCH_ANALOG_RIGHT_Y_PLUS, RETRO_LBL_ANALOG_RIGHT_Y_PLUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, { true, RARCH_ANALOG_RIGHT_Y_MINUS, RETRO_LBL_ANALOG_RIGHT_Y_MINUS, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, -#ifdef RARCH_CONSOLE - { true, RARCH_ANALOG_LEFT_X_DPAD_LEFT, RETRO_LBL_ANALOG_LEFT_X_DPAD_L, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_X_DPAD_RIGHT,RETRO_LBL_ANALOG_LEFT_X_DPAD_R, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_Y_DPAD_UP, RETRO_LBL_ANALOG_LEFT_Y_DPAD_U, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_LEFT_Y_DPAD_DOWN, RETRO_LBL_ANALOG_LEFT_Y_DPAD_D, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_X_DPAD_LEFT,RETRO_LBL_ANALOG_RIGHT_X_DPAD_L, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_X_DPAD_RIGHT,RETRO_LBL_ANALOG_RIGHT_X_DPAD_R,RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_Y_DPAD_UP, RETRO_LBL_ANALOG_RIGHT_Y_DPAD_U,RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, - { true, RARCH_ANALOG_RIGHT_Y_DPAD_DOWN, RETRO_LBL_ANALOG_RIGHT_Y_DPAD_D,RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, -#endif { true, RARCH_TURBO_ENABLE, RETRO_LBL_TURBO_ENABLE, RETROK_UNKNOWN, NO_BTN, 0, AXIS_NONE }, }; diff --git a/driver.h b/driver.h index f025fb3bc7..7a780310ae 100644 --- a/driver.h +++ b/driver.h @@ -65,17 +65,6 @@ enum // RetroArch specific bind IDs. RARCH_ANALOG_RIGHT_X_MINUS, RARCH_ANALOG_RIGHT_Y_PLUS, RARCH_ANALOG_RIGHT_Y_MINUS, -#ifdef RARCH_CONSOLE - // D-pad emulation - RARCH_ANALOG_LEFT_X_DPAD_LEFT, - RARCH_ANALOG_LEFT_X_DPAD_RIGHT, - RARCH_ANALOG_LEFT_Y_DPAD_UP, - RARCH_ANALOG_LEFT_Y_DPAD_DOWN, - RARCH_ANALOG_RIGHT_X_DPAD_LEFT, - RARCH_ANALOG_RIGHT_X_DPAD_RIGHT, - RARCH_ANALOG_RIGHT_Y_DPAD_UP, - RARCH_ANALOG_RIGHT_Y_DPAD_DOWN, -#endif // Turbo RARCH_TURBO_ENABLE, diff --git a/frontend/menu/menu_common.c b/frontend/menu/menu_common.c index 69b07a7278..42e111b689 100644 --- a/frontend/menu/menu_common.c +++ b/frontend/menu/menu_common.c @@ -583,16 +583,6 @@ static uint64_t rgui_input(void) | (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RETRO_DEVICE_ID_JOYPAD_L) | (1ULL << RETRO_DEVICE_ID_JOYPAD_R) -#if defined(HAVE_RMENU) - | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP) - | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN) - | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT) - | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT) - | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP) - | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN) - | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT) - | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT) -#endif )) && !(input_state & (1ULL << RARCH_MENU_TOGGLE)); return input_state; diff --git a/frontend/menu/menu_settings.c b/frontend/menu/menu_settings.c index 08f75418a7..0c2d39fbc1 100644 --- a/frontend/menu/menu_settings.c +++ b/frontend/menu/menu_settings.c @@ -377,21 +377,6 @@ int menu_set_settings(unsigned setting, unsigned action) unsigned keybind_action = (1ULL << KEYBINDS_ACTION_SET_DEFAULT_BINDS); - switch (g_settings.input.dpad_emulation[port]) - { - case ANALOG_DPAD_LSTICK: - keybind_action |= (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_LSTICK); - break; - case ANALOG_DPAD_RSTICK: - keybind_action |= (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_RSTICK); - break; - case ANALOG_DPAD_NONE: - keybind_action |= (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_NONE); - break; - default: - break; - } - driver.input->set_keybinds(driver.input_data, g_settings.input.device[port], port, 0, keybind_action); } @@ -465,40 +450,6 @@ int menu_set_settings(unsigned setting, unsigned action) break; } - case RGUI_SETTINGS_BIND_DPAD_EMULATION: - g_settings.input.dpad_emulation[port] += ANALOG_DPAD_LAST; - if (action == RGUI_ACTION_START) - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; - else if (action == RGUI_ACTION_LEFT) - g_settings.input.dpad_emulation[port]--; - else if (action == RGUI_ACTION_RIGHT) - g_settings.input.dpad_emulation[port]++; - g_settings.input.dpad_emulation[port] %= ANALOG_DPAD_LAST; - - if (driver.input->set_keybinds) - { - unsigned keybind_action = 0; - - switch (g_settings.input.dpad_emulation[port]) - { - case ANALOG_DPAD_LSTICK: - keybind_action = (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_LSTICK); - break; - case ANALOG_DPAD_RSTICK: - keybind_action = (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_RSTICK); - break; - case ANALOG_DPAD_NONE: - keybind_action = (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_NONE); - break; - default: - break; - } - - if (keybind_action) - driver.input->set_keybinds(driver.input_data, g_settings.input.device[port], port, 0, - keybind_action); - } - break; case RGUI_SETTINGS_CUSTOM_BIND_ALL: if (action == RGUI_ACTION_OK) { diff --git a/frontend/menu/rguidisp_bitmap.c b/frontend/menu/rguidisp_bitmap.c index 67731c8395..bf375151f6 100644 --- a/frontend/menu/rguidisp_bitmap.c +++ b/frontend/menu/rguidisp_bitmap.c @@ -648,21 +648,7 @@ static void render_text(rgui_handle_t *rgui) break; } case RGUI_SETTINGS_BIND_DPAD_EMULATION: - switch (g_settings.input.dpad_emulation[port]) - { - case ANALOG_DPAD_NONE: - strlcpy(type_str, "None", sizeof(type_str)); - break; - case ANALOG_DPAD_LSTICK: - strlcpy(type_str, "Left Stick", sizeof(type_str)); - break; - case ANALOG_DPAD_DUALANALOG: - strlcpy(type_str, "Dual Analog", sizeof(type_str)); - break; - case ANALOG_DPAD_RSTICK: - strlcpy(type_str, "Right Stick", sizeof(type_str)); - break; - } + strlcpy(type_str, "TODO", sizeof(type_str)); break; case RGUI_SETTINGS_BIND_UP: case RGUI_SETTINGS_BIND_DOWN: diff --git a/frontend/menu/rmenu.c b/frontend/menu/rmenu.c index 8e4238773e..05505c4fee 100644 --- a/frontend/menu/rmenu.c +++ b/frontend/menu/rmenu.c @@ -1612,19 +1612,7 @@ static int select_setting(void *data, uint64_t action) snprintf(setting_text, sizeof(setting_text), "%d", rgui->current_pad+1); break; case SETTING_DPAD_EMULATION: - strlcpy(text, "D-Pad Emulation", sizeof(text)); - switch(g_settings.input.dpad_emulation[rgui->current_pad]) - { - case ANALOG_DPAD_NONE: - strlcpy(setting_text, "None", sizeof(setting_text)); - break; - case ANALOG_DPAD_LSTICK: - strlcpy(setting_text, "Left Stick", sizeof(setting_text)); - break; - case ANALOG_DPAD_RSTICK: - strlcpy(setting_text, "Right Stick", sizeof(setting_text)); - break; - } + strlcpy(text, "TODO", sizeof(text)); break; case SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_B: case SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_Y: diff --git a/frontend/menu/rmenu_xui.cpp b/frontend/menu/rmenu_xui.cpp index c64c2b0988..e0ebbdf6ea 100644 --- a/frontend/menu/rmenu_xui.cpp +++ b/frontend/menu/rmenu_xui.cpp @@ -290,18 +290,6 @@ HRESULT CRetroArchFileBrowser::OnNotifyPress( HXUIOBJ hObjPressed, BOOL& bHandle static void set_dpad_emulation_label(unsigned port, char *str, size_t sizeof_str) { - switch(g_settings.input.dpad_emulation[port]) - { - case ANALOG_DPAD_NONE: - strlcpy(str, "D-Pad Emulation: None", sizeof_str); - break; - case ANALOG_DPAD_LSTICK: - strlcpy(str, "D-Pad Emulation: Left Stick", sizeof_str); - break; - case ANALOG_DPAD_RSTICK: - strlcpy(str, "D-Pad Emulation: Right Stick", sizeof_str); - break; - } } static void init_menulist(unsigned menu_id) @@ -391,10 +379,11 @@ static void init_menulist(unsigned menu_id) XuiListSetText(m_menulist, i, strw_buffer); } - set_dpad_emulation_label(rgui->current_pad, buttons[0], sizeof(buttons[0])); - mbstowcs(strw_buffer, buttons[0], sizeof(strw_buffer) / sizeof(wchar_t)); + //set_dpad_emulation_label(rgui->current_pad, buttons[0], sizeof(buttons[0])); + //mbstowcs(strw_buffer, buttons[0], sizeof(strw_buffer) / sizeof(wchar_t)); XuiListInsertItems(m_menulist, keybind_end, 1); - XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, strw_buffer); + //XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, strw_buffer); + XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, L"Stub"); XuiListInsertItems(m_menulist, keybind_end + 1, 1); XuiListSetText(m_menulist, SETTING_CONTROLS_DEFAULT_ALL, L"Reset all buttons to default"); @@ -625,7 +614,6 @@ HRESULT CRetroArchControls::OnControlNavigate( switch(current_index) { case SETTING_CONTROLS_DPAD_EMULATION: - menu_set_settings(RGUI_SETTINGS_BIND_DPAD_EMULATION, action); break; case SETTING_CONTROLS_DEFAULT_ALL: break; @@ -670,10 +658,11 @@ HRESULT CRetroArchControls::OnControlNavigate( break; } - set_dpad_emulation_label(rgui->current_pad, button, sizeof(button)); + //set_dpad_emulation_label(rgui->current_pad, button, sizeof(button)); - mbstowcs(strw_buffer, button, sizeof(strw_buffer) / sizeof(wchar_t)); - XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, strw_buffer); + //mbstowcs(strw_buffer, button, sizeof(strw_buffer) / sizeof(wchar_t)); + //XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, strw_buffer); + XuiListSetText(m_menulist, SETTING_CONTROLS_DPAD_EMULATION, L"Stub"); XuiListSetText(m_menulist, SETTING_CONTROLS_DEFAULT_ALL, L"Reset all buttons to default"); return 0; @@ -1403,37 +1392,6 @@ static void rgui_free(void *data) static void ingame_menu_resize (void) { - XINPUT_STATE state; - - XInputGetState(0, &state); - - if(state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_LEFT || state.Gamepad.sThumbLX < -DEADZONE) - g_extern.console.screen.viewports.custom_vp.x -= 1; - else if (state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_RIGHT || state.Gamepad.sThumbLX > DEADZONE) - g_extern.console.screen.viewports.custom_vp.x += 1; - - if (state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_UP || state.Gamepad.sThumbLY > DEADZONE) - g_extern.console.screen.viewports.custom_vp.y += 1; - else if (state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_DOWN || state.Gamepad.sThumbLY < -DEADZONE) - g_extern.console.screen.viewports.custom_vp.y -= 1; - - if (state.Gamepad.sThumbRX < -DEADZONE || state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) - g_extern.console.screen.viewports.custom_vp.width -= 1; - else if (state.Gamepad.sThumbRX > DEADZONE || state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB) - g_extern.console.screen.viewports.custom_vp.width += 1; - - if (state.Gamepad.sThumbRY > DEADZONE || state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_SHOULDER) - g_extern.console.screen.viewports.custom_vp.height += 1; - else if (state.Gamepad.sThumbRY < -DEADZONE || state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_SHOULDER) - g_extern.console.screen.viewports.custom_vp.height -= 1; - - if (state.Gamepad.wButtons & XINPUT_GAMEPAD_Y) - { - g_extern.console.screen.viewports.custom_vp.x = 0; - g_extern.console.screen.viewports.custom_vp.y = 0; - g_extern.console.screen.viewports.custom_vp.width = 1280; //FIXME: hardcoded - g_extern.console.screen.viewports.custom_vp.height = 720; //FIXME: hardcoded - } } static int rgui_iterate(void *data, unsigned action) diff --git a/general.h b/general.h index 846c68e6b3..04894d52a6 100644 --- a/general.h +++ b/general.h @@ -233,7 +233,6 @@ struct settings int joypad_map[MAX_PLAYERS]; unsigned device[MAX_PLAYERS]; char device_names[MAX_PLAYERS][64]; - unsigned dpad_emulation[MAX_PLAYERS]; bool debug_enable; bool autodetect_enable; #ifdef ANDROID diff --git a/gx/gx_input.c b/gx/gx_input.c index 2b2abd1396..e00560f8fa 100644 --- a/gx/gx_input.c +++ b/gx/gx_input.c @@ -322,114 +322,8 @@ static void gx_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][i].id = i; g_settings.input.binds[port][i].joykey = g_settings.input.binds[port][i].def_joykey; } - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; } - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_RSTICK)) - { - switch (device) - { -#ifdef HW_RVL - case DEVICE_WIIMOTE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_RIGHT].joykey; - break; - case DEVICE_NUNCHUK: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_RIGHT_DPAD].joykey; - break; - case DEVICE_CLASSIC: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_RSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_RSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_RSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_RSTICK_RIGHT_DPAD].joykey; - break; -#endif - case DEVICE_GAMECUBE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_GC_ID_RSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_GC_ID_RSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_GC_ID_RSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_GC_ID_RSTICK_RIGHT_DPAD].joykey; - break; - default: - break; - } - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_LSTICK)) - { - switch (device) - { -#ifdef HW_RVL - case DEVICE_WIIMOTE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_RIGHT].joykey; - break; - case DEVICE_NUNCHUK: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_LSTICK_RIGHT_DPAD].joykey; - break; - case DEVICE_CLASSIC: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_LSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_LSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_LSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_LSTICK_RIGHT_DPAD].joykey; - break; -#endif - case DEVICE_GAMECUBE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_GC_ID_LSTICK_UP_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_GC_ID_LSTICK_DOWN_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_GC_ID_LSTICK_LEFT_DPAD].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_GC_ID_LSTICK_RIGHT_DPAD].joykey; - break; - default: - break; - } - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_NONE)) - { - switch (device) - { -#ifdef HW_RVL - case DEVICE_WIIMOTE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_RIGHT].joykey; - break; - case DEVICE_NUNCHUK: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_WIIMOTE_ID_JOYPAD_RIGHT].joykey; - break; - case DEVICE_CLASSIC: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_CLASSIC_ID_JOYPAD_RIGHT].joykey; - break; -#endif - case DEVICE_GAMECUBE: - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[GX_DEVICE_GC_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[GX_DEVICE_GC_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[GX_DEVICE_GC_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[GX_DEVICE_GC_ID_JOYPAD_RIGHT].joykey; - break; - default: - break; - } - } - if (keybind_action & (1ULL << KEYBINDS_ACTION_GET_BIND_LABEL)) { struct platform_bind *ret = (struct platform_bind*)data; diff --git a/input/input_common.c b/input/input_common.c index f0c7e2ae1e..eed22e180e 100644 --- a/input/input_common.c +++ b/input/input_common.c @@ -710,18 +710,6 @@ const struct input_bind_map input_config_bind_map[RARCH_BIND_LIST_END_NULL] = { DECLARE_BIND(r_y_plus, RARCH_ANALOG_RIGHT_Y_PLUS, "Right analog Y+ (down)"), DECLARE_BIND(r_y_minus, RARCH_ANALOG_RIGHT_Y_MINUS, "Right analog Y- (up)"), - // FIXME: Unsure what to do here. - // The D-pad emulation concept really needs a rethink ... -#ifdef RARCH_CONSOLE - DECLARE_BIND(dpad_l_x_l, RARCH_ANALOG_LEFT_X_DPAD_LEFT, "Left analog D-pad left"), - DECLARE_BIND(dpad_l_x_r, RARCH_ANALOG_LEFT_X_DPAD_RIGHT, "Left analog D-pad right"), - DECLARE_BIND(dpad_l_y_u, RARCH_ANALOG_LEFT_Y_DPAD_UP, "Left analog D-pad up"), - DECLARE_BIND(dpad_l_y_d, RARCH_ANALOG_LEFT_Y_DPAD_DOWN, "Left analog D-pad down"), - DECLARE_BIND(dpad_r_x_l, RARCH_ANALOG_RIGHT_X_DPAD_LEFT, "Right analog D-pad left"), - DECLARE_BIND(dpad_r_x_r, RARCH_ANALOG_RIGHT_X_DPAD_RIGHT, "Right analog D-pad right"), - DECLARE_BIND(dpad_r_y_u, RARCH_ANALOG_RIGHT_Y_DPAD_UP, "Right analog D-pad up"), - DECLARE_BIND(dpad_r_y_d, RARCH_ANALOG_RIGHT_Y_DPAD_DOWN, "Right analog D-pad down"), -#endif DECLARE_BIND(turbo, RARCH_TURBO_ENABLE, "Turbo enable"), DECLARE_META_BIND(1, toggle_fast_forward, RARCH_FAST_FORWARD_KEY, "Fast forward toggle"), diff --git a/ps3/ps3_input.c b/ps3/ps3_input.c index d203fa347c..bc7cc59a0a 100644 --- a/ps3/ps3_input.c +++ b/ps3/ps3_input.c @@ -94,14 +94,6 @@ const struct platform_bind platform_keys[] = { { (1ULL << RARCH_ANALOG_RIGHT_X_MINUS), "RStick Right" }, { (1ULL << RARCH_ANALOG_RIGHT_Y_PLUS), "RStick Up" }, { (1ULL << RARCH_ANALOG_RIGHT_Y_MINUS), "RStick Down" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT), "LStick D-Pad Left" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT), "LStick D-Pad Right" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP), "LStick D-Pad Up" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN), "LStick D-Pad Down" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT), "RStick D-Pad Left" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT), "RStick D-Pad Right" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP), "RStick D-Pad Up" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN), "RStick D-Pad Down" }, }; static uint64_t state[MAX_PADS]; @@ -123,7 +115,6 @@ static void ps3_input_poll(void *data) if (state_tmp.len != 0) { uint64_t *state_cur = &state[i]; - bool dpad_emulation = (g_settings.input.dpad_emulation[i] != ANALOG_DPAD_NONE); *state_cur = 0; #ifdef __PSL1GHT__ *state_cur |= (state_tmp.BTN_LEFT) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) : 0; @@ -142,18 +133,6 @@ static void ps3_input_poll(void *data) *state_cur |= (state_tmp.BTN_L1) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L) : 0; *state_cur |= (state_tmp.BTN_R2) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_R2) : 0; *state_cur |= (state_tmp.BTN_L2) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L2) : 0; - - if (dpad_emulation) - { - *state_cur |= (state_tmp.ANA_L_H <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT) : 0; - *state_cur |= (state_tmp.ANA_L_H >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT) : 0; - *state_cur |= (state_tmp.ANA_L_V <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP) : 0; - *state_cur |= (state_tmp.ANA_L_V >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN) : 0; - *state_cur |= (state_tmp.ANA_R_H <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT) : 0; - *state_cur |= (state_tmp.ANA_R_H >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT) : 0; - *state_cur |= (state_tmp.ANA_R_V <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP) : 0; - *state_cur |= (state_tmp.ANA_R_V >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN) : 0; - } #else *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_DIGITAL1] & CELL_PAD_CTRL_LEFT) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) : 0; *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_DIGITAL1] & CELL_PAD_CTRL_DOWN) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) : 0; @@ -171,24 +150,12 @@ static void ps3_input_poll(void *data) *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_DIGITAL2] & CELL_PAD_CTRL_L1) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L) : 0; *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_DIGITAL2] & CELL_PAD_CTRL_R2) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_R2) : 0; *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_DIGITAL2] & CELL_PAD_CTRL_L2) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L2) : 0; - if (dpad_emulation) - { - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_LEFT_X] <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_LEFT_X] >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_LEFT_Y] <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_LEFT_Y] >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_RIGHT_X] <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_RIGHT_X] >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_RIGHT_Y] <= DEADZONE_LOW) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP) : 0; - *state_cur |= (state_tmp.button[CELL_PAD_BTN_OFFSET_ANALOG_RIGHT_Y] >= DEADZONE_HIGH) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN) : 0; - } #endif } } uint64_t *state_p1 = &state[0]; uint64_t *lifecycle_state = &g_extern.lifecycle_state; - bool dpad_emulation = (g_settings.input.dpad_emulation[0] != ANALOG_DPAD_NONE); *lifecycle_state &= ~( (1ULL << RARCH_FAST_FORWARD_HOLD_KEY) | @@ -200,22 +167,6 @@ static void ps3_input_poll(void *data) (1ULL << RARCH_QUIT_KEY) | (1ULL << RARCH_MENU_TOGGLE)); - if (dpad_emulation) - { - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN)) && !(*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_FAST_FORWARD_HOLD_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_LOAD_STATE_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_SAVE_STATE_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_STATE_SLOT_PLUS); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_STATE_SLOT_MINUS); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP)) && !(*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_REWIND); - } - if ((*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_L3)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R3))) *lifecycle_state |= (1ULL << RARCH_MENU_TOGGLE); @@ -445,36 +396,8 @@ static void ps3_input_set_keybinds(void *data, unsigned device, g_settings.input.binds[port][i].def_joykey = platform_keys[i].joykey; g_settings.input.binds[port][i].joykey = g_settings.input.binds[port][i].def_joykey; } - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; } - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_NONE)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey; - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_LSTICK)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RARCH_ANALOG_LEFT_Y_DPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RARCH_ANALOG_LEFT_Y_DPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RARCH_ANALOG_LEFT_X_DPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RARCH_ANALOG_LEFT_X_DPAD_RIGHT].joykey; - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_RSTICK)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_RSTICK; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RARCH_ANALOG_RIGHT_Y_DPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RARCH_ANALOG_RIGHT_Y_DPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RARCH_ANALOG_RIGHT_X_DPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RARCH_ANALOG_RIGHT_X_DPAD_RIGHT].joykey; - } - if (keybind_action & (1ULL << KEYBINDS_ACTION_GET_BIND_LABEL)) { struct platform_bind *ret = (struct platform_bind*)data; diff --git a/psp/psp_input.c b/psp/psp_input.c index a03d72010e..a948db42d8 100644 --- a/psp/psp_input.c +++ b/psp/psp_input.c @@ -58,19 +58,11 @@ const struct platform_bind platform_keys[] = { { PSP_GAMEPAD_LSTICK_RIGHT_MASK, "LStick Right" }, { PSP_GAMEPAD_LSTICK_UP_MASK, "LStick Up" }, { PSP_GAMEPAD_LSTICK_DOWN_MASK, "LStick Down" }, - { PSP_GAMEPAD_DPAD_LEFT | PSP_GAMEPAD_LSTICK_LEFT_MASK, "LStick D-Pad Left" }, - { PSP_GAMEPAD_DPAD_RIGHT | PSP_GAMEPAD_LSTICK_RIGHT_MASK, "LStick D-Pad Right" }, - { PSP_GAMEPAD_DPAD_UP | PSP_GAMEPAD_LSTICK_UP_MASK, "LStick D-Pad Up" }, - { PSP_GAMEPAD_DPAD_DOWN | PSP_GAMEPAD_LSTICK_DOWN_MASK, "LStick D-Pad Down" }, #ifdef SN_TARGET_PSP2 { PSP_GAMEPAD_RSTICK_LEFT_MASK, "RStick Left" }, { PSP_GAMEPAD_RSTICK_RIGHT_MASK, "RStick Right" }, { PSP_GAMEPAD_RSTICK_UP_MASK, "RStick Up" }, { PSP_GAMEPAD_RSTICK_DOWN_MASK, "RStick Down" }, - { PSP_GAMEPAD_DPAD_LEFT | PSP_GAMEPAD_RSTICK_LEFT_MASK, "RStick D-Pad Left" }, - { PSP_GAMEPAD_DPAD_RIGHT | PSP_GAMEPAD_RSTICK_RIGHT_MASK, "RStick D-Pad Right" }, - { PSP_GAMEPAD_DPAD_UP | PSP_GAMEPAD_RSTICK_UP_MASK, "RStick D-Pad Up" }, - { PSP_GAMEPAD_DPAD_DOWN | PSP_GAMEPAD_RSTICK_DOWN_MASK, "RStick D-Pad Down" }, #else { 0, "Unused" }, { 0, "Unused" }, @@ -158,7 +150,6 @@ static void psp_input_set_keybinds(void *data, unsigned device, unsigned port, g_settings.input.binds[port][i].def_joykey = platform_keys[i].joykey; g_settings.input.binds[port][i].joykey = g_settings.input.binds[port][i].def_joykey; } - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; } } diff --git a/settings.c b/settings.c index 71699a0bbe..1cdbb42f29 100644 --- a/settings.c +++ b/settings.c @@ -610,8 +610,6 @@ bool config_load_file(const char *path) for (unsigned i = 0; i < MAX_PLAYERS; i++) { char cfg[64]; - snprintf(cfg, sizeof(cfg), "input_dpad_emulation_p%u", i + 1); - CONFIG_GET_INT(input.dpad_emulation[i], cfg); snprintf(cfg, sizeof(cfg), "input_device_p%u", i + 1); CONFIG_GET_INT(input.device[i], cfg); } @@ -1153,8 +1151,6 @@ bool config_save_file(const char *path) for (unsigned i = 0; i < MAX_PLAYERS; i++) { char cfg[64]; - snprintf(cfg, sizeof(cfg), "input_dpad_emulation_p%u", i + 1); - config_set_int(conf, cfg, g_settings.input.dpad_emulation[i]); snprintf(cfg, sizeof(cfg), "input_device_p%u", i + 1); config_set_int(conf, cfg, g_settings.input.device[i]); snprintf(cfg, sizeof(cfg), "input_player%u_joypad_index", i + 1); diff --git a/xdk/xdk_xinput_input.c b/xdk/xdk_xinput_input.c index 82005b5829..591c369097 100644 --- a/xdk/xdk_xinput_input.c +++ b/xdk/xdk_xinput_input.c @@ -70,14 +70,6 @@ const struct platform_bind platform_keys[] = { { (1ULL << RARCH_ANALOG_RIGHT_X_MINUS), "RStick Right" }, { (1ULL << RARCH_ANALOG_RIGHT_Y_PLUS), "RStick Up" }, { (1ULL << RARCH_ANALOG_RIGHT_Y_MINUS), "RStick Down" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT), "LStick D-Pad Left" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT), "LStick D-Pad Right" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP), "LStick D-Pad Up" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN), "LStick D-Pad Down" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_LEFT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT), "RStick D-Pad Left" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) | (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT), "RStick D-Pad Right" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP), "RStick D-Pad Up" }, - { (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) | (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN), "RStick D-Pad Down" }, }; static void xdk_input_poll(void *data) @@ -135,7 +127,6 @@ static void xdk_input_poll(void *data) continue; uint64_t *state_cur = &state[i]; - bool dpad_emulation = (g_settings.input.dpad_emulation[i] != ANALOG_DPAD_NONE); *state_cur = 0; *state_cur |= ((state_tmp.Gamepad.bAnalogButtons[XINPUT_GAMEPAD_B]) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_A) : 0); @@ -146,17 +137,6 @@ static void xdk_input_poll(void *data) *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_RIGHT) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT) : 0); *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_UP) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) : 0); *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_DOWN) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) : 0); - if (dpad_emulation) - { - *state_cur |= ((state_tmp.Gamepad.sThumbLX < -DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT): 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLX > DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLY > DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLY < -DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRX < -DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRX > DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRY > DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRY < -DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN) : 0); - } *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_START) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_START) : 0); *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_BACK) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_SELECT) : 0); *state_cur |= ((state_tmp.Gamepad.bAnalogButtons[XINPUT_GAMEPAD_LEFT_TRIGGER]) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L) : 0); @@ -174,7 +154,6 @@ static void xdk_input_poll(void *data) pads_connected += (XInputGetState(i, &state_tmp) == ERROR_DEVICE_NOT_CONNECTED) ? 0 : 1; uint64_t *state_cur = &state[i]; - bool dpad_emulation = (g_settings.input.dpad_emulation[i] != ANALOG_DPAD_NONE); *state_cur = 0; *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_B) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_A) : 0); @@ -186,17 +165,6 @@ static void xdk_input_poll(void *data) *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_UP) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_UP) : 0); *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_DOWN) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_DOWN) : 0); - if (dpad_emulation) - { - *state_cur |= ((state_tmp.Gamepad.sThumbLX < -DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_LEFT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLX > DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_X_DPAD_RIGHT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLY > DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_UP) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbLY < -DEADZONE) ? (1ULL << RARCH_ANALOG_LEFT_Y_DPAD_DOWN) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRX < -DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRX > DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRY > DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP) : 0); - *state_cur |= ((state_tmp.Gamepad.sThumbRY < -DEADZONE) ? (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN) : 0); - } *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_START) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_START) : 0); *state_cur |= ((state_tmp.Gamepad.wButtons & XINPUT_GAMEPAD_BACK) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_SELECT) : 0); *state_cur |= ((state_tmp.Gamepad.bLeftTrigger > 128) ? (1ULL << RETRO_DEVICE_ID_JOYPAD_L) : 0); @@ -210,7 +178,6 @@ static void xdk_input_poll(void *data) uint64_t *state_p1 = &state[0]; uint64_t *lifecycle_state = &g_extern.lifecycle_state; - bool dpad_emulation = (g_settings.input.dpad_emulation[0] != ANALOG_DPAD_NONE); *lifecycle_state &= ~( (1ULL << RARCH_FAST_FORWARD_HOLD_KEY) | @@ -222,22 +189,6 @@ static void xdk_input_poll(void *data) (1ULL << RARCH_QUIT_KEY) | (1ULL << RARCH_MENU_TOGGLE)); - if (dpad_emulation) - { - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN)) && !(*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_FAST_FORWARD_HOLD_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_LOAD_STATE_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_DOWN)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_SAVE_STATE_KEY); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_RIGHT)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_STATE_SLOT_PLUS); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_X_DPAD_LEFT)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_STATE_SLOT_MINUS); - if ((*state_p1 & (1ULL << RARCH_ANALOG_RIGHT_Y_DPAD_UP)) && !(*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R2))) - *lifecycle_state |= (1ULL << RARCH_REWIND); - } - if((*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_L3)) && (*state_p1 & (1ULL << RETRO_DEVICE_ID_JOYPAD_R3))) *lifecycle_state |= (1ULL << RARCH_MENU_TOGGLE); } @@ -318,35 +269,6 @@ static void xdk_input_set_keybinds(void *data, unsigned device, g_settings.input.binds[port][i].def_joykey = platform_keys[i].joykey; g_settings.input.binds[port][i].joykey = g_settings.input.binds[port][i].def_joykey; } - - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_NONE)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_NONE; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey; - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_LSTICK)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RARCH_ANALOG_LEFT_Y_DPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RARCH_ANALOG_LEFT_Y_DPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RARCH_ANALOG_LEFT_X_DPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RARCH_ANALOG_LEFT_X_DPAD_RIGHT].joykey; - } - - if (keybind_action & (1ULL << KEYBINDS_ACTION_SET_ANALOG_DPAD_RSTICK)) - { - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_RSTICK; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_UP].joykey = platform_keys[RARCH_ANALOG_RIGHT_Y_DPAD_UP].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_DOWN].joykey = platform_keys[RARCH_ANALOG_RIGHT_Y_DPAD_DOWN].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_LEFT].joykey = platform_keys[RARCH_ANALOG_RIGHT_X_DPAD_LEFT].joykey; - g_settings.input.binds[port][RETRO_DEVICE_ID_JOYPAD_RIGHT].joykey = platform_keys[RARCH_ANALOG_RIGHT_X_DPAD_RIGHT].joykey; } if (keybind_action & (1ULL << KEYBINDS_ACTION_GET_BIND_LABEL)) diff --git a/xenon/xenon360_input.c b/xenon/xenon360_input.c index a3c6e519b9..e0770c4644 100644 --- a/xenon/xenon360_input.c +++ b/xenon/xenon360_input.c @@ -96,7 +96,6 @@ static void xenon360_input_set_keybinds(void *data, unsigned device, g_settings.input.binds[port][i].id = i; g_settings.input.binds[port][i].joykey = g_settings.input.binds[port][i].def_joykey; } - g_settings.input.dpad_emulation[port] = ANALOG_DPAD_LSTICK; } }