diff --git a/docs/changes.txt b/docs/changes.txt index f9e3e0fa..80909407 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -49,6 +49,7 @@ Snes9x 1.56 Football. - Attached APU instruction tracer and made some additions (BearOso) to debugging output. +- Fix line doubling in interlaced mode. (kps501) - Win32: Added dynamic rate control support for XAudio2 (OV2) - Win32: Added different volume level configuration for (OV2) regular and turbo speed. diff --git a/gfx.cpp b/gfx.cpp index 2b87b3d9..46ec51a3 100644 --- a/gfx.cpp +++ b/gfx.cpp @@ -729,8 +729,8 @@ void S9xUpdateScreen (void) GFX.PPL = GFX.RealPPL << 1; GFX.DoInterlace = 2; - for (register int32 y = (int32) GFX.StartY - 1; y >= 0; y--) - memmove(GFX.Screen + y * GFX.PPL, GFX.Screen + y * GFX.RealPPL, IPPU.RenderedScreenWidth * sizeof(uint16)); + for (register int32 y = (int32) GFX.StartY - 2; y >= 0; y--) + memmove(GFX.Screen + (y + 1) * GFX.PPL, GFX.Screen + y * GFX.RealPPL, GFX.PPL * sizeof(uint16)); } }