diff options
author | Michael Pavone <pavone@retrodev.com> | 2020-04-18 22:36:13 -0700 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2020-04-18 22:36:13 -0700 |
commit | 50379e379426be665efd31e299891fa849db00d1 (patch) | |
tree | 8d6da310e07a6e5b44577c2936c937db967eca3a /genesis.c | |
parent | 97af82b76f97e95b11a028af786e9e5b1a1977fe (diff) |
WIP new sync mode that runs emulation on audio thread
Diffstat (limited to 'genesis.c')
-rw-r--r-- | genesis.c | 26 |
1 files changed, 13 insertions, 13 deletions
@@ -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); } |