From 58e87f97177d5b4c08f5dba2a63afa9d6c31b76f Mon Sep 17 00:00:00 2001 From: Ralf Grillenberger Date: Wed, 28 Jul 2010 21:58:44 +0000 Subject: [PATCH] Update the rendering output even when only the refresh rate changed. Previously there might have been problems with video recording under some rare circumstances. Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3627 --- src/hardware/vga_draw.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/hardware/vga_draw.cpp b/src/hardware/vga_draw.cpp index 55b8c484..c5330421 100644 --- a/src/hardware/vga_draw.cpp +++ b/src/hardware/vga_draw.cpp @@ -1438,8 +1438,10 @@ void VGA_SetupDrawing(Bitu /*val*/) { } // LOG_MSG("ht %d vt %d ratio %f", htotal, vtotal, aspect_ratio ); + bool fps_changed = false; // need to change the vertical timing? if (fabs(vga.draw.delay.vtotal - 1000.0 / fps) > 0.0001) { + fps_changed = true; vga.draw.delay.vtotal = 1000.0 / fps; VGA_KillDrawing(); PIC_RemoveEvents(VGA_Other_VertInterrupt); @@ -1466,7 +1468,7 @@ void VGA_SetupDrawing(Bitu /*val*/) { (vga.draw.doublewidth != doublewidth) || (vga.draw.doubleheight != doubleheight) || (fabs(aspect_ratio - vga.draw.aspect_ratio) > 0.0001) || - (vga.draw.bpp != bpp)) { + (vga.draw.bpp != bpp) || fps_changed) { VGA_KillDrawing();