From 8584ef94f474139b690f8239b33686f5dd7d61fa Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 29 Sep 2014 15:55:41 +0200 Subject: [PATCH] Implement RARCH_CMD_MENU_PAUSE_LIBRETRO --- general.h | 1 + retroarch.c | 14 ++++++++++++++ settings_data.c | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/general.h b/general.h index 961e4997f8..7369239141 100644 --- a/general.h +++ b/general.h @@ -130,6 +130,7 @@ enum basic_event RARCH_CMD_QUIT_RETROARCH, RARCH_CMD_RESUME, RARCH_CMD_MENU_SAVE_CONFIG, + RARCH_CMD_MENU_PAUSE_LIBRETRO, RARCH_CMD_SHADERS_APPLY_CHANGES, }; diff --git a/retroarch.c b/retroarch.c index 29b6a15b5d..18dc81bb92 100644 --- a/retroarch.c +++ b/retroarch.c @@ -3191,6 +3191,20 @@ void rarch_main_command(unsigned cmd) menu_shader_manager_apply_changes(); #endif break; + case RARCH_CMD_MENU_PAUSE_LIBRETRO: + if (g_extern.is_menu) + { + if (g_settings.menu.pause_libretro) + rarch_main_command(RARCH_CMD_AUDIO_STOP); + else + rarch_main_command(RARCH_CMD_AUDIO_START); + } + else + { + if (g_settings.menu.pause_libretro) + rarch_main_command(RARCH_CMD_AUDIO_START); + } + break; } } diff --git a/settings_data.c b/settings_data.c index 21bbd8919c..ed72df5be0 100644 --- a/settings_data.c +++ b/settings_data.c @@ -2595,7 +2595,7 @@ rarch_setting_t *setting_data_get_list(void) START_GROUP("Menu Options") START_SUB_GROUP("State", GROUP_NAME) CONFIG_BOOL(g_settings.menu_show_start_screen, "rgui_show_start_screen", "Show Start Screen", menu_show_start_screen, "OFF", "ON", GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) - CONFIG_BOOL(g_settings.menu.pause_libretro, "menu_pause_libretro", "Pause Libretro", true, "OFF", "ON", GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) + CONFIG_BOOL(g_settings.menu.pause_libretro, "menu_pause_libretro", "Pause Libretro", true, "OFF", "ON", GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) WITH_CMD(RARCH_CMD_MENU_PAUSE_LIBRETRO) WITH_FLAGS(SD_FLAG_CMD_APPLY_AUTO) END_SUB_GROUP() END_GROUP() #endif