diff --git a/src/audio.c b/src/audio.c index 2921384b..527113c6 100644 --- a/src/audio.c +++ b/src/audio.c @@ -229,7 +229,7 @@ audio_step(int cpu_clocks) vera_samp_pos_hd = (vera_samp_pos_hd + max_cpu_clks * VERA_SAMP_CLKS_PER_CPU_CLK) & SAMP_POS_MASK_FRAC; ym_samp_pos_hd = (ym_samp_pos_hd + max_cpu_clks * YM_SAMP_CLKS_PER_CPU_CLK) & SAMP_POS_MASK_FRAC; cpu_clocks -= max_cpu_clks; - audio_render(); + if (cpu_clocks > 0) audio_render(); } } diff --git a/src/video.c b/src/video.c index d7ebebcb..5c90eab3 100644 --- a/src/video.c +++ b/src/video.c @@ -1845,7 +1845,7 @@ uint8_t video_read(uint8_t reg, bool debugOn) { case 0x19: case 0x1A: return reg_layer[1][reg - 0x14]; - case 0x1B: return pcm_read_ctrl(); + case 0x1B: audio_render(); return pcm_read_ctrl(); case 0x1C: return pcm_read_rate(); case 0x1D: return 0;