From 83ce4259a06a9de804d355d8e9f3bea347e53f5c Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 21 Sep 2021 19:08:26 +0200 Subject: [PATCH] Have only one getter for runloop_state --- cheat_manager.c | 2 +- cheevos/cheevos.c | 4 ++-- cheevos/cheevos_client.c | 2 +- menu/cbs/menu_cbs_deferred_push.c | 6 +++--- menu/cbs/menu_cbs_get_value.c | 4 ++-- menu/cbs/menu_cbs_left.c | 5 ++--- menu/cbs/menu_cbs_ok.c | 12 ++++++------ menu/cbs/menu_cbs_right.c | 7 +++---- menu/cbs/menu_cbs_start.c | 6 ++---- menu/cbs/menu_cbs_sublabel.c | 4 ++-- menu/drivers/materialui.c | 2 +- menu/drivers/ozone.c | 2 +- menu/drivers/xmb.c | 2 +- menu/menu_displaylist.c | 28 +++++++++++++--------------- menu/menu_driver.c | 8 ++++---- menu/menu_setting.c | 8 ++++---- network/netplay/netplay_frontend.c | 6 +++--- retroarch.c | 13 ++----------- retroarch.h | 9 ++++----- tasks/task_content.c | 22 +++++++++++----------- tasks/task_netplay_find_content.c | 4 ++-- tasks/task_screenshot.c | 9 ++++++--- ui/drivers/qt/qt_dialogs.cpp | 2 +- ui/drivers/ui_cocoa.m | 6 +++--- ui/drivers/ui_qt.cpp | 4 ++-- 25 files changed, 82 insertions(+), 95 deletions(-) diff --git a/cheat_manager.c b/cheat_manager.c index 23b48b21cd..8ad497771d 100644 --- a/cheat_manager.c +++ b/cheat_manager.c @@ -776,7 +776,7 @@ int cheat_manager_initialize_memory(rarch_setting_t *setting, size_t idx, bool w retro_ctx_memory_info_t meminfo; bool refresh = false; bool is_search_initialization = (setting != NULL); - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; unsigned offset = 0; cheat_manager_t *cheat_st = &cheat_manager_state; diff --git a/cheevos/cheevos.c b/cheevos/cheevos.c index 21e1ea15c6..30286a5f71 100644 --- a/cheevos/cheevos.c +++ b/cheevos/cheevos.c @@ -198,7 +198,7 @@ static int rcheevos_init_memory(rcheevos_locals_t* locals) unsigned i; int result; struct retro_memory_map mmap; - rarch_system_info_t* system = runloop_get_system_info(); + rarch_system_info_t* system = &runloop_state_get_ptr()->system; rarch_memory_map_t* mmaps = &system->mmaps; struct retro_memory_descriptor *descriptors = (struct retro_memory_descriptor*)malloc(mmaps->num_descriptors * sizeof(*descriptors)); if (!descriptors) @@ -1012,7 +1012,7 @@ void rcheevos_validate_config_settings(void) *disallowed_settings = NULL; core_option_manager_t* coreopts = NULL; struct retro_system_info *system = - &runloop_get_system_info()->info; + &runloop_state_get_ptr()->system.info; if (!system->library_name || !rcheevos_locals.hardcore_active) return; diff --git a/cheevos/cheevos_client.c b/cheevos/cheevos_client.c index b07ed60e27..138ad8e09a 100644 --- a/cheevos/cheevos_client.c +++ b/cheevos/cheevos_client.c @@ -115,7 +115,7 @@ void rcheevos_get_user_agent(rcheevos_locals_t *locals, char *buffer, size_t len) { char* ptr; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; /* if we haven't calculated the non-changing portion yet, do so now * [retroarch version + os version] */ diff --git a/menu/cbs/menu_cbs_deferred_push.c b/menu/cbs/menu_cbs_deferred_push.c index b06bfc7ac6..0201245659 100644 --- a/menu/cbs/menu_cbs_deferred_push.c +++ b/menu/cbs/menu_cbs_deferred_push.c @@ -451,7 +451,7 @@ static int general_push(menu_displaylist_info_t *info, case PUSH_ARCHIVE_OPEN: { struct retro_system_info *system = - &runloop_get_system_info()->info; + &runloop_state_get_ptr()->system.info; if (system) if (!string_is_empty(system->valid_extensions)) strlcpy(newstring2, system->valid_extensions, @@ -468,7 +468,7 @@ static int general_push(menu_displaylist_info_t *info, else { struct retro_system_info *system = - &runloop_get_system_info()->info; + &runloop_state_get_ptr()->system.info; if (system && !string_is_empty(system->valid_extensions)) { new_exts = strdup(system->valid_extensions); @@ -515,7 +515,7 @@ static int general_push(menu_displaylist_info_t *info, char newstring[PATH_MAX_LENGTH]; struct string_list str_list2 = {0}; struct retro_system_info *system = - &runloop_get_system_info()->info; + &runloop_state_get_ptr()->system.info; newstring[0] = '\0'; attr.i = 0; diff --git a/menu/cbs/menu_cbs_get_value.c b/menu/cbs/menu_cbs_get_value.c index 1cc1314d7f..6790b4de67 100644 --- a/menu/cbs/menu_cbs_get_value.c +++ b/menu/cbs/menu_cbs_get_value.c @@ -722,7 +722,7 @@ static void menu_action_setting_disp_set_label_input_desc( remap_idx = settings->uints.input_remap_ids[user_idx][btn_idx]; if (remap_idx != RARCH_UNMAPPED) - descriptor = runloop_get_system_info()->input_desc_btn[mapped_port][remap_idx]; + descriptor = runloop_state_get_ptr()->system.input_desc_btn[mapped_port][remap_idx]; s[0] = '-'; s[1] = '-'; @@ -1006,7 +1006,7 @@ static void menu_action_setting_disp_set_label_menu_disk_index( { unsigned images = 0; unsigned current = 0; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (!system) return; diff --git a/menu/cbs/menu_cbs_left.c b/menu/cbs/menu_cbs_left.c index 54a99f97a0..71890f35a0 100644 --- a/menu/cbs/menu_cbs_left.c +++ b/menu/cbs/menu_cbs_left.c @@ -134,14 +134,13 @@ static int action_left_cheat(unsigned type, const char *label, static int action_left_input_desc(unsigned type, const char *label, bool wraparound) { - rarch_system_info_t *system = runloop_get_system_info(); - settings_t *settings = config_get_ptr(); unsigned btn_idx; unsigned user_idx; unsigned remap_idx; unsigned bind_idx; unsigned mapped_port; - + settings_t *settings = config_get_ptr(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (!settings || !system) return 0; diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index 32827294bb..c519afa745 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -1048,7 +1048,7 @@ int generic_action_ok_displaylist_push(const char *path, break; case ACTION_OK_DL_REMAP_FILE: { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; const char *core_name = system ? system->library_name : NULL; if (!string_is_empty(core_name) && !string_is_empty(settings->paths.directory_input_remapping)) @@ -2669,7 +2669,7 @@ static int action_ok_load_cdrom(const char *path, return -1; } - system = &runloop_get_system_info()->info; + system = &runloop_state_get_ptr()->system.info; if (system && !string_is_empty(system->library_name)) { @@ -3352,7 +3352,7 @@ static int generic_action_ok_remap_file_operation(const char *path, char directory[PATH_MAX_LENGTH]; char file[PATH_MAX_LENGTH]; char content_dir[PATH_MAX_LENGTH]; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; const char *core_name = system ? system->library_name : NULL; settings_t *settings = config_get_ptr(); const char *path_dir_input_remapping = settings->paths.directory_input_remapping; @@ -5182,7 +5182,7 @@ static int action_ok_add_to_favorites(const char *path, if (!string_is_empty(content_path)) { global_t *global = global_get_ptr(); - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; struct string_list *str_list = NULL; const char *crc32 = NULL; const char *db_name = NULL; @@ -6907,7 +6907,7 @@ static int action_ok_disk_cycle_tray_status(const char *path, { bool disk_ejected = false; bool print_log = false; - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; settings_t *settings = config_get_ptr(); #ifdef HAVE_AUDIOMIXER bool audio_enable_menu = settings->bools.audio_enable_menu; @@ -6959,7 +6959,7 @@ static int action_ok_disk_image_append(const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx) { char image_path[PATH_MAX_LENGTH]; - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; menu_handle_t *menu = menu_state_get_ptr()->driver_data; const char *menu_path = NULL; settings_t *settings = config_get_ptr(); diff --git a/menu/cbs/menu_cbs_right.c b/menu/cbs/menu_cbs_right.c index 38b53de1d1..d0522579d7 100644 --- a/menu/cbs/menu_cbs_right.c +++ b/menu/cbs/menu_cbs_right.c @@ -175,22 +175,21 @@ static int action_right_input_desc_kbd(unsigned type, const char *label, static int action_right_input_desc(unsigned type, const char *label, bool wraparound) { - rarch_system_info_t *system = runloop_get_system_info(); - settings_t *settings = config_get_ptr(); unsigned btn_idx; unsigned user_idx; unsigned remap_idx; unsigned bind_idx; unsigned mapped_port; - + settings_t *settings = config_get_ptr(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (!settings || !system) return 0; user_idx = (type - MENU_SETTINGS_INPUT_DESC_BEGIN) / (RARCH_FIRST_CUSTOM_BIND + 8); btn_idx = (type - MENU_SETTINGS_INPUT_DESC_BEGIN) - (RARCH_FIRST_CUSTOM_BIND + 8) * user_idx; mapped_port = settings->uints.input_remap_ports[user_idx]; + remap_idx = settings->uints.input_remap_ids[user_idx][btn_idx]; - remap_idx = settings->uints.input_remap_ids[user_idx][btn_idx]; for (bind_idx = 0; bind_idx < RARCH_ANALOG_BIND_LIST_END; bind_idx++) { if (input_config_bind_order[bind_idx] == remap_idx) diff --git a/menu/cbs/menu_cbs_start.c b/menu/cbs/menu_cbs_start.c index ba22ca4f8c..1fcdc99026 100644 --- a/menu/cbs/menu_cbs_start.c +++ b/menu/cbs/menu_cbs_start.c @@ -187,13 +187,11 @@ static int action_start_input_desc( const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx) { - settings_t *settings = config_get_ptr(); - rarch_system_info_t *system = runloop_get_system_info(); unsigned user_idx; unsigned btn_idx; unsigned mapped_port; - - (void)label; + settings_t *settings = config_get_ptr(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (!settings || !system) return 0; diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index c54913caf6..7012f0cb74 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -1087,8 +1087,8 @@ static int action_bind_sublabel_subsystem_add( const char *label, const char *path, char *s, size_t len) { - rarch_system_info_t *system = runloop_get_system_info(); const struct retro_subsystem_info *subsystem; + rarch_system_info_t *system = &runloop_state_get_ptr()->system; /* Core fully loaded, use the subsystem data */ if (system->subsystem.data) @@ -1140,8 +1140,8 @@ static int action_bind_sublabel_disk_image_append( const char *label, const char *path, char *s, size_t len) { - rarch_system_info_t *sys_info = runloop_get_system_info(); enum msg_hash_enums enum_idx = MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND; + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; /* Check whether disk is currently ejected */ if (sys_info && diff --git a/menu/drivers/materialui.c b/menu/drivers/materialui.c index 23c48647aa..4d4e1a61a3 100644 --- a/menu/drivers/materialui.c +++ b/menu/drivers/materialui.c @@ -9208,7 +9208,7 @@ static int materialui_list_push(void *data, void *userdata, case DISPLAYLIST_MAIN_MENU: { settings_t *settings = config_get_ptr(); - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; /* If navigation bar is hidden, use default * main menu */ diff --git a/menu/drivers/ozone.c b/menu/drivers/ozone.c index 71af1556a2..32ba0a0d32 100644 --- a/menu/drivers/ozone.c +++ b/menu/drivers/ozone.c @@ -7627,7 +7627,7 @@ static int ozone_list_push(void *data, void *userdata, case DISPLAYLIST_MAIN_MENU: { settings_t *settings = config_get_ptr(); - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list); if (rarch_ctl(RARCH_CTL_CORE_IS_RUNNING, NULL)) diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 6aaf9434c9..c82e501e79 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -6946,7 +6946,7 @@ static int xmb_list_push(void *data, void *userdata, break; case DISPLAYLIST_MAIN_MENU: { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list); if (rarch_ctl(RARCH_CTL_CORE_IS_RUNNING, NULL)) diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 5a5ac8f6ca..052623110c 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -188,7 +188,7 @@ static void filebrowser_parse( { if (filebrowser_type == FILEBROWSER_SELECT_FILE_SUBSYSTEM) { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; /* Core fully loaded, use the subsystem data */ if (system->subsystem.data) subsystem = system->subsystem.data + content_get_subsystem(); @@ -218,7 +218,7 @@ static void filebrowser_parse( if (filebrowser_type == FILEBROWSER_SELECT_FILE_SUBSYSTEM) { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; /* Core fully loaded, use the subsystem data */ if (system->subsystem.data) subsystem = system->subsystem.data + content_get_subsystem(); @@ -1255,7 +1255,7 @@ static unsigned menu_displaylist_parse_supported_cores(menu_displaylist_info_t * string_is_empty(exts)) #endif { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; const char *core_path = core_path_current; const char *core_name = system ? system->library_name : NULL; @@ -2865,7 +2865,7 @@ static int menu_displaylist_parse_load_content_settings( #endif bool quickmenu_show_resume_content = settings->bools.quick_menu_show_resume_content; bool quickmenu_show_restart_content = settings->bools.quick_menu_show_restart_content; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (quickmenu_show_resume_content) if (menu_entries_append_enum(list, @@ -3395,7 +3395,7 @@ static unsigned menu_displaylist_parse_information_list(file_list_t *info_list) { unsigned count = 0; core_info_t *core_info = NULL; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; core_info_get_current_core(&core_info); @@ -4361,7 +4361,7 @@ static unsigned menu_displaylist_parse_disk_options( file_list_t *list) { unsigned count = 0; - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; bool disk_ejected = false; /* Sanity Check */ @@ -4431,7 +4431,7 @@ static int menu_displaylist_parse_input_device_type_list( const struct retro_controller_description *desc = NULL; const char *name = NULL; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; enum msg_hash_enums enum_idx = (enum msg_hash_enums)atoi(info->path); rarch_setting_t *setting = menu_setting_find_enum(enum_idx); @@ -4530,7 +4530,7 @@ end: static int menu_displaylist_parse_input_device_index_list( menu_displaylist_info_t *info, settings_t *settings) { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; enum msg_hash_enums enum_idx = (enum msg_hash_enums)atoi(info->path); rarch_setting_t *setting = menu_setting_find_enum(enum_idx); size_t menu_index = 0; @@ -4642,7 +4642,7 @@ static int menu_displaylist_parse_input_description_list( menu_displaylist_info_t *info, settings_t *settings) { unsigned count = 0; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; size_t menu_index = 0; bool current_input_mapped = false; unsigned user_idx; @@ -5496,8 +5496,7 @@ unsigned menu_displaylist_build_list( case DISPLAYLIST_SUBSYSTEM_SETTINGS_LIST: { const struct retro_subsystem_info* subsystem = subsystem_data; - rarch_system_info_t *sys_info = - runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; /* Core not loaded completely, use the data we * peeked on load core */ @@ -7155,7 +7154,7 @@ unsigned menu_displaylist_build_list( case DISPLAYLIST_DROPDOWN_LIST_DISK_INDEX: menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list); { - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; if (sys_info) { @@ -9807,8 +9806,7 @@ static unsigned print_buf_lines(file_list_t *list, char *buf, bool menu_displaylist_has_subsystems(void) { const struct retro_subsystem_info* subsystem = subsystem_data; - rarch_system_info_t *sys_info = - runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; /* Core not loaded completely, use the data we * peeked on load core */ /* Core fully loaded, use the subsystem data */ @@ -12224,7 +12222,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, case DISPLAYLIST_MAIN_MENU: menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list); { - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; bool show_add_content = false; #if defined(HAVE_RGUI) || defined(HAVE_MATERIALUI) || defined(HAVE_OZONE) || defined(HAVE_XMB) const char *menu_ident = menu_driver_ident(); diff --git a/menu/menu_driver.c b/menu/menu_driver.c index b37097cd87..fad809f655 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -2864,7 +2864,7 @@ bool menu_shader_manager_remove_auto_preset( const char *dir_video_shader, const char *dir_menu_config) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; settings_t *settings = config_get_ptr(); return menu_shader_manager_operate_auto_preset( system, settings->bools.video_shader_preset_save_reference_enable, @@ -2885,7 +2885,7 @@ bool menu_shader_manager_auto_preset_exists( const char *dir_video_shader, const char *dir_menu_config) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; settings_t *settings = config_get_ptr(); return menu_shader_manager_operate_auto_preset( system, settings->bools.video_shader_preset_save_reference_enable, @@ -2916,7 +2916,7 @@ bool menu_shader_manager_save_auto_preset( const char *dir_menu_config, bool apply) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; settings_t *settings = config_get_ptr(); return menu_shader_manager_operate_auto_preset( system, settings->bools.video_shader_preset_save_reference_enable, @@ -5133,7 +5133,7 @@ static const char * msvc_vercode_to_str(const unsigned vercode) * (shown at the top of the UI). */ int menu_entries_get_core_title(char *s, size_t len) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; const char *core_name = (system && !string_is_empty(system->library_name)) ? system->library_name diff --git a/menu/menu_setting.c b/menu/menu_setting.c index f3add34d6a..d9287c099f 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -5422,7 +5422,7 @@ unsigned libretro_device_get_size(unsigned *devices, size_t devices_size, unsign { unsigned types = 0; const struct retro_controller_info *desc = NULL; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; devices[types++] = RETRO_DEVICE_NONE; devices[types++] = RETRO_DEVICE_JOYPAD; @@ -6328,7 +6328,7 @@ static void setting_get_string_representation_uint_libretro_device( unsigned index_offset, device; const struct retro_controller_description *desc = NULL; const char *name = NULL; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; if (!setting) return; @@ -7821,8 +7821,8 @@ static void general_write_handler(rarch_setting_t *setting) break; case MENU_ENUM_LABEL_VIDEO_ROTATION: { - rarch_system_info_t *system = runloop_get_system_info(); video_viewport_t vp; + rarch_system_info_t *system = &runloop_state_get_ptr()->system; struct retro_system_av_info *av_info = video_viewport_get_system_av_info(); video_viewport_t *custom = video_viewport_get_custom(); struct retro_game_geometry *geom = (struct retro_game_geometry*) @@ -8460,7 +8460,7 @@ static bool setting_append_list_input_player_options( rarch_setting_group_info_t group_info; rarch_setting_group_info_t subgroup_info; settings_t *settings = config_get_ptr(); - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; const struct retro_keybind* const defaults = (user == 0) ? retro_keybinds_1 : retro_keybinds_rest; const char *temp_value = msg_hash_to_str diff --git a/network/netplay/netplay_frontend.c b/network/netplay/netplay_frontend.c index 81470615df..a9fd384bfc 100644 --- a/network/netplay/netplay_frontend.c +++ b/network/netplay/netplay_frontend.c @@ -569,7 +569,7 @@ bool netplay_lan_ad_server(netplay_t *netplay) if (strstr(interfaces.entries[k].host, sub) && !strstr(interfaces.entries[k].host, "127.0.0.1")) { - struct retro_system_info *info = &runloop_get_system_info()->info; + struct retro_system_info *info = &runloop_state_get_ptr()->system.info; RARCH_LOG ("[Discovery] Query received on common interface: %s/%s (theirs / ours) \n", reply_addr, interfaces.entries[k].host); @@ -1077,7 +1077,7 @@ static bool netplay_handshake_info(netplay_t *netplay, { struct info_buf_s info_buf; uint32_t content_crc = 0; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; memset(&info_buf, 0, sizeof(info_buf)); info_buf.cmd[0] = htonl(NETPLAY_CMD_INFO); @@ -1417,7 +1417,7 @@ static bool netplay_handshake_pre_info(netplay_t *netplay, ssize_t recvd; uint32_t content_crc = 0; const char *dmsg = NULL; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; RECV(&info_buf, sizeof(info_buf.cmd)) {} diff --git a/retroarch.c b/retroarch.c index 729bdec58e..3823b89169 100644 --- a/retroarch.c +++ b/retroarch.c @@ -27814,15 +27814,6 @@ void runloop_msg_queue_push(const char *msg, RUNLOOP_MSG_QUEUE_UNLOCK(runloop_state); } -void runloop_get_status(bool *is_paused, bool *is_idle, - bool *is_slowmotion, bool *is_perfcnt_enable) -{ - *is_paused = runloop_state.paused; - *is_idle = runloop_state.idle; - *is_slowmotion = runloop_state.slowmotion; - *is_perfcnt_enable = runloop_state.perfcnt_enable; -} - #ifdef HAVE_MENU /* Display the libretro core's framebuffer onscreen. */ static bool menu_display_libretro( @@ -29567,9 +29558,9 @@ end: return 0; } -rarch_system_info_t *runloop_get_system_info(void) +runloop_state_t *runloop_state_get_ptr(void) { - return &runloop_state.system; + return &runloop_state; } void retroarch_force_video_driver_fallback(const char *driver) diff --git a/retroarch.h b/retroarch.h index 9a01d8c722..b5e850fd32 100644 --- a/retroarch.h +++ b/retroarch.h @@ -51,6 +51,8 @@ #include "menu/menu_defines.h" #endif +#include "runloop.h" + RETRO_BEGIN_DECLS #define RETRO_ENVIRONMENT_RETROARCH_START_BLOCK 0x800000 @@ -421,15 +423,10 @@ void runloop_msg_queue_push(const char *msg, char *title, enum message_queue_icon icon, enum message_queue_category category); -void runloop_get_status(bool *is_paused, bool *is_idle, bool *is_slowmotion, - bool *is_perfcnt_enable); - void retroarch_menu_running(void); void retroarch_menu_running_finished(bool quit); -rarch_system_info_t *runloop_get_system_info(void); - void retroarch_force_video_driver_fallback(const char *driver); enum retro_language rarch_get_language_from_iso(const char *lang); @@ -2095,6 +2092,8 @@ typedef enum apple_view_type bool retroarch_get_current_savestate_path(char *path, size_t len); +runloop_state_t *runloop_state_get_ptr(void); + RETRO_END_DECLS #endif diff --git a/tasks/task_content.c b/tasks/task_content.c index 07a56e5b6a..6fe1e4a494 100644 --- a/tasks/task_content.c +++ b/tasks/task_content.c @@ -974,7 +974,7 @@ static bool content_file_load( retro_ctx_load_content_info_t load_info; bool used_vfs_fallback_copy = false; #ifdef __WINRT__ - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; #endif enum rarch_content_type first_content_type = RARCH_CONTENT_NONE; @@ -1543,7 +1543,7 @@ static void task_push_to_history_list( { char tmp[PATH_MAX_LENGTH]; const char *path_content = path_get(RARCH_PATH_CONTENT); - struct retro_system_info *info = &runloop_get_system_info()->info; + struct retro_system_info *info = &runloop_state_get_ptr()->system.info; tmp[0] = '\0'; @@ -1772,7 +1772,7 @@ bool task_push_start_dummy_core(content_ctx_info_t *content_info) char *error_string = NULL; global_t *global = global_get_ptr(); settings_t *settings = config_get_ptr(); - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; const char *path_dir_system = settings->paths.directory_system; bool check_firmware_before_loading = settings->bools.check_firmware_before_loading; @@ -1870,7 +1870,7 @@ bool task_push_load_content_from_playlist_from_menu( char *error_string = NULL; global_t *global = global_get_ptr(); settings_t *settings = config_get_ptr(); - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; const char *path_dir_system = settings->paths.directory_system; #ifndef HAVE_DYNAMIC bool force_core_reload = settings->bools.always_reload_core_on_run_content; @@ -2262,7 +2262,7 @@ static bool task_load_content_internal( bool ret = false; char *error_string = NULL; global_t *global = global_get_ptr(); - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; settings_t *settings = config_get_ptr(); bool check_firmware_before_loading = settings->bools.check_firmware_before_loading; bool set_supports_no_game_enable = settings->bools.set_supports_no_game_enable; @@ -2292,7 +2292,7 @@ static bool task_load_content_internal( if (sys_info) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; content_ctx.set_supports_no_game_enable = set_supports_no_game_enable; @@ -2572,7 +2572,7 @@ void content_clear_subsystem(void) void content_set_subsystem(unsigned idx) { const struct retro_subsystem_info *subsystem; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; content_state_t *p_content = content_state_get_ptr(); /* Core fully loaded, use the subsystem data */ @@ -2601,7 +2601,7 @@ void content_set_subsystem(unsigned idx) /* Sets the subsystem by name */ bool content_set_subsystem_by_name(const char* subsystem_name) { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; unsigned i = 0; /* Core not loaded completely, use the data we peeked on load core */ const struct retro_subsystem_info @@ -2625,7 +2625,7 @@ bool content_set_subsystem_by_name(const char* subsystem_name) void content_get_subsystem_friendly_name(const char* subsystem_name, char* subsystem_friendly_name, size_t len) { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; unsigned i = 0; /* Core not loaded completely, use the data we peeked on load core */ const struct retro_subsystem_info *subsystem = subsystem_data; @@ -2742,7 +2742,7 @@ bool content_init(void) bool ret = true; char *error_string = NULL; global_t *global = global_get_ptr(); - rarch_system_info_t *sys_info = runloop_get_system_info(); + rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; settings_t *settings = config_get_ptr(); bool check_firmware_before_loading = settings->bools.check_firmware_before_loading; bool set_supports_no_game_enable = settings->bools.set_supports_no_game_enable; @@ -2784,7 +2784,7 @@ bool content_init(void) if (sys_info) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; content_ctx.set_supports_no_game_enable = set_supports_no_game_enable; diff --git a/tasks/task_netplay_find_content.c b/tasks/task_netplay_find_content.c index a9a9d99064..ecfda3fb2a 100644 --- a/tasks/task_netplay_find_content.c +++ b/tasks/task_netplay_find_content.c @@ -92,7 +92,7 @@ static void netplay_crc_scan_callback(retro_task_t *task, if (!string_is_empty(state->core_path) && !string_is_empty(state->content_path) && !state->contentless && !state->current) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; RARCH_LOG("[Lobby]: Loading core %s with content file %s\n", state->core_path, state->content_path); @@ -120,7 +120,7 @@ static void netplay_crc_scan_callback(retro_task_t *task, && state->contentless) { content_ctx_info_t content_info = {0}; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; RARCH_LOG("[Lobby]: Loading contentless core %s\n", state->core_path); diff --git a/tasks/task_screenshot.c b/tasks/task_screenshot.c index af338f7b2c..a53c1fc95a 100644 --- a/tasks/task_screenshot.c +++ b/tasks/task_screenshot.c @@ -584,13 +584,16 @@ bool take_screenshot( bool silence, bool has_valid_framebuffer, bool fullpath, bool use_thread) { + runloop_state_t *runloop_st = runloop_state_get_ptr(); bool is_paused = false; bool is_idle = false; - bool is_slowmotion = false; - bool is_perfcnt_enable = false; bool ret = false; - runloop_get_status(&is_paused, &is_idle, &is_slowmotion, &is_perfcnt_enable); + if (runloop_st) + { + is_paused = runloop_st->paused; + is_idle = runloop_st->idle; + } /* No way to infer screenshot directory. */ if ( string_is_empty(screenshot_dir) diff --git a/ui/drivers/qt/qt_dialogs.cpp b/ui/drivers/qt/qt_dialogs.cpp index b209fb6e50..8b8a2b5797 100644 --- a/ui/drivers/qt/qt_dialogs.cpp +++ b/ui/drivers/qt/qt_dialogs.cpp @@ -1122,7 +1122,7 @@ void CoreOptionsDialog::buildLayout() { QString contentLabel; QString label; - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; /* TODO/FIXME - why have this check here? system is not used */ if (system) diff --git a/ui/drivers/ui_cocoa.m b/ui/drivers/ui_cocoa.m index 3ef3f63e84..ddc5730592 100644 --- a/ui/drivers/ui_cocoa.m +++ b/ui/drivers/ui_cocoa.m @@ -686,7 +686,7 @@ static ui_application_t ui_application_cocoa = { { if ((filenames.count == 1) && [filenames objectAtIndex:0]) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; NSString *__core = [filenames objectAtIndex:0]; const char *core_name = system->library_name; @@ -724,7 +724,7 @@ static ui_application_t ui_application_cocoa = { static void open_core_handler(ui_browser_window_state_t *state, bool result) { - rarch_system_info_t *info = &runloop_get_system_info(); + rarch_system_info_t *info = &runloop_state_get_ptr()->system; settings_t *settings = config_get_ptr(); bool set_supports_no_game_enable = settings->bools.set_supports_no_game_enable; @@ -753,7 +753,7 @@ static void open_core_handler(ui_browser_window_state_t *state, bool result) static void open_document_handler( ui_browser_window_state_t *state, bool result) { - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; const char *core_name = system ? system->library_name : NULL; if (!state || string_is_empty(state->result)) diff --git a/ui/drivers/ui_qt.cpp b/ui/drivers/ui_qt.cpp index 7df19a7c98..d10e9ae5b3 100644 --- a/ui/drivers/ui_qt.cpp +++ b/ui/drivers/ui_qt.cpp @@ -2946,7 +2946,7 @@ void MainWindow::onRunClicked() bool MainWindow::isContentLessCore() { - rarch_system_info_t *system = runloop_get_system_info(); + rarch_system_info_t *system = &runloop_state_get_ptr()->system; return system->load_no_content; } @@ -3671,7 +3671,7 @@ void MainWindow::onStopClicked() void MainWindow::setCurrentCoreLabel() { bool update = false; - struct retro_system_info *system = &runloop_get_system_info()->info; + struct retro_system_info *system = &runloop_state_get_ptr()->system.info; QString libraryName = system->library_name; const char *no_core_str = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_CORE);