Move/rename menu_update_system_info to rarch_update_system_info

This commit is contained in:
twinaphex 2014-09-07 07:12:10 +02:00
parent bbc03fe14d
commit 65a2b0c900
9 changed files with 61 additions and 52 deletions

View File

@ -102,7 +102,6 @@ typedef struct
const uint8_t *font;
bool alloc_font;
struct retro_system_info info;
bool load_no_content;
struct gfx_shader *shader;

View File

@ -317,13 +317,13 @@ static void rgui_render(void)
blit_line(RGUI_TERM_START_X + RGUI_TERM_START_X, RGUI_TERM_START_X, title_buf, true);
char title_msg[64];
const char *core_name = driver.menu->info.library_name;
const char *core_name = g_extern.menu.info.library_name;
if (!core_name)
core_name = g_extern.system.info.library_name;
if (!core_name)
core_name = "No Core";
const char *core_version = driver.menu->info.library_version;
const char *core_version = g_extern.menu.info.library_version;
if (!core_version)
core_version = g_extern.system.info.library_version;
if (!core_version)

View File

@ -186,13 +186,13 @@ static void rmenu_render(void)
title_buf, &font_parms);
char title_msg[64];
const char *core_name = menu->info.library_name;
const char *core_name = g_extern.menu.info.library_name;
if (!core_name)
core_name = g_extern.system.info.library_name;
if (!core_name)
core_name = "No Core";
const char *core_version = menu->info.library_version;
const char *core_version = g_extern.menu.info.library_version;
if (!core_version)
core_version = g_extern.system.info.library_version;
if (!core_version)

View File

@ -403,13 +403,13 @@ static void rmenu_xui_render(void)
blit_line(RXUI_TERM_START_X + 15, 15, title_buf, true);
char title_msg[64];
const char *core_name = driver.menu->info.library_name;
const char *core_name = g_extern.menu.info.library_name;
if (!core_name)
core_name = g_extern.system.info.library_name;
if (!core_name)
core_name = "No Core";
const char *core_version = driver.menu->info.library_version;
const char *core_version = g_extern.menu.info.library_version;
if (!core_version)
core_version = g_extern.system.info.library_version;
if (!core_version)

View File

@ -114,7 +114,7 @@ static void get_title(const char *label, const char *dir,
snprintf(title, sizeof_title, "CONTENT %s", dir);
else
{
const char *core_name = driver.menu->info.library_name;
const char *core_name = g_extern.menu.info.library_name;
if (!core_name)
core_name = g_extern.system.info.library_name;
if (!core_name)

View File

@ -19,42 +19,6 @@
#include "menu_entries.h"
#include "../frontend.h"
void menu_update_system_info(menu_handle_t *menu, bool *load_no_content)
{
const core_info_t *info = NULL;
#if defined(HAVE_DYNAMIC) && defined(HAVE_MENU)
libretro_free_system_info(&menu->info);
if (!(*g_settings.libretro))
return;
libretro_get_system_info(g_settings.libretro, &menu->info,
load_no_content);
#endif
if (!g_extern.core_info)
return;
if (!core_info_list_get_info(g_extern.core_info,
g_extern.core_info_current, g_settings.libretro))
return;
/* Keep track of info for the currently selected core. */
info = (const core_info_t*)g_extern.core_info_current;
if (!g_extern.verbosity)
return;
RARCH_LOG("[Core Info]:\n");
if (info->display_name)
RARCH_LOG("Display Name = %s\n", info->display_name);
if (info->supported_extensions)
RARCH_LOG("Supported Extensions = %s\n",
info->supported_extensions);
if (info->authors)
RARCH_LOG("Authors = %s\n", info->authors);
if (info->permissions)
RARCH_LOG("Permissions = %s\n", info->permissions);
}
static void draw_frame(bool enable)
{
if (driver.video_data && driver.video_poke &&
@ -91,7 +55,7 @@ static void throttle_frame(void)
static void menu_update_libretro_info(menu_handle_t *menu)
{
#ifndef HAVE_DYNAMIC
retro_get_system_info(&menu->info);
retro_get_system_info(&g_extern.menu.info);
#endif
core_info_list_free(g_extern.core_info);
@ -99,7 +63,7 @@ static void menu_update_libretro_info(menu_handle_t *menu)
if (*g_settings.libretro_directory)
g_extern.core_info = core_info_list_new(g_settings.libretro_directory);
menu_update_system_info(menu, NULL);
rarch_update_system_info(&g_extern.menu.info, NULL);
}
static void menu_environment_get(int *argc, char *argv[],
@ -136,7 +100,7 @@ bool load_menu_content(void)
content_playlist_push(g_extern.history,
g_extern.fullpath,
g_settings.libretro,
driver.menu->info.library_name);
g_extern.menu.info.library_name);
}
}
@ -246,7 +210,7 @@ void menu_free(void *data)
driver.menu_ctx->free(menu);
#ifdef HAVE_DYNAMIC
libretro_free_system_info(&menu->info);
libretro_free_system_info(&g_extern.menu.info);
#endif
file_list_free(menu->menu_stack);

View File

@ -782,12 +782,12 @@ int menu_parse_and_resolve(file_list_t *list, file_list_t *menu_list)
else if (!strcmp(label, "detect_core_list"))
exts = g_extern.core_info ? core_info_list_get_all_extensions(
g_extern.core_info) : "";
else if (driver.menu->info.valid_extensions)
else if (g_extern.menu.info.valid_extensions)
{
exts = ext_buf;
if (*driver.menu->info.valid_extensions)
if (*g_extern.menu.info.valid_extensions)
snprintf(ext_buf, sizeof(ext_buf), "%s|zip",
driver.menu->info.valid_extensions);
g_extern.menu.info.valid_extensions);
else
*ext_buf = '\0';
}

View File

@ -603,6 +603,13 @@ struct global
bool out_rgb32;
} filter;
#ifdef HAVE_MENU
struct
{
struct retro_system_info info;
} menu;
#endif
msg_queue_t *msg_queue;
bool exec;
@ -831,6 +838,9 @@ int rarch_defer_core(core_info_list_t *data,
const char *dir, const char *path, char *deferred_path,
size_t sizeof_deferred_path);
void rarch_update_system_info(struct retro_system_info *info,
bool *load_no_content);
#ifdef __cplusplus
}
#endif

View File

@ -3384,7 +3384,7 @@ void rarch_main_command(unsigned cmd)
case RARCH_CMD_LOAD_CORE:
#ifdef HAVE_MENU
if (driver.menu)
menu_update_system_info(driver.menu, &driver.menu->load_no_content);
rarch_update_system_info(&g_extern.menu.info, &driver.menu->load_no_content);
#endif
break;
case RARCH_CMD_LOAD_STATE:
@ -3999,3 +3999,39 @@ bool rarch_replace_config(const char *path)
return true;
}
void rarch_update_system_info(struct retro_system_info *_info, bool *load_no_content)
{
const core_info_t *info = NULL;
#if defined(HAVE_DYNAMIC)
libretro_free_system_info(_info);
if (!(*g_settings.libretro))
return;
libretro_get_system_info(g_settings.libretro, _info,
load_no_content);
#endif
if (!g_extern.core_info)
return;
if (!core_info_list_get_info(g_extern.core_info,
g_extern.core_info_current, g_settings.libretro))
return;
/* Keep track of info for the currently selected core. */
info = (const core_info_t*)g_extern.core_info_current;
if (!g_extern.verbosity)
return;
RARCH_LOG("[Core Info]:\n");
if (info->display_name)
RARCH_LOG("Display Name = %s\n", info->display_name);
if (info->supported_extensions)
RARCH_LOG("Supported Extensions = %s\n",
info->supported_extensions);
if (info->authors)
RARCH_LOG("Authors = %s\n", info->authors);
if (info->permissions)
RARCH_LOG("Permissions = %s\n", info->permissions);
}