Create RARCH_CMD_LOAD_CORE
This commit is contained in:
parent
d1a85b6d95
commit
176b4f91b6
|
@ -2621,10 +2621,9 @@ static int menu_common_iterate(unsigned action)
|
||||||
}
|
}
|
||||||
else if (menu_type == MENU_SETTINGS_CORE)
|
else if (menu_type == MENU_SETTINGS_CORE)
|
||||||
{
|
{
|
||||||
#if defined(HAVE_DYNAMIC)
|
|
||||||
fill_pathname_join(g_settings.libretro, dir, path, sizeof(g_settings.libretro));
|
fill_pathname_join(g_settings.libretro, dir, path, sizeof(g_settings.libretro));
|
||||||
menu_update_system_info(driver.menu, &driver.menu->load_no_rom);
|
rarch_main_command(RARCH_CMD_LOAD_CORE);
|
||||||
|
#if defined(HAVE_DYNAMIC)
|
||||||
// No ROM needed for this core, load game immediately.
|
// No ROM needed for this core, load game immediately.
|
||||||
if (driver.menu->load_no_rom)
|
if (driver.menu->load_no_rom)
|
||||||
{
|
{
|
||||||
|
@ -2637,13 +2636,9 @@ static int menu_common_iterate(unsigned action)
|
||||||
// Core selection on non-console just updates directory listing.
|
// Core selection on non-console just updates directory listing.
|
||||||
// Will take affect on new ROM load.
|
// Will take affect on new ROM load.
|
||||||
#elif defined(RARCH_CONSOLE)
|
#elif defined(RARCH_CONSOLE)
|
||||||
rarch_environment_cb(RETRO_ENVIRONMENT_SET_LIBRETRO_PATH, (void*)path);
|
|
||||||
|
|
||||||
#if defined(GEKKO) && defined(HW_RVL)
|
#if defined(GEKKO) && defined(HW_RVL)
|
||||||
fill_pathname_join(g_extern.fullpath, g_defaults.core_dir,
|
fill_pathname_join(g_extern.fullpath, g_defaults.core_dir,
|
||||||
SALAMANDER_FILE, sizeof(g_extern.fullpath));
|
SALAMANDER_FILE, sizeof(g_extern.fullpath));
|
||||||
#else
|
|
||||||
fill_pathname_join(g_settings.libretro, dir, path, sizeof(g_settings.libretro));
|
|
||||||
#endif
|
#endif
|
||||||
g_extern.lifecycle_state &= ~(1ULL << MODE_GAME);
|
g_extern.lifecycle_state &= ~(1ULL << MODE_GAME);
|
||||||
g_extern.lifecycle_state |= (1ULL << MODE_EXITSPAWN);
|
g_extern.lifecycle_state |= (1ULL << MODE_EXITSPAWN);
|
||||||
|
@ -2807,7 +2802,7 @@ static int menu_common_iterate(unsigned action)
|
||||||
|
|
||||||
if (ret == -1)
|
if (ret == -1)
|
||||||
{
|
{
|
||||||
menu_update_system_info(driver.menu, &driver.menu->load_no_rom);
|
rarch_main_command(RARCH_CMD_LOAD_CORE);
|
||||||
if (driver.menu_ctx && driver.menu_ctx->backend && driver.menu_ctx->backend->defer_decision_automatic)
|
if (driver.menu_ctx && driver.menu_ctx->backend && driver.menu_ctx->backend->defer_decision_automatic)
|
||||||
driver.menu_ctx->backend->defer_decision_automatic();
|
driver.menu_ctx->backend->defer_decision_automatic();
|
||||||
}
|
}
|
||||||
|
|
|
@ -346,11 +346,8 @@ static int menu_lakka_iterate(unsigned action)
|
||||||
strlcpy(g_settings.libretro, active_category->libretro, sizeof(g_settings.libretro));
|
strlcpy(g_settings.libretro, active_category->libretro, sizeof(g_settings.libretro));
|
||||||
|
|
||||||
#ifdef HAVE_DYNAMIC
|
#ifdef HAVE_DYNAMIC
|
||||||
menu_update_system_info(driver.menu, &driver.menu->load_no_rom);
|
rarch_main_command(RARCH_CMD_LOAD_CORE);
|
||||||
g_extern.lifecycle_state |= (1ULL << MODE_LOAD_GAME);
|
g_extern.lifecycle_state |= (1ULL << MODE_LOAD_GAME);
|
||||||
#else
|
|
||||||
rarch_environment_cb(RETRO_ENVIRONMENT_SET_LIBRETRO_PATH, (void*)g_settings.libretro);
|
|
||||||
rarch_environment_cb(RETRO_ENVIRONMENT_EXEC, (void*)g_extern.fullpath);
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
@ -444,7 +444,7 @@ void load_menu_game_new_core(void)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
#ifdef HAVE_DYNAMIC
|
#ifdef HAVE_DYNAMIC
|
||||||
menu_update_system_info(driver.menu, &driver.menu->load_no_rom);
|
rarch_main_command(RARCH_CMD_LOAD_CORE);
|
||||||
g_extern.lifecycle_state |= (1ULL << MODE_LOAD_GAME);
|
g_extern.lifecycle_state |= (1ULL << MODE_LOAD_GAME);
|
||||||
#else
|
#else
|
||||||
rarch_environment_cb(RETRO_ENVIRONMENT_SET_LIBRETRO_PATH, (void*)g_settings.libretro);
|
rarch_environment_cb(RETRO_ENVIRONMENT_SET_LIBRETRO_PATH, (void*)g_settings.libretro);
|
||||||
|
|
|
@ -91,6 +91,7 @@ enum basic_event
|
||||||
{
|
{
|
||||||
RARCH_CMD_RESET = 1,
|
RARCH_CMD_RESET = 1,
|
||||||
RARCH_CMD_LOAD_CONTENT,
|
RARCH_CMD_LOAD_CONTENT,
|
||||||
|
RARCH_CMD_LOAD_CORE,
|
||||||
RARCH_CMD_LOAD_STATE,
|
RARCH_CMD_LOAD_STATE,
|
||||||
RARCH_CMD_SAVE_STATE,
|
RARCH_CMD_SAVE_STATE,
|
||||||
RARCH_CMD_TAKE_SCREENSHOT,
|
RARCH_CMD_TAKE_SCREENSHOT,
|
||||||
|
|
|
@ -3086,6 +3086,11 @@ void rarch_main_command(unsigned action)
|
||||||
case RARCH_CMD_LOAD_CONTENT:
|
case RARCH_CMD_LOAD_CONTENT:
|
||||||
#ifdef HAVE_MENU
|
#ifdef HAVE_MENU
|
||||||
load_menu_game_new_core();
|
load_menu_game_new_core();
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
case RARCH_CMD_LOAD_CORE:
|
||||||
|
#ifdef HAVE_MENU
|
||||||
|
menu_update_system_info(driver.menu, &driver.menu->load_no_rom);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case RARCH_CMD_LOAD_STATE:
|
case RARCH_CMD_LOAD_STATE:
|
||||||
|
|
Loading…
Reference in New Issue