diff --git a/frontend/menu/backend/menu_common_backend.c b/frontend/menu/backend/menu_common_backend.c index 1a362fd4eb..3a150963fe 100644 --- a/frontend/menu/backend/menu_common_backend.c +++ b/frontend/menu/backend/menu_common_backend.c @@ -89,6 +89,7 @@ static int menu_info_screen_iterate(unsigned action) if (label) strlcpy(needle, label, sizeof(needle)); } + if (needle[0] == '\0' || setting_data_get_description(needle, msg, sizeof(msg)) == -1) { @@ -110,182 +111,6 @@ static int menu_info_screen_iterate(unsigned action) "relevant for the libretro core itself." ); break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_LEFT_X_PLUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_LEFT_X_MINUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_LEFT_Y_PLUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_LEFT_Y_MINUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_RIGHT_X_PLUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_RIGHT_X_MINUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_RIGHT_Y_PLUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_ANALOG_RIGHT_Y_MINUS: - snprintf(msg, sizeof(msg), - " -- Axis for analog stick (DualShock-esque).\n" - " \n" - "Bound as usual, however, if a real analog \n" - "axis is bound, it can be read as a true analog.\n" - " \n" - "Positive X axis is right. \n" - "Positive Y axis is down."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_SHADER_NEXT: - snprintf(msg, sizeof(msg), - " -- Applies next shader in directory."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_SHADER_PREV: - snprintf(msg, sizeof(msg), - " -- Applies previous shader in directory."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_LOAD_STATE_KEY: - snprintf(msg, sizeof(msg), - " -- Loads state."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_SAVE_STATE_KEY: - snprintf(msg, sizeof(msg), - " -- Saves state."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_STATE_SLOT_PLUS: - case MENU_SETTINGS_BIND_BEGIN + RARCH_STATE_SLOT_MINUS: - snprintf(msg, sizeof(msg), - " -- State slots.\n" - " \n" - " With slot set to 0, save state name is *.state \n" - " (or whatever defined on commandline).\n" - "When slot is != 0, path will be (path)(d), \n" - "where (d) is slot number."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_TURBO_ENABLE: - snprintf(msg, sizeof(msg), - " -- Turbo enable.\n" - " \n" - "Holding the turbo while pressing another \n" - "button will let the button enter a turbo \n" - "mode where the button state is modulated \n" - "with a periodic signal. \n" - " \n" - "The modulation stops when the button \n" - "itself (not turbo button) is released."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_FAST_FORWARD_HOLD_KEY: - snprintf(msg, sizeof(msg), - " -- Hold for fast-forward. Releasing button \n" - "disables fast-forward."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_QUIT_KEY: - snprintf(msg, sizeof(msg), - " -- Key to exit RetroArch cleanly." -#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE) - "\nKilling it in any hard way (SIGKILL, \n" - "etc) will terminate without saving\n" - "RAM, etc. On Unix-likes,\n" - "SIGINT/SIGTERM allows\n" - "a clean deinitialization." -#endif - ); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_REWIND: - snprintf(msg, sizeof(msg), - " -- Hold button down to rewind.\n" - " \n" - "Rewind must be enabled."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_MOVIE_RECORD_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggle between recording and not."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_PAUSE_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggle between paused and non-paused state."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_FRAMEADVANCE: - snprintf(msg, sizeof(msg), - " -- Frame advance when content is paused."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_RESET: - snprintf(msg, sizeof(msg), - " -- Reset the content.\n"); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_CHEAT_INDEX_PLUS: - snprintf(msg, sizeof(msg), - " -- Increment cheat index.\n"); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_CHEAT_INDEX_MINUS: - snprintf(msg, sizeof(msg), - " -- Decrement cheat index.\n"); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_CHEAT_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggle cheat index.\n"); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_SCREENSHOT: - snprintf(msg, sizeof(msg), - " -- Take screenshot."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_MUTE: - snprintf(msg, sizeof(msg), - " -- Mute/unmute audio."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_NETPLAY_FLIP: - snprintf(msg, sizeof(msg), - " -- Netplay flip players."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_SLOWMOTION: - snprintf(msg, sizeof(msg), - " -- Hold for slowmotion."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_ENABLE_HOTKEY: - snprintf(msg, sizeof(msg), - " -- Enable other hotkeys.\n" - " \n" - " If this hotkey is bound to either keyboard, \n" - "joybutton or joyaxis, all other hotkeys will \n" - "be disabled unless this hotkey is also held \n" - "at the same time. \n" - " \n" - "This is useful for RETRO_KEYBOARD centric \n" - "implementations which query a large area of \n" - "the keyboard, where it is not desirable that \n" - "hotkeys get in the way."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_VOLUME_UP: - snprintf(msg, sizeof(msg), - " -- Increases audio volume."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_VOLUME_DOWN: - snprintf(msg, sizeof(msg), - " -- Decreases audio volume."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_OVERLAY_NEXT: - snprintf(msg, sizeof(msg), - " -- Toggles to next overlay.\n" - " \n" - "Wraps around."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_DISK_EJECT_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggles eject for disks.\n" - " \n" - "Used for multiple-disk content."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_DISK_NEXT: - snprintf(msg, sizeof(msg), - " -- Cycles through disk images. Use after \n" - "ejecting. \n" - " \n" - " Complete by toggling eject again."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_GRAB_MOUSE_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggles mouse grab.\n" - " \n" - "When mouse is grabbed, RetroArch hides the \n" - "mouse, and keeps the mouse pointer inside \n" - "the window to allow relative mouse input to \n" - "work better."); - break; - case MENU_SETTINGS_BIND_BEGIN + RARCH_MENU_TOGGLE: - snprintf(msg, sizeof(msg), - " -- Toggles menu."); - break; default: snprintf(msg, sizeof(msg), "-- No info on this item available. --\n"); diff --git a/settings_data.c b/settings_data.c index 5f68db8e3a..6dc7b18add 100644 --- a/settings_data.c +++ b/settings_data.c @@ -1362,6 +1362,151 @@ int setting_data_get_description(const char *label, char *msg, "pass or not." ); } + else if ( + !strcmp(label, "l_x_plus") || + !strcmp(label, "l_x_minus") || + !strcmp(label, "l_y_plus") || + !strcmp(label, "l_y_minus") + ) + snprintf(msg, sizeof_msg, + " -- Axis for analog stick (DualShock-esque).\n" + " \n" + "Bound as usual, however, if a real analog \n" + "axis is bound, it can be read as a true analog.\n" + " \n" + "Positive X axis is right. \n" + "Positive Y axis is down."); + else if (!strcmp(label, "turbo")) + snprintf(msg, sizeof_msg, + " -- Turbo enable.\n" + " \n" + "Holding the turbo while pressing another \n" + "button will let the button enter a turbo \n" + "mode where the button state is modulated \n" + "with a periodic signal. \n" + " \n" + "The modulation stops when the button \n" + "itself (not turbo button) is released."); + else if (!strcmp(label, "exit_emulator")) + snprintf(msg, sizeof_msg, + " -- Key to exit RetroArch cleanly." +#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE) + "\nKilling it in any hard way (SIGKILL, \n" + "etc) will terminate without saving\n" + "RAM, etc. On Unix-likes,\n" + "SIGINT/SIGTERM allows\n" + "a clean deinitialization." +#endif + ); + else if (!strcmp(label, "rewind")) + snprintf(msg, sizeof_msg, + " -- Hold button down to rewind.\n" + " \n" + "Rewind must be enabled."); + else if (!strcmp(label, "load_state")) + snprintf(msg, sizeof_msg, + " -- Loads state."); + else if (!strcmp(label, "save_state")) + snprintf(msg, sizeof_msg, + " -- Saves state."); + else if (!strcmp(label, "state_slot_increase") || + !strcmp(label, "state_slot_decrease")) + snprintf(msg, sizeof_msg, + " -- State slots.\n" + " \n" + " With slot set to 0, save state name is *.state \n" + " (or whatever defined on commandline).\n" + "When slot is != 0, path will be (path)(d), \n" + "where (d) is slot number."); + else if (!strcmp(label, "netplay_flip_players")) + snprintf(msg, sizeof_msg, + " -- Netplay flip players."); + else if (!strcmp(label, "frame_advance")) + snprintf(msg, sizeof_msg, + " -- Frame advance when content is paused."); + else if (!strcmp(label, "enable_hotkey")) + snprintf(msg, sizeof_msg, + " -- Enable other hotkeys.\n" + " \n" + " If this hotkey is bound to either keyboard, \n" + "joybutton or joyaxis, all other hotkeys will \n" + "be disabled unless this hotkey is also held \n" + "at the same time. \n" + " \n" + "This is useful for RETRO_KEYBOARD centric \n" + "implementations which query a large area of \n" + "the keyboard, where it is not desirable that \n" + "hotkeys get in the way."); + else if (!strcmp(label, "slowmotion")) + snprintf(msg, sizeof_msg, + " -- Hold for slowmotion."); + else if (!strcmp(label, "movie_record_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggle between recording and not."); + else if (!strcmp(label, "pause_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggle between paused and non-paused state."); + else if (!strcmp(label, "hold_fast_forward")) + snprintf(msg, sizeof_msg, + " -- Hold for fast-forward. Releasing button \n" + "disables fast-forward."); + else if (!strcmp(label, "shader_next")) + snprintf(msg, sizeof_msg, + " -- Applies next shader in directory."); + else if (!strcmp(label, "reset")) + snprintf(msg, sizeof_msg, + " -- Reset the content.\n"); + else if (!strcmp(label, "cheat_index_plus")) + snprintf(msg, sizeof_msg, + " -- Increment cheat index.\n"); + else if (!strcmp(label, "cheat_index_minus")) + snprintf(msg, sizeof_msg, + " -- Decrement cheat index.\n"); + else if (!strcmp(label, "cheat_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggle cheat index.\n"); + else if (!strcmp(label, "shader_prev")) + snprintf(msg, sizeof_msg, + " -- Applies previous shader in directory."); + else if (!strcmp(label, "audio_mute")) + snprintf(msg, sizeof_msg, + " -- Mute/unmute audio."); + else if (!strcmp(label, "screenshot")) + snprintf(msg, sizeof_msg, + " -- Take screenshot."); + else if (!strcmp(label, "volume_up")) + snprintf(msg, sizeof_msg, + " -- Increases audio volume."); + else if (!strcmp(label, "volume_down")) + snprintf(msg, sizeof_msg, + " -- Decreases audio volume."); + else if (!strcmp(label, "overlay_next")) + snprintf(msg, sizeof_msg, + " -- Toggles to next overlay.\n" + " \n" + "Wraps around."); + else if (!strcmp(label, "disk_eject_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggles eject for disks.\n" + " \n" + "Used for multiple-disk content."); + else if (!strcmp(label, "disk_next")) + snprintf(msg, sizeof_msg, + " -- Cycles through disk images. Use after \n" + "ejecting. \n" + " \n" + " Complete by toggling eject again."); + else if (!strcmp(label, "grab_mouse_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggles mouse grab.\n" + " \n" + "When mouse is grabbed, RetroArch hides the \n" + "mouse, and keeps the mouse pointer inside \n" + "the window to allow relative mouse input to \n" + "work better."); + else if (!strcmp(label, "menu_toggle")) + snprintf(msg, sizeof_msg, + " -- Toggles menu."); else snprintf(msg, sizeof_msg, "-- No info on this item is available. --\n");