From 44b672b6f57d98910987d6a5fbeb28f0012be5a2 Mon Sep 17 00:00:00 2001 From: refractionpcsx2 Date: Mon, 13 Jun 2022 03:59:19 +0100 Subject: [PATCH] Counters/GS: Adjust FIELD swap timing for PAL Console tests show about 3 PAL scanlines of time. --- pcsx2/Counters.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pcsx2/Counters.cpp b/pcsx2/Counters.cpp index 41e1bf8712..56e20811df 100644 --- a/pcsx2/Counters.cpp +++ b/pcsx2/Counters.cpp @@ -233,9 +233,9 @@ static void vSyncInfoCalc(vSyncTimingInfo* info, double framesPerSecond, u32 sca // Jak II - random speedups // Shadow of Rome - FMV audio issues const u64 HalfFrame = Frame / 2; - const u64 Blank = Scanline *((gsVideoMode == GS_VideoMode::NTSC ? 22 : 25) + static_cast(gsIsInterlaced)); + const u64 Blank = Scanline * ((gsVideoMode == GS_VideoMode::NTSC ? 22 : 25) + static_cast(gsIsInterlaced)); const u64 Render = HalfFrame - Blank; - const u64 GSBlank = Scanline * 3.5; // GS VBlank/CSR Swap happens roughly 3.5 Scanlines after VBlank Start + const u64 GSBlank = Scanline * (gsVideoMode == GS_VideoMode::NTSC ? 3.5 : 3); // GS VBlank/CSR Swap happens roughly 3.5(NTSC) and 3(PAL) Scanlines after VBlank Start // Important! The hRender/hBlank timers should be 50/50 for best results. // (this appears to be what the real EE's timing crystal does anyway)