diff --git a/cheat_manager.c b/cheat_manager.c index 5d89939e6c..879f81fda3 100644 --- a/cheat_manager.c +++ b/cheat_manager.c @@ -77,10 +77,9 @@ static void cheat_manager_pause_cheevos(void) } #endif -void cheat_manager_apply_cheats(void) +void cheat_manager_apply_cheats(bool notification_show_cheats_applied) { unsigned i, idx = 0; - settings_t *settings = config_get_ptr(); cheat_manager_t *cheat_st = &cheat_manager_state; if (!cheat_st->cheats) @@ -104,7 +103,7 @@ void cheat_manager_apply_cheats(void) } } - if (cheat_st->size > 0 && settings->bools.notification_show_cheats_applied) + if (cheat_st->size > 0 && notification_show_cheats_applied) { char msg[128]; size_t _len = strlcpy(msg, msg_hash_to_str(MSG_APPLYING_CHEAT), sizeof(msg)); @@ -643,7 +642,7 @@ void cheat_manager_toggle_index(bool apply_cheats_after_toggle, cheat_manager_update(cheat_st, i); if (apply_cheats_after_toggle) - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats(config_get_ptr()->bools.notification_show_cheats_applied); } void cheat_manager_toggle(void) @@ -653,7 +652,7 @@ void cheat_manager_toggle(void) return; cheat_st->cheats[cheat_st->ptr].state ^= true; - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats(config_get_ptr()->bools.notification_show_cheats_applied); cheat_manager_update(cheat_st, cheat_st->ptr); } diff --git a/cheat_manager.h b/cheat_manager.h index 9f52e115db..89ca6b0d71 100644 --- a/cheat_manager.h +++ b/cheat_manager.h @@ -217,7 +217,7 @@ void cheat_manager_index_prev(void); void cheat_manager_toggle(void); -void cheat_manager_apply_cheats(void); +void cheat_manager_apply_cheats(bool notification_show_cheats_applied); void cheat_manager_update(cheat_manager_t *handle, unsigned handle_idx); diff --git a/cheevos/cheevos.c b/cheevos/cheevos.c index 68acaaac56..2a6fcf5620 100644 --- a/cheevos/cheevos.c +++ b/cheevos/cheevos.c @@ -766,7 +766,8 @@ static void rcheevos_toggle_hardcore_active(rcheevos_locals_t* locals) #ifdef HAVE_CHEATS /* If one or more emulator managed cheats is active, abort */ - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats( + settings->bools.notification_show_cheats_applied); if (!locals->hardcore_allowed) { locals->hardcore_being_enabled = false; diff --git a/command.c b/command.c index f2ab73637a..c529c2547e 100644 --- a/command.c +++ b/command.c @@ -1301,7 +1301,8 @@ void command_event_init_cheats( cheat_manager_load_game_specific_cheats(path_cheat_db); if (apply_cheats_after_load) - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats( + config_get_ptr()->bools.notification_show_cheats_applied); } #endif diff --git a/frontend/drivers/platform_emscripten.c b/frontend/drivers/platform_emscripten.c index 0657d139ec..a2a8066e61 100644 --- a/frontend/drivers/platform_emscripten.c +++ b/frontend/drivers/platform_emscripten.c @@ -59,9 +59,9 @@ bool PlatformEmscriptenPowerStateGetCharging(void); uint64_t PlatformEmscriptenGetTotalMem(void); uint64_t PlatformEmscriptenGetFreeMem(void); -//// begin exported functions +/* begin exported functions */ -// saves and states +/* saves and states */ void cmd_savefiles(void) { @@ -88,7 +88,7 @@ void cmd_undo_load_state(void) command_event(CMD_EVENT_UNDO_LOAD_STATE, NULL); } -// misc +/* misc */ void cmd_take_screenshot(void) { @@ -135,7 +135,8 @@ void cmd_unpause(void) command_event(CMD_EVENT_UNPAUSE, NULL); } -void cmd_set_volume(float volume) { +void cmd_set_volume(float volume) +{ audio_set_float(AUDIO_ACTION_VOLUME_GAIN, volume); } @@ -146,7 +147,7 @@ bool cmd_set_shader(const char *path) } #endif -// cheats +/* cheats */ void cmd_cheat_set_code(unsigned index, const char *str) { @@ -180,10 +181,11 @@ unsigned cmd_cheat_get_size(void) void cmd_cheat_apply_cheats(void) { - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats( + config_get_ptr()->bools.notification_show_cheats_applied); } -//// end exported functions +/* end exported functions */ static void frontend_emscripten_get_env(int *argc, char *argv[], void *args, void *params_data) diff --git a/gfx/video_shader_parse.c b/gfx/video_shader_parse.c index a4cbff7484..24fd19624e 100644 --- a/gfx/video_shader_parse.c +++ b/gfx/video_shader_parse.c @@ -1890,7 +1890,7 @@ end: **/ static bool video_shader_load_root_config_into_shader( config_file_t *conf, - settings_t *settings, + bool video_shader_watch_files, struct video_shader *shader) { size_t i; @@ -1921,7 +1921,7 @@ static bool video_shader_load_root_config_into_shader( strlcpy(shader->loaded_preset_path, conf->path, sizeof(shader->loaded_preset_path)); - if (settings->bools.video_shader_watch_files) + if (video_shader_watch_files) { union string_list_elem_attr attr; int flags = @@ -2255,7 +2255,8 @@ bool video_shader_load_preset_into_shader(const char *path, if (string_is_equal(root_conf->path, path)) { /* Load the config from the shader chain from the first reference into the shader */ - video_shader_load_root_config_into_shader(root_conf, config_get_ptr(), shader); + video_shader_load_root_config_into_shader(root_conf, + config_get_ptr()->bools.video_shader_watch_files, shader); goto end; } @@ -2308,7 +2309,8 @@ bool video_shader_load_preset_into_shader(const char *path, } /* Load the config from the shader chain from the first reference into the shader */ - video_shader_load_root_config_into_shader(root_conf, config_get_ptr(), shader); + video_shader_load_root_config_into_shader(root_conf, + config_get_ptr()->bools.video_shader_watch_files, shader); /* Set Path for originally loaded preset because it is different than the root preset path */ strlcpy(shader->loaded_preset_path, path, sizeof(shader->loaded_preset_path)); @@ -2827,12 +2829,13 @@ static bool video_shader_load_shader_preset_internal( * * Returns: false if there was an error or no action was performed. */ -static bool video_shader_load_auto_shader_preset(settings_t *settings, const char *core_name, +static bool video_shader_load_auto_shader_preset( + const char *video_shader_directory, + const char *menu_config_directory, + const char *core_name, char *s, size_t len) { size_t i; - const char *video_shader_directory = settings->paths.directory_video_shader; - const char *menu_config_directory = settings->paths.directory_menu_config; const char *rarch_path_basename = path_get(RARCH_PATH_BASENAME); bool has_content = !string_is_empty(rarch_path_basename); @@ -2917,7 +2920,6 @@ success: } bool video_shader_combine_preset_and_apply( - settings_t *settings, enum rarch_shader_type type, struct video_shader *menu_shader, const char *preset_path, @@ -3111,7 +3113,8 @@ const char *video_shader_get_current_shader_preset(void) if (auto_shaders_enable) /* sets runtime_shader_preset_path */ { if (video_shader_load_auto_shader_preset( - settings, + settings->paths.directory_video_shader, + settings->paths.directory_menu_config, runloop_st->system.info.library_name, runloop_st->runtime_shader_preset_path, sizeof(runloop_st->runtime_shader_preset_path))) diff --git a/gfx/video_shader_parse.h b/gfx/video_shader_parse.h index 002734c62e..3a35463647 100644 --- a/gfx/video_shader_parse.h +++ b/gfx/video_shader_parse.h @@ -275,7 +275,6 @@ void video_shader_dir_check_shader( bool pressed_prev); bool video_shader_combine_preset_and_apply( - settings_t *settings, enum rarch_shader_type type, struct video_shader *menu_shader, const char *preset_path, diff --git a/menu/menu_contentless_cores.c b/menu/menu_contentless_cores.c index a87862d0a2..db5beed128 100644 --- a/menu/menu_contentless_cores.c +++ b/menu/menu_contentless_cores.c @@ -24,9 +24,7 @@ #include "menu_driver.h" #include "menu_displaylist.h" #include "../file_path_special.h" -#include "../retroarch.h" #include "../core_info.h" -#include "../configuration.h" #define CONTENTLESS_CORE_ICON_DEFAULT "default.png" @@ -402,12 +400,10 @@ void menu_contentless_cores_free(void) contentless_cores_state = NULL; } -unsigned menu_displaylist_contentless_cores(file_list_t *list, settings_t *settings) +unsigned menu_displaylist_contentless_cores(file_list_t *list, + enum menu_contentless_cores_display_type core_display_type) { unsigned count = 0; - enum menu_contentless_cores_display_type - core_display_type = (enum menu_contentless_cores_display_type) - settings->uints.menu_content_show_contentless_cores; core_info_list_t *core_info_list = NULL; /* Get core list */ diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 827dda173b..9d1e714f6c 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -1621,21 +1621,17 @@ static unsigned menu_displaylist_parse_remap_file_manager_list(file_list_t *list return count; } -static unsigned menu_displaylist_parse_supported_cores(menu_displaylist_info_t *info, - settings_t *settings, const char *content_path, +static unsigned menu_displaylist_parse_supported_cores( + menu_displaylist_info_t *info, + bool enable_load_with_current, + const char *core_path_current, + const char *content_path, enum msg_hash_enums core_enum_label, enum msg_hash_enums current_core_enum_label) { unsigned count = 0; core_info_list_t *core_info_list = NULL; bool core_available = false; - const char *core_path_current = path_get(RARCH_PATH_CORE); -#if defined(HAVE_DYNAMIC) - bool enable_load_with_current = !string_is_empty(core_path_current); -#else - bool enable_load_with_current = !string_is_empty(core_path_current) - && !settings->bools.always_reload_core_on_run_content; -#endif /* Get core list */ if ( core_info_get_list(&core_info_list) @@ -13710,10 +13706,20 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, case DISPLAYLIST_CORES_SUPPORTED: menu_entries_clear(info->list); - count = menu_displaylist_parse_supported_cores(info, - settings, menu->deferred_path, - MENU_ENUM_LABEL_DETECT_CORE_LIST_OK, - MENU_ENUM_LABEL_DETECT_CORE_LIST_OK_CURRENT_CORE); + { + const char *core_path_current = path_get(RARCH_PATH_CORE); +#if defined(HAVE_DYNAMIC) + bool enable_load_with_current = !string_is_empty(core_path_current); +#else + bool enable_load_with_current = !string_is_empty(core_path_current) + && !settings->bools.always_reload_core_on_run_content; +#endif + count = menu_displaylist_parse_supported_cores(info, + enable_load_with_current, core_path_current, + menu->deferred_path, + MENU_ENUM_LABEL_DETECT_CORE_LIST_OK, + MENU_ENUM_LABEL_DETECT_CORE_LIST_OK_CURRENT_CORE); + } info->flags &= ~MD_FLAG_NEED_SORT; info->flags |= MD_FLAG_NEED_REFRESH @@ -13722,10 +13728,20 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, case DISPLAYLIST_CORES_COLLECTION_SUPPORTED: menu_entries_clear(info->list); - count = menu_displaylist_parse_supported_cores(info, - settings, menu->deferred_path, - MENU_ENUM_LABEL_FILE_BROWSER_CORE_SELECT_FROM_COLLECTION, - MENU_ENUM_LABEL_FILE_BROWSER_CORE_SELECT_FROM_COLLECTION_CURRENT_CORE); + { + const char *core_path_current = path_get(RARCH_PATH_CORE); +#if defined(HAVE_DYNAMIC) + bool enable_load_with_current = !string_is_empty(core_path_current); +#else + bool enable_load_with_current = !string_is_empty(core_path_current) + && !settings->bools.always_reload_core_on_run_content; +#endif + count = menu_displaylist_parse_supported_cores(info, + enable_load_with_current, core_path_current, + menu->deferred_path, + MENU_ENUM_LABEL_FILE_BROWSER_CORE_SELECT_FROM_COLLECTION, + MENU_ENUM_LABEL_FILE_BROWSER_CORE_SELECT_FROM_COLLECTION_CURRENT_CORE); + } info->flags &= ~MD_FLAG_NEED_SORT; info->flags |= MD_FLAG_NEED_REFRESH @@ -13884,7 +13900,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, size_t contentless_core_ptr = menu_st->contentless_core_ptr; menu_entries_clear(info->list); - count = menu_displaylist_contentless_cores(info->list, settings); + count = menu_displaylist_contentless_cores(info->list, + (enum menu_contentless_cores_display_type) + settings->uints.menu_content_show_contentless_cores); /* TODO/FIXME: Selecting an entry in the * contentless cores list will cause the diff --git a/menu/menu_displaylist.h b/menu/menu_displaylist.h index c769d19254..9b2bba1856 100644 --- a/menu/menu_displaylist.h +++ b/menu/menu_displaylist.h @@ -332,7 +332,7 @@ enum menu_dl_flags MD_FLAG_DOWNLOAD_CORE = (1 << 7), /* Should a 'download core' entry be pushed onto the list? * This will be set to true in case there are no currently * installed cores. */ - MD_FLAG_NEED_NAVIGATION_CLEAR = (1 << 8) /* Does the navigation index need to be cleared + MD_FLAG_NEED_NAVIGATION_CLEAR = (1 << 8) /* Does the navigation index need to be cleared * to 0 (first entry) ? */ }; @@ -374,7 +374,8 @@ bool menu_displaylist_has_subsystems(void); #if defined(HAVE_LIBRETRODB) unsigned menu_displaylist_explore(file_list_t *list, settings_t *settings); #endif -unsigned menu_displaylist_contentless_cores(file_list_t *list, settings_t *settings); +unsigned menu_displaylist_contentless_cores(file_list_t *list, + enum menu_contentless_cores_display_type core_display_type); enum filebrowser_enums filebrowser_get_type(void); diff --git a/menu/menu_driver.c b/menu/menu_driver.c index a2a0d5cf69..fdbc1fa445 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -6956,8 +6956,7 @@ bool menu_shader_manager_append_preset(struct video_shader *shader, const char* preset_path, const bool prepend) { bool ret = false; - settings_t* settings = config_get_ptr(); - const char *dir_video_shader = settings->paths.directory_video_shader; + const char *dir_video_shader = config_get_ptr()->paths.directory_video_shader; enum rarch_shader_type type = menu_shader_manager_get_type(shader); struct menu_state *menu_st = &menu_driver_state; @@ -6967,7 +6966,7 @@ bool menu_shader_manager_append_preset(struct video_shader *shader, goto clear; } - if (!video_shader_combine_preset_and_apply(settings, + if (!video_shader_combine_preset_and_apply( type, shader, preset_path, dir_video_shader, prepend, true)) goto clear; @@ -7079,9 +7078,7 @@ static int generic_menu_iterate( bind.s = menu->menu_state_msg; bind.len = sizeof(menu->menu_state_msg); - if (menu_input_key_bind_iterate( - settings, - &bind, current_time)) + if (menu_input_key_bind_iterate(settings, &bind, current_time)) { size_t selection = menu_st->selection_ptr; menu_entries_pop_stack(&selection, 0, 0); diff --git a/menu/menu_explore.c b/menu/menu_explore.c index 3ac2023da4..50b6cdd468 100644 --- a/menu/menu_explore.c +++ b/menu/menu_explore.c @@ -1433,7 +1433,8 @@ unsigned menu_displaylist_explore(file_list_t *list, settings_t *settings) msg_hash_to_str(MENU_ENUM_LABEL_VALUE_EXPLORE_SEARCH_NAME), EXPLORE_TYPE_SEARCH, explore_action_ok_find); if (list->size) - ((menu_file_list_cbs_t*)list->list[list->size-1].actiondata)->action_sublabel = explore_action_sublabel_spacer; + ((menu_file_list_cbs_t*)list->list[list->size-1].actiondata)->action_sublabel = + explore_action_sublabel_spacer; } for (cat = 0; cat < EXPLORE_CAT_COUNT; cat++) diff --git a/retroarch.c b/retroarch.c index a46a515aa8..0c2ea9b766 100644 --- a/retroarch.c +++ b/retroarch.c @@ -860,8 +860,6 @@ bool midi_driver_set_input(const char *input) bool midi_driver_set_output(void *settings_data, const char *output) { - settings_t *settings = (settings_t*)settings_data; - if (!rarch_midi_drv_data) { #ifdef DEBUG @@ -884,10 +882,12 @@ bool midi_driver_set_output(void *settings_data, const char *output) if (output) { + settings_t *settings = (settings_t*)settings_data; + unsigned midi_volume = settings->uints.midi_volume; rarch_midi_drv_output_enabled = true; RARCH_LOG("[MIDI]: Output device changed to \"%s\".\n", output); - midi_driver_set_volume(settings->uints.midi_volume); + midi_driver_set_volume(midi_volume); } else { @@ -3684,7 +3684,7 @@ bool command_event(enum event_command cmd, void *data) break; case CMD_EVENT_CHEATS_APPLY: #ifdef HAVE_CHEATS - cheat_manager_apply_cheats(); + cheat_manager_apply_cheats(settings->bools.notification_show_cheats_applied); #endif break; case CMD_EVENT_REWIND_DEINIT: diff --git a/runloop.c b/runloop.c index 9af22983f9..15f52c9960 100644 --- a/runloop.c +++ b/runloop.c @@ -3801,12 +3801,11 @@ static void runloop_audio_buffer_status_free(runloop_state_t *runloop_st) runloop_st->audio_latency = 0; } -static void runloop_fastmotion_override_free(runloop_state_t *runloop_st) +static void runloop_fastmotion_override_free(runloop_state_t *runloop_st, + float fastforward_ratio) { video_driver_state_t *video_st = video_state_get_ptr(); - settings_t *settings = config_get_ptr(); - float fastforward_ratio = settings->floats.fastforward_ratio; bool reset_frame_limit = runloop_st->fastmotion_override.current.fastforward && (runloop_st->fastmotion_override.current.ratio >= 0.0f) && (runloop_st->fastmotion_override.current.ratio != fastforward_ratio); @@ -3832,7 +3831,7 @@ void runloop_state_free(runloop_state_t *runloop_st) runloop_frame_time_free(runloop_st); runloop_audio_buffer_status_free(runloop_st); input_game_focus_free(); - runloop_fastmotion_override_free(runloop_st); + runloop_fastmotion_override_free(runloop_st, config_get_ptr()->floats.fastforward_ratio); /* Only a single core options callback is used at present */ runloop_st->core_options_callback.update_display = NULL;