mirror of
https://github.com/libretro/RetroArch
synced 2025-02-06 09:40:06 +00:00
Move retroarch.h dependencies out of core_info.c
This commit is contained in:
parent
00cc4ca7aa
commit
3016edce0a
13
core_info.c
13
core_info.c
@ -27,7 +27,6 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "retroarch.h"
|
|
||||||
#include "verbosity.h"
|
#include "verbosity.h"
|
||||||
|
|
||||||
#include "config.def.h"
|
#include "config.def.h"
|
||||||
@ -515,7 +514,8 @@ static core_info_t *core_info_find_internal(
|
|||||||
static bool core_info_list_update_missing_firmware_internal(
|
static bool core_info_list_update_missing_firmware_internal(
|
||||||
core_info_list_t *core_info_list,
|
core_info_list_t *core_info_list,
|
||||||
const char *core,
|
const char *core,
|
||||||
const char *systemdir)
|
const char *systemdir,
|
||||||
|
bool *set_missing_bios)
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
core_info_t *info = NULL;
|
core_info_t *info = NULL;
|
||||||
@ -532,7 +532,6 @@ static bool core_info_list_update_missing_firmware_internal(
|
|||||||
|
|
||||||
path = (char*)malloc(PATH_MAX_LENGTH * sizeof(char));
|
path = (char*)malloc(PATH_MAX_LENGTH * sizeof(char));
|
||||||
path[0] = '\0';
|
path[0] = '\0';
|
||||||
rarch_ctl(RARCH_CTL_UNSET_MISSING_BIOS, NULL);
|
|
||||||
|
|
||||||
for (i = 0; i < info->firmware_count; i++)
|
for (i = 0; i < info->firmware_count; i++)
|
||||||
{
|
{
|
||||||
@ -544,7 +543,7 @@ static bool core_info_list_update_missing_firmware_internal(
|
|||||||
info->firmware[i].missing = !filestream_exists(path);
|
info->firmware[i].missing = !filestream_exists(path);
|
||||||
if (info->firmware[i].missing && !info->firmware[i].optional)
|
if (info->firmware[i].missing && !info->firmware[i].optional)
|
||||||
{
|
{
|
||||||
rarch_ctl(RARCH_CTL_SET_MISSING_BIOS, NULL);
|
*set_missing_bios = true;
|
||||||
RARCH_WARN("Firmware missing: %s\n", info->firmware[i].path);
|
RARCH_WARN("Firmware missing: %s\n", info->firmware[i].path);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -648,13 +647,15 @@ bool core_info_get_list(core_info_list_t **core)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool core_info_list_update_missing_firmware(core_info_ctx_firmware_t *info)
|
bool core_info_list_update_missing_firmware(core_info_ctx_firmware_t *info,
|
||||||
|
bool *set_missing_bios)
|
||||||
{
|
{
|
||||||
if (!info)
|
if (!info)
|
||||||
return false;
|
return false;
|
||||||
return core_info_list_update_missing_firmware_internal(
|
return core_info_list_update_missing_firmware_internal(
|
||||||
core_info_curr_list,
|
core_info_curr_list,
|
||||||
info->path, info->directory.system);
|
info->path, info->directory.system,
|
||||||
|
set_missing_bios);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool core_info_load(core_info_ctx_find_t *info)
|
bool core_info_load(core_info_ctx_find_t *info)
|
||||||
|
@ -113,7 +113,8 @@ bool core_info_init_list(const char *path_info, const char *dir_cores);
|
|||||||
|
|
||||||
bool core_info_get_list(core_info_list_t **core);
|
bool core_info_get_list(core_info_list_t **core);
|
||||||
|
|
||||||
bool core_info_list_update_missing_firmware(core_info_ctx_firmware_t *info);
|
bool core_info_list_update_missing_firmware(core_info_ctx_firmware_t *info,
|
||||||
|
bool *set_missing_bios);
|
||||||
|
|
||||||
bool core_info_find(core_info_ctx_find_t *info, const char *name);
|
bool core_info_find(core_info_ctx_find_t *info, const char *name);
|
||||||
|
|
||||||
|
@ -285,12 +285,21 @@ static int menu_displaylist_parse_core_info(menu_displaylist_info_t *info)
|
|||||||
if (core_info->firmware_count > 0)
|
if (core_info->firmware_count > 0)
|
||||||
{
|
{
|
||||||
core_info_ctx_firmware_t firmware_info;
|
core_info_ctx_firmware_t firmware_info;
|
||||||
|
bool update_missing_firmware = false;
|
||||||
|
bool set_missing_firmware = false;
|
||||||
settings_t *settings = config_get_ptr();
|
settings_t *settings = config_get_ptr();
|
||||||
|
|
||||||
firmware_info.path = core_info->path;
|
firmware_info.path = core_info->path;
|
||||||
firmware_info.directory.system = settings->paths.directory_system;
|
firmware_info.directory.system = settings->paths.directory_system;
|
||||||
|
|
||||||
if (core_info_list_update_missing_firmware(&firmware_info))
|
rarch_ctl(RARCH_CTL_UNSET_MISSING_BIOS, NULL);
|
||||||
|
|
||||||
|
update_missing_firmware = core_info_list_update_missing_firmware(&firmware_info, &set_missing_firmware);
|
||||||
|
|
||||||
|
if (set_missing_firmware)
|
||||||
|
rarch_ctl(RARCH_CTL_SET_MISSING_BIOS, NULL);
|
||||||
|
|
||||||
|
if (update_missing_firmware)
|
||||||
{
|
{
|
||||||
fill_pathname_noext(tmp,
|
fill_pathname_noext(tmp,
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CORE_INFO_FIRMWARE),
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CORE_INFO_FIRMWARE),
|
||||||
|
@ -1009,6 +1009,7 @@ static bool firmware_update_status(
|
|||||||
content_information_ctx_t *content_ctx)
|
content_information_ctx_t *content_ctx)
|
||||||
{
|
{
|
||||||
core_info_ctx_firmware_t firmware_info;
|
core_info_ctx_firmware_t firmware_info;
|
||||||
|
bool set_missing_firmware = false;
|
||||||
core_info_t *core_info = NULL;
|
core_info_t *core_info = NULL;
|
||||||
size_t s_size = PATH_MAX_LENGTH * sizeof(char);
|
size_t s_size = PATH_MAX_LENGTH * sizeof(char);
|
||||||
char *s = (char*)malloc(PATH_MAX_LENGTH * sizeof(char));
|
char *s = (char*)malloc(PATH_MAX_LENGTH * sizeof(char));
|
||||||
@ -1032,7 +1033,13 @@ static bool firmware_update_status(
|
|||||||
RARCH_LOG("Updating firmware status for: %s on %s\n",
|
RARCH_LOG("Updating firmware status for: %s on %s\n",
|
||||||
core_info->path,
|
core_info->path,
|
||||||
firmware_info.directory.system);
|
firmware_info.directory.system);
|
||||||
core_info_list_update_missing_firmware(&firmware_info);
|
|
||||||
|
rarch_ctl(RARCH_CTL_UNSET_MISSING_BIOS, NULL);
|
||||||
|
|
||||||
|
core_info_list_update_missing_firmware(&firmware_info, &set_missing_firmware);
|
||||||
|
|
||||||
|
if (set_missing_firmware)
|
||||||
|
rarch_ctl(RARCH_CTL_SET_MISSING_BIOS, NULL);
|
||||||
|
|
||||||
if(
|
if(
|
||||||
content_ctx->bios_is_missing &&
|
content_ctx->bios_is_missing &&
|
||||||
|
Loading…
x
Reference in New Issue
Block a user