diff --git a/audio/audio_driver.c b/audio/audio_driver.c index e0a2354b6e..1f64f28725 100644 --- a/audio/audio_driver.c +++ b/audio/audio_driver.c @@ -353,9 +353,9 @@ static bool audio_driver_init_internal(bool audio_cb_inited) ¤t_audio, &audio_driver_context_audio_data, *settings->audio.device ? settings->audio.device : NULL, - settings->audio.out_rate, &new_rate, - settings->audio.latency, - settings->audio.block_frames, + settings->uints.audio_out_rate, &new_rate, + settings->uints.audio_latency, + settings->uints.audio_block_frames, current_audio)) { RARCH_ERR("Cannot open threaded audio driver ... Exiting ...\n"); @@ -368,15 +368,15 @@ static bool audio_driver_init_internal(bool audio_cb_inited) audio_driver_context_audio_data = current_audio->init(*settings->audio.device ? settings->audio.device : NULL, - settings->audio.out_rate, - settings->audio.latency, - settings->audio.block_frames, + settings->uints.audio_out_rate, + settings->uints.audio_latency, + settings->uints.audio_block_frames, &new_rate); } if (new_rate != 0) { - configuration_set_int(settings, settings->audio.out_rate, new_rate); + configuration_set_int(settings, settings->uints.audio_out_rate, new_rate); } if (!audio_driver_context_audio_data) @@ -400,12 +400,12 @@ static bool audio_driver_init_internal(bool audio_cb_inited) { /* Should never happen. */ RARCH_WARN("Input rate is invalid (%.3f Hz). Using output rate (%u Hz).\n", - audio_driver_input, settings->audio.out_rate); - audio_driver_input = settings->audio.out_rate; + audio_driver_input, settings->uints.audio_out_rate); + audio_driver_input = settings->uints.audio_out_rate; } audio_source_ratio_original = audio_source_ratio_current = - (double)settings->audio.out_rate / audio_driver_input; + (double)settings->uints.audio_out_rate / audio_driver_input; if (!retro_resampler_realloc( &audio_driver_resampler_data, @@ -427,7 +427,7 @@ static bool audio_driver_init_internal(bool audio_cb_inited) audio_driver_input_data = aud_inp_data; audio_driver_data_ptr = 0; - retro_assert(settings->audio.out_rate < + retro_assert(settings->uints.audio_out_rate < audio_driver_input * AUDIO_MAX_RATIO); samples_buf = (float*)malloc(outsamples_max * sizeof(float)); @@ -909,7 +909,7 @@ bool audio_driver_disable_callback(void) void audio_driver_monitor_set_rate(void) { settings_t *settings = config_get_ptr(); - double new_src_ratio = (double)settings->audio.out_rate / + double new_src_ratio = (double)settings->uints.audio_out_rate / audio_driver_input; audio_source_ratio_original = new_src_ratio; diff --git a/camera/camera_driver.c b/camera/camera_driver.c index c9ebdca33b..f7f9644502 100644 --- a/camera/camera_driver.c +++ b/camera/camera_driver.c @@ -224,10 +224,10 @@ bool camera_driver_ctl(enum rarch_camera_ctl_state state, void *data) camera_data = camera_driver->init( *settings->camera.device ? settings->camera.device : NULL, camera_cb.caps, - settings->camera.width ? - settings->camera.width : camera_cb.width, - settings->camera.height ? - settings->camera.height : camera_cb.height); + settings->uints.camera_width ? + settings->uints.camera_width : camera_cb.width, + settings->uints.camera_height ? + settings->uints.camera_height : camera_cb.height); if (!camera_data) { diff --git a/command.c b/command.c index d3d32c9bb5..b3fac788ee 100644 --- a/command.c +++ b/command.c @@ -1403,7 +1403,7 @@ static bool command_event_init_core(enum rarch_core_type *data) if (!event_init_content()) return false; - if (!core_load(settings->input.poll_type_behavior)) + if (!core_load(settings->uints.input_poll_type_behavior)) return false; runloop_ctl(RUNLOOP_CTL_SET_FRAME_LIMIT, NULL); @@ -2174,8 +2174,11 @@ bool command_event(enum event_command cmd, void *data) break; case CMD_EVENT_HISTORY_INIT: { - settings_t *settings = config_get_ptr(); + settings_t *settings = config_get_ptr(); + unsigned content_history_size = settings->uints.content_history_size; + command_event(CMD_EVENT_HISTORY_DEINIT, NULL); + if (!settings->bools.history_list_enable) return false; @@ -2184,7 +2187,7 @@ bool command_event(enum event_command cmd, void *data) settings->path.content_history); g_defaults.content_history = playlist_init( settings->path.content_history, - settings->content_history_size); + content_history_size); #ifdef HAVE_FFMPEG RARCH_LOG("%s: [%s].\n", @@ -2192,14 +2195,14 @@ bool command_event(enum event_command cmd, void *data) settings->path.content_music_history); g_defaults.music_history = playlist_init( settings->path.content_music_history, - settings->content_history_size); + content_history_size); RARCH_LOG("%s: [%s].\n", msg_hash_to_str(MSG_LOADING_HISTORY_FILE), settings->path.content_video_history); g_defaults.video_history = playlist_init( settings->path.content_video_history, - settings->content_history_size); + content_history_size); #endif #ifdef HAVE_IMAGEVIEWER @@ -2208,7 +2211,7 @@ bool command_event(enum event_command cmd, void *data) settings->path.content_image_history); g_defaults.image_history = playlist_init( settings->path.content_image_history, - settings->content_history_size); + content_history_size); #endif } break; @@ -2444,7 +2447,7 @@ bool command_event(enum event_command cmd, void *data) if (!init_netplay( NULL, hostname ? hostname : settings->netplay.server, - settings->netplay.port)) + settings->uints.netplay_port)) { command_event(CMD_EVENT_NETPLAY_DEINIT, NULL); return false; @@ -2458,7 +2461,7 @@ bool command_event(enum event_command cmd, void *data) command_event(CMD_EVENT_NETPLAY_DEINIT, NULL); if (!init_netplay( - data, NULL, settings->netplay.port)) + data, NULL, settings->uints.netplay_port)) { command_event(CMD_EVENT_NETPLAY_DEINIT, NULL); return false; diff --git a/configuration.c b/configuration.c index 6d7b7b0a31..e6fd7d78d5 100644 --- a/configuration.c +++ b/configuration.c @@ -638,7 +638,7 @@ static struct config_path_setting *populate_settings_path(settings_t *settings, /* Paths */ #ifdef HAVE_XMB - SETTING_PATH("xmb_font", settings->menu.xmb.font, false, NULL, true); + SETTING_PATH("xmb_font", settings->menu.xmb_font, false, NULL, true); #endif SETTING_PATH("netplay_nickname", settings->username, false, NULL, true); SETTING_PATH("video_filter", settings->path.softfilter_plugin, false, NULL, true); @@ -949,70 +949,70 @@ static struct config_uint_setting *populate_settings_uint(settings_t *settings, unsigned count = 0; struct config_uint_setting *tmp = NULL; - SETTING_UINT("input_bind_timeout", &settings->input.bind_timeout, true, input_bind_timeout, false); - SETTING_UINT("input_turbo_period", &settings->input.turbo_period, true, turbo_period, false); - SETTING_UINT("input_duty_cycle", &settings->input.turbo_duty_cycle, true, turbo_duty_cycle, false); - SETTING_UINT("input_max_users", &settings->input.max_users, true, input_max_users, false); - SETTING_UINT("input_menu_toggle_gamepad_combo", &settings->input.menu_toggle_gamepad_combo, true, menu_toggle_gamepad_combo, false); - SETTING_UINT("audio_latency", &settings->audio.latency, false, 0 /* TODO */, false); - SETTING_UINT("audio_block_frames", &settings->audio.block_frames, true, 0, false); - SETTING_UINT("rewind_granularity", &settings->rewind_granularity, true, rewind_granularity, false); - SETTING_UINT("autosave_interval", &settings->autosave_interval, true, autosave_interval, false); - SETTING_UINT("libretro_log_level", &settings->libretro_log_level, true, libretro_log_level, false); - SETTING_UINT("keyboard_gamepad_mapping_type",&settings->input.keyboard_gamepad_mapping_type, true, 1, false); - SETTING_UINT("input_poll_type_behavior", &settings->input.poll_type_behavior, true, 2, false); - SETTING_UINT("video_monitor_index", &settings->video.monitor_index, true, monitor_index, false); - SETTING_UINT("video_fullscreen_x", &settings->video.fullscreen_x, true, fullscreen_x, false); - SETTING_UINT("video_fullscreen_y", &settings->video.fullscreen_y, true, fullscreen_y, false); - SETTING_UINT("video_window_x", &settings->video.window_x, true, fullscreen_x, false); - SETTING_UINT("video_window_y", &settings->video.window_y, true, fullscreen_y, false); + SETTING_UINT("input_bind_timeout", &settings->uints.input_bind_timeout, true, input_bind_timeout, false); + SETTING_UINT("input_turbo_period", &settings->uints.input_turbo_period, true, turbo_period, false); + SETTING_UINT("input_duty_cycle", &settings->uints.input_turbo_duty_cycle, true, turbo_duty_cycle, false); + SETTING_UINT("input_max_users", &settings->uints.input_max_users, true, input_max_users, false); + SETTING_UINT("input_menu_toggle_gamepad_combo", &settings->uints.input_menu_toggle_gamepad_combo, true, menu_toggle_gamepad_combo, false); + SETTING_UINT("audio_latency", &settings->uints.audio_latency, false, 0 /* TODO */, false); + SETTING_UINT("audio_block_frames", &settings->uints.audio_block_frames, true, 0, false); + SETTING_UINT("rewind_granularity", &settings->uints.rewind_granularity, true, rewind_granularity, false); + SETTING_UINT("autosave_interval", &settings->uints.autosave_interval, true, autosave_interval, false); + SETTING_UINT("libretro_log_level", &settings->uints.libretro_log_level, true, libretro_log_level, false); + SETTING_UINT("keyboard_gamepad_mapping_type",&settings->uints.input_keyboard_gamepad_mapping_type, true, 1, false); + SETTING_UINT("input_poll_type_behavior", &settings->uints.input_poll_type_behavior, true, 2, false); + SETTING_UINT("video_monitor_index", &settings->uints.video_monitor_index, true, monitor_index, false); + SETTING_UINT("video_fullscreen_x", &settings->uints.video_fullscreen_x, true, fullscreen_x, false); + SETTING_UINT("video_fullscreen_y", &settings->uints.video_fullscreen_y, true, fullscreen_y, false); + SETTING_UINT("video_window_x", &settings->uints.video_window_x, true, fullscreen_x, false); + SETTING_UINT("video_window_y", &settings->uints.video_window_y, true, fullscreen_y, false); #ifdef HAVE_COMMAND - SETTING_UINT("network_cmd_port", &settings->network_cmd_port, true, network_cmd_port, false); + SETTING_UINT("network_cmd_port", &settings->uints.network_cmd_port, true, network_cmd_port, false); #endif #ifdef HAVE_NETWORKGAMEPAD - SETTING_UINT("network_remote_base_port", &settings->network_remote_base_port, true, network_remote_base_port, false); + SETTING_UINT("network_remote_base_port", &settings->uints.network_remote_base_port, true, network_remote_base_port, false); #endif #ifdef GEKKO - SETTING_UINT("video_viwidth", &settings->video.viwidth, true, video_viwidth, false); + SETTING_UINT("video_viwidth", &settings->uints.video_viwidth, true, video_viwidth, false); #endif #ifdef HAVE_MENU - SETTING_UINT("dpi_override_value", &settings->menu.dpi.override_value, true, menu_dpi_override_value, false); - SETTING_UINT("menu_thumbnails", &settings->menu.thumbnails, true, menu_thumbnails_default, false); + SETTING_UINT("dpi_override_value", &settings->uints.menu_dpi_override_value, true, menu_dpi_override_value, false); + SETTING_UINT("menu_thumbnails", &settings->uints.menu_thumbnails, true, menu_thumbnails_default, false); #ifdef HAVE_XMB - SETTING_UINT("xmb_alpha_factor", &settings->menu.xmb.alpha_factor, true, xmb_alpha_factor, false); - SETTING_UINT("xmb_scale_factor", &settings->menu.xmb.scale_factor, true, xmb_scale_factor, false); - SETTING_UINT("xmb_theme", &settings->menu.xmb.theme, true, xmb_icon_theme, false); - SETTING_UINT("xmb_menu_color_theme", &settings->menu.xmb.menu_color_theme, true, xmb_theme, false); + SETTING_UINT("xmb_alpha_factor", &settings->uints.menu_xmb_alpha_factor, true, xmb_alpha_factor, false); + SETTING_UINT("xmb_scale_factor", &settings->uints.menu_xmb_scale_factor, true, xmb_scale_factor, false); + SETTING_UINT("xmb_theme", &settings->uints.menu_xmb_theme, true, xmb_icon_theme, false); + SETTING_UINT("xmb_menu_color_theme", &settings->uints.menu_xmb_color_theme, true, xmb_theme, false); #endif - SETTING_UINT("materialui_menu_color_theme", &settings->menu.materialui.menu_color_theme, true, MATERIALUI_THEME_BLUE, false); + SETTING_UINT("materialui_menu_color_theme", &settings->uints.menu_materialui_color_theme, true, MATERIALUI_THEME_BLUE, false); #ifdef HAVE_SHADERPIPELINE - SETTING_UINT("menu_shader_pipeline", &settings->menu.xmb.shader_pipeline, true, menu_shader_pipeline, false); + SETTING_UINT("menu_shader_pipeline", &settings->uints.menu_xmb_shader_pipeline, true, menu_shader_pipeline, false); #endif #endif - SETTING_UINT("audio_out_rate", &settings->audio.out_rate, true, out_rate, false); + SETTING_UINT("audio_out_rate", &settings->uints.audio_out_rate, true, out_rate, false); SETTING_UINT("custom_viewport_width", &settings->video_viewport_custom.width, false, 0 /* TODO */, false); SETTING_UINT("custom_viewport_height", &settings->video_viewport_custom.height, false, 0 /* TODO */, false); SETTING_UINT("custom_viewport_x", (unsigned*)&settings->video_viewport_custom.x, false, 0 /* TODO */, false); SETTING_UINT("custom_viewport_y", (unsigned*)&settings->video_viewport_custom.y, false, 0 /* TODO */, false); - SETTING_UINT("content_history_size", &settings->content_history_size, true, default_content_history_size, false); - SETTING_UINT("video_hard_sync_frames", &settings->video.hard_sync_frames, true, hard_sync_frames, false); - SETTING_UINT("video_frame_delay", &settings->video.frame_delay, true, frame_delay, false); - SETTING_UINT("video_max_swapchain_images", &settings->video.max_swapchain_images, true, max_swapchain_images, false); - SETTING_UINT("video_swap_interval", &settings->video.swap_interval, true, swap_interval, false); - SETTING_UINT("video_rotation", &settings->video.rotation, true, ORIENTATION_NORMAL, false); - SETTING_UINT("aspect_ratio_index", &settings->video.aspect_ratio_idx, true, aspect_ratio_idx, false); + SETTING_UINT("content_history_size", &settings->uints.content_history_size, true, default_content_history_size, false); + SETTING_UINT("video_hard_sync_frames", &settings->uints.video_hard_sync_frames, true, hard_sync_frames, false); + SETTING_UINT("video_frame_delay", &settings->uints.video_frame_delay, true, frame_delay, false); + SETTING_UINT("video_max_swapchain_images", &settings->uints.video_max_swapchain_images, true, max_swapchain_images, false); + SETTING_UINT("video_swap_interval", &settings->uints.video_swap_interval, true, swap_interval, false); + SETTING_UINT("video_rotation", &settings->uints.video_rotation, true, ORIENTATION_NORMAL, false); + SETTING_UINT("aspect_ratio_index", &settings->uints.video_aspect_ratio_idx, true, aspect_ratio_idx, false); #ifdef HAVE_NETWORKING - SETTING_UINT("netplay_ip_port", &settings->netplay.port, true, RARCH_DEFAULT_PORT, false); - SETTING_UINT("netplay_input_latency_frames_min",&settings->netplay.input_latency_frames_min, true, 0, false); - SETTING_UINT("netplay_input_latency_frames_range",&settings->netplay.input_latency_frames_range, true, 0, false); + SETTING_UINT("netplay_ip_port", &settings->uints.netplay_port, true, RARCH_DEFAULT_PORT, false); + SETTING_UINT("netplay_input_latency_frames_min",&settings->uints.netplay_input_latency_frames_min, true, 0, false); + SETTING_UINT("netplay_input_latency_frames_range",&settings->uints.netplay_input_latency_frames_range, true, 0, false); #endif #ifdef HAVE_LANGEXTRA - SETTING_UINT("user_language", &settings->user_language, true, RETRO_LANGUAGE_ENGLISH, false); + SETTING_UINT("user_language", &settings->uints.user_language, true, RETRO_LANGUAGE_ENGLISH, false); #endif - SETTING_UINT("bundle_assets_extract_version_current", &settings->bundle_assets_extract_version_current, true, 0, false); - SETTING_UINT("bundle_assets_extract_last_version", &settings->bundle_assets_extract_last_version, true, 0, false); + SETTING_UINT("bundle_assets_extract_version_current", &settings->uints.bundle_assets_extract_version_current, true, 0, false); + SETTING_UINT("bundle_assets_extract_last_version", &settings->uints.bundle_assets_extract_last_version, true, 0, false); #ifdef HAVE_WASAPI - SETTING_UINT("audio_wasapi_sh_buffer_length", &settings->audio.wasapi.sh_buffer_length, true, 0, false); + SETTING_UINT("audio_wasapi_sh_buffer_length", &settings->uints.audio_wasapi_sh_buffer_length, true, 0, false); #endif *size = count; @@ -1144,12 +1144,12 @@ static void config_set_defaults(void) strlcpy(settings->menu.driver, def_menu, sizeof(settings->menu.driver)); #ifdef HAVE_XMB - *settings->menu.xmb.font = '\0'; + *settings->menu.xmb_font = '\0'; #endif #ifdef HAVE_MATERIALUI if (g_defaults.menu.materialui.menu_color_theme_enable) - settings->menu.materialui.menu_color_theme = g_defaults.menu.materialui.menu_color_theme; + settings->uints.menu_materialui_color_theme = g_defaults.menu.materialui.menu_color_theme; #endif #endif @@ -1183,24 +1183,24 @@ static void config_set_defaults(void) if (!g_defaults.settings.out_latency) g_defaults.settings.out_latency = out_latency; - settings->audio.latency = g_defaults.settings.out_latency; + settings->uints.audio_latency = g_defaults.settings.out_latency; audio_driver_set_volume_gain(db_to_gain(settings->floats.audio_volume)); settings->rewind_buffer_size = rewind_buffer_size; #ifdef HAVE_LAKKA - settings->ssh_enable = path_file_exists(LAKKA_SSH_PATH); - settings->samba_enable = path_file_exists(LAKKA_SAMBA_PATH); - settings->bluetooth_enable = path_file_exists(LAKKA_BLUETOOTH_PATH); + settings->bools.ssh_enable = path_file_exists(LAKKA_SSH_PATH); + settings->bools.samba_enable = path_file_exists(LAKKA_SAMBA_PATH); + settings->bools.bluetooth_enable = path_file_exists(LAKKA_BLUETOOTH_PATH); #endif #ifdef HAVE_MENU if (first_initialized) settings->bools.menu_show_start_screen = default_menu_show_start_screen; - settings->menu.entry_normal_color = menu_entry_normal_color; - settings->menu.entry_hover_color = menu_entry_hover_color; - settings->menu.title_color = menu_title_color; + settings->uints.menu_entry_normal_color = menu_entry_normal_color; + settings->uints.menu_entry_hover_color = menu_entry_hover_color; + settings->uints.menu_title_color = menu_title_color; #endif #ifdef HAVE_CHEEVOS @@ -1232,8 +1232,8 @@ static void config_set_defaults(void) for (i = 0; i < MAX_USERS; i++) { - settings->input.joypad_map[i] = i; - settings->input.analog_dpad_mode[i] = ANALOG_DPAD_NONE; + settings->uints.input_joypad_map[i] = i; + settings->uints.input_analog_dpad_mode[i] = ANALOG_DPAD_NONE; if (!retroarch_override_setting_is_set(RARCH_OVERRIDE_SETTING_LIBRETRO_DEVICE, &i)) input_config_set_device(i, RETRO_DEVICE_JOYPAD); } @@ -1961,7 +1961,7 @@ static bool config_load_file(const char *path, bool set_defaults, if (!retroarch_override_setting_is_set(RARCH_OVERRIDE_SETTING_NETPLAY_CHECK_FRAMES, NULL)) CONFIG_GET_INT_BASE(conf, settings, ints.netplay_check_frames, "netplay_check_frames"); if (!retroarch_override_setting_is_set(RARCH_OVERRIDE_SETTING_NETPLAY_IP_PORT, NULL)) - CONFIG_GET_INT_BASE(conf, settings, netplay.port, "netplay_ip_port"); + CONFIG_GET_INT_BASE(conf, settings, uints.netplay_port, "netplay_ip_port"); #endif for (i = 0; i < MAX_USERS; i++) { @@ -1970,15 +1970,15 @@ static bool config_load_file(const char *path, bool set_defaults, buf[0] = '\0'; snprintf(buf, sizeof(buf), "input_player%u_joypad_index", i + 1); - CONFIG_GET_INT_BASE(conf, settings, input.joypad_map[i], buf); + CONFIG_GET_INT_BASE(conf, settings, uints.input_joypad_map[i], buf); snprintf(buf, sizeof(buf), "input_player%u_analog_dpad_mode", i + 1); - CONFIG_GET_INT_BASE(conf, settings, input.analog_dpad_mode[i], buf); + CONFIG_GET_INT_BASE(conf, settings, uints.input_analog_dpad_mode[i], buf); if (!retroarch_override_setting_is_set(RARCH_OVERRIDE_SETTING_LIBRETRO_DEVICE, &i)) { snprintf(buf, sizeof(buf), "input_libretro_device_p%u", i + 1); - CONFIG_GET_INT_BASE(conf, settings, input.libretro_device[i], buf); + CONFIG_GET_INT_BASE(conf, settings, uints.input_libretro_device[i], buf); } } { @@ -1999,11 +1999,11 @@ static bool config_load_file(const char *path, bool set_defaults, } #ifdef HAVE_MENU config_get_hex_base(conf, "menu_entry_normal_color", - &settings->menu.entry_normal_color); + &settings->uints.menu_entry_normal_color); config_get_hex_base(conf, "menu_entry_hover_color", - &settings->menu.entry_hover_color); + &settings->uints.menu_entry_hover_color); config_get_hex_base(conf, "menu_title_color", - &settings->menu.title_color); + &settings->uints.menu_title_color); #endif /* Float settings */ @@ -2063,14 +2063,14 @@ static bool config_load_file(const char *path, bool set_defaults, } #endif - if (settings->video.hard_sync_frames > 3) - settings->video.hard_sync_frames = 3; + if (settings->uints.video_hard_sync_frames > 3) + settings->uints.video_hard_sync_frames = 3; - if (settings->video.frame_delay > 15) - settings->video.frame_delay = 15; + if (settings->uints.video_frame_delay > 15) + settings->uints.video_frame_delay = 15; - settings->video.swap_interval = MAX(settings->video.swap_interval, 1); - settings->video.swap_interval = MIN(settings->video.swap_interval, 4); + settings->uints.video_swap_interval = MAX(settings->uints.video_swap_interval, 1); + settings->uints.video_swap_interval = MIN(settings->uints.video_swap_interval, 4); audio_driver_set_volume_gain(db_to_gain(settings->floats.audio_volume)); @@ -3066,7 +3066,7 @@ bool config_save_file(const char *path) #ifdef HAVE_MENU config_set_path(conf, "xmb_font", - !string_is_empty(settings->menu.xmb.font) ? settings->menu.xmb.font : ""); + !string_is_empty(settings->menu.xmb_font) ? settings->menu.xmb_font : ""); #endif /* String settings */ @@ -3119,13 +3119,13 @@ bool config_save_file(const char *path) cfg[0] = '\0'; snprintf(cfg, sizeof(cfg), "input_device_p%u", i + 1); - config_set_int(conf, cfg, settings->input.device[i]); + config_set_int(conf, cfg, settings->uints.input_device[i]); snprintf(cfg, sizeof(cfg), "input_player%u_joypad_index", i + 1); - config_set_int(conf, cfg, settings->input.joypad_map[i]); + config_set_int(conf, cfg, settings->uints.input_joypad_map[i]); snprintf(cfg, sizeof(cfg), "input_libretro_device_p%u", i + 1); config_set_int(conf, cfg, input_config_get_device(i)); snprintf(cfg, sizeof(cfg), "input_player%u_analog_dpad_mode", i + 1); - config_set_int(conf, cfg, settings->input.analog_dpad_mode[i]); + config_set_int(conf, cfg, settings->uints.input_analog_dpad_mode[i]); } /* Boolean settings */ @@ -3163,11 +3163,11 @@ bool config_save_file(const char *path) config_set_hex(conf, "video_message_color", msg_color); #ifdef HAVE_MENU config_set_hex(conf, "menu_entry_normal_color", - settings->menu.entry_normal_color); + settings->uints.menu_entry_normal_color); config_set_hex(conf, "menu_entry_hover_color", - settings->menu.entry_hover_color); + settings->uints.menu_entry_hover_color); config_set_hex(conf, "menu_title_color", - settings->menu.title_color); + settings->uints.menu_title_color); #endif @@ -3387,25 +3387,25 @@ bool config_save_overrides(int override_type) char cfg[64]; cfg[0] = '\0'; - if (settings->input.device[i] != overrides->input.device[i]) + if (settings->uints.input_device[i] != overrides->uints.input_device[i]) { snprintf(cfg, sizeof(cfg), "input_device_p%u", i + 1); - config_set_int(conf, cfg, overrides->input.device[i]); + config_set_int(conf, cfg, overrides->uints.input_device[i]); } - if (settings->input.joypad_map[i] != overrides->input.joypad_map[i]) + if (settings->uints.input_joypad_map[i] != overrides->uints.input_joypad_map[i]) { snprintf(cfg, sizeof(cfg), "input_player%u_joypad_index", i + 1); - config_set_int(conf, cfg, overrides->input.joypad_map[i]); + config_set_int(conf, cfg, overrides->uints.input_joypad_map[i]); } - if (input_config_get_device(i) != overrides->input.libretro_device[i]) + if (input_config_get_device(i) != overrides->uints.input_libretro_device[i]) { snprintf(cfg, sizeof(cfg), "input_libretro_device_p%u", i + 1); - config_set_int(conf, cfg, overrides->input.libretro_device[i]); + config_set_int(conf, cfg, overrides->uints.input_libretro_device[i]); } - if (settings->input.analog_dpad_mode[i] != overrides->input.analog_dpad_mode[i]) + if (settings->uints.input_analog_dpad_mode[i] != overrides->uints.input_analog_dpad_mode[i]) { snprintf(cfg, sizeof(cfg), "input_player%u_analog_dpad_mode", i + 1); - config_set_int(conf, cfg, overrides->input.analog_dpad_mode[i]); + config_set_int(conf, cfg, overrides->uints.input_analog_dpad_mode[i]); } } diff --git a/configuration.h b/configuration.h index 08c0ac1ce6..3b80fdece5 100644 --- a/configuration.h +++ b/configuration.h @@ -251,32 +251,94 @@ typedef struct settings int state_slot; } ints; + struct + { + unsigned placeholder; + unsigned audio_out_rate; + unsigned audio_block_frames; + unsigned audio_latency; + unsigned input_remap_ids[MAX_USERS][RARCH_BIND_LIST_END]; + + unsigned input_max_users; + + /* Set by autoconfiguration in joypad_autoconfig_dir. + * Does not override main binds. */ + unsigned input_libretro_device[MAX_USERS]; + unsigned input_analog_dpad_mode[MAX_USERS]; + + unsigned input_joypad_map[MAX_USERS]; + unsigned input_device[MAX_USERS]; + + unsigned input_turbo_period; + unsigned input_turbo_duty_cycle; + + unsigned input_bind_timeout; + + unsigned input_menu_toggle_gamepad_combo; + unsigned input_keyboard_gamepad_mapping_type; + unsigned input_poll_type_behavior; + unsigned netplay_port; + unsigned netplay_input_latency_frames_min; + unsigned netplay_input_latency_frames_range; + unsigned bundle_assets_extract_version_current; + unsigned bundle_assets_extract_last_version; + unsigned content_history_size; + unsigned libretro_log_level; + unsigned rewind_granularity; + unsigned autosave_interval; + unsigned network_cmd_port; + unsigned network_remote_base_port; +#ifdef HAVE_LANGEXTRA + unsigned user_language; +#endif + unsigned video_window_x; + unsigned video_window_y; + unsigned video_monitor_index; + unsigned video_fullscreen_x; + unsigned video_fullscreen_y; + unsigned video_max_swapchain_images; + unsigned video_swap_interval; + unsigned video_hard_sync_frames; + unsigned video_frame_delay; +#ifdef GEKKO + unsigned video_viwidth; +#endif + unsigned video_aspect_ratio_idx; + unsigned video_rotation; + + unsigned menu_thumbnails; + unsigned menu_dpi_override_value; + unsigned menu_entry_normal_color; + unsigned menu_entry_hover_color; + unsigned menu_title_color; + unsigned menu_xmb_shader_pipeline; + unsigned menu_xmb_scale_factor; + unsigned menu_xmb_alpha_factor; + unsigned menu_xmb_theme; + unsigned menu_xmb_color_theme; + unsigned menu_materialui_color_theme; + + unsigned camera_width; + unsigned camera_height; + +#ifdef HAVE_WASAPI + unsigned audio_wasapi_sh_buffer_length; /* in frames (0 disables buffering) */ +#endif + } uints; + bool modified; video_viewport_t video_viewport_custom; + size_t rewind_buffer_size; + char playlist_names[PATH_MAX_LENGTH]; char playlist_cores[PATH_MAX_LENGTH]; - struct { char driver[32]; char context_driver[32]; - unsigned window_x; - unsigned window_y; - unsigned monitor_index; - unsigned fullscreen_x; - unsigned fullscreen_y; - unsigned max_swapchain_images; - unsigned swap_interval; - unsigned hard_sync_frames; - unsigned frame_delay; -#ifdef GEKKO - unsigned viwidth; -#endif - unsigned aspect_ratio_idx; - unsigned rotation; } video; struct @@ -288,44 +350,14 @@ typedef struct settings struct { char driver[32]; - - unsigned thumbnails; - - struct - { - unsigned override_value; - } dpi; - - - unsigned entry_normal_color; - unsigned entry_hover_color; - unsigned title_color; - - struct - { - unsigned shader_pipeline; - char font[PATH_MAX_LENGTH]; - unsigned scale_factor; - unsigned alpha_factor; - unsigned theme; - unsigned menu_color_theme; - } xmb; - - struct - { - unsigned menu_color_theme; - } materialui; - + char xmb_font[PATH_MAX_LENGTH]; } menu; #endif - struct { char driver[32]; char device[255]; - unsigned width; - unsigned height; } camera; struct @@ -343,16 +375,6 @@ typedef struct settings char driver[32]; char resampler[32]; char device[255]; - unsigned out_rate; - unsigned block_frames; - unsigned latency; - -#ifdef HAVE_WASAPI - struct - { - unsigned sh_buffer_length; /* in frames (0 disables buffering) */ - } wasapi; -#endif } audio; struct @@ -361,28 +383,6 @@ typedef struct settings char joypad_driver[32]; char keyboard_layout[64]; - unsigned remap_ids[MAX_USERS][RARCH_BIND_LIST_END]; - - unsigned max_users; - - - /* Set by autoconfiguration in joypad_autoconfig_dir. - * Does not override main binds. */ - unsigned libretro_device[MAX_USERS]; - unsigned analog_dpad_mode[MAX_USERS]; - - unsigned joypad_map[MAX_USERS]; - unsigned device[MAX_USERS]; - - unsigned turbo_period; - unsigned turbo_duty_cycle; - - - unsigned bind_timeout; - - unsigned menu_toggle_gamepad_combo; - unsigned keyboard_gamepad_mapping_type; - unsigned poll_type_behavior; } input; struct @@ -451,29 +451,12 @@ typedef struct settings struct { char server[255]; - unsigned port; - unsigned input_latency_frames_min; - unsigned input_latency_frames_range; char password[128]; char spectate_password[128]; } netplay; #endif - unsigned bundle_assets_extract_version_current; - unsigned bundle_assets_extract_last_version; - unsigned content_history_size; - unsigned libretro_log_level; - unsigned rewind_granularity; - unsigned autosave_interval; - unsigned network_cmd_port; - unsigned network_remote_base_port; -#ifdef HAVE_LANGEXTRA - unsigned user_language; -#endif - - size_t rewind_buffer_size; - char username[32]; } settings_t; diff --git a/dynamic.c b/dynamic.c index 40c0574746..b36193f40d 100644 --- a/dynamic.c +++ b/dynamic.c @@ -688,7 +688,7 @@ static void rarch_log_libretro(enum retro_log_level level, va_list vp; settings_t *settings = config_get_ptr(); - if ((unsigned)level < settings->libretro_log_level) + if ((unsigned)level < settings->uints.libretro_log_level) return; va_start(vp, fmt); @@ -1078,9 +1078,9 @@ bool rarch_environment_cb(unsigned cmd, void *data) case RETRO_ENVIRONMENT_GET_LANGUAGE: #ifdef HAVE_LANGEXTRA - *(unsigned *)data = settings->user_language; + *(unsigned *)data = settings->uints.user_language; RARCH_LOG("Environ GET_LANGUAGE: \"%u\".\n", - settings->user_language); + settings->uints.user_language); #endif break; @@ -1190,7 +1190,7 @@ bool rarch_environment_cb(unsigned cmd, void *data) } RARCH_LOG("Environ SET_INPUT_DESCRIPTORS:\n"); - for (p = 0; p < settings->input.max_users; p++) + for (p = 0; p < settings->uints.input_max_users; p++) { for (retro_id = 0; retro_id < RARCH_FIRST_CUSTOM_BIND; retro_id++) { diff --git a/file_path_special.c b/file_path_special.c index 3de02f1ded..3c5276d032 100644 --- a/file_path_special.c +++ b/file_path_special.c @@ -447,8 +447,8 @@ void fill_pathname_application_special(char *s, size_t len, enum application_spe { settings_t *settings = config_get_ptr(); - if (!string_is_empty(settings->menu.xmb.font)) - strlcpy(s, settings->menu.xmb.font, len); + if (!string_is_empty(settings->menu.xmb_font)) + strlcpy(s, settings->menu.xmb_font, len); else { char s1[PATH_MAX_LENGTH]; diff --git a/gfx/common/vulkan_common.c b/gfx/common/vulkan_common.c index 4c0963d6d4..1f3aebbaa7 100644 --- a/gfx/common/vulkan_common.c +++ b/gfx/common/vulkan_common.c @@ -2373,8 +2373,8 @@ bool vulkan_create_swapchain(gfx_ctx_vulkan_data_t *vk, desired_swapchain_images = surface_properties.minImageCount + 1; /* Limit latency. */ - if (desired_swapchain_images > settings->video.max_swapchain_images) - desired_swapchain_images = settings->video.max_swapchain_images; + if (desired_swapchain_images > settings->uints.video_max_swapchain_images) + desired_swapchain_images = settings->uints.video_max_swapchain_images; if (desired_swapchain_images < surface_properties.minImageCount) desired_swapchain_images = surface_properties.minImageCount; diff --git a/gfx/common/win32_common.cpp b/gfx/common/win32_common.cpp index 52a3b5e8f8..05cbd428d0 100644 --- a/gfx/common/win32_common.cpp +++ b/gfx/common/win32_common.cpp @@ -243,7 +243,7 @@ void win32_monitor_info(void *data, void *hm_data, unsigned *mon_id) MONITOR_DEFAULTTONEAREST); *hm_to_use = win32_monitor_last; - fs_monitor = settings->video.monitor_index; + fs_monitor = settings->uints.video_monitor_index; if (fs_monitor && fs_monitor <= win32_monitor_count && win32_monitor_all[fs_monitor - 1]) @@ -795,7 +795,7 @@ void win32_set_style(MONITORINFOEX *current_mon, HMONITOR *hm_to_use, * of the display refresh rate, as well as higher vsync swap intervals. */ float refresh_mod = settings->bools.video_black_frame_insertion ? 2.0f : 1.0f; unsigned refresh = roundf(settings->floats.video_refresh_rate - * refresh_mod * settings->video.swap_interval); + * refresh_mod * settings->uints.video_swap_interval); if (fullscreen) { diff --git a/gfx/drivers/d3d.cpp b/gfx/drivers/d3d.cpp index 03889decf0..d11183b8a2 100644 --- a/gfx/drivers/d3d.cpp +++ b/gfx/drivers/d3d.cpp @@ -506,7 +506,7 @@ void d3d_make_d3dpp(void *data, if (info->vsync) { - switch (settings->video.swap_interval) + switch (settings->uints.video_swap_interval) { default: case 1: @@ -701,7 +701,7 @@ static void d3d_calculate_rect(void *data, float desired_aspect = video_driver_get_aspect_ratio(); #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { video_viewport_t *custom = video_viewport_get_custom(); diff --git a/gfx/drivers/exynos_gfx.c b/gfx/drivers/exynos_gfx.c index 743da9c8fe..1ae3b86c82 100644 --- a/gfx/drivers/exynos_gfx.c +++ b/gfx/drivers/exynos_gfx.c @@ -597,13 +597,13 @@ static int exynos_init(struct exynos_data *pdata, unsigned bpp) unsigned i; settings_t *settings = config_get_ptr(); - if (settings->video.fullscreen_x != 0 && - settings->video.fullscreen_y != 0) + if (settings->uints.video_fullscreen_x != 0 && + settings->uints.video_fullscreen_y != 0) { for (i = 0; i < g_drm_connector->count_modes; i++) { - if (g_drm_connector->modes[i].hdisplay == settings->video.fullscreen_x && - g_drm_connector->modes[i].vdisplay == settings->video.fullscreen_y) + if (g_drm_connector->modes[i].hdisplay == settings->uints.video_fullscreen_x && + g_drm_connector->modes[i].vdisplay == settings->uints.video_fullscreen_y) { g_drm_mode = &g_drm_connector->modes[i]; break; @@ -613,7 +613,8 @@ static int exynos_init(struct exynos_data *pdata, unsigned bpp) if (!g_drm_mode) { RARCH_ERR("[video_exynos]: requested resolution (%ux%u) not available\n", - settings->video.fullscreen_x, settings->video.fullscreen_y); + settings->uints.video_fullscreen_x, + settings->uints.video_fullscreen_y); goto fail; } diff --git a/gfx/drivers/gl.c b/gfx/drivers/gl.c index a9b7f5360f..c03cd224ab 100644 --- a/gfx/drivers/gl.c +++ b/gfx/drivers/gl.c @@ -1463,7 +1463,7 @@ static void gl_set_nonblock_state(void *data, bool state) context_bind_hw_render(false); if (!state) - interval = settings->video.swap_interval; + interval = settings->uints.video_swap_interval; video_context_driver_swap_interval(&interval); context_bind_hw_render(true); diff --git a/gfx/drivers/gx_gfx.c b/gfx/drivers/gx_gfx.c index 3196d0eb8b..9fa3b1b7b2 100644 --- a/gfx/drivers/gx_gfx.c +++ b/gfx/drivers/gx_gfx.c @@ -258,7 +258,7 @@ static void gx_set_video_mode(void *data, unsigned fbWidth, unsigned lines, VIDEO_SetBlack(true); VIDEO_Flush(); viHeightMultiplier = 1; - viWidth = settings->video.viwidth; + viWidth = settings->uints.video_viwidth; #if defined(HW_RVL) progressive = CONF_GetProgressiveScan() > 0 && VIDEO_HaveComponentCable(); @@ -890,15 +890,15 @@ static void gx_resize(void *data) g_orientation == ORIENTATION_FLIPPED_ROTATED) desired_aspect = 1.0 / desired_aspect; - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { struct video_viewport *custom_vp = video_viewport_get_custom(); if (!custom_vp->width || !custom_vp->height) { - custom_vp->x = 0; - custom_vp->y = 0; - custom_vp->width = gx->vp.full_width; + custom_vp->x = 0; + custom_vp->y = 0; + custom_vp->width = gx->vp.full_width; custom_vp->height = gx->vp.full_height; } diff --git a/gfx/drivers/omap_gfx.c b/gfx/drivers/omap_gfx.c index 689ff09fe4..bb0118403b 100644 --- a/gfx/drivers/omap_gfx.c +++ b/gfx/drivers/omap_gfx.c @@ -97,7 +97,7 @@ static const char *omapfb_get_fb_device(void) { static char fbname[12] = {0}; settings_t *settings = config_get_ptr(); - const int fbidx = settings->video.monitor_index; + const int fbidx = settings->uints.video_monitor_index; if (fbidx == 0) return "/dev/fb0"; diff --git a/gfx/drivers/psp1_gfx.c b/gfx/drivers/psp1_gfx.c index adecb334df..1c546c3498 100644 --- a/gfx/drivers/psp1_gfx.c +++ b/gfx/drivers/psp1_gfx.c @@ -715,7 +715,7 @@ static void psp_update_viewport(psp1_video_t* psp, { #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { struct video_viewport *custom = video_viewport_get_custom(); diff --git a/gfx/drivers/sdl2_gfx.c b/gfx/drivers/sdl2_gfx.c index cfab098d2d..93ccd2b349 100644 --- a/gfx/drivers/sdl2_gfx.c +++ b/gfx/drivers/sdl2_gfx.c @@ -291,7 +291,7 @@ static void sdl_refresh_viewport(sdl2_video_t *vid) video_viewport_get_scaled_integer(&vid->vp, win_w, win_h, video_driver_get_aspect_ratio(), vid->video.force_aspect); - else if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + else if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { const struct video_viewport *custom = (const struct video_viewport*)video_viewport_get_custom(); diff --git a/gfx/drivers/vita2d_gfx.c b/gfx/drivers/vita2d_gfx.c index 5d488c356d..111a23b7d3 100644 --- a/gfx/drivers/vita2d_gfx.c +++ b/gfx/drivers/vita2d_gfx.c @@ -372,7 +372,7 @@ static void vita2d_gfx_update_viewport(vita_video_t* vita) height = PSP_FB_WIDTH; } #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { struct video_viewport *custom = video_viewport_get_custom(); @@ -472,7 +472,7 @@ static void vita2d_gfx_set_viewport(void *data, unsigned viewport_width, float desired_aspect = video_driver_get_aspect_ratio(); #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { const struct video_viewport *custom = video_viewport_get_custom(); diff --git a/gfx/drivers/vulkan.c b/gfx/drivers/vulkan.c index 24f94ec079..bca30b4f0f 100644 --- a/gfx/drivers/vulkan.c +++ b/gfx/drivers/vulkan.c @@ -1216,7 +1216,7 @@ static void vulkan_set_nonblock_state(void *data, bool state) RARCH_LOG("[Vulkan]: VSync => %s\n", state ? "off" : "on"); - interval = state ? 0 : settings->video.swap_interval; + interval = state ? 0 : settings->uints.video_swap_interval; video_context_driver_swap_interval(&interval); /* Changing vsync might require recreating the swapchain, which means new VkImages @@ -1387,7 +1387,7 @@ static void vulkan_set_viewport(void *data, unsigned viewport_width, float desired_aspect = video_driver_get_aspect_ratio(); #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { const struct video_viewport *custom = video_viewport_get_custom(); diff --git a/gfx/drivers/wiiu_gfx.c b/gfx/drivers/wiiu_gfx.c index 7e72af6202..8fd7ca3594 100644 --- a/gfx/drivers/wiiu_gfx.c +++ b/gfx/drivers/wiiu_gfx.c @@ -173,7 +173,7 @@ static void wiiu_gfx_update_viewport(wiiu_video_t* wiiu) else if (wiiu->keep_aspect) { #if defined(HAVE_MENU) - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { struct video_viewport *custom = video_viewport_get_custom(); diff --git a/gfx/drivers_context/cocoa_gl_ctx.m b/gfx/drivers_context/cocoa_gl_ctx.m index 43270bde8a..d43a888bdc 100644 --- a/gfx/drivers_context/cocoa_gl_ctx.m +++ b/gfx/drivers_context/cocoa_gl_ctx.m @@ -175,13 +175,13 @@ void *get_chosen_screen(void) if (!screens || !settings) return NULL; - if (settings->video.monitor_index >= screens.count) + if (settings->uints.video_monitor_index >= screens.count) { RARCH_WARN("video_monitor_index is greater than the number of connected monitors; using main screen instead."); return (BRIDGE void*)screens; } - return ((BRIDGE void*)[screens objectAtIndex:settings->video.monitor_index]); + return ((BRIDGE void*)[screens objectAtIndex:settings->uints.video_monitor_index]); } diff --git a/gfx/drivers_context/sdl_gl_ctx.c b/gfx/drivers_context/sdl_gl_ctx.c index ae0e05c1fb..7afc5d6858 100644 --- a/gfx/drivers_context/sdl_gl_ctx.c +++ b/gfx/drivers_context/sdl_gl_ctx.c @@ -245,7 +245,7 @@ static void sdl_ctx_get_video_size(void *data, { #ifdef HAVE_SDL2 SDL_DisplayMode mode = {0}; - int i = settings->video.monitor_index; + int i = settings->uints.video_monitor_index; if (SDL_GetCurrentDisplayMode(i, &mode) < 0) RARCH_WARN("[SDL_GL]: Failed to get display #%i mode: %s\n", i, diff --git a/gfx/drivers_context/vc_egl_ctx.c b/gfx/drivers_context/vc_egl_ctx.c index 26e5eea378..fee7c6f2fe 100644 --- a/gfx/drivers_context/vc_egl_ctx.c +++ b/gfx/drivers_context/vc_egl_ctx.c @@ -106,8 +106,8 @@ static void gfx_ctx_vc_get_video_size(void *data, /* Use dispmanx upscaling if * fullscreen_x and fullscreen_y are set. */ - if (settings->video.fullscreen_x != 0 && - settings->video.fullscreen_y != 0) + if (settings->uints.video_fullscreen_x != 0 && + settings->uints.video_fullscreen_y != 0) { /* Keep input and output aspect ratio equal. * There are other aspect ratio settings @@ -115,17 +115,17 @@ static void gfx_ctx_vc_get_video_size(void *data, /* Calculate source and destination aspect ratios. */ - float srcAspect = (float)settings->video.fullscreen_x - / (float)settings->video.fullscreen_y; + float srcAspect = (float)settings->uints.video_fullscreen_x + / (float)settings->uints.video_fullscreen_y; float dstAspect = (float)vc->fb_width / (float)vc->fb_height; /* If source and destination aspect ratios * are not equal correct source width. */ if (srcAspect != dstAspect) - *width = (unsigned)(settings->video.fullscreen_y * dstAspect); + *width = (unsigned)(settings->uints.video_fullscreen_y * dstAspect); else - *width = settings->video.fullscreen_x; - *height = settings->video.fullscreen_y; + *width = settings->uints.video_fullscreen_x; + *height = settings->uints.video_fullscreen_y; } else { @@ -212,21 +212,21 @@ static void *gfx_ctx_vc_init(video_frame_info_t *video_info, void *video_driver) /* Use dispmanx upscaling if fullscreen_x * and fullscreen_y are set. */ - if (settings->video.fullscreen_x != 0 && - settings->video.fullscreen_y != 0) + if (settings->uints.video_fullscreen_x != 0 && + settings->uints.video_fullscreen_y != 0) { /* Keep input and output aspect ratio equal. * There are other aspect ratio settings which can be used to stretch video output. */ /* Calculate source and destination aspect ratios. */ - float srcAspect = (float)settings->video.fullscreen_x / (float)settings->video.fullscreen_y; + float srcAspect = (float)settings->uints.video_fullscreen_x / (float)settings->uints.video_fullscreen_y; float dstAspect = (float)vc->fb_width / (float)vc->fb_height; /* If source and destination aspect ratios are not equal correct source width. */ if (srcAspect != dstAspect) - src_rect.width = (unsigned)(settings->video.fullscreen_y * dstAspect) << 16; + src_rect.width = (unsigned)(settings->uints.video_fullscreen_y * dstAspect) << 16; else - src_rect.width = settings->video.fullscreen_x << 16; - src_rect.height = settings->video.fullscreen_y << 16; + src_rect.width = settings->uints.video_fullscreen_x << 16; + src_rect.height = settings->uints.video_fullscreen_y << 16; } else { @@ -250,24 +250,24 @@ static void *gfx_ctx_vc_init(video_frame_info_t *video_info, void *video_driver) /* Use dispmanx upscaling if fullscreen_x and fullscreen_y are set. */ - if (settings->video.fullscreen_x != 0 && - settings->video.fullscreen_y != 0) + if (settings->uints.video_fullscreen_x != 0 && + settings->uints.video_fullscreen_y != 0) { /* Keep input and output aspect ratio equal. * There are other aspect ratio settings which * can be used to stretch video output. */ /* Calculate source and destination aspect ratios. */ - float srcAspect = (float)settings->video.fullscreen_x - / (float)settings->video.fullscreen_y; + float srcAspect = (float)settings->uints.video_fullscreen_x + / (float)settings->uints.video_fullscreen_y; float dstAspect = (float)vc->fb_width / (float)vc->fb_height; /* If source and destination aspect ratios are not equal correct source width. */ if (srcAspect != dstAspect) - vc->native_window.width = (unsigned)(settings->video.fullscreen_y * dstAspect); + vc->native_window.width = (unsigned)(settings->uints.video_fullscreen_y * dstAspect); else - vc->native_window.width = settings->video.fullscreen_x; - vc->native_window.height = settings->video.fullscreen_y; + vc->native_window.width = settings->uints.video_fullscreen_x; + vc->native_window.height = settings->uints.video_fullscreen_y; } else { diff --git a/gfx/video_driver.c b/gfx/video_driver.c index 9669b76012..43febf98a3 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -721,7 +721,7 @@ static bool video_driver_init_internal(void) /* Update CUSTOM viewport. */ custom_vp = video_viewport_get_custom(); - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { float default_aspect = aspectratio_lut[ASPECT_RATIO_CORE].value; aspectratio_lut[ASPECT_RATIO_CUSTOM].value = @@ -730,19 +730,19 @@ static bool video_driver_init_internal(void) } video_driver_set_aspect_ratio_value( - aspectratio_lut[settings->video.aspect_ratio_idx].value); + aspectratio_lut[settings->uints.video_aspect_ratio_idx].value); if (settings->bools.video_fullscreen) { - width = settings->video.fullscreen_x; - height = settings->video.fullscreen_y; + width = settings->uints.video_fullscreen_x; + height = settings->uints.video_fullscreen_y; } else { - if(settings->video.window_x || settings->video.window_y) + if(settings->uints.video_window_x || settings->uints.video_window_y) { - width = settings->video.window_x; - height = settings->video.window_y; + width = settings->uints.video_window_x; + height = settings->uints.video_window_y; } else { @@ -780,7 +780,7 @@ static bool video_driver_init_internal(void) video.vsync = settings->bools.video_vsync && !runloop_ctl(RUNLOOP_CTL_IS_NONBLOCK_FORCED, NULL); video.force_aspect = settings->bools.video_force_aspect; #ifdef GEKKO - video.viwidth = settings->video.viwidth; + video.viwidth = settings->uints.video_viwidth; video.vfilter = settings->bools.video_vfilter; #endif video.smooth = settings->bools.video_smooth; @@ -788,7 +788,7 @@ static bool video_driver_init_internal(void) video.rgb32 = video_driver_state_filter ? video_driver_state_out_rgb32 : (video_driver_pix_fmt == RETRO_PIXEL_FORMAT_XRGB8888); - video.swap_interval = settings->video.swap_interval; + video.swap_interval = settings->uints.video_swap_interval; video.font_enable = settings->bools.video_font_enable; /* Reset video frame count */ @@ -841,7 +841,7 @@ static bool video_driver_init_internal(void) system = runloop_get_system_info(); video_driver_set_rotation( - (settings->video.rotation + system->rotation) % 4); + (settings->uints.video_rotation + system->rotation) % 4); current_video->suppress_screensaver(video_driver_data, settings->bools.ui_suspend_screensaver_enable); @@ -1544,7 +1544,7 @@ void video_driver_set_aspect_ratio(void) if (!video_driver_poke || !video_driver_poke->set_aspect_ratio) return; video_driver_poke->set_aspect_ratio( - video_driver_data, settings->video.aspect_ratio_idx); + video_driver_data, settings->uints.video_aspect_ratio_idx); } void video_driver_show_mouse(void) @@ -1921,7 +1921,7 @@ void video_viewport_get_scaled_integer(struct video_viewport *vp, int padding_y = 0; settings_t *settings = config_get_ptr(); - if (settings->video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) + if (settings->uints.video_aspect_ratio_idx == ASPECT_RATIO_CUSTOM) { struct video_viewport *custom = video_viewport_get_custom(); @@ -2242,15 +2242,15 @@ void video_driver_build_info(video_frame_info_t *video_info) video_info->black_frame_insertion = settings->bools.video_black_frame_insertion; video_info->hard_sync = settings->bools.video_hard_sync; - video_info->hard_sync_frames = settings->video.hard_sync_frames; + video_info->hard_sync_frames = settings->uints.video_hard_sync_frames; video_info->fps_show = settings->bools.video_fps_show; video_info->scale_integer = settings->bools.video_scale_integer; - video_info->aspect_ratio_idx = settings->video.aspect_ratio_idx; + video_info->aspect_ratio_idx = settings->uints.video_aspect_ratio_idx; video_info->post_filter_record = settings->bools.video_post_filter_record; - video_info->max_swapchain_images = settings->video.max_swapchain_images; + video_info->max_swapchain_images = settings->uints.video_max_swapchain_images; video_info->windowed_fullscreen = settings->bools.video_windowed_fullscreen; video_info->fullscreen = settings->bools.video_fullscreen; - video_info->monitor_index = settings->video.monitor_index; + video_info->monitor_index = settings->uints.video_monitor_index; video_info->shared_context = settings->bools.video_shared_context; video_info->font_enable = settings->bools.video_font_enable; video_info->font_msg_pos_x = settings->floats.video_msg_pos_x; @@ -2271,14 +2271,14 @@ void video_driver_build_info(video_frame_info_t *video_info) video_info->menu_is_alive = menu_driver_is_alive(); video_info->menu_footer_opacity = settings->floats.menu_footer_opacity; video_info->menu_header_opacity = settings->floats.menu_header_opacity; - video_info->materialui_color_theme = settings->menu.materialui.menu_color_theme; - video_info->menu_shader_pipeline = settings->menu.xmb.shader_pipeline; - video_info->xmb_theme = settings->menu.xmb.theme; - video_info->xmb_color_theme = settings->menu.xmb.menu_color_theme; + video_info->materialui_color_theme = settings->uints.menu_materialui_color_theme; + video_info->menu_shader_pipeline = settings->uints.menu_xmb_shader_pipeline; + video_info->xmb_theme = settings->uints.menu_xmb_theme; + video_info->xmb_color_theme = settings->uints.menu_xmb_color_theme; video_info->timedate_enable = settings->bools.menu_timedate_enable; video_info->battery_level_enable = settings->bools.menu_battery_level_enable; video_info->xmb_shadows_enable = settings->bools.menu_xmb_shadows_enable; - video_info->xmb_alpha_factor = settings->menu.xmb.alpha_factor; + video_info->xmb_alpha_factor = settings->uints.menu_xmb_alpha_factor; video_info->menu_wallpaper_opacity = settings->floats.menu_wallpaper_opacity; if (!settings->bools.menu_pause_libretro) diff --git a/input/input_config.c b/input/input_config.c index e09b17814f..6e2978745f 100644 --- a/input/input_config.c +++ b/input/input_config.c @@ -514,13 +514,13 @@ void input_config_clear_device_name(unsigned port) unsigned *input_config_get_device_ptr(unsigned port) { settings_t *settings = config_get_ptr(); - return &settings->input.libretro_device[port]; + return &settings->uints.input_libretro_device[port]; } unsigned input_config_get_device(unsigned port) { settings_t *settings = config_get_ptr(); - return settings->input.libretro_device[port]; + return settings->uints.input_libretro_device[port]; } void input_config_set_device(unsigned port, unsigned id) @@ -528,13 +528,13 @@ void input_config_set_device(unsigned port, unsigned id) settings_t *settings = config_get_ptr(); if (settings) - settings->input.libretro_device[port] = id; + settings->uints.input_libretro_device[port] = id; } bool input_config_get_bind_idx(unsigned port, unsigned *joy_idx_real) { settings_t *settings = config_get_ptr(); - unsigned joy_idx = settings->input.joypad_map[port]; + unsigned joy_idx = settings->uints.input_joypad_map[port]; if (joy_idx >= MAX_USERS) return false; @@ -546,7 +546,7 @@ bool input_config_get_bind_idx(unsigned port, unsigned *joy_idx_real) const struct retro_keybind *input_config_get_bind_auto(unsigned port, unsigned id) { settings_t *settings = config_get_ptr(); - unsigned joy_idx = settings->input.joypad_map[port]; + unsigned joy_idx = settings->uints.input_joypad_map[port]; if (joy_idx < MAX_USERS) return &input_autoconf_binds[joy_idx][id]; diff --git a/input/input_driver.c b/input/input_driver.c index 0cf3b646ba..ed52085188 100644 --- a/input/input_driver.c +++ b/input/input_driver.c @@ -270,7 +270,7 @@ void input_poll(void) { size_t i; settings_t *settings = config_get_ptr(); - unsigned max_users = settings->input.max_users; + unsigned max_users = settings->uints.input_max_users; float axis_threshold = settings->floats.input_axis_threshold; current_input->poll(current_input_data); @@ -286,7 +286,7 @@ void input_poll(void) { rarch_joypad_info_t joypad_info; joypad_info.axis_threshold = axis_threshold; - joypad_info.joy_idx = settings->input.joypad_map[i]; + joypad_info.joy_idx = settings->uints.input_joypad_map[i]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; input_driver_turbo_btns.frame_enable[i] = current_input->input_state( @@ -303,7 +303,7 @@ void input_poll(void) input_poll_overlay( overlay_ptr, settings->floats.input_overlay_opacity, - settings->input.analog_dpad_mode[0], + settings->uints.input_analog_dpad_mode[0], axis_threshold); #endif @@ -357,14 +357,14 @@ int16_t input_state(unsigned port, unsigned device, { case RETRO_DEVICE_JOYPAD: if (id < RARCH_FIRST_CUSTOM_BIND) - id = settings->input.remap_ids[port][id]; + id = settings->uints.input_remap_ids[port][id]; break; case RETRO_DEVICE_ANALOG: if (idx < 2 && id < 2) { unsigned new_id = RARCH_FIRST_CUSTOM_BIND + (idx * 2 + id); - new_id = settings->input.remap_ids[port][new_id]; + new_id = settings->uints.input_remap_ids[port][new_id]; idx = (new_id & 2) >> 1; id = new_id & 1; } @@ -381,7 +381,7 @@ int16_t input_state(unsigned port, unsigned device, rarch_joypad_info_t joypad_info; joypad_info.axis_threshold = settings->floats.input_axis_threshold; - joypad_info.joy_idx = settings->input.joypad_map[port]; + joypad_info.joy_idx = settings->uints.input_joypad_map[port]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; res = current_input->input_state( @@ -420,8 +420,8 @@ int16_t input_state(unsigned port, unsigned device, { /* if turbo button is enabled for this key ID */ res = res && ((input_driver_turbo_btns.count - % settings->input.turbo_period) - < settings->input.turbo_duty_cycle); + % settings->uints.input_turbo_period) + < settings->uints.input_turbo_duty_cycle); } } } @@ -478,13 +478,13 @@ void state_tracker_update_input(uint16_t *input1, uint16_t *input2) unsigned i; const struct retro_keybind *binds[MAX_USERS]; settings_t *settings = config_get_ptr(); - unsigned max_users = settings->input.max_users; + unsigned max_users = settings->uints.input_max_users; for (i = 0; i < max_users; i++) { struct retro_keybind *general_binds = input_config_binds[i]; struct retro_keybind *auto_binds = input_autoconf_binds[i]; - enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->input.analog_dpad_mode[i]; + enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->uints.input_analog_dpad_mode[i]; binds[i] = input_config_binds[i]; if (dpad_mode == ANALOG_DPAD_NONE) @@ -505,7 +505,7 @@ void state_tracker_update_input(uint16_t *input1, uint16_t *input2) if (binds[0][id].valid) { - joypad_info.joy_idx = settings->input.joypad_map[0]; + joypad_info.joy_idx = settings->uints.input_joypad_map[0]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; *input1 |= (current_input->input_state(current_input_data, joypad_info, binds, @@ -513,7 +513,7 @@ void state_tracker_update_input(uint16_t *input1, uint16_t *input2) } if (binds[1][id].valid) { - joypad_info.joy_idx = settings->input.joypad_map[1]; + joypad_info.joy_idx = settings->uints.input_joypad_map[1]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; *input2 |= (current_input->input_state(current_input_data, joypad_info, binds, @@ -556,7 +556,7 @@ static INLINE bool input_menu_keys_pressed_internal( const input_device_driver_t *sec = current_input->get_sec_joypad_driver ? current_input->get_sec_joypad_driver(current_input_data) : NULL; - joypad_info.joy_idx = settings->input.joypad_map[port]; + joypad_info.joy_idx = settings->uints.input_joypad_map[port]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; joypad_info.axis_threshold = settings->floats.input_axis_threshold; @@ -678,7 +678,7 @@ uint64_t input_menu_keys_pressed( settings_t *settings = config_get_ptr(); const struct retro_keybind *binds_norm = NULL; const struct retro_keybind *binds_auto = NULL; - unsigned max_users = settings->input.max_users; + unsigned max_users = settings->uints.input_max_users; if (settings->bools.menu_unified_controls && !menu_input_dialog_get_display_kb()) return input_keys_pressed(old_input, last_input, @@ -710,7 +710,7 @@ uint64_t input_menu_keys_pressed( if (check_input_driver_block_hotkey(binds_norm, binds_auto)) { - joypad_info.joy_idx = settings->input.joypad_map[0]; + joypad_info.joy_idx = settings->uints.input_joypad_map[0]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; const struct retro_keybind *htkey = &input_config_binds[0][RARCH_ENABLE_HOTKEY]; @@ -725,9 +725,9 @@ uint64_t input_menu_keys_pressed( #ifdef HAVE_MENU { const struct retro_keybind *mtkey = &input_config_binds[0][RARCH_MENU_TOGGLE]; - if ( ((settings->input.menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) && + if ( ((settings->uints.input_menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) && input_driver_toggle_button_combo( - settings->input.menu_toggle_gamepad_combo, &old_input)) + settings->uints.input_menu_toggle_gamepad_combo, &old_input)) || input_menu_keys_pressed_internal( binds, settings, joypad_info, RARCH_MENU_TOGGLE, max_users, mtkey->valid, @@ -837,7 +837,7 @@ static INLINE bool input_keys_pressed_internal( { bool bind_valid = binds[i].valid; - joypad_info.joy_idx = settings->input.joypad_map[0]; + joypad_info.joy_idx = settings->uints.input_joypad_map[0]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; joypad_info.axis_threshold = settings->floats.input_axis_threshold; @@ -927,7 +927,7 @@ uint64_t input_keys_pressed( if (check_input_driver_block_hotkey(binds_norm, binds_auto)) { - joypad_info.joy_idx = settings->input.joypad_map[0]; + joypad_info.joy_idx = settings->uints.input_joypad_map[0]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; if ( enable_hotkey->valid && current_input->input_state( @@ -945,7 +945,7 @@ uint64_t input_keys_pressed( if (check_input_driver_block_hotkey( focus_normal, focus_binds_auto) && game_focus_toggle_valid) { - joypad_info.joy_idx = settings->input.joypad_map[0]; + joypad_info.joy_idx = settings->uints.input_joypad_map[0]; joypad_info.auto_binds = input_autoconf_binds[joypad_info.joy_idx]; if (current_input->input_state(current_input_data, joypad_info, &binds, 0, RETRO_DEVICE_JOYPAD, 0, RARCH_GAME_FOCUS_TOGGLE)) @@ -954,8 +954,8 @@ uint64_t input_keys_pressed( #ifdef HAVE_MENU if ( - ((settings->input.menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) && - input_driver_toggle_button_combo(settings->input.menu_toggle_gamepad_combo, &old_input)) + ((settings->uints.input_menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) && + input_driver_toggle_button_combo(settings->uints.input_menu_toggle_gamepad_combo, &old_input)) || input_keys_pressed_internal(settings, joypad_info, RARCH_MENU_TOGGLE, binds)) ret |= (UINT64_C(1) << RARCH_MENU_TOGGLE); #endif @@ -1180,7 +1180,7 @@ bool input_driver_init_command(void) input_driver_command, stdin_cmd_enable && !grab_stdin, network_cmd_enable, - settings->network_cmd_port)) + settings->uints.network_cmd_port)) return true; RARCH_ERR("Failed to initialize command interface.\n"); @@ -1205,7 +1205,7 @@ void input_driver_deinit_remote(void) settings_t *settings = config_get_ptr(); input_remote_free(input_driver_remote, - settings->input.max_users); + settings->uints.input_max_users); } input_driver_remote = NULL; #endif @@ -1220,8 +1220,8 @@ bool input_driver_init_remote(void) return false; input_driver_remote = input_remote_new( - settings->network_remote_base_port, - settings->input.max_users); + settings->uints.network_remote_base_port, + settings->uints.input_max_users); if (input_driver_remote) return true; diff --git a/input/input_remapping.c b/input/input_remapping.c index 2f24a6d717..00fdbe7d99 100644 --- a/input/input_remapping.c +++ b/input/input_remapping.c @@ -65,7 +65,7 @@ bool input_remapping_load_file(void *data, const char *path) key_strings[j], '_', sizeof(key_ident[j])); if (config_get_int(conf, key_ident[j], &key_remap) && key_remap < RARCH_FIRST_CUSTOM_BIND) - settings->input.remap_ids[i][j] = key_remap; + settings->uints.input_remap_ids[i][j] = key_remap; } for (j = 0; j < 4; j++) @@ -80,7 +80,7 @@ bool input_remapping_load_file(void *data, const char *path) if (config_get_int(conf, key_ident[RARCH_FIRST_CUSTOM_BIND + j], &key_remap) && (key_remap < 4)) - settings->input.remap_ids[i][RARCH_FIRST_CUSTOM_BIND + j] = + settings->uints.input_remap_ids[i][RARCH_FIRST_CUSTOM_BIND + j] = key_remap; } } @@ -123,7 +123,7 @@ bool input_remapping_save_file(const char *path) return false; } - for (i = 0; i < settings->input.max_users; i++) + for (i = 0; i < settings->uints.input_max_users; i++) { char buf[64]; char key_ident[RARCH_FIRST_CUSTOM_BIND + 4][128] = {{0}}; @@ -145,15 +145,15 @@ bool input_remapping_save_file(const char *path) /* only save values that have been modified */ if(j < RARCH_FIRST_CUSTOM_BIND) { - if(settings->input.remap_ids[i][j] != j) - config_set_int(conf, key_ident[j], settings->input.remap_ids[i][j]); + if(settings->uints.input_remap_ids[i][j] != j) + config_set_int(conf, key_ident[j], settings->uints.input_remap_ids[i][j]); else config_unset(conf,key_ident[j]); } else { - if(settings->input.remap_ids[i][j] != j - RARCH_FIRST_CUSTOM_BIND) - config_set_int(conf, key_ident[j], settings->input.remap_ids[i][j]); + if(settings->uints.input_remap_ids[i][j] != j - RARCH_FIRST_CUSTOM_BIND) + config_set_int(conf, key_ident[j], settings->uints.input_remap_ids[i][j]); else config_unset(conf,key_ident[j]); } @@ -176,9 +176,9 @@ void input_remapping_set_defaults(void) for (j = 0; j < RARCH_FIRST_CUSTOM_BIND; j++) { const struct retro_keybind *keybind = &input_config_binds[i][j]; - settings->input.remap_ids[i][j] = keybind->id; + settings->uints.input_remap_ids[i][j] = keybind->id; } for (j = 0; j < 4; j++) - settings->input.remap_ids[i][RARCH_FIRST_CUSTOM_BIND + j] = j; + settings->uints.input_remap_ids[i][RARCH_FIRST_CUSTOM_BIND + j] = j; } } diff --git a/menu/cbs/menu_cbs_get_value.c b/menu/cbs/menu_cbs_get_value.c index 83358f713e..e22e9a1e48 100644 --- a/menu/cbs/menu_cbs_get_value.c +++ b/menu/cbs/menu_cbs_get_value.c @@ -204,7 +204,7 @@ static void menu_action_setting_disp_set_label_pipeline( *s = '\0'; *w = 19; - switch (settings->menu.xmb.shader_pipeline) + switch (settings->uints.menu_xmb_shader_pipeline) { case XMB_SHADER_PIPELINE_WALLPAPER: strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); @@ -450,7 +450,7 @@ static void menu_action_setting_disp_set_label_input_desc( descriptor[0] = '\0'; - remap_id = settings->input.remap_ids + remap_id = settings->uints.input_remap_ids [inp_desc_user][inp_desc_button_index_offset]; keybind = &input_config_binds[inp_desc_user][remap_id]; @@ -677,7 +677,7 @@ static void menu_action_setting_disp_set_label_poll_type_behavior( strlcpy(s2, path, len2); *w = 19; - switch (settings->input.poll_type_behavior) + switch (settings->uints.input_poll_type_behavior) { case 0: strlcpy(s, @@ -713,7 +713,7 @@ static void menu_action_setting_disp_set_label_xmb_theme( strlcpy(s2, path, len2); *w = 19; - switch (settings->menu.xmb.theme) + switch (settings->uints.menu_xmb_theme) { case XMB_ICON_THEME_MONOCHROME: strlcpy(s, @@ -783,7 +783,7 @@ static void menu_action_setting_disp_set_label_xmb_menu_color_theme( if (!settings) return; - switch (settings->menu.xmb.menu_color_theme) + switch (settings->uints.menu_xmb_color_theme) { case XMB_THEME_WALLPAPER: strlcpy(s, @@ -865,7 +865,7 @@ static void menu_action_setting_disp_set_label_materialui_menu_color_theme( if (!settings) return; - switch (settings->menu.materialui.menu_color_theme) + switch (settings->uints.menu_materialui_color_theme) { case MATERIALUI_THEME_BLUE: strlcpy(s, @@ -924,7 +924,7 @@ static void menu_action_setting_disp_set_label_thumbnails( strlcpy(s2, path, len2); *w = 19; - switch (settings->menu.thumbnails) + switch (settings->uints.menu_thumbnails) { case 0: strlcpy(s, msg_hash_to_str( @@ -965,7 +965,7 @@ static void menu_action_setting_disp_set_label_menu_toggle_gamepad_combo( strlcpy(s2, path, len2); *w = 19; - switch (settings->input.menu_toggle_gamepad_combo) + switch (settings->uints.input_menu_toggle_gamepad_combo) { case INPUT_TOGGLE_NONE: strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); @@ -1045,7 +1045,7 @@ static void menu_action_setting_disp_set_label_menu_input_keyboard_gamepad_mappi strlcpy(s2, path, len2); - switch (settings->input.keyboard_gamepad_mapping_type) + switch (settings->uints.input_keyboard_gamepad_mapping_type) { case 0: strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); diff --git a/menu/cbs/menu_cbs_left.c b/menu/cbs/menu_cbs_left.c index a3038b3596..ace6cbd240 100644 --- a/menu/cbs/menu_cbs_left.c +++ b/menu/cbs/menu_cbs_left.c @@ -107,8 +107,8 @@ static int action_left_input_desc(unsigned type, const char *label, - (inp_desc_user * (RARCH_FIRST_CUSTOM_BIND + 4)); settings_t *settings = config_get_ptr(); - if (settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset] > 0) - settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset]--; + if (settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset] > 0) + settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset]--; return 0; } diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index 616e77c80c..b204f69190 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -1695,7 +1695,7 @@ static int action_ok_menu_wallpaper_load(const char *path, filebrowser_clear_type(); - settings->menu.xmb.shader_pipeline = XMB_SHADER_PIPELINE_WALLPAPER; + settings->uints.menu_xmb_shader_pipeline = XMB_SHADER_PIPELINE_WALLPAPER; return generic_action_ok(path, label, type, idx, entry_idx, ACTION_OK_LOAD_WALLPAPER, MSG_UNKNOWN); } diff --git a/menu/cbs/menu_cbs_right.c b/menu/cbs/menu_cbs_right.c index 45d5fc10bc..1ddc17733e 100644 --- a/menu/cbs/menu_cbs_right.c +++ b/menu/cbs/menu_cbs_right.c @@ -111,13 +111,13 @@ int action_right_input_desc(unsigned type, const char *label, if (inp_desc_button_index_offset < RARCH_FIRST_CUSTOM_BIND) { - if (settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset] < RARCH_FIRST_CUSTOM_BIND - 1) - settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset]++; + if (settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset] < RARCH_FIRST_CUSTOM_BIND - 1) + settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset]++; } else { - if (settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset] < 4 - 1) - settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset]++; + if (settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset] < 4 - 1) + settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset]++; } return 0; diff --git a/menu/cbs/menu_cbs_scan.c b/menu/cbs/menu_cbs_scan.c index e30fc37e92..bd12c1afde 100644 --- a/menu/cbs/menu_cbs_scan.c +++ b/menu/cbs/menu_cbs_scan.c @@ -103,13 +103,13 @@ int action_switch_thumbnail(const char *path, if (!settings) return -1; - if (settings->menu.thumbnails == 0) + if (settings->uints.menu_thumbnails == 0) return 0; - settings->menu.thumbnails++; + settings->uints.menu_thumbnails++; - if (settings->menu.thumbnails > 3) - settings->menu.thumbnails = 1; + if (settings->uints.menu_thumbnails > 3) + settings->uints.menu_thumbnails = 1; menu_driver_ctl(RARCH_MENU_CTL_UPDATE_THUMBNAIL_PATH, NULL); menu_driver_ctl(RARCH_MENU_CTL_UPDATE_THUMBNAIL_IMAGE, NULL); diff --git a/menu/cbs/menu_cbs_start.c b/menu/cbs/menu_cbs_start.c index 775995179a..468632a765 100644 --- a/menu/cbs/menu_cbs_start.c +++ b/menu/cbs/menu_cbs_start.c @@ -113,10 +113,10 @@ static int action_start_input_desc(unsigned type, const char *label) { const struct retro_keybind *keyptr = &input_config_binds[inp_desc_user] [inp_desc_button_index_offset]; - settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset] = keyptr->id; + settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset] = keyptr->id; } else - settings->input.remap_ids[inp_desc_user][inp_desc_button_index_offset] = + settings->uints.input_remap_ids[inp_desc_user][inp_desc_button_index_offset] = inp_desc_button_index_offset - RARCH_FIRST_CUSTOM_BIND; return 0; diff --git a/menu/drivers/rgui.c b/menu/drivers/rgui.c index dfc97dde27..a5f26b08c3 100644 --- a/menu/drivers/rgui.c +++ b/menu/drivers/rgui.c @@ -72,9 +72,9 @@ static uint16_t *rgui_framebuf_data = NULL; #define NORMAL_COLOR(settings) 0x7FFF #define TITLE_COLOR(settings) HOVER_COLOR(settings) #else -#define HOVER_COLOR(settings) (argb32_to_rgba4444(settings->menu.entry_hover_color)) -#define NORMAL_COLOR(settings) (argb32_to_rgba4444(settings->menu.entry_normal_color)) -#define TITLE_COLOR(settings) (argb32_to_rgba4444(settings->menu.title_color)) +#define HOVER_COLOR(settings) (argb32_to_rgba4444(settings->uints.menu_entry_hover_color)) +#define NORMAL_COLOR(settings) (argb32_to_rgba4444(settings->uints.menu_entry_normal_color)) +#define TITLE_COLOR(settings) (argb32_to_rgba4444(settings->uints.menu_title_color)) static uint16_t argb32_to_rgba4444(uint32_t col) { diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 7987745920..f084edaf13 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -394,7 +394,7 @@ float gradient_dark[16] = { const char* xmb_theme_ident(void) { settings_t *settings = config_get_ptr(); - switch (settings->menu.xmb.theme) + switch (settings->uints.menu_xmb_theme) { case XMB_ICON_THEME_FLATUI: return "flatui"; @@ -422,7 +422,7 @@ static const char *xmb_thumbnails_ident(void) { settings_t *settings = config_get_ptr(); - switch (settings->menu.thumbnails) + switch (settings->uints.menu_thumbnails) { case 1: return "Named_Snaps"; @@ -2924,7 +2924,7 @@ static void xmb_layout_ps3(xmb_handle_t *xmb, int width) settings_t *settings = config_get_ptr(); float scale_factor = - (settings->menu.xmb.scale_factor * width) / (1920.0 * 100); + (settings->uints.menu_xmb_scale_factor * width) / (1920.0 * 100); xmb->above_subitem_offset = 1.5; xmb->above_item_offset = -1.0; @@ -2993,10 +2993,10 @@ static void xmb_layout_psp(xmb_handle_t *xmb, int width) unsigned new_font_size, new_header_height; settings_t *settings = config_get_ptr(); float scale_factor = - ((settings->menu.xmb.scale_factor * width) / (1920.0 * 100)) * 1.5; + ((settings->uints.menu_xmb_scale_factor * width) / (1920.0 * 100)) * 1.5; #ifdef _3DS - scale_factor = settings->menu.xmb.scale_factor / 400.0; + scale_factor = settings->uints.menu_xmb_scale_factor / 400.0; #endif xmb->above_subitem_offset = 1.5; diff --git a/menu/menu_display.c b/menu/menu_display.c index d845f34e2c..e72d9061ee 100644 --- a/menu/menu_display.c +++ b/menu/menu_display.c @@ -441,7 +441,7 @@ float menu_display_get_dpi(void) metrics.value = &dpi; if (settings->bools.menu_dpi_override_enable) - return settings->menu.dpi.override_value; + return settings->uints.menu_dpi_override_value; else if (!video_context_driver_get_metrics(&metrics) || !dpi) return menu_dpi_override_value; diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 3ac69b2d0c..82f078e575 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -3215,7 +3215,7 @@ static int menu_displaylist_parse_options_remappings( if (!menu_driver_ctl(RARCH_MENU_CTL_DRIVER_DATA_GET, &menu)) return -1; - for (p = 0; p < settings->input.max_users; p++) + for (p = 0; p < settings->uints.input_max_users; p++) { char key_type[PATH_MAX_LENGTH]; char key_analog[PATH_MAX_LENGTH]; @@ -3254,7 +3254,7 @@ static int menu_displaylist_parse_options_remappings( if (system) { - for (p = 0; p < settings->input.max_users; p++) + for (p = 0; p < settings->uints.input_max_users; p++) { for (retro_id = 0; retro_id < RARCH_FIRST_CUSTOM_BIND + 4; retro_id++) { @@ -4923,7 +4923,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) PARSE_ONLY_UINT, false) != -1) count++; - for(user = 0; user < settings->input.max_users; user++) + for(user = 0; user < settings->uints.input_max_users; user++) { if (menu_displaylist_parse_settings_enum(menu, info, (enum msg_hash_enums)(MENU_ENUM_LABEL_NETWORK_REMOTE_USER_1_ENABLE + user), @@ -5359,7 +5359,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) { unsigned user; - for (user = 0; user < settings->input.max_users; user++) + for (user = 0; user < settings->uints.input_max_users; user++) { menu_displaylist_parse_settings_enum(menu, info, (enum msg_hash_enums)(MENU_ENUM_LABEL_INPUT_USER_1_BINDS + user), diff --git a/menu/menu_driver.c b/menu/menu_driver.c index 9f47ccf20b..30906cb698 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -160,8 +160,8 @@ static void bundle_decompressed(void *task_data, free(dec); } - settings->bundle_assets_extract_last_version = - settings->bundle_assets_extract_version_current; + settings->uints.bundle_assets_extract_last_version = + settings->uints.bundle_assets_extract_version_current; configuration_set_bool(settings, settings->bools.bundle_finished, true); @@ -201,8 +201,8 @@ static bool menu_init(menu_handle_t *menu_data) #ifdef IOS && menu_dialog_is_push_pending() #else - && (settings->bundle_assets_extract_version_current - != settings->bundle_assets_extract_last_version) + && (settings->uints.bundle_assets_extract_version_current + != settings->uints.bundle_assets_extract_last_version) #endif ) { diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 51a1844ae9..71b73f58fa 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -487,7 +487,7 @@ static void setting_get_string_representation_uint_analog_dpad_mode(void *data, if (setting) { unsigned index_offset = setting->index_offset; - strlcpy(s, modes[settings->input.analog_dpad_mode + strlcpy(s, modes[settings->uints.input_analog_dpad_mode [index_offset] % ANALOG_DPAD_LAST], len); } } @@ -533,7 +533,7 @@ static void setting_get_string_representation_uint_user_language(void *data, modes[RETRO_LANGUAGE_VIETNAMESE] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LANG_VIETNAMESE); if (settings) - strlcpy(s, modes[settings->user_language], len); + strlcpy(s, modes[settings->uints.user_language], len); } #endif @@ -937,7 +937,7 @@ static int setting_action_start_bind_device(void *data) index_offset = setting->index_offset; - configuration_set_uint(settings, settings->input.joypad_map[index_offset], index_offset); + configuration_set_uint(settings, settings->uints.input_joypad_map[index_offset], index_offset); return 0; } @@ -1084,8 +1084,8 @@ static int setting_action_left_analog_dpad_mode(void *data, bool wraparound) port = setting->index_offset; - configuration_set_uint(settings, settings->input.analog_dpad_mode[port], - (settings->input.analog_dpad_mode + configuration_set_uint(settings, settings->uints.input_analog_dpad_mode[port], + (settings->uints.input_analog_dpad_mode [port] + ANALOG_DPAD_LAST - 1) % ANALOG_DPAD_LAST); return 0; @@ -1103,8 +1103,8 @@ static int setting_action_right_analog_dpad_mode(void *data, bool wraparound) port = setting->index_offset; settings->modified = true; - settings->input.analog_dpad_mode[port] = - (settings->input.analog_dpad_mode[port] + 1) + settings->uints.input_analog_dpad_mode[port] = + (settings->uints.input_analog_dpad_mode[port] + 1) % ANALOG_DPAD_LAST; return 0; @@ -1254,10 +1254,10 @@ static int setting_action_left_bind_device(void *data, bool wraparound) index_offset = setting->index_offset; - p = &settings->input.joypad_map[index_offset]; + p = &settings->uints.input_joypad_map[index_offset]; - if ((*p) >= settings->input.max_users) - *p = settings->input.max_users - 1; + if ((*p) >= settings->uints.input_max_users) + *p = settings->uints.input_max_users - 1; else if ((*p) > 0) (*p)--; @@ -1276,9 +1276,9 @@ static int setting_action_right_bind_device(void *data, bool wraparound) index_offset = setting->index_offset; - p = &settings->input.joypad_map[index_offset]; + p = &settings->uints.input_joypad_map[index_offset]; - if (*p < settings->input.max_users) + if (*p < settings->uints.input_max_users) (*p)++; return 0; @@ -1415,9 +1415,9 @@ static void get_string_representation_bind_device(void * data, char *s, return; index_offset = setting->index_offset; - map = settings->input.joypad_map[index_offset]; + map = settings->uints.input_joypad_map[index_offset]; - if (map < settings->input.max_users) + if (map < settings->uints.input_max_users) { const char *device_name = input_config_get_device_name(map); @@ -1500,19 +1500,19 @@ void general_read_handler(void *data) *setting->value.target.fraction = settings->floats.video_refresh_rate; break; case MENU_ENUM_LABEL_INPUT_PLAYER1_JOYPAD_INDEX: - *setting->value.target.integer = settings->input.joypad_map[0]; + *setting->value.target.integer = settings->uints.input_joypad_map[0]; break; case MENU_ENUM_LABEL_INPUT_PLAYER2_JOYPAD_INDEX: - *setting->value.target.integer = settings->input.joypad_map[1]; + *setting->value.target.integer = settings->uints.input_joypad_map[1]; break; case MENU_ENUM_LABEL_INPUT_PLAYER3_JOYPAD_INDEX: - *setting->value.target.integer = settings->input.joypad_map[2]; + *setting->value.target.integer = settings->uints.input_joypad_map[2]; break; case MENU_ENUM_LABEL_INPUT_PLAYER4_JOYPAD_INDEX: - *setting->value.target.integer = settings->input.joypad_map[3]; + *setting->value.target.integer = settings->uints.input_joypad_map[3]; break; case MENU_ENUM_LABEL_INPUT_PLAYER5_JOYPAD_INDEX: - *setting->value.target.integer = settings->input.joypad_map[4]; + *setting->value.target.integer = settings->uints.input_joypad_map[4]; break; default: break; @@ -1626,23 +1626,23 @@ void general_write_handler(void *data) break; case MENU_ENUM_LABEL_INPUT_PLAYER1_JOYPAD_INDEX: settings->modified = true; - settings->input.joypad_map[0] = *setting->value.target.integer; + settings->uints.input_joypad_map[0] = *setting->value.target.integer; break; case MENU_ENUM_LABEL_INPUT_PLAYER2_JOYPAD_INDEX: settings->modified = true; - settings->input.joypad_map[1] = *setting->value.target.integer; + settings->uints.input_joypad_map[1] = *setting->value.target.integer; break; case MENU_ENUM_LABEL_INPUT_PLAYER3_JOYPAD_INDEX: settings->modified = true; - settings->input.joypad_map[2] = *setting->value.target.integer; + settings->uints.input_joypad_map[2] = *setting->value.target.integer; break; case MENU_ENUM_LABEL_INPUT_PLAYER4_JOYPAD_INDEX: settings->modified = true; - settings->input.joypad_map[3] = *setting->value.target.integer; + settings->uints.input_joypad_map[3] = *setting->value.target.integer; break; case MENU_ENUM_LABEL_INPUT_PLAYER5_JOYPAD_INDEX: settings->modified = true; - settings->input.joypad_map[4] = *setting->value.target.integer; + settings->uints.input_joypad_map[4] = *setting->value.target.integer; break; case MENU_ENUM_LABEL_LOG_VERBOSITY: { @@ -1975,7 +1975,7 @@ static bool setting_append_list_input_player_options( CONFIG_UINT_ALT( list, list_info, - &settings->input.analog_dpad_mode[user], + &settings->uints.input_analog_dpad_mode[user], key_analog[user], label_analog[user], user, @@ -2897,7 +2897,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->libretro_log_level, + &settings->uints.libretro_log_level, MENU_ENUM_LABEL_LIBRETRO_LOG_LEVEL, MENU_ENUM_LABEL_VALUE_LIBRETRO_LOG_LEVEL, libretro_log_level, @@ -3010,7 +3010,7 @@ static bool setting_append_list( #ifdef HAVE_THREADS CONFIG_UINT( list, list_info, - &settings->autosave_interval, + &settings->uints.autosave_interval, MENU_ENUM_LABEL_AUTOSAVE_INTERVAL, MENU_ENUM_LABEL_VALUE_AUTOSAVE_INTERVAL, autosave_interval, @@ -3069,7 +3069,7 @@ static bool setting_append_list( #endif CONFIG_UINT( list, list_info, - &settings->rewind_granularity, + &settings->uints.rewind_granularity, MENU_ENUM_LABEL_REWIND_GRANULARITY, MENU_ENUM_LABEL_VALUE_REWIND_GRANULARITY, rewind_granularity, @@ -3136,7 +3136,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.monitor_index, + &settings->uints.video_monitor_index, MENU_ENUM_LABEL_VIDEO_MONITOR_INDEX, MENU_ENUM_LABEL_VALUE_VIDEO_MONITOR_INDEX, monitor_index, @@ -3245,7 +3245,7 @@ static bool setting_append_list( START_SUB_GROUP(list, list_info, "Aspect", &group_info, &subgroup_info, parent_group); CONFIG_UINT( list, list_info, - &settings->video.aspect_ratio_idx, + &settings->uints.video_aspect_ratio_idx, MENU_ENUM_LABEL_VIDEO_ASPECT_RATIO_INDEX, MENU_ENUM_LABEL_VALUE_VIDEO_ASPECT_RATIO_INDEX, aspect_ratio_idx, @@ -3373,7 +3373,7 @@ static bool setting_append_list( settings_data_list_current_add_flags(list, list_info, SD_FLAG_LAKKA_ADVANCED); CONFIG_UINT( list, list_info, - &settings->video.window_x, + &settings->uints.video_window_x, MENU_ENUM_LABEL_VIDEO_WINDOW_WIDTH, MENU_ENUM_LABEL_VALUE_VIDEO_WINDOW_WIDTH, 0, @@ -3386,7 +3386,7 @@ static bool setting_append_list( settings_data_list_current_add_flags(list, list_info, SD_FLAG_LAKKA_ADVANCED); CONFIG_UINT( list, list_info, - &settings->video.window_y, + &settings->uints.video_window_y, MENU_ENUM_LABEL_VIDEO_WINDOW_HEIGHT, MENU_ENUM_LABEL_VALUE_VIDEO_WINDOW_HEIGHT, 0, @@ -3421,7 +3421,7 @@ static bool setting_append_list( #ifdef GEKKO CONFIG_UINT( list, list_info, - &settings->video.viwidth, + &settings->uints.video_viwidth, MENU_ENUM_LABEL_VIDEO_VI_WIDTH, MENU_ENUM_LABEL_VALUE_VIDEO_VI_WIDTH, video_viwidth, @@ -3467,7 +3467,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.rotation, + &settings->uints.video_rotation, MENU_ENUM_LABEL_VIDEO_ROTATION, MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION, 0, @@ -3527,7 +3527,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.swap_interval, + &settings->uints.video_swap_interval, MENU_ENUM_LABEL_VIDEO_SWAP_INTERVAL, MENU_ENUM_LABEL_VALUE_VIDEO_SWAP_INTERVAL, swap_interval, @@ -3543,7 +3543,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.max_swapchain_images, + &settings->uints.video_max_swapchain_images, MENU_ENUM_LABEL_VIDEO_MAX_SWAPCHAIN_IMAGES, MENU_ENUM_LABEL_VALUE_VIDEO_MAX_SWAPCHAIN_IMAGES, max_swapchain_images, @@ -3577,7 +3577,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.hard_sync_frames, + &settings->uints.video_hard_sync_frames, MENU_ENUM_LABEL_VIDEO_HARD_SYNC_FRAMES, MENU_ENUM_LABEL_VALUE_VIDEO_HARD_SYNC_FRAMES, hard_sync_frames, @@ -3592,7 +3592,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->video.frame_delay, + &settings->uints.video_frame_delay, MENU_ENUM_LABEL_VIDEO_FRAME_DELAY, MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY, frame_delay, @@ -3788,7 +3788,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->audio.latency, + &settings->uints.audio_latency, MENU_ENUM_LABEL_AUDIO_LATENCY, MENU_ENUM_LABEL_VALUE_AUDIO_LATENCY, g_defaults.settings.out_latency ? @@ -3848,7 +3848,7 @@ static bool setting_append_list( #ifdef RARCH_MOBILE CONFIG_UINT( list, list_info, - &settings->audio.block_frames, + &settings->uints.audio_block_frames, MENU_ENUM_LABEL_AUDIO_BLOCK_FRAMES, MENU_ENUM_LABEL_VALUE_AUDIO_BLOCK_FRAMES, 0, @@ -3892,7 +3892,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->audio.out_rate, + &settings->uints.audio_out_rate, MENU_ENUM_LABEL_AUDIO_OUTPUT_RATE, MENU_ENUM_LABEL_VALUE_AUDIO_OUTPUT_RATE, out_rate, @@ -3936,7 +3936,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.max_users, + &settings->uints.input_max_users, MENU_ENUM_LABEL_INPUT_MAX_USERS, MENU_ENUM_LABEL_VALUE_INPUT_MAX_USERS, input_max_users, @@ -3967,7 +3967,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.poll_type_behavior, + &settings->uints.input_poll_type_behavior, MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR, MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR, input_poll_type_behavior, @@ -4032,7 +4032,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.keyboard_gamepad_mapping_type, + &settings->uints.input_keyboard_gamepad_mapping_type, MENU_ENUM_LABEL_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE, MENU_ENUM_LABEL_VALUE_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE, 1, @@ -4062,7 +4062,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.menu_toggle_gamepad_combo, + &settings->uints.input_menu_toggle_gamepad_combo, MENU_ENUM_LABEL_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO, MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO, menu_toggle_gamepad_combo, @@ -4200,7 +4200,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.bind_timeout, + &settings->uints.input_bind_timeout, MENU_ENUM_LABEL_INPUT_BIND_TIMEOUT, MENU_ENUM_LABEL_VALUE_INPUT_BIND_TIMEOUT, input_bind_timeout, @@ -4214,7 +4214,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.turbo_period, + &settings->uints.input_turbo_period, MENU_ENUM_LABEL_INPUT_TURBO_PERIOD, MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD, turbo_period, @@ -4228,7 +4228,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->input.turbo_duty_cycle, + &settings->uints.input_turbo_duty_cycle, MENU_ENUM_LABEL_INPUT_DUTY_CYCLE, MENU_ENUM_LABEL_VALUE_INPUT_DUTY_CYCLE, turbo_duty_cycle, @@ -4941,7 +4941,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->menu.dpi.override_value, + &settings->uints.menu_dpi_override_value, MENU_ENUM_LABEL_DPI_OVERRIDE_VALUE, MENU_ENUM_LABEL_VALUE_DPI_OVERRIDE_VALUE, menu_dpi_override_value, @@ -4959,7 +4959,7 @@ static bool setting_append_list( { CONFIG_UINT( list, list_info, - &settings->menu.xmb.alpha_factor, + &settings->uints.menu_xmb_alpha_factor, MENU_ENUM_LABEL_XMB_ALPHA_FACTOR, MENU_ENUM_LABEL_VALUE_XMB_ALPHA_FACTOR, xmb_alpha_factor, @@ -4973,7 +4973,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->menu.xmb.scale_factor, + &settings->uints.menu_xmb_scale_factor, MENU_ENUM_LABEL_XMB_SCALE_FACTOR, MENU_ENUM_LABEL_VALUE_XMB_SCALE_FACTOR, xmb_scale_factor, @@ -4987,11 +4987,11 @@ static bool setting_append_list( CONFIG_PATH( list, list_info, - settings->menu.xmb.font, - sizeof(settings->menu.xmb.font), + settings->menu.xmb_font, + sizeof(settings->menu.xmb_font), MENU_ENUM_LABEL_XMB_FONT, MENU_ENUM_LABEL_VALUE_XMB_FONT, - settings->menu.xmb.font, + settings->menu.xmb_font, &group_info, &subgroup_info, parent_group, @@ -5001,7 +5001,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->menu.xmb.theme, + &settings->uints.menu_xmb_theme, MENU_ENUM_LABEL_XMB_THEME, MENU_ENUM_LABEL_VALUE_XMB_THEME, xmb_icon_theme, @@ -5031,7 +5031,7 @@ static bool setting_append_list( #ifdef HAVE_SHADERPIPELINE CONFIG_UINT( list, list_info, - &settings->menu.xmb.shader_pipeline, + &settings->uints.menu_xmb_shader_pipeline, MENU_ENUM_LABEL_XMB_RIBBON_ENABLE, MENU_ENUM_LABEL_VALUE_XMB_RIBBON_ENABLE, menu_shader_pipeline, @@ -5045,7 +5045,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->menu.xmb.menu_color_theme, + &settings->uints.menu_xmb_color_theme, MENU_ENUM_LABEL_XMB_MENU_COLOR_THEME, MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME, xmb_theme, @@ -5180,7 +5180,7 @@ static bool setting_append_list( { CONFIG_UINT( list, list_info, - &settings->menu.materialui.menu_color_theme, + &settings->uints.menu_materialui_color_theme, MENU_ENUM_LABEL_MATERIALUI_MENU_COLOR_THEME, MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME, MATERIALUI_THEME_BLUE, @@ -5240,7 +5240,7 @@ static bool setting_append_list( { CONFIG_UINT( list, list_info, - &settings->menu.thumbnails, + &settings->uints.menu_thumbnails, MENU_ENUM_LABEL_THUMBNAILS, MENU_ENUM_LABEL_VALUE_THUMBNAILS, menu_thumbnails_default, @@ -5497,7 +5497,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->content_history_size, + &settings->uints.content_history_size, MENU_ENUM_LABEL_CONTENT_HISTORY_SIZE, MENU_ENUM_LABEL_VALUE_CONTENT_HISTORY_SIZE, default_content_history_size, @@ -5707,7 +5707,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->netplay.port, + &settings->uints.netplay_port, MENU_ENUM_LABEL_NETPLAY_TCP_UDP_PORT, MENU_ENUM_LABEL_VALUE_NETPLAY_TCP_UDP_PORT, RARCH_DEFAULT_PORT, @@ -5827,7 +5827,7 @@ static bool setting_append_list( CONFIG_INT( list, list_info, - (int *) &settings->netplay.input_latency_frames_min, + (int *) &settings->uints.netplay_input_latency_frames_min, MENU_ENUM_LABEL_NETPLAY_INPUT_LATENCY_FRAMES_MIN, MENU_ENUM_LABEL_VALUE_NETPLAY_INPUT_LATENCY_FRAMES_MIN, 0, @@ -5840,7 +5840,7 @@ static bool setting_append_list( CONFIG_INT( list, list_info, - (int *) &settings->netplay.input_latency_frames_range, + (int *) &settings->uints.netplay_input_latency_frames_range, MENU_ENUM_LABEL_NETPLAY_INPUT_LATENCY_FRAMES_RANGE, MENU_ENUM_LABEL_VALUE_NETPLAY_INPUT_LATENCY_FRAMES_RANGE, 0, @@ -5912,7 +5912,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->network_cmd_port, + &settings->uints.network_cmd_port, MENU_ENUM_LABEL_NETWORK_CMD_PORT, MENU_ENUM_LABEL_VALUE_NETWORK_CMD_PORT, network_cmd_port, @@ -5941,7 +5941,7 @@ static bool setting_append_list( CONFIG_UINT( list, list_info, - &settings->network_remote_base_port, + &settings->uints.network_remote_base_port, MENU_ENUM_LABEL_NETWORK_REMOTE_PORT, MENU_ENUM_LABEL_VALUE_NETWORK_REMOTE_PORT, network_remote_base_port, @@ -5954,7 +5954,7 @@ static bool setting_append_list( settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED); /* TODO/FIXME - add enum_idx */ - for(user = 0; user < settings->input.max_users; user++) + for(user = 0; user < settings->uints.input_max_users; user++) { char s1[64], s2[64]; @@ -6116,7 +6116,7 @@ static bool setting_append_list( #ifdef HAVE_LANGEXTRA CONFIG_UINT( list, list_info, - &settings->user_language, + &settings->uints.user_language, MENU_ENUM_LABEL_USER_LANGUAGE, MENU_ENUM_LABEL_VALUE_USER_LANGUAGE, def_user_language, diff --git a/menu/widgets/menu_input_bind_dialog.c b/menu/widgets/menu_input_bind_dialog.c index 8589af22d9..0e23e163f1 100644 --- a/menu/widgets/menu_input_bind_dialog.c +++ b/menu/widgets/menu_input_bind_dialog.c @@ -74,7 +74,7 @@ static bool menu_input_key_bind_custom_bind_keyboard_cb( menu_input_binds.begin++; menu_input_binds.target++; - rarch_timer_begin_new_time(&menu_input_binds.timer, settings->input.bind_timeout); + rarch_timer_begin_new_time(&menu_input_binds.timer, settings->uints.input_bind_timeout); return (menu_input_binds.begin <= menu_input_binds.last); } @@ -249,14 +249,14 @@ bool menu_input_key_bind_set_mode( return false; index_offset = setting->index_offset; - menu_bind_port = settings->input.joypad_map[index_offset]; + menu_bind_port = settings->uints.input_joypad_map[index_offset]; menu_input_key_bind_poll_bind_get_rested_axes( &menu_input_binds, menu_bind_port); menu_input_key_bind_poll_bind_state( &menu_input_binds, menu_bind_port, false); - rarch_timer_begin_new_time(&menu_input_binds.timer, settings->input.bind_timeout); + rarch_timer_begin_new_time(&menu_input_binds.timer, settings->uints.input_bind_timeout); keys.userdata = menu; keys.cb = menu_input_key_bind_custom_bind_keyboard_cb; @@ -352,7 +352,7 @@ static bool menu_input_key_bind_poll_find_trigger( if (!state || !new_state) return false; - for (i = 0; i < settings->input.max_users; i++) + for (i = 0; i < settings->uints.input_max_users; i++) { if (!menu_input_key_bind_poll_find_trigger_pad( state, new_state, i)) @@ -392,7 +392,7 @@ bool menu_input_key_bind_iterate(menu_input_ctx_bind_t *bind) menu_input_binds.begin++; menu_input_binds.target++; - rarch_timer_begin_new_time(&menu_input_binds.timer, settings->input.bind_timeout); + rarch_timer_begin_new_time(&menu_input_binds.timer, settings->uints.input_bind_timeout); timed_out = true; } @@ -438,7 +438,7 @@ bool menu_input_key_bind_iterate(menu_input_ctx_bind_t *bind) } binds.target++; - rarch_timer_begin_new_time(&binds.timer, settings->input.bind_timeout); + rarch_timer_begin_new_time(&binds.timer, settings->uints.input_bind_timeout); } menu_input_binds = binds; diff --git a/movie.c b/movie.c index dd351b114a..d3309b5620 100644 --- a/movie.c +++ b/movie.c @@ -334,7 +334,7 @@ static void bsv_movie_init_state(void) 2, 180, false); RARCH_LOG("%s.\n", msg_hash_to_str(MSG_STARTING_MOVIE_PLAYBACK)); - configuration_set_uint(settings, settings->rewind_granularity, 1); + configuration_set_uint(settings, settings->uints.rewind_granularity, 1); } else if (bsv_movie_state.movie_start_recording) { @@ -359,7 +359,7 @@ static void bsv_movie_init_state(void) msg_hash_to_str(MSG_STARTING_MOVIE_RECORD_TO), bsv_movie_state.movie_start_path); - configuration_set_uint(settings, settings->rewind_granularity, 1); + configuration_set_uint(settings, settings->uints.rewind_granularity, 1); } } @@ -504,7 +504,7 @@ static bool runloop_check_movie_init(void) msg[0] = path[0] = '\0'; - configuration_set_uint(settings, settings->rewind_granularity, 1); + configuration_set_uint(settings, settings->uints.rewind_granularity, 1); if (settings->ints.state_slot > 0) snprintf(path, sizeof(path), "%s%d", diff --git a/msg_hash.c b/msg_hash.c index 8305546f69..9137362c9f 100644 --- a/msg_hash.c +++ b/msg_hash.c @@ -36,7 +36,7 @@ int menu_hash_get_help_enum(enum msg_hash_enums msg, char *s, size_t len) goto end; #ifdef HAVE_LANGEXTRA - switch (settings->user_language) + switch (settings->uints.user_language) { case RETRO_LANGUAGE_FRENCH: ret = menu_hash_get_help_fr_enum(msg, s, len); @@ -98,7 +98,7 @@ const char *msg_hash_to_str(enum msg_hash_enums msg) goto end; #ifdef HAVE_LANGEXTRA - switch (settings->user_language) + switch (settings->uints.user_language) { case RETRO_LANGUAGE_FRENCH: ret = msg_hash_to_str_fr(msg); diff --git a/network/netplay/netplay_frontend.c b/network/netplay/netplay_frontend.c index 2ba561f848..28d2579bf4 100644 --- a/network/netplay/netplay_frontend.c +++ b/network/netplay/netplay_frontend.c @@ -240,8 +240,8 @@ static bool netplay_poll(void) (netplay_data->run_frame_count - netplay_data->unread_frame_count) : 0; settings_t *settings = config_get_ptr(); - unsigned input_latency_frames_min = settings->netplay.input_latency_frames_min; - unsigned input_latency_frames_max = input_latency_frames_min + settings->netplay.input_latency_frames_range; + unsigned input_latency_frames_min = settings->uints.netplay_input_latency_frames_min; + unsigned input_latency_frames_max = input_latency_frames_min + settings->uints.netplay_input_latency_frames_range; /* Assume we need a couple frames worth of time to actually run the * current frame */ @@ -622,7 +622,7 @@ static void netplay_announce(void) "game_name=%s&game_crc=%08X&port=%d" "&has_password=%d&has_spectate_password=%d&force_mitm=%d", username, corename, coreversion, gamename, *content_crc_ptr, - settings->netplay.port, + settings->uints.netplay_port, *settings->netplay.password ? 1 : 0, *settings->netplay.spectate_password ? 1 : 0, settings->bools.netplay_use_mitm_server); diff --git a/retroarch.c b/retroarch.c index 717ffda33b..ab5d93f096 100644 --- a/retroarch.c +++ b/retroarch.c @@ -742,7 +742,7 @@ static void retroarch_parse_input(int argc, char *argv[]) settings_t *settings = config_get_ptr(); retroarch_override_setting_set( RARCH_OVERRIDE_SETTING_NETPLAY_IP_PORT, NULL); - configuration_set_uint(settings, settings->netplay.port, (int)strtoul(optarg, NULL, 0)); + configuration_set_uint(settings, settings->uints.netplay_port, (int)strtoul(optarg, NULL, 0)); } break; diff --git a/runloop.c b/runloop.c index d38f2fdeb0..ed5e5704f8 100644 --- a/runloop.c +++ b/runloop.c @@ -983,7 +983,7 @@ static enum runloop_state runloop_check_state( s[0] = '\0'; if (state_manager_check_rewind(runloop_cmd_press(current_input, RARCH_REWIND), - settings->rewind_granularity, runloop_paused, s, sizeof(s), &t)) + settings->uints.rewind_granularity, runloop_paused, s, sizeof(s), &t)) runloop_msg_queue_push(s, 0, t, true); } @@ -1063,6 +1063,7 @@ int runloop_iterate(unsigned *sleep_ms) #else bool menu_is_alive = false; #endif + unsigned max_users = settings->uints.input_max_users; uint64_t current_input = #ifdef HAVE_MENU @@ -1139,11 +1140,11 @@ int runloop_iterate(unsigned *sleep_ms) camera_driver_ctl(RARCH_CAMERA_CTL_POLL, NULL); /* Update binds for analog dpad modes. */ - for (i = 0; i < settings->input.max_users; i++) + for (i = 0; i < max_users; i++) { struct retro_keybind *general_binds = input_config_binds[i]; struct retro_keybind *auto_binds = input_autoconf_binds[i]; - enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->input.analog_dpad_mode[i]; + enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->uints.input_analog_dpad_mode[i]; if (dpad_mode == ANALOG_DPAD_NONE) continue; @@ -1152,8 +1153,8 @@ int runloop_iterate(unsigned *sleep_ms) input_push_analog_dpad(auto_binds, dpad_mode); } - if ((settings->video.frame_delay > 0) && !input_driver_is_nonblock) - retro_sleep(settings->video.frame_delay); + if ((settings->uints.video_frame_delay > 0) && !input_driver_is_nonblock) + retro_sleep(settings->uints.video_frame_delay); core_run(); @@ -1162,11 +1163,11 @@ int runloop_iterate(unsigned *sleep_ms) cheevos_test(); #endif - for (i = 0; i < settings->input.max_users; i++) + for (i = 0; i < max_users; i++) { struct retro_keybind *general_binds = input_config_binds[i]; struct retro_keybind *auto_binds = input_autoconf_binds[i]; - enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->input.analog_dpad_mode[i]; + enum analog_dpad_mode dpad_mode = (enum analog_dpad_mode)settings->uints.input_analog_dpad_mode[i]; if (dpad_mode == ANALOG_DPAD_NONE) continue; diff --git a/tasks/task_autodetect.c b/tasks/task_autodetect.c index 550e46d87e..3676144ecc 100644 --- a/tasks/task_autodetect.c +++ b/tasks/task_autodetect.c @@ -450,7 +450,7 @@ bool input_autoconfigure_connect( state->idx = idx; state->vid = vid; state->pid = pid; - state->max_users = settings->input.max_users; + state->max_users = settings->uints.input_max_users; input_config_set_device_name(state->idx, state->name); input_config_set_pid(state->idx, state->pid); diff --git a/tasks/task_save.c b/tasks/task_save.c index c8e6da4a41..74e83431db 100644 --- a/tasks/task_save.c +++ b/tasks/task_save.c @@ -264,10 +264,11 @@ static void autosave_free(autosave_t *handle) void autosave_init(void) { unsigned i; - autosave_t **list = NULL; - settings_t *settings = config_get_ptr(); + autosave_t **list = NULL; + settings_t *settings = config_get_ptr(); + unsigned autosave_interval = settings->uints.autosave_interval; - if (settings->autosave_interval < 1 || !task_save_files) + if (autosave_interval < 1 || !task_save_files) return; list = (autosave_t**)calloc(task_save_files->size, @@ -294,7 +295,7 @@ void autosave_init(void) autosave_state.list[i] = autosave_new(path, mem_info.data, mem_info.size, - settings->autosave_interval); + autosave_interval); if (!autosave_state.list[i]) RARCH_WARN("%s\n", msg_hash_to_str(MSG_AUTOSAVE_FAILED));