04-01-2022, 11:59 AM
(03-26-2022, 12:50 AM)Agrippa Wrote: [ -> ]Gran Turismo 4 PAL Progressive Patch
SCES-51719
CRC - 44A61C8F
Code:// progressive flag (write 0x1 at 0xA57E70).
patch=1,EE,000FF000,word,24020001
patch=1,EE,000FF004,word,3C0300A5
patch=1,EE,000FF008,word,34637E70
patch=1,EE,000FF00c,word,AC620000
patch=1,EE,000FF010,word,08128308
patch=1,EE,000FF014,word,000422C2
patch=1,EE,004A0C18,word,0803FC00 // 000422C2
// force SCE_GS_PAL video mode every time (when the progressive flag is set, the 480p mode is turned on instead by default)
patch=1,EE,001074A0,word,24050003 //8E050004
// change sceGsResetGraph arguments when the progressive mode is set. These patches are essential when playing on a real hardware (half of the screen is only visible, otherwise):
// SCE_GS_INTERLACE
patch=1,EE,0061868C,word,00000001 // 00000000
// SCE_GS_FIELD
patch=1,EE,00618694,word,00000000 // 00000001
// no interlacing patch for menu and movies (delete this if you play on a real hardware)
patch=1,EE,004A2A2C,word,0000102D // 80A202C0
This patch enables the progressive mode left in-game and forces the full-height PAL output to avoid timing issues. If you are playing on the PS2, you can force the 576p mode through GSM (field flipping may be needed to fix the playback of videos). PS2 on PS3 emulators are forcing the 576p mode by default (if upscaling turned off). Patch was applied through PS2 Patch Engine and tested with PS2 software emulator on PS3.
Based on the @CookiePLMonster patch available here:
https://forums.pcsx2.net/Thread-No-inter...#pid620650
Thank you for your research!
EDIT: I wrote a hook for patching the progressive flag, as the PS2 Patch Engine fails to patch that address. Because of the self-modifying code, the Patch Engine hook is lost after the splash screen and the game nullify the patch a moment later.
Maybe I'm doing something wrong, but my screen is flickering really bad with this patch. It looks like flickering from alternating lines in non progresssive output without deinteracing filter. It's almost as bad as the 50 Hz flickering you see in the neon tubes at the hardware store or supermarket.
Edit:
I found the culprit, it's the games dithering that's still rendering at alternating lines. That's bad, because im playing in software rendering mode, so I can't disable dithering.