summaryrefslogtreecommitdiff
path: root/genesis.c
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2020-05-09 23:25:51 -0700
committerMichael Pavone <pavone@retrodev.com>2020-05-09 23:25:51 -0700
commite54367b1c456fdbafe40838c8c602cf14d1bbc1b (patch)
treefcda5ed6bb7ed5176674573a255f5019a99a4369 /genesis.c
parent99637c7a9ae8db68effe0667aaa9c574c9541c22 (diff)
Less hacky run on audio thread mode
Diffstat (limited to 'genesis.c')
-rw-r--r--genesis.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/genesis.c b/genesis.c
index 4ed0261..3c2dc17 100644
--- a/genesis.c
+++ b/genesis.c
@@ -1254,7 +1254,7 @@ static void handle_reset_requests(genesis_context *gen)
resume_68k(gen->m68k);
}
}
- if (render_should_release_on_exit()) {
+ if (gen->header.force_release || render_should_release_on_exit()) {
bindings_release_capture();
vdp_release_framebuffer(gen->vdp);
render_pause_source(gen->ym->audio);
@@ -1302,7 +1302,8 @@ static void start_genesis(system_header *system, char *statefile)
static void resume_genesis(system_header *system)
{
genesis_context *gen = (genesis_context *)system;
- if (render_should_release_on_exit()) {
+ if (gen->header.force_release || render_should_release_on_exit()) {
+ gen->header.force_release = 0;
render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC);
bindings_reacquire_capture();
vdp_reacquire_framebuffer(gen->vdp);