From e5e19edc65b42334901746a1b898fc1890e186aa Mon Sep 17 00:00:00 2001 From: TwinAphex51224 Date: Thu, 9 Feb 2012 00:58:22 +0100 Subject: [PATCH] (360) Special button mappings added - RSTICK Up - Rewind - RSTICK Up + RT - Load State - RSTICK Down + RT - Save State -RSTICK Left + RT - Save State Minus - RSTICK Right + RT - Save State Plus --- 360/xdk360_input.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/360/xdk360_input.cpp b/360/xdk360_input.cpp index 99b854e187..fd4689b29d 100644 --- a/360/xdk360_input.cpp +++ b/360/xdk360_input.cpp @@ -26,6 +26,8 @@ static XINPUT_STATE state[4]; +const int DEADZONE = 16000; + static void xdk360_input_poll(void *data) { (void)data; @@ -110,9 +112,22 @@ static void* xdk360_input_init(void) static bool xdk360_key_pressed(void *data, int key) { (void)data; + XInputGetState(0, &state[0]); switch(key) { + case SSNES_FAST_FORWARD_HOLD_KEY: + return ((state[0].Gamepad.sThumbRY < -DEADZONE) && !(state[0].Gamepad.bRightTrigger > 128)); + case SSNES_LOAD_STATE_KEY: + return ((state[0].Gamepad.sThumbRY > DEADZONE) && (state[0].Gamepad.bRightTrigger > 128)); + case SSNES_SAVE_STATE_KEY: + return ((state[0].Gamepad.sThumbRY < -DEADZONE) && (state[0].Gamepad.bRightTrigger > 128)); + case SSNES_STATE_SLOT_PLUS: + return ((state[0].Gamepad.sThumbRX > DEADZONE) && (state[0].Gamepad.bRightTrigger > 128)); + case SSNES_STATE_SLOT_MINUS: + return ((state[0].Gamepad.sThumbRX < -DEADZONE) && (state[0].Gamepad.bRightTrigger > 128)); + case SSNES_REWIND: + return ((state[0].Gamepad.sThumbRY > DEADZONE) && !(state[0].Gamepad.bRightTrigger > 128)); case SSNES_QUIT_KEY: g_console.menu_enable = ((state[0].Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) && (state[0].Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB));