mirror of
https://github.com/libretro/RetroArch
synced 2025-04-11 00:44:20 +00:00
Add 'L2 + R2' menu toggle gamepad combo (#11935)
This commit is contained in:
parent
dbbf557954
commit
b9691597d1
12
config.def.h
12
config.def.h
@ -681,17 +681,17 @@ static const bool default_systemfiles_in_content_dir = false;
|
|||||||
static const bool default_screenshots_in_content_dir = false;
|
static const bool default_screenshots_in_content_dir = false;
|
||||||
|
|
||||||
#if defined(_XBOX1) || defined(__PS3__) || defined(_XBOX360) || defined(DINGUX)
|
#if defined(_XBOX1) || defined(__PS3__) || defined(_XBOX360) || defined(DINGUX)
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_L3_R3;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_L3_R3
|
||||||
#elif defined(PS2) || defined(PSP)
|
#elif defined(PS2) || defined(PSP)
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_HOLD_START;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_HOLD_START
|
||||||
#elif defined(VITA)
|
#elif defined(VITA)
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_L1_R1_START_SELECT;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_L1_R1_START_SELECT
|
||||||
#elif defined(SWITCH) || defined(ORBIS)
|
#elif defined(SWITCH) || defined(ORBIS)
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_START_SELECT;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_START_SELECT
|
||||||
#elif TARGET_OS_TV
|
#elif TARGET_OS_TV
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_DOWN_Y_L_R;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_DOWN_Y_L_R
|
||||||
#else
|
#else
|
||||||
static const unsigned menu_toggle_gamepad_combo = INPUT_TOGGLE_NONE;
|
#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_TOGGLE_NONE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(VITA)
|
#if defined(VITA)
|
||||||
|
@ -1868,7 +1868,7 @@ static struct config_uint_setting *populate_settings_uint(
|
|||||||
SETTING_UINT("input_max_users", input_driver_get_uint(INPUT_ACTION_MAX_USERS), true, input_max_users, false);
|
SETTING_UINT("input_max_users", input_driver_get_uint(INPUT_ACTION_MAX_USERS), true, input_max_users, false);
|
||||||
SETTING_UINT("fps_update_interval", &settings->uints.fps_update_interval, true, DEFAULT_FPS_UPDATE_INTERVAL, false);
|
SETTING_UINT("fps_update_interval", &settings->uints.fps_update_interval, true, DEFAULT_FPS_UPDATE_INTERVAL, false);
|
||||||
SETTING_UINT("memory_update_interval", &settings->uints.memory_update_interval, true, DEFAULT_MEMORY_UPDATE_INTERVAL, false);
|
SETTING_UINT("memory_update_interval", &settings->uints.memory_update_interval, true, DEFAULT_MEMORY_UPDATE_INTERVAL, false);
|
||||||
SETTING_UINT("input_menu_toggle_gamepad_combo", &settings->uints.input_menu_toggle_gamepad_combo, true, menu_toggle_gamepad_combo, false);
|
SETTING_UINT("input_menu_toggle_gamepad_combo", &settings->uints.input_menu_toggle_gamepad_combo, true, DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO, false);
|
||||||
SETTING_UINT("input_hotkey_block_delay", &settings->uints.input_hotkey_block_delay, true, DEFAULT_INPUT_HOTKEY_BLOCK_DELAY, false);
|
SETTING_UINT("input_hotkey_block_delay", &settings->uints.input_hotkey_block_delay, true, DEFAULT_INPUT_HOTKEY_BLOCK_DELAY, false);
|
||||||
#ifdef GEKKO
|
#ifdef GEKKO
|
||||||
SETTING_UINT("input_mouse_scale", &settings->uints.input_mouse_scale, true, DEFAULT_MOUSE_SCALE, false);
|
SETTING_UINT("input_mouse_scale", &settings->uints.input_mouse_scale, true, DEFAULT_MOUSE_SCALE, false);
|
||||||
|
@ -62,6 +62,7 @@ enum input_toggle_type
|
|||||||
INPUT_TOGGLE_HOLD_START,
|
INPUT_TOGGLE_HOLD_START,
|
||||||
INPUT_TOGGLE_HOLD_SELECT,
|
INPUT_TOGGLE_HOLD_SELECT,
|
||||||
INPUT_TOGGLE_DOWN_SELECT,
|
INPUT_TOGGLE_DOWN_SELECT,
|
||||||
|
INPUT_TOGGLE_L2_R2,
|
||||||
INPUT_TOGGLE_LAST
|
INPUT_TOGGLE_LAST
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -7440,6 +7440,30 @@ MSG_HASH(
|
|||||||
MENU_ENUM_LABEL_VALUE_UNKNOWN,
|
MENU_ENUM_LABEL_VALUE_UNKNOWN,
|
||||||
"Unknown"
|
"Unknown"
|
||||||
)
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_DOWN_Y_L_R,
|
||||||
|
"Down + Y + L1 + R1"
|
||||||
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_L3_R3,
|
||||||
|
"L3 + R3"
|
||||||
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_L1_R1_START_SELECT,
|
||||||
|
"L1 + R1 + Start + Select"
|
||||||
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_START_SELECT,
|
||||||
|
"Start + Select"
|
||||||
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_L3_R,
|
||||||
|
"L3 + R1"
|
||||||
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_L_R,
|
||||||
|
"L1 + R1"
|
||||||
|
)
|
||||||
MSG_HASH(
|
MSG_HASH(
|
||||||
MENU_ENUM_LABEL_VALUE_HOLD_START,
|
MENU_ENUM_LABEL_VALUE_HOLD_START,
|
||||||
"Hold Start (2 seconds)"
|
"Hold Start (2 seconds)"
|
||||||
@ -7452,6 +7476,10 @@ MSG_HASH(
|
|||||||
MENU_ENUM_LABEL_VALUE_DOWN_SELECT,
|
MENU_ENUM_LABEL_VALUE_DOWN_SELECT,
|
||||||
"Down + Select"
|
"Down + Select"
|
||||||
)
|
)
|
||||||
|
MSG_HASH(
|
||||||
|
MENU_ENUM_LABEL_VALUE_L2_R2,
|
||||||
|
"L2 + R2"
|
||||||
|
)
|
||||||
MSG_HASH(
|
MSG_HASH(
|
||||||
MENU_ENUM_LABEL_RUMBLE_TYPE_DISABLED,
|
MENU_ENUM_LABEL_RUMBLE_TYPE_DISABLED,
|
||||||
"<Disabled>"
|
"<Disabled>"
|
||||||
|
@ -6150,22 +6150,22 @@ static void setting_get_string_representation_toggle_gamepad_combo(
|
|||||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_DOWN_Y_L_R:
|
case INPUT_TOGGLE_DOWN_Y_L_R:
|
||||||
strlcpy(s, "Down + L1 + R1 + Y", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_Y_L_R), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L3_R3:
|
case INPUT_TOGGLE_L3_R3:
|
||||||
strlcpy(s, "L3 + R3", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R3), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L1_R1_START_SELECT:
|
case INPUT_TOGGLE_L1_R1_START_SELECT:
|
||||||
strlcpy(s, "L1 + R1 + Start + Select", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L1_R1_START_SELECT), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_START_SELECT:
|
case INPUT_TOGGLE_START_SELECT:
|
||||||
strlcpy(s, "Start + Select", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_START_SELECT), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L3_R:
|
case INPUT_TOGGLE_L3_R:
|
||||||
strlcpy(s, "L3 + R", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L_R:
|
case INPUT_TOGGLE_L_R:
|
||||||
strlcpy(s, "L + R", len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L_R), len);
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_HOLD_START:
|
case INPUT_TOGGLE_HOLD_START:
|
||||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_START), len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_START), len);
|
||||||
@ -6176,6 +6176,9 @@ static void setting_get_string_representation_toggle_gamepad_combo(
|
|||||||
case INPUT_TOGGLE_DOWN_SELECT:
|
case INPUT_TOGGLE_DOWN_SELECT:
|
||||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_SELECT), len);
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_SELECT), len);
|
||||||
break;
|
break;
|
||||||
|
case INPUT_TOGGLE_L2_R2:
|
||||||
|
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L2_R2), len);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -12018,7 +12021,7 @@ static bool setting_append_list(
|
|||||||
&settings->uints.input_menu_toggle_gamepad_combo,
|
&settings->uints.input_menu_toggle_gamepad_combo,
|
||||||
MENU_ENUM_LABEL_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO,
|
MENU_ENUM_LABEL_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO,
|
||||||
MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO,
|
MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO,
|
||||||
menu_toggle_gamepad_combo,
|
DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO,
|
||||||
&group_info,
|
&group_info,
|
||||||
&subgroup_info,
|
&subgroup_info,
|
||||||
parent_group,
|
parent_group,
|
||||||
|
@ -2982,9 +2982,17 @@ enum msg_hash_enums
|
|||||||
MENU_LABEL(SWITCH_GPU_PROFILE),
|
MENU_LABEL(SWITCH_GPU_PROFILE),
|
||||||
MENU_LABEL(SWITCH_CPU_PROFILE),
|
MENU_LABEL(SWITCH_CPU_PROFILE),
|
||||||
|
|
||||||
|
MENU_ENUM_LABEL_VALUE_DOWN_Y_L_R,
|
||||||
|
MENU_ENUM_LABEL_VALUE_L3_R3,
|
||||||
|
MENU_ENUM_LABEL_VALUE_L1_R1_START_SELECT,
|
||||||
|
MENU_ENUM_LABEL_VALUE_START_SELECT,
|
||||||
|
MENU_ENUM_LABEL_VALUE_L3_R,
|
||||||
|
MENU_ENUM_LABEL_VALUE_L_R,
|
||||||
MENU_ENUM_LABEL_VALUE_HOLD_START,
|
MENU_ENUM_LABEL_VALUE_HOLD_START,
|
||||||
MENU_ENUM_LABEL_VALUE_HOLD_SELECT,
|
MENU_ENUM_LABEL_VALUE_HOLD_SELECT,
|
||||||
MENU_ENUM_LABEL_VALUE_DOWN_SELECT,
|
MENU_ENUM_LABEL_VALUE_DOWN_SELECT,
|
||||||
|
MENU_ENUM_LABEL_VALUE_L2_R2,
|
||||||
|
|
||||||
MENU_LABEL(PLAYLIST_USE_OLD_FORMAT),
|
MENU_LABEL(PLAYLIST_USE_OLD_FORMAT),
|
||||||
MENU_LABEL(PLAYLIST_COMPRESSION),
|
MENU_LABEL(PLAYLIST_COMPRESSION),
|
||||||
MENU_LABEL(MENU_SOUNDS),
|
MENU_LABEL(MENU_SOUNDS),
|
||||||
|
70
retroarch.c
70
retroarch.c
@ -36187,54 +36187,48 @@ static bool input_driver_toggle_button_combo(
|
|||||||
switch (mode)
|
switch (mode)
|
||||||
{
|
{
|
||||||
case INPUT_TOGGLE_DOWN_Y_L_R:
|
case INPUT_TOGGLE_DOWN_Y_L_R:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_DOWN))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_DOWN) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_Y) &&
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_Y))
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L))
|
return true;
|
||||||
return false;
|
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L3_R3:
|
case INPUT_TOGGLE_L3_R3:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L3))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L3) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R3))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R3))
|
return true;
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L1_R1_START_SELECT:
|
case INPUT_TOGGLE_L1_R1_START_SELECT:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_START))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R) &&
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_START) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L))
|
return true;
|
||||||
return false;
|
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_START_SELECT:
|
case INPUT_TOGGLE_START_SELECT:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_START))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_START) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
return true;
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L3_R:
|
case INPUT_TOGGLE_L3_R:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L3))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L3) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
return true;
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_L_R:
|
case INPUT_TOGGLE_L_R:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R))
|
return true;
|
||||||
return false;
|
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_DOWN_SELECT:
|
case INPUT_TOGGLE_DOWN_SELECT:
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_DOWN))
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_DOWN) &&
|
||||||
return false;
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
||||||
if (!BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_SELECT))
|
return true;
|
||||||
return false;
|
break;
|
||||||
|
case INPUT_TOGGLE_L2_R2:
|
||||||
|
if (BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_L2) &&
|
||||||
|
BIT256_GET_PTR(p_input, RETRO_DEVICE_ID_JOYPAD_R2))
|
||||||
|
return true;
|
||||||
break;
|
break;
|
||||||
case INPUT_TOGGLE_HOLD_START:
|
case INPUT_TOGGLE_HOLD_START:
|
||||||
{
|
{
|
||||||
@ -36306,10 +36300,10 @@ static bool input_driver_toggle_button_combo(
|
|||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
case INPUT_TOGGLE_NONE:
|
case INPUT_TOGGLE_NONE:
|
||||||
return false;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Display the libretro core's framebuffer onscreen. */
|
/* Display the libretro core's framebuffer onscreen. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user