Mercurial > repos > blastem
comparison genesis.c @ 1932:b387f1c5a1d0
WIP new sync mode that runs emulation on audio thread
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 18 Apr 2020 22:36:13 -0700 |
parents | 9fd4bedc1a31 |
children | 2c1c88cd1a3f c3c62dbf1ceb |
comparison
equal
deleted
inserted
replaced
1930:0f135b214927 | 1932:b387f1c5a1d0 |
---|---|
1239 load_state(&gen->header, gen->header.delayed_load_slot - 1); | 1239 load_state(&gen->header, gen->header.delayed_load_slot - 1); |
1240 gen->header.delayed_load_slot = 0; | 1240 gen->header.delayed_load_slot = 0; |
1241 resume_68k(gen->m68k); | 1241 resume_68k(gen->m68k); |
1242 } | 1242 } |
1243 } | 1243 } |
1244 #ifndef IS_LIB | 1244 if (render_should_release_on_exit()) { |
1245 bindings_release_capture(); | 1245 bindings_release_capture(); |
1246 vdp_release_framebuffer(gen->vdp); | 1246 vdp_release_framebuffer(gen->vdp); |
1247 render_pause_source(gen->ym->audio); | 1247 render_pause_source(gen->ym->audio); |
1248 render_pause_source(gen->psg->audio); | 1248 render_pause_source(gen->psg->audio); |
1249 #endif | 1249 } |
1250 } | 1250 } |
1251 | 1251 |
1252 static void start_genesis(system_header *system, char *statefile) | 1252 static void start_genesis(system_header *system, char *statefile) |
1253 { | 1253 { |
1254 genesis_context *gen = (genesis_context *)system; | 1254 genesis_context *gen = (genesis_context *)system; |
1287 } | 1287 } |
1288 | 1288 |
1289 static void resume_genesis(system_header *system) | 1289 static void resume_genesis(system_header *system) |
1290 { | 1290 { |
1291 genesis_context *gen = (genesis_context *)system; | 1291 genesis_context *gen = (genesis_context *)system; |
1292 #ifndef IS_LIB | 1292 if (render_should_release_on_exit()) { |
1293 render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC); | 1293 render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC); |
1294 bindings_reacquire_capture(); | 1294 bindings_reacquire_capture(); |
1295 vdp_reacquire_framebuffer(gen->vdp); | 1295 vdp_reacquire_framebuffer(gen->vdp); |
1296 render_resume_source(gen->ym->audio); | 1296 render_resume_source(gen->ym->audio); |
1297 render_resume_source(gen->psg->audio); | 1297 render_resume_source(gen->psg->audio); |
1298 #endif | 1298 } |
1299 resume_68k(gen->m68k); | 1299 resume_68k(gen->m68k); |
1300 handle_reset_requests(gen); | 1300 handle_reset_requests(gen); |
1301 } | 1301 } |
1302 | 1302 |
1303 static void inc_debug_mode(system_header *system) | 1303 static void inc_debug_mode(system_header *system) |