Mercurial > repos > blastem
comparison sms.c @ 1980:81df9aa2de9b
Less hacky run on audio thread mode
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 09 May 2020 23:25:51 -0700 |
parents | b387f1c5a1d0 |
children | a7b753e260a2 9caebcfeac72 |
comparison
equal
deleted
inserted
replaced
1979:06c25babe464 | 1980:81df9aa2de9b |
---|---|
426 vdp_adjust_cycles(sms->vdp, adjust); | 426 vdp_adjust_cycles(sms->vdp, adjust); |
427 sms->psg->cycles -= adjust; | 427 sms->psg->cycles -= adjust; |
428 target_cycle -= adjust; | 428 target_cycle -= adjust; |
429 } | 429 } |
430 } | 430 } |
431 if (render_should_release_on_exit()) { | 431 if (sms->header.force_release || render_should_release_on_exit()) { |
432 bindings_release_capture(); | 432 bindings_release_capture(); |
433 vdp_release_framebuffer(sms->vdp); | 433 vdp_release_framebuffer(sms->vdp); |
434 render_pause_source(sms->psg->audio); | 434 render_pause_source(sms->psg->audio); |
435 } | 435 } |
436 sms->should_return = 0; | 436 sms->should_return = 0; |
437 } | 437 } |
438 | 438 |
439 static void resume_sms(system_header *system) | 439 static void resume_sms(system_header *system) |
440 { | 440 { |
441 sms_context *sms = (sms_context *)system; | 441 sms_context *sms = (sms_context *)system; |
442 if (render_should_release_on_exit()) { | 442 if (sms->header.force_release || render_should_release_on_exit()) { |
443 sms->header.force_release = 0; | |
443 bindings_reacquire_capture(); | 444 bindings_reacquire_capture(); |
444 vdp_reacquire_framebuffer(sms->vdp); | 445 vdp_reacquire_framebuffer(sms->vdp); |
445 render_resume_source(sms->psg->audio); | 446 render_resume_source(sms->psg->audio); |
446 } | 447 } |
447 run_sms(system); | 448 run_sms(system); |