Prevent reinit at retro_load_game time

This commit is contained in:
twinaphex
2017-01-02 03:36:39 +01:00
parent 89ce055472
commit 768fa482db

View File

@@ -788,7 +788,7 @@ static const keymap bindmap[] = {
{ RETRO_DEVICE_ID_JOYPAD_Y, JOY_B }, { RETRO_DEVICE_ID_JOYPAD_Y, JOY_B },
}; };
static void check_variables(void) static void check_variables(bool startup)
{ {
static int overclock_state = -1; static int overclock_state = -1;
struct retro_variable var = {0}; struct retro_variable var = {0};
@@ -889,7 +889,7 @@ static void check_variables(void)
do_reinit = true; do_reinit = true;
} }
if (do_reinit) if (do_reinit && startup)
{ {
FCEU_KillVirtualVideo(); FCEU_KillVirtualVideo();
FCEU_InitVirtualVideo(); FCEU_InitVirtualVideo();
@@ -1138,7 +1138,7 @@ void retro_run(void)
bool updated = false; bool updated = false;
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE_UPDATE, &updated) && updated) if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE_UPDATE, &updated) && updated)
check_variables(); check_variables(false);
FCEUD_UpdateInput(); FCEUD_UpdateInput();
FCEUI_Emulate(&gfx, &sound, &ssize, 0); FCEUI_Emulate(&gfx, &sound, &ssize, 0);
@@ -1567,7 +1567,7 @@ bool retro_load_game(const struct retro_game_info *game)
retro_set_custom_palette(); retro_set_custom_palette();
FCEUD_SoundToggle(); FCEUD_SoundToggle();
check_variables(); check_variables(true);
FCEUI_DisableFourScore(1); FCEUI_DisableFourScore(1);