summaryrefslogtreecommitdiff
path: root/genesis.c
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2020-04-18 22:36:13 -0700
committerMichael Pavone <pavone@retrodev.com>2020-04-18 22:36:13 -0700
commit50379e379426be665efd31e299891fa849db00d1 (patch)
tree8d6da310e07a6e5b44577c2936c937db967eca3a /genesis.c
parent97af82b76f97e95b11a028af786e9e5b1a1977fe (diff)
WIP new sync mode that runs emulation on audio thread
Diffstat (limited to 'genesis.c')
-rw-r--r--genesis.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/genesis.c b/genesis.c
index 2365fac..20eb5b1 100644
--- a/genesis.c
+++ b/genesis.c
@@ -1241,12 +1241,12 @@ static void handle_reset_requests(genesis_context *gen)
resume_68k(gen->m68k);
}
}
-#ifndef IS_LIB
- bindings_release_capture();
- vdp_release_framebuffer(gen->vdp);
- render_pause_source(gen->ym->audio);
- render_pause_source(gen->psg->audio);
-#endif
+ if (render_should_release_on_exit()) {
+ bindings_release_capture();
+ vdp_release_framebuffer(gen->vdp);
+ render_pause_source(gen->ym->audio);
+ render_pause_source(gen->psg->audio);
+ }
}
static void start_genesis(system_header *system, char *statefile)
@@ -1289,13 +1289,13 @@ static void start_genesis(system_header *system, char *statefile)
static void resume_genesis(system_header *system)
{
genesis_context *gen = (genesis_context *)system;
-#ifndef IS_LIB
- render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC);
- bindings_reacquire_capture();
- vdp_reacquire_framebuffer(gen->vdp);
- render_resume_source(gen->ym->audio);
- render_resume_source(gen->psg->audio);
-#endif
+ if (render_should_release_on_exit()) {
+ render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC);
+ bindings_reacquire_capture();
+ vdp_reacquire_framebuffer(gen->vdp);
+ render_resume_source(gen->ym->audio);
+ render_resume_source(gen->psg->audio);
+ }
resume_68k(gen->m68k);
handle_reset_requests(gen);
}