From 7b20954e6623553c858a2c8d85f28abfe68b6cfb Mon Sep 17 00:00:00 2001 From: hunterk Date: Thu, 29 Jun 2023 15:14:08 -0500 Subject: [PATCH] move port X binds into retropad binds submenu and add appropriate help text and sublabels to discourage people from messing around in there unnecessarily --- intl/msg_hash_lbl.h | 8 ++++++++ intl/msg_hash_us.c | 3 +++ intl/msg_hash_us.h | 20 ++++++++++++++++---- menu/cbs/menu_cbs_deferred_push.c | 5 +++++ menu/cbs/menu_cbs_ok.c | 5 +++++ menu/cbs/menu_cbs_sublabel.c | 4 ++++ menu/cbs/menu_cbs_title.c | 6 ++++++ menu/menu_cbs.h | 1 + menu/menu_displaylist.c | 28 +++++++++++++++------------- menu/menu_displaylist.h | 1 + menu/menu_setting.c | 9 +++++++++ msg_hash.h | 4 ++++ 12 files changed, 77 insertions(+), 17 deletions(-) diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index fe4af4408f..1142b599a0 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -1219,6 +1219,10 @@ MSG_HASH( MENU_ENUM_LABEL_DEFERRED_FRAME_THROTTLE_SETTINGS_LIST, "deferred_frame_throttle_settings_list" ) +MSG_HASH( + MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST, + "deferred_input_retropad_binds" + ) MSG_HASH( MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST, "deferred_input_hotkey_binds" @@ -1911,6 +1915,10 @@ MSG_HASH( MENU_ENUM_LABEL_INPUT_DUTY_CYCLE, "input_duty_cycle" ) +MSG_HASH( + MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, + "input_retropad_binds" + ) MSG_HASH( MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, "input_hotkey_binds" diff --git a/intl/msg_hash_us.c b/intl/msg_hash_us.c index 517cff9046..abd1350f8c 100644 --- a/intl/msg_hash_us.c +++ b/intl/msg_hash_us.c @@ -52,6 +52,9 @@ int msg_hash_get_help_us_enum(enum msg_hash_enums msg, char *s, size_t len) switch (msg) { + case MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS: + strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS), len); + break; case MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS: strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_HELP_ACCOUNTS_RETRO_ACHIEVEMENTS), len); break; diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 34bac0c98a..178c43ada9 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -3168,7 +3168,7 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_SUBLABEL_INPUT_TURBO_FIRE_SETTINGS, - "Change turbo fire settings." + "Change turbo fire settings.\nNote: the turbo function requires mapping a turbo button to your input device in the corresponding 'Port X Controls' menu." ) MSG_HASH( MENU_ENUM_LABEL_VALUE_INPUT_HAPTIC_FEEDBACK_SETTINGS, @@ -3192,7 +3192,19 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_SUBLABEL_INPUT_HOTKEY_BINDS, - "Change hotkey settings." + "Change settings and assignments for hotkeys, such as toggling the menu during gameplay." + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS, + "RetroPad Binds" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_INPUT_RETROPAD_BINDS, + "Change how the virtual retropad is mapped to a physical input device. If an input device is recognized and autoconfigured correctly, users probably do not need to use this menu.\nNote: for core-specific input changes, use the Quick Menu's 'Controls' submenu instead." + ) +MSG_HASH( + MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS, + "Libretro uses a virtual gamepad abstraction known as the 'RetroPad' to communicate from frontends (like RetroArch) to cores and vice versa. While there is no actual, physical RetroPad device, it can be helpful to think of it as looking like a modern controller with four face buttons in the usual diamond configuration--with Y on the left, B on the bottom, A on the right and X on top, a directional pad, four shoulder buttons--R1, L1, R2 and L2--two analog sticks that can be pressed to trigger additional digital actions--R3 and L3--and two additional buttons for 'start' and 'select'. If a physical input device is recognized and autoconfigured correctly, users probably do not need to use this menu at all, and for core-specific input changes, should use the Quick Menu's 'Controls' submenu instead." ) MSG_HASH( MENU_ENUM_LABEL_VALUE_INPUT_USER_BINDS, @@ -3200,14 +3212,14 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_SUBLABEL_INPUT_USER_BINDS, - "Change controls for this port." + "Change how the virtual retropad is mapped to your physical input device for this virtual port." ) MSG_HASH( MENU_ENUM_LABEL_VALUE_ANDROID_INPUT_DISCONNECT_WORKAROUND, "Android disconnect workaround" ) MSG_HASH( - MENU_ENUM_LABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND, + MENU_ENUM_SUBLABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND, "Workaround for controllers disconnecting and reconnecting. Impedes 2 players with the identical controllers." ) MSG_HASH( diff --git a/menu/cbs/menu_cbs_deferred_push.c b/menu/cbs/menu_cbs_deferred_push.c index ef3e8c54db..c7292809dd 100644 --- a/menu/cbs/menu_cbs_deferred_push.c +++ b/menu/cbs/menu_cbs_deferred_push.c @@ -234,6 +234,7 @@ GENERIC_DEFERRED_PUSH(deferred_push_recording_settings_list, DISPLAYLIST_ GENERIC_DEFERRED_PUSH(deferred_push_playlist_settings_list, DISPLAYLIST_PLAYLIST_SETTINGS_LIST) GENERIC_DEFERRED_PUSH(deferred_push_playlist_manager_list, DISPLAYLIST_PLAYLIST_MANAGER_LIST) GENERIC_DEFERRED_PUSH(deferred_push_playlist_manager_settings, DISPLAYLIST_PLAYLIST_MANAGER_SETTINGS) +GENERIC_DEFERRED_PUSH(deferred_push_input_retropad_binds_list, DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST) GENERIC_DEFERRED_PUSH(deferred_push_input_hotkey_binds_list, DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST) GENERIC_DEFERRED_PUSH(deferred_push_accounts_cheevos_list, DISPLAYLIST_ACCOUNTS_CHEEVOS_LIST) GENERIC_DEFERRED_PUSH(deferred_push_accounts_twitch_list, DISPLAYLIST_ACCOUNTS_TWITCH_LIST) @@ -805,6 +806,7 @@ static int menu_cbs_init_bind_deferred_push_compare_label( {MENU_ENUM_LABEL_INFORMATION, deferred_push_information}, {MENU_ENUM_LABEL_SHADER_OPTIONS, deferred_push_shader_options}, {MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST, deferred_user_binds_list}, + {MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST, deferred_push_input_retropad_binds_list}, {MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST, deferred_push_input_hotkey_binds_list}, {MENU_ENUM_LABEL_DEFERRED_QUICK_MENU_OVERRIDE_OPTIONS, deferred_push_quick_menu_override_options}, {MENU_ENUM_LABEL_DEFERRED_ACCOUNTS_YOUTUBE_LIST, deferred_push_accounts_youtube_list}, @@ -949,6 +951,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label( case MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST: BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_recording_settings_list); break; + case MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST: + BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_retropad_binds_list); + break; case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST: BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list); break; diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index 27da3d99e3..63f9871392 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -467,6 +467,8 @@ static enum msg_hash_enums action_ok_dl_to_enum(unsigned lbl) return MENU_ENUM_LABEL_DEFERRED_AUDIO_SYNCHRONIZATION_SETTINGS_LIST; case ACTION_OK_DL_AUDIO_MIXER_SETTINGS_LIST: return MENU_ENUM_LABEL_DEFERRED_AUDIO_MIXER_SETTINGS_LIST; + case ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST: + return MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST; case ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST: return MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST; case ACTION_OK_DL_RECORDING_SETTINGS_LIST: @@ -1704,6 +1706,7 @@ int generic_action_ok_displaylist_push(const char *path, case ACTION_OK_DL_MICROPHONE_SETTINGS_LIST: #endif case ACTION_OK_DL_AUDIO_MIXER_SETTINGS_LIST: + case ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST: case ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST: case ACTION_OK_DL_RECORDING_SETTINGS_LIST: case ACTION_OK_DL_PLAYLIST_SETTINGS_LIST: @@ -5983,6 +5986,7 @@ STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_latency_settings_list, ACTION_OK_DL STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_recording_settings_list, ACTION_OK_DL_RECORDING_SETTINGS_LIST) STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_playlist_settings_list, ACTION_OK_DL_PLAYLIST_SETTINGS_LIST) STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_playlist_manager_list, ACTION_OK_DL_PLAYLIST_MANAGER_LIST) +STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_input_retropad_binds_list, ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST) STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_input_hotkey_binds_list, ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST) STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_user_binds_list, ACTION_OK_DL_USER_BINDS_LIST) STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_accounts_cheevos_list, ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST) @@ -8413,6 +8417,7 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs, {MENU_ENUM_LABEL_PLAYLIST_MANAGER_CLEAN_PLAYLIST, action_ok_playlist_clean}, {MENU_ENUM_LABEL_PLAYLIST_MANAGER_REFRESH_PLAYLIST, action_ok_playlist_refresh}, {MENU_ENUM_LABEL_RECORDING_SETTINGS, action_ok_push_recording_settings_list}, + {MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, action_ok_push_input_retropad_binds_list}, {MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, action_ok_push_input_hotkey_binds_list}, {MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS, action_ok_push_accounts_cheevos_list}, {MENU_ENUM_LABEL_ACCOUNTS_YOUTUBE, action_ok_push_accounts_youtube_list}, diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index dbc6fa9033..5153784591 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -390,6 +390,7 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_memory_update_interval, MENU_ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_statistics_show, MENU_ENUM_SUBLABEL_STATISTICS_SHOW) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_netplay_ping_show, MENU_ENUM_SUBLABEL_NETPLAY_PING_SHOW) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_netplay_settings, MENU_ENUM_SUBLABEL_NETPLAY) +DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_input_retropad_settings, MENU_ENUM_SUBLABEL_INPUT_RETROPAD_BINDS) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_user_bind_settings, MENU_ENUM_SUBLABEL_INPUT_USER_BINDS) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_input_hotkey_settings, MENU_ENUM_SUBLABEL_INPUT_HOTKEY_BINDS) @@ -4618,6 +4619,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_ADD_CONTENT_LIST: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_add_content_list); break; + case MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_retropad_settings); + break; case MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_hotkey_settings); break; diff --git a/menu/cbs/menu_cbs_title.c b/menu/cbs/menu_cbs_title.c index 1985a529c5..56986eb582 100644 --- a/menu/cbs/menu_cbs_title.c +++ b/menu/cbs/menu_cbs_title.c @@ -604,6 +604,7 @@ DEFAULT_TITLE_MACRO(action_get_core_counters_list, MENU_ENUM_LABEL_ DEFAULT_TITLE_MACRO(action_get_recording_settings_list, MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS) DEFAULT_TITLE_MACRO(action_get_playlist_settings_list, MENU_ENUM_LABEL_VALUE_PLAYLIST_SETTINGS) DEFAULT_TITLE_MACRO(action_get_playlist_manager_list, MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LIST) +DEFAULT_TITLE_MACRO(action_get_input_retropad_binds_settings_list,MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS) DEFAULT_TITLE_MACRO(action_get_input_hotkey_binds_settings_list,MENU_ENUM_LABEL_VALUE_INPUT_HOTKEY_BINDS) DEFAULT_TITLE_MACRO(action_get_driver_settings_list, MENU_ENUM_LABEL_VALUE_DRIVER_SETTINGS) DEFAULT_TITLE_MACRO(action_get_core_settings_list, MENU_ENUM_LABEL_VALUE_CORE_SETTINGS) @@ -1227,6 +1228,8 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs, action_get_online_pl_thumbnails_updater_list}, {MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST, action_get_title_input_binds_list}, + {MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST, + action_get_input_retropad_binds_settings_list}, {MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST, action_get_input_hotkey_binds_settings_list}, {MENU_ENUM_LABEL_DEFERRED_VIDEO_SETTINGS_LIST, @@ -1574,6 +1577,9 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST: BIND_ACTION_GET_TITLE(cbs, action_get_title_input_binds_list); break; + case MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST: + BIND_ACTION_GET_TITLE(cbs, action_get_input_retropad_binds_settings_list); + break; case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST: BIND_ACTION_GET_TITLE(cbs, action_get_input_hotkey_binds_settings_list); break; diff --git a/menu/menu_cbs.h b/menu/menu_cbs.h index 8b232691a5..0537b12a55 100644 --- a/menu/menu_cbs.h +++ b/menu/menu_cbs.h @@ -130,6 +130,7 @@ enum #ifdef HAVE_MIST ACTION_OK_DL_CORE_INFORMATION_STEAM_LIST, #endif + ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST, ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST, ACTION_OK_DL_RECORDING_SETTINGS_LIST, ACTION_OK_DL_PLAYLIST_SETTINGS_LIST, diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index d99baef02c..4b1624ea0d 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -6761,6 +6761,19 @@ unsigned menu_displaylist_build_list( count++; } break; + case DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST: + { + unsigned user; + unsigned max_users = settings->uints.input_max_users; + for (user = 0; user < max_users; user++) + { + if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(list, + (enum msg_hash_enums)(MENU_ENUM_LABEL_INPUT_USER_1_BINDS + user), + PARSE_ACTION, false) != -1) + count++; + } + } + break; case DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST: { /* "Hotkey Enable" */ @@ -7605,6 +7618,7 @@ unsigned menu_displaylist_build_list( {MENU_ENUM_LABEL_INPUT_MENU_SETTINGS, PARSE_ACTION, true }, {MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, PARSE_ACTION, true }, {MENU_ENUM_LABEL_INPUT_TURBO_FIRE_SETTINGS, PARSE_ACTION, true }, + {MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, PARSE_ACTION, true }, #ifdef ANDROID {MENU_ENUM_LABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND, PARSE_ONLY_BOOL, true }, #endif @@ -7649,19 +7663,6 @@ unsigned menu_displaylist_build_list( } } #endif - - { - unsigned user; - unsigned max_users = settings->uints.input_max_users; - for (user = 0; user < max_users; user++) - { - if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(list, - (enum msg_hash_enums)(MENU_ENUM_LABEL_INPUT_USER_1_BINDS + user), - PARSE_ACTION, false) != -1) - count++; - } - - } break; case DISPLAYLIST_ACCESSIBILITY_SETTINGS_LIST: { @@ -13664,6 +13665,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, case DISPLAYLIST_NETPLAY_ROOM_LIST: case DISPLAYLIST_SHADER_PRESET_SAVE: case DISPLAYLIST_SHADER_PRESET_REMOVE: + case DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST: case DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST: case DISPLAYLIST_INPUT_TURBO_FIRE_SETTINGS_LIST: case DISPLAYLIST_INPUT_HAPTIC_FEEDBACK_SETTINGS_LIST: diff --git a/menu/menu_displaylist.h b/menu/menu_displaylist.h index d46d6c2380..50dbd307a5 100644 --- a/menu/menu_displaylist.h +++ b/menu/menu_displaylist.h @@ -199,6 +199,7 @@ enum menu_displaylist_ctl_state DISPLAYLIST_INPUT_HAPTIC_FEEDBACK_SETTINGS_LIST, DISPLAYLIST_INPUT_MENU_SETTINGS_LIST, DISPLAYLIST_LATENCY_SETTINGS_LIST, + DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST, DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST, #if defined(HAVE_OVERLAY) DISPLAYLIST_ONSCREEN_OVERLAY_SETTINGS_LIST, diff --git a/menu/menu_setting.c b/menu/menu_setting.c index a983dc2b8c..2ddea7fb01 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -288,6 +288,7 @@ enum settings_list_type SETTINGS_LIST_INPUT, SETTINGS_LIST_INPUT_TURBO_FIRE, SETTINGS_LIST_INPUT_HOTKEY, + SETTINGS_LIST_INPUT_RETROPAD_BINDS, SETTINGS_LIST_RECORDING, SETTINGS_LIST_FRAME_THROTTLING, SETTINGS_LIST_FRAME_TIME_COUNTER, @@ -14811,6 +14812,14 @@ static bool setting_append_list( &group_info, &subgroup_info, parent_group); + + CONFIG_ACTION( + list, list_info, + MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, + MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS, + &group_info, + &subgroup_info, + parent_group); CONFIG_ACTION( list, list_info, diff --git a/msg_hash.h b/msg_hash.h index bc4a02619c..2125633a81 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -631,6 +631,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_REMAP_FILE, MENU_ENUM_LABEL_VALUE_CHEAT_FILE, MENU_ENUM_LABEL_VALUE_CHEAT_FILE_APPEND, + MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS, MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_BEGIN, MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_END = MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_BEGIN + RARCH_BIND_LIST_END, @@ -857,6 +858,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_INPUT_SETTINGS_BEGIN, + MENU_LABEL(INPUT_RETROPAD_BINDS), MENU_LABEL(INPUT_HOTKEY_BINDS), MENU_LABEL(INPUT_HOTKEY_BLOCK_DELAY), MENU_LABEL(INPUT_SPLIT_JOYCON), @@ -951,6 +953,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_INPUT_USER_14_BINDS, MENU_ENUM_LABEL_INPUT_USER_15_BINDS, MENU_ENUM_LABEL_INPUT_USER_16_BINDS, + MENU_ENUM_LABEL_INPUT_RETROPAD_SETTINGS, MENU_ENUM_LABEL_INPUT_HOTKEY_SETTINGS, MENU_LABEL(INPUT_REMAPPING_DIRECTORY), @@ -1859,6 +1862,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_DEFERRED_CORE_SYSTEM_FILES_LIST, MENU_ENUM_LABEL_DEFERRED_LAKKA_LIST, MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST, + MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST, MENU_ENUM_LABEL_DEFERRED_DATABASE_MANAGER_LIST, MENU_ENUM_LABEL_DEFERRED_VIDEO_FILTER, MENU_ENUM_LABEL_DEFERRED_CORE_LIST_SET,