From 0be6381e10e457275e33181ec33a83667cdfcf9b Mon Sep 17 00:00:00 2001 From: Silent Date: Mon, 23 Dec 2024 10:38:26 +0100 Subject: [PATCH] Tokyo Xtreme Racer 0/Shutokou Battle 0: Improved the existing widescreen fix and deinterlace patches * Fixes are now consistent between NTSC-U and NTSC-J * Patches are now one-shot * Heap allocations are no longer patched, instead immediates in the code are * The tachometer is corrected for widescreen further * Deinterlace patch now takes effect in the car preview screens and the rear view mirror Ported to NTSC-J by JakeMR2 --- patches/SLPS-25028_F9D5C6A6.pnach | 152 +++++++++++------------------- patches/SLUS-20189_C1760287.pnach | 100 ++++++++++---------- 2 files changed, 105 insertions(+), 147 deletions(-) diff --git a/patches/SLPS-25028_F9D5C6A6.pnach b/patches/SLPS-25028_F9D5C6A6.pnach index 81ab7feee..0e51d2e05 100644 --- a/patches/SLPS-25028_F9D5C6A6.pnach +++ b/patches/SLPS-25028_F9D5C6A6.pnach @@ -2,103 +2,61 @@ gametitle=Shutokou Battle 0 (J)(SLPS-25028) [Widescreen 16:9] gsaspectratio=16:9 -author=Arapapa and VIRGIN KLM - -//Widescreen hack 16:9 - -//X-Fov -//00 00 80 3F D9 EE EE 3E 00 08 00 00 00 08 00 00 00 00 00 40 60 D2 7E 4B 00 00 80 3F 00 00 FA 43 -patch=1,EE,207575E4,extended,3f400000 //3f800000 - -// 16:9 - Gameplay HUD by VIRGIN KLM -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 06 01 28 00 00 00 -patch=1,EE,20336000,word,3F400000 -//20 02 00 00 53 01 00 00 00 00 00 00 0B 00 00 00 41 00 00 00 07 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,20336030,word,00000210 -//00 00 80 3F 00 00 80 3F 7F 50 24 3F 80 00 00 00 -patch=1,EE,20336048,word,3F400000 -//0A 02 00 00 74 01 00 00 00 00 00 00 0C 00 00 00 -patch=1,EE,20336108,word,00000200 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 2B 00 00 00 -patch=1,EE,20336120,word,3F400000 -//47 02 00 00 72 01 00 00 00 00 00 00 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,20336150,word,0000022E -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 45 00 00 00 -patch=1,EE,20336168,word,3F400000 //(1st) -//FC 01 00 00 80 01 00 00 00 00 00 00 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,20336198,word,000001F5 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 45 00 00 00 -patch=1,EE,203361B0,word,3F400000 //(2nd) -//15 02 00 00 80 01 00 00 00 00 00 00 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,203361E0,word,00000208 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 45 00 00 00 -patch=1,EE,203361F8,word,3F400000 //(3rd) -//2E 02 00 00 80 01 00 00 00 00 00 00 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,20336228,word,0000021B -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 29 00 00 00 -patch=1,EE,20336240,word,3F400000 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 03 00 02 00 00 00 00 00 -patch=1,EE,20336288,word,3F400000 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 33 00 00 00 -patch=1,EE,203366C0,word,3F400000 -patch=1,EE,20336708,word,3F400000 -patch=1,EE,20336750,word,3F400000 -patch=1,EE,20336798,word,3F400000 -patch=1,EE,203367E0,word,3F400000 -patch=1,EE,20336828,word,3F400000 -patch=1,EE,20336870,word,3F400000 -patch=1,EE,203368B8,word,3F400000 - - -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 02 00 34 00 00 00 -patch=1,EE,20336900,word,3F400000 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 0A 00 3D 00 00 00 -patch=1,EE,20336948,word,3F400000 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B1 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 03 00 02 00 00 00 00 00 -patch=1,EE,20336990,word,3F400000 -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 00 00 44 00 00 00 -patch=1,EE,20336CF0,word,3F400000 -patch=1,EE,20336D38,word,3F400000 - -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 01 00 00 00 45 00 00 00 -patch=1,EE,20336D80,word,3F400000 //(4~10) -patch=1,EE,20336DC8,word,3F400000 -patch=1,EE,20336E10,word,3F400000 -patch=1,EE,20336E58,word,3F400000 -patch=1,EE,20336EA0,word,3F400000 -patch=1,EE,20336EE8,word,3F400000 -patch=1,EE,20336F30,word,3F400000 - -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 00 00 00 00 05 00 00 04 FF FF FF FF -patch=1,EE,20336F78,word,3F400000 - - - -//Font -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 08 00 00 00 21 00 00 00 00 00 00 00 EA 01 00 00 -patch=1,EE,20308700,word,3F400000 -//21 00 00 00 8C 01 00 00 00 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,203086e8,word,00000051 //00000021 - -//00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 02 00 00 C0 01 00 00 CC CC CC 80 03 00 02 00 FF FF FF FF -patch=1,EE,20308748,word,3F400000 //(1st) -//80 01 00 00 86 01 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 80 3F -patch=1,EE,20308730,word,0000019b //00000180 - - -//Menu (Car) -//00 00 80 3F D9 EE 6E 3F 00 08 00 00 00 08 00 00 00 00 80 3F 00 24 74 4B 00 00 80 3F 00 00 FA 43 -patch=1,EE,D074F516,extended,00003F80 -patch=1,EE,2074F514,extended,3F400000 - +author=VIRGIN KLM & Silent + +// 16:9 - 3D Elements +patch=0,EE,1015C9F0,extended,3F40 // In-game +patch=0,EE,101DD0D0,extended,3F40 // Menus + +// 16:9 - Gameplay HUD +patch=0,EE,101B06D8,extended,01FC // Move the entire cluster to the right +patch=0,EE,101A915C,extended,0040 // Tacho needle +patch=0,EE,101A9208,extended,0020 // Shift assist +patch=0,EE,101A9188,extended,002A // Left indicator +patch=0,EE,101A91B4,extended,003A // Right indicator +patch=0,EE,101A9274,extended,005E // Current gear +patch=0,EE,101A92AC,extended,0015 // Speed +patch=0,EE,201A92BC,extended,010B4023 // Speed, distance between letters (19) +patch=0,EE,101A9324,extended,0016 // Bottom left line +patch=0,EE,101A91DC,extended,0040 // mph text +patch=0,EE,101A9350,extended,0056 // Bottom right line +patch=0,EE,2033E390,extended,3F400000 +patch=0,EE,20336048,extended,3F400000 +patch=0,EE,2033E4B0,extended,3F400000 +patch=0,EE,20336168,extended,3F400000 +patch=0,EE,203361B0,extended,3F400000 +patch=0,EE,203361F8,extended,3F400000 +patch=0,EE,20336240,extended,3F400000 +patch=0,EE,20336288,extended,3F400000 +patch=0,EE,203366C0,extended,3F400000 +patch=0,EE,20336708,extended,3F400000 +patch=0,EE,20336750,extended,3F400000 +patch=0,EE,20336798,extended,3F400000 +patch=0,EE,203367E0,extended,3F400000 +patch=0,EE,20336828,extended,3F400000 +patch=0,EE,20336870,extended,3F400000 +patch=0,EE,203368B8,extended,3F400000 +patch=0,EE,20336900,extended,3F400000 +patch=0,EE,20336948,extended,3F400000 +patch=0,EE,20336990,extended,3F400000 +patch=0,EE,20336CF0,extended,3F400000 +patch=0,EE,20336D38,extended,3F400000 +patch=0,EE,20336D80,extended,3F400000 +patch=0,EE,20336DC8,extended,3F400000 +patch=0,EE,20336E10,extended,3F400000 +patch=0,EE,20336E58,extended,3F400000 +patch=0,EE,20336EA0,extended,3F400000 +patch=0,EE,20336EE8,extended,3F400000 +patch=0,EE,20336F30,extended,3F400000 +patch=0,EE,20336F78,extended,3F400000 [No-Interlacing] +description=Attempts to disable interlaced offset rendering. gsinterlacemode=1 -author=Tokman5 -//While FMV is playing, deinterlacing will be temporary disabled due to streaming problem -patch=1,EE,D06452A0,extended,01100001 -patch=1,EE,20263518,extended,34022000 -patch=1,EE,D06452A0,extended,01000001 -patch=1,EE,20263518,extended,30422000 - - +author=asasega & Silent +patch=0,EE,2015D09C,extended,00005025 +patch=0,EE,2015D15C,extended,00005025 +patch=0,EE,2015CFB0,extended,00005025 // Rear view mirror +patch=0,EE,2015D224,extended,00005025 // Unknown in race +patch=0,EE,201DCF94,extended,00005025 // Car preview in menus +patch=0,EE,202630C4,extended,00000000 diff --git a/patches/SLUS-20189_C1760287.pnach b/patches/SLUS-20189_C1760287.pnach index bbc8985de..7c6b2cb4e 100644 --- a/patches/SLUS-20189_C1760287.pnach +++ b/patches/SLUS-20189_C1760287.pnach @@ -2,61 +2,61 @@ gametitle= Tokyo Extreme Racer - Zero (NTSC) (SLUS-20189) [Widescreen 16:9] gsaspectratio=16:9 -author=VIRGIN KLM +author=VIRGIN KLM & Silent // 16:9 - 3D Elements -patch=1,EE,20748364,word,3F400000 +patch=0,EE,10168040,extended,3F40 // In-game +patch=0,EE,101E5D50,extended,3F40 // Menus // 16:9 - Gameplay HUD -patch=1,EE,2032DC70,word,3F400000 -patch=1,EE,2032DCA0,word,00000210 -patch=1,EE,2032DCB8,word,3F400000 -patch=1,EE,2032DD78,word,00000200 -patch=1,EE,2032DD90,word,3F400000 -patch=1,EE,2032DDC0,word,0000022E -patch=1,EE,2032DDD8,word,3F400000 -patch=1,EE,2032DE08,word,000001F5 -patch=1,EE,2032DE20,word,3F400000 -patch=1,EE,2032DE50,word,00000208 -patch=1,EE,2032DE68,word,3F400000 -patch=1,EE,2032DE98,word,0000021B -patch=1,EE,2032DEB0,word,3F400000 -patch=1,EE,2032DEF8,word,3F400000 -patch=1,EE,2032E330,word,3F400000 -patch=1,EE,2032E378,word,3F400000 -patch=1,EE,2032E3C0,word,3F400000 -patch=1,EE,2032E408,word,3F400000 -patch=1,EE,2032E450,word,3F400000 -patch=1,EE,2032E498,word,3F400000 -patch=1,EE,2032E4E0,word,3F400000 -patch=1,EE,2032E528,word,3F400000 -patch=1,EE,2032E570,word,3F400000 -patch=1,EE,2032E5B8,word,3F400000 -patch=1,EE,2032E600,word,3F400000 -patch=1,EE,2032E960,word,3F400000 -patch=1,EE,2032E9A8,word,3F400000 -patch=1,EE,2032E9F0,word,3F400000 -patch=1,EE,2032EA38,word,3F400000 -patch=1,EE,2032EA80,word,3F400000 -patch=1,EE,2032EAC8,word,3F400000 -patch=1,EE,2032EB10,word,3F400000 -patch=1,EE,2032EB58,word,3F400000 -patch=1,EE,2032EBA0,word,3F400000 -patch=1,EE,2032EBE8,word,3F400000 - - - -//Menu (Car) -//00 00 80 3F D9 EE 6E 3F 00 08 00 00 00 08 00 00 00 00 80 3F 00 24 74 4B 00 00 80 3F 00 00 FA 43 -patch=1,EE,D0740296,extended,00003F80 -patch=1,EE,20740294,extended,3F400000 - +patch=0,EE,101BBD98,extended,01FC // Move the entire cluster to the right +patch=0,EE,101B47EC,extended,0030 // Tacho needle +patch=0,EE,101B4898,extended,0020 // Shift assist +patch=0,EE,101B4818,extended,0020 // Left indicator +patch=0,EE,101B4844,extended,0031 // Right indicator +patch=0,EE,101B4904,extended,004E // Current gear +patch=0,EE,101B493C,extended,0015 // Speed +patch=0,EE,201B494C,extended,010B4023 // Speed, distance between letters (19) +patch=0,EE,101B49B4,extended,0016 // Bottom left line +patch=0,EE,101B486C,extended,0040 // mph text +patch=0,EE,101B49E0,extended,0056 // Bottom right line +patch=0,EE,2032DC70,extended,3F400000 +patch=0,EE,2032DCB8,extended,3F400000 +patch=0,EE,2032DD90,extended,3F400000 +patch=0,EE,2032DDD8,extended,3F400000 +patch=0,EE,2032DE20,extended,3F400000 +patch=0,EE,2032DE68,extended,3F400000 +patch=0,EE,2032DEB0,extended,3F400000 +patch=0,EE,2032DEF8,extended,3F400000 +patch=0,EE,2032E330,extended,3F400000 +patch=0,EE,2032E378,extended,3F400000 +patch=0,EE,2032E3C0,extended,3F400000 +patch=0,EE,2032E408,extended,3F400000 +patch=0,EE,2032E450,extended,3F400000 +patch=0,EE,2032E498,extended,3F400000 +patch=0,EE,2032E4E0,extended,3F400000 +patch=0,EE,2032E528,extended,3F400000 +patch=0,EE,2032E570,extended,3F400000 +patch=0,EE,2032E5B8,extended,3F400000 +patch=0,EE,2032E600,extended,3F400000 +patch=0,EE,2032E960,extended,3F400000 +patch=0,EE,2032E9A8,extended,3F400000 +patch=0,EE,2032E9F0,extended,3F400000 +patch=0,EE,2032EA38,extended,3F400000 +patch=0,EE,2032EA80,extended,3F400000 +patch=0,EE,2032EAC8,extended,3F400000 +patch=0,EE,2032EB10,extended,3F400000 +patch=0,EE,2032EB58,extended,3F400000 +patch=0,EE,2032EBA0,extended,3F400000 +patch=0,EE,2032EBE8,extended,3F400000 [No-Interlacing] description=Attempts to disable interlaced offset rendering. gsinterlacemode=1 -patch=1,EE,201686EC,extended,00005025 -patch=1,EE,201687AC,extended,00005025 -patch=1,EE,20149FF4,extended,00000000 - - +author=asasega & Silent +patch=0,EE,201686EC,extended,00005025 +patch=0,EE,201687AC,extended,00005025 +patch=0,EE,20168600,extended,00005025 // Rear view mirror +patch=0,EE,20168874,extended,00005025 // Unknown in race +patch=0,EE,201E5C14,extended,00005025 // Car preview in menus +patch=0,EE,20149FF4,extended,00000000