diff --git a/gfx/video_driver.c b/gfx/video_driver.c index 84c13e8b96..36575d0312 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -1133,7 +1133,7 @@ bool video_monitor_get_fps(char *buf, size_t size, static retro_time_t curr_time; static retro_time_t fps_time; uint64_t frame_count = video_driver_get_frame_count(); - global_t *global = global_get_ptr(); + rarch_system_info_t *system = rarch_system_info_get_ptr(); *buf = '\0'; @@ -1154,7 +1154,7 @@ bool video_monitor_get_fps(char *buf, size_t size, curr_time = new_time; snprintf(buf, size, "%s || FPS: %6.1f || Frames: " U64_SIGN, - global->title_buf, last_fps, (unsigned long long)frame_count); + system->title_buf, last_fps, (unsigned long long)frame_count); ret = true; } @@ -1166,7 +1166,7 @@ bool video_monitor_get_fps(char *buf, size_t size, } curr_time = fps_time = new_time; - strlcpy(buf, global->title_buf, size); + strlcpy(buf, system->title_buf, size); if (buf_fps) strlcpy(buf_fps, "N/A", size_fps); diff --git a/retroarch.c b/retroarch.c index 8dec817bb7..1602a0f507 100644 --- a/retroarch.c +++ b/retroarch.c @@ -1087,38 +1087,6 @@ void rarch_main_free(void) config_free(); } -#ifdef HAVE_ZLIB -#define DEFAULT_EXT "zip" -#else -#define DEFAULT_EXT "" -#endif - - -static void init_system_info(void) -{ - global_t *global = global_get_ptr(); - rarch_system_info_t *system = rarch_system_info_get_ptr(); - - pretro_get_system_info(&system->info); - - if (!system->info.library_name) - system->info.library_name = "Unknown"; - if (!system->info.library_version) - system->info.library_version = "v0"; - -#ifndef RARCH_CONSOLE - snprintf(global->title_buf, sizeof(global->title_buf), - RETRO_FRONTEND " : "); -#endif - strlcat(global->title_buf, system->info.library_name, sizeof(global->title_buf)); - strlcat(global->title_buf, " ", sizeof(global->title_buf)); - strlcat(global->title_buf, system->info.library_version, sizeof(global->title_buf)); - strlcpy(system->valid_extensions, system->info.valid_extensions ? - system->info.valid_extensions : DEFAULT_EXT, - sizeof(system->valid_extensions)); - system->block_extract = system->info.block_extract; -} - /* * rarch_verify_api_version: * @@ -1249,7 +1217,7 @@ int rarch_main_init(int argc, char *argv[]) #endif init_libretro_sym(global->core_type); - init_system_info(); + rarch_system_info_init(); init_drivers_pre(); diff --git a/runloop.h b/runloop.h index 75877b9205..3c0e170db0 100644 --- a/runloop.h +++ b/runloop.h @@ -224,8 +224,6 @@ typedef struct global bool use_output_dir; } record; - char title_buf[64]; - struct { struct string_list *list; diff --git a/system.c b/system.c index 1e6404ecf6..db579be37b 100644 --- a/system.c +++ b/system.c @@ -13,7 +13,17 @@ * If not, see . */ +#include + #include "system.h" +#include "dynamic.h" +#include "intl/intl.h" + +#ifdef HAVE_ZLIB +#define DEFAULT_EXT "zip" +#else +#define DEFAULT_EXT "" +#endif static rarch_system_info_t *g_system; @@ -51,3 +61,27 @@ void rarch_system_info_free(void) free(g_system); g_system = NULL; } + +void rarch_system_info_init(void) +{ + rarch_system_info_t *system = rarch_system_info_get_ptr(); + + pretro_get_system_info(&system->info); + + if (!system->info.library_name) + system->info.library_name = "Unknown"; + if (!system->info.library_version) + system->info.library_version = "v0"; + +#ifndef RARCH_CONSOLE + snprintf(system->title_buf, sizeof(system->title_buf), + RETRO_FRONTEND " : "); +#endif + strlcat(system->title_buf, system->info.library_name, sizeof(system->title_buf)); + strlcat(system->title_buf, " ", sizeof(system->title_buf)); + strlcat(system->title_buf, system->info.library_version, sizeof(system->title_buf)); + strlcpy(system->valid_extensions, system->info.valid_extensions ? + system->info.valid_extensions : DEFAULT_EXT, + sizeof(system->valid_extensions)); + system->block_extract = system->info.block_extract; +} diff --git a/system.h b/system.h index a7519b0230..888210e2fa 100644 --- a/system.h +++ b/system.h @@ -26,6 +26,8 @@ extern "C" { typedef struct rarch_system_info { + char title_buf[64]; + struct retro_system_info info; unsigned rotation; @@ -61,6 +63,8 @@ rarch_system_info_t *rarch_system_info_get_ptr(void); void rarch_system_info_free(void); +void rarch_system_info_init(void); + #ifdef __cplusplus } #endif