]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
Toggle warp mode frame skip between 10 and 11 frames.
authorToni Wilen <twilen@winuae.net>
Sun, 6 Dec 2020 13:59:15 +0000 (15:59 +0200)
committerToni Wilen <twilen@winuae.net>
Sun, 6 Dec 2020 13:59:15 +0000 (15:59 +0200)
od-win32/direct3d.cpp
od-win32/direct3d11.cpp

index bd73dbe0498b09d679067494598c11c01abaa4f7..83e4c7ce8305688b6a2f300ba1543475f4fd455d 100644 (file)
@@ -3924,9 +3924,11 @@ static void xD3D_showframe (int monid)
        if (currprefs.turbo_emulation) {
                if ((!(d3d->dpp.PresentationInterval & D3DPRESENT_INTERVAL_IMMEDIATE) || d3d->variablerefresh) && d3d->wasstilldrawing_broken) {
                        static int frameskip;
+                       static int toggle;
                        if (currprefs.turbo_emulation && frameskip-- > 0)
                                return;
-                       frameskip = 10;
+                       frameskip = 10 + toggle;
+                       toggle = !toggle;
                }
                D3D_showframe2 (d3d, false);
        } else {
index 2ab11c26efe47b8a28422033c7b1481c2c00f29d..31045b2ec8c60b10d602d606151d1de94b28e439 100644 (file)
@@ -3256,9 +3256,11 @@ static void do_present(struct d3d11struct *d3d)
        d3d->syncinterval = syncinterval;
        if (currprefs.turbo_emulation) {
                static int skip;
+               static int toggle;
                if (--skip > 0)
                        return;
-               skip = 10;
+               skip = 10 + toggle;
+               toggle = !toggle;
                if (os_win8)
                        presentFlags |= DXGI_PRESENT_DO_NOT_WAIT;
                syncinterval = 0;