mirror of
https://github.com/PCSX2/pcsx2_patches.git
synced 2026-01-31 01:15:19 +01:00
Whenever you use a computer, either as Chris or Claire, the time shown is in Japan timezone, instead of local. This patch fixes that and allows you to see the time (presumably) as originally intended.
325 lines
12 KiB
Plaintext
325 lines
12 KiB
Plaintext
gametitle=Resident Evil: Code: Veronica X (SLUS-20184)
|
|
|
|
[Widescreen 16:9]
|
|
gsaspectratio=16:9
|
|
author=Gabominated
|
|
description=Widescreen hack ported from PAL-M4 ver by ElHecht
|
|
patch=1,EE,01128700,word,3f400000 //3f800000 x-fov
|
|
patch=1,EE,01E218C0,word,01aa0280 //01400280 FMVs
|
|
patch=1,EE,01E218C4,word,000c0000 //00400000
|
|
|
|
[Door Transition Skip]
|
|
// https://gist.github.com/kapdap/91ff4e4a32d45b5a6ee6b9ef7b298895
|
|
author=kapdap
|
|
patch=1,EE,00133D4C,word,00000000 // remove call to bhControlDoor
|
|
patch=1,EE,00133D54,word,00000000 // remove door animation completed check
|
|
|
|
[Skip Startup logos and warning]
|
|
author=illusion
|
|
patch=1,EE,001324D4,word,34640008
|
|
|
|
[Fix time in computers]
|
|
// Custom sceScfGetLocalTimefromRTC. Adapted from configConvertToLocalTime in PS2SDK.
|
|
author=VelpaChallenger
|
|
description=Fixes time shown when using computers either as Claire or Chris (shows local instead of JP).
|
|
patch=1,EE,001147E8,word,3c19000f // Save time (sceCdCLOCK) before it's lost. Will be used after we inject. Overwrites printf but meh.
|
|
patch=1,EE,001147EC,word,27391010
|
|
patch=1,EE,001147F0,word,af320000
|
|
|
|
patch=1,EE,000F1000,word,1E1F1C1F // gDaysInMonths array. Used for adddate and subdate.
|
|
patch=1,EE,000F1004,word,1F1F1E1F
|
|
patch=1,EE,000F1008,word,1F1E1F1E
|
|
|
|
patch=1,EE,001148A0,word,0803C000 // Injection. Jump to custom code. When we are done, we'll jr ra and then return to intended point (previous flow before patch).
|
|
|
|
// GetLocalTimeFromRTC code per se starts here. The above was preparation.
|
|
|
|
patch=1,EE,000F0000,word,3c04000f // configConvertToLocalTime. We won't use driver, though. Just sceCdCLOCK time.
|
|
patch=1,EE,000F0004,word,ac821014 // We need the original return value as well. So that the change is transparent to the sceCdCLOCK consumer. We will restore it later.
|
|
patch=1,EE,000F0008,word,8c841010
|
|
patch=1,EE,000F000C,word,27bdffd0
|
|
patch=1,EE,000F0010,word,ffb00000
|
|
patch=1,EE,000F0014,word,ffb10010
|
|
patch=1,EE,000F0018,word,ffbf0020
|
|
patch=1,EE,000F001C,word,0C03C015 // jal configGetTimezoneWithIODriver
|
|
patch=1,EE,000F0020,word,0080802d
|
|
patch=1,EE,000F0024,word,0C03C026 // jal configIsDaylightSavingEnabledWithIODriver
|
|
patch=1,EE,000F0028,word,0040882d
|
|
patch=1,EE,000F002C,word,2403003c
|
|
patch=1,EE,000F0030,word,0200202d
|
|
patch=1,EE,000F0034,word,00431018
|
|
patch=1,EE,000F0038,word,dfbf0020
|
|
patch=1,EE,000F003C,word,dfb00000
|
|
patch=1,EE,000F0040,word,2442fde4
|
|
patch=1,EE,000F0044,word,02222821
|
|
patch=1,EE,000F0048,word,dfb10010
|
|
patch=1,EE,000F004C,word,0803C03E // j __adjustTime. The main point, where the full action happens. At the end of it, we'll do the necessary restores.
|
|
patch=1,EE,000F0050,word,27bd0030
|
|
|
|
patch=1,EE,000F0054,word,27bdffe0 // configGetTimezoneWithIODriver.
|
|
patch=1,EE,000F0058,word,ffbf0010
|
|
patch=1,EE,000F005C,word,0C03C022 // jal GetOSDConfigParam syscall.
|
|
patch=1,EE,000F0060,word,03a0202d
|
|
patch=1,EE,000F0064,word,8fa20000
|
|
patch=1,EE,000F0068,word,2404021c
|
|
patch=1,EE,000F006C,word,00021b42
|
|
patch=1,EE,000F0070,word,00021543
|
|
patch=1,EE,000F0074,word,30630007
|
|
patch=1,EE,000F0078,word,0083100a
|
|
patch=1,EE,000F007C,word,dfbf0010
|
|
patch=1,EE,000F0080,word,03e00008
|
|
patch=1,EE,000F0084,word,27bd0020
|
|
|
|
patch=1,EE,000F0088,word,2403004B // GetOSDConfigParam syscall.
|
|
patch=1,EE,000F008C,word,0000000C // syscall
|
|
patch=1,EE,000F0090,word,03E00008 // return
|
|
patch=1,EE,000F0094,word,00000000 // nop, just return.
|
|
|
|
patch=1,EE,000F0098,word,27bdffe0 // configIsDaylightSavingEnabledWithIODriver.
|
|
patch=1,EE,000F009C,word,ffbf0010
|
|
patch=1,EE,000F00A0,word,0C03C022 // jal GetOSDConfigParam syscall.
|
|
patch=1,EE,000F00A4,word,03a0202d
|
|
patch=1,EE,000F00A8,word,8fa20000
|
|
patch=1,EE,000F00AC,word,00021342
|
|
patch=1,EE,000F00B0,word,30420007
|
|
patch=1,EE,000F00B4,word,14400003
|
|
patch=1,EE,000F00B8,word,37a40004
|
|
patch=1,EE,000F00BC,word,10000007
|
|
patch=1,EE,000F00C0,word,0000102d
|
|
patch=1,EE,000F00C4,word,24050001
|
|
patch=1,EE,000F00C8,word,0C03C03A // jal GetOSDConfigParam2 syscall.
|
|
patch=1,EE,000F00CC,word,24060001
|
|
patch=1,EE,000F00D0,word,93a30004
|
|
patch=1,EE,000F00D4,word,00031902
|
|
patch=1,EE,000F00D8,word,30620001
|
|
patch=1,EE,000F00DC,word,dfbf0010
|
|
patch=1,EE,000F00E0,word,03e00008
|
|
patch=1,EE,000F00E4,word,27bd0020
|
|
|
|
patch=1,EE,000F00E8,word,2403006F // GetOSDConfigParam2 syscall.
|
|
patch=1,EE,000F00EC,word,0000000C // syscall
|
|
patch=1,EE,000F00F0,word,03E00008 // return
|
|
patch=1,EE,000F00F4,word,00000000 // nop, just return.
|
|
|
|
patch=1,EE,000F00F8,word,27bdffd0 // __adjustTime
|
|
patch=1,EE,000F00FC,word,ffb10010
|
|
patch=1,EE,000F0100,word,ffb00000
|
|
patch=1,EE,000F0104,word,0080882d
|
|
patch=1,EE,000F0108,word,ffbf0020
|
|
patch=1,EE,000F010C,word,0C03C061 // jal convertfrombcd
|
|
patch=1,EE,000F0110,word,00a0802d
|
|
patch=1,EE,000F0114,word,92220002
|
|
patch=1,EE,000F0118,word,00508021
|
|
patch=1,EE,000F011C,word,0602000e
|
|
patch=1,EE,000F0120,word,2610003c
|
|
patch=1,EE,000F0124,word,2a02003c
|
|
patch=1,EE,000F0128,word,54400010
|
|
patch=1,EE,000F012C,word,a2300002
|
|
patch=1,EE,000F0130,word,0220202d
|
|
patch=1,EE,000F0134,word,00000000
|
|
patch=1,EE,000F0138,word,0C03C083 // jal addhour
|
|
patch=1,EE,000F013C,word,2610ffc4
|
|
patch=1,EE,000F0140,word,2a02003c
|
|
patch=1,EE,000F0144,word,1040fffc
|
|
patch=1,EE,000F0148,word,0220202d
|
|
patch=1,EE,000F014C,word,10000008
|
|
patch=1,EE,000F0150,word,a2300002
|
|
patch=1,EE,000F0154,word,00000000
|
|
patch=1,EE,000F0158,word,0C03C0BB // jal subhour
|
|
patch=1,EE,000F015C,word,0220202d
|
|
patch=1,EE,000F0160,word,0602fffd
|
|
patch=1,EE,000F0164,word,2610003c
|
|
patch=1,EE,000F0168,word,a2300002
|
|
patch=1,EE,000F016C,word,0220202d
|
|
patch=1,EE,000F0170,word,dfbf0020
|
|
patch=1,EE,000F0174,word,dfb10010
|
|
patch=1,EE,000F0178,word,dfb00000
|
|
patch=1,EE,000F017C,word,0803C0ED // j converttobcd
|
|
patch=1,EE,000F0180,word,27bd0030
|
|
|
|
patch=1,EE,000F0184,word,27bdffe0 // convertfrombcd
|
|
patch=1,EE,000F0188,word,ffb00000
|
|
patch=1,EE,000F018C,word,ffbf0010
|
|
patch=1,EE,000F0190,word,0080802d
|
|
patch=1,EE,000F0194,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F0198,word,92040007
|
|
patch=1,EE,000F019C,word,92040006
|
|
patch=1,EE,000F01A0,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F01A4,word,a2020007
|
|
patch=1,EE,000F01A8,word,92040005
|
|
patch=1,EE,000F01AC,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F01B0,word,a2020006
|
|
patch=1,EE,000F01B4,word,92040003
|
|
patch=1,EE,000F01B8,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F01BC,word,a2020005
|
|
patch=1,EE,000F01C0,word,92040002
|
|
patch=1,EE,000F01C4,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F01C8,word,a2020003
|
|
patch=1,EE,000F01CC,word,92040001
|
|
patch=1,EE,000F01D0,word,0C03C07B // jal frombcd
|
|
patch=1,EE,000F01D4,word,a2020002
|
|
patch=1,EE,000F01D8,word,a2020001
|
|
patch=1,EE,000F01DC,word,dfbf0010
|
|
patch=1,EE,000F01E0,word,dfb00000
|
|
patch=1,EE,000F01E4,word,03e00008
|
|
patch=1,EE,000F01E8,word,27bd0020
|
|
|
|
patch=1,EE,000F01EC,word,308200ff // frombcd
|
|
patch=1,EE,000F01F0,word,00021902
|
|
patch=1,EE,000F01F4,word,24040006
|
|
patch=1,EE,000F01F8,word,00640018
|
|
patch=1,EE,000F01FC,word,00001812
|
|
patch=1,EE,000F0200,word,00431023
|
|
patch=1,EE,000F0204,word,03e00008
|
|
patch=1,EE,000F0208,word,304200ff
|
|
|
|
patch=1,EE,000F020C,word,0080282d // addhour
|
|
patch=1,EE,000F0210,word,24020018
|
|
patch=1,EE,000F0214,word,90a30003
|
|
patch=1,EE,000F0218,word,24630001
|
|
patch=1,EE,000F021C,word,306400ff
|
|
patch=1,EE,000F0220,word,14820004
|
|
patch=1,EE,000F0224,word,a0a30003
|
|
patch=1,EE,000F0228,word,00a0202d
|
|
patch=1,EE,000F022C,word,0803C08E // j adddate
|
|
patch=1,EE,000F0230,word,a0a00003 // time->hour = 0
|
|
patch=1,EE,000F0234,word,03e00008 // if we didn't jump to adddate, we still want to return, just without doing anything else before it.
|
|
|
|
patch=1,EE,000F0238,word,0080282d // adddate
|
|
patch=1,EE,000F023C,word,27bdfff0
|
|
patch=1,EE,000F0240,word,90a30005
|
|
patch=1,EE,000F0244,word,3c02000F
|
|
patch=1,EE,000F0248,word,90a40007
|
|
patch=1,EE,000F024C,word,24630001
|
|
patch=1,EE,000F0250,word,24491000
|
|
patch=1,EE,000F0254,word,69260007
|
|
patch=1,EE,000F0258,word,6d260000
|
|
patch=1,EE,000F025C,word,8927000b
|
|
patch=1,EE,000F0260,word,99270008
|
|
patch=1,EE,000F0264,word,b3a60007
|
|
patch=1,EE,000F0268,word,b7a60000
|
|
patch=1,EE,000F026C,word,aba7000b
|
|
patch=1,EE,000F0270,word,bba70008
|
|
patch=1,EE,000F0274,word,30840003
|
|
patch=1,EE,000F0278,word,14800003
|
|
patch=1,EE,000F027C,word,a0a30005
|
|
patch=1,EE,000F0280,word,2402001d
|
|
patch=1,EE,000F0284,word,a3a20001
|
|
patch=1,EE,000F0288,word,90a20006
|
|
patch=1,EE,000F028C,word,90a40005
|
|
patch=1,EE,000F0290,word,005d1021
|
|
patch=1,EE,000F0294,word,8043ffff
|
|
patch=1,EE,000F0298,word,0064182a
|
|
patch=1,EE,000F029C,word,10600011
|
|
patch=1,EE,000F02A0,word,24020001
|
|
patch=1,EE,000F02A4,word,90a30006
|
|
patch=1,EE,000F02A8,word,a0a20005
|
|
patch=1,EE,000F02AC,word,2404000d
|
|
patch=1,EE,000F02B0,word,24630001
|
|
patch=1,EE,000F02B4,word,306200ff
|
|
patch=1,EE,000F02B8,word,1444000a
|
|
patch=1,EE,000F02BC,word,a0a30006
|
|
patch=1,EE,000F02C0,word,90a30007
|
|
patch=1,EE,000F02C4,word,24020063
|
|
patch=1,EE,000F02C8,word,14620003
|
|
patch=1,EE,000F02CC,word,24620001
|
|
patch=1,EE,000F02D0,word,10000002
|
|
patch=1,EE,000F02D4,word,a0a00007
|
|
patch=1,EE,000F02D8,word,a0a20007
|
|
patch=1,EE,000F02DC,word,24020001
|
|
patch=1,EE,000F02E0,word,a0a20006
|
|
patch=1,EE,000F02E4,word,03e00008
|
|
patch=1,EE,000F02E8,word,27bd0010
|
|
|
|
patch=1,EE,000F02EC,word,0080182d // subhour
|
|
patch=1,EE,000F02F0,word,90620003
|
|
patch=1,EE,000F02F4,word,14400004
|
|
patch=1,EE,000F02F8,word,2442ffff
|
|
patch=1,EE,000F02FC,word,24020017
|
|
patch=1,EE,000F0300,word,0803C0C4 // j subdate
|
|
patch=1,EE,000F0304,word,a0620003
|
|
patch=1,EE,000F0308,word,03e00008 // same logic as addhour, except this time, we want to perform the same operation either if we jump or return (for addhour it's nop).
|
|
patch=1,EE,000F030C,word,a0620003 // time->hour either time->hour = 0x17 or time->hour - 1, depends on v0.
|
|
|
|
patch=1,EE,000F0310,word,0080282d // subdate
|
|
patch=1,EE,000F0314,word,27bdfff0
|
|
patch=1,EE,000F0318,word,90a30005
|
|
patch=1,EE,000F031C,word,3c02000F
|
|
patch=1,EE,000F0320,word,90a40007
|
|
patch=1,EE,000F0324,word,2463ffff
|
|
patch=1,EE,000F0328,word,24491000
|
|
patch=1,EE,000F032C,word,69260007
|
|
patch=1,EE,000F0330,word,6d260000
|
|
patch=1,EE,000F0334,word,8927000b
|
|
patch=1,EE,000F0338,word,99270008
|
|
patch=1,EE,000F033C,word,b3a60007
|
|
patch=1,EE,000F0340,word,b7a60000
|
|
patch=1,EE,000F0344,word,aba7000b
|
|
patch=1,EE,000F0348,word,bba70008
|
|
patch=1,EE,000F034C,word,30840003
|
|
patch=1,EE,000F0350,word,14800003
|
|
patch=1,EE,000F0354,word,a0a30005
|
|
patch=1,EE,000F0358,word,2402001d
|
|
patch=1,EE,000F035C,word,a3a20001
|
|
patch=1,EE,000F0360,word,90a20005
|
|
patch=1,EE,000F0364,word,14400011
|
|
patch=1,EE,000F0368,word,00000000
|
|
patch=1,EE,000F036C,word,90a20006
|
|
patch=1,EE,000F0370,word,2442ffff
|
|
patch=1,EE,000F0374,word,304300ff
|
|
patch=1,EE,000F0378,word,14600008
|
|
patch=1,EE,000F037C,word,a0a20006
|
|
patch=1,EE,000F0380,word,90a20007
|
|
patch=1,EE,000F0384,word,14400002
|
|
patch=1,EE,000F0388,word,2442ffff
|
|
patch=1,EE,000F038C,word,24020063
|
|
patch=1,EE,000F0390,word,a0a20007
|
|
patch=1,EE,000F0394,word,2402000c
|
|
patch=1,EE,000F0398,word,a0a20006
|
|
patch=1,EE,000F039C,word,90a20006
|
|
patch=1,EE,000F03A0,word,005d1021
|
|
patch=1,EE,000F03A4,word,9043ffff
|
|
patch=1,EE,000F03A8,word,a0a30005
|
|
patch=1,EE,000F03AC,word,03e00008
|
|
patch=1,EE,000F03B0,word,27bd0010
|
|
|
|
patch=1,EE,000F03B4,word,27bdffe0 // converttobcd
|
|
patch=1,EE,000F03B8,word,ffb00000
|
|
patch=1,EE,000F03BC,word,ffbf0010
|
|
patch=1,EE,000F03C0,word,0080802d
|
|
patch=1,EE,000F03C4,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F03C8,word,92040007
|
|
patch=1,EE,000F03CC,word,92040006
|
|
patch=1,EE,000F03D0,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F03D4,word,a2020007
|
|
patch=1,EE,000F03D8,word,92040005
|
|
patch=1,EE,000F03DC,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F03E0,word,a2020006
|
|
patch=1,EE,000F03E4,word,92040003
|
|
patch=1,EE,000F03E8,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F03EC,word,a2020005
|
|
patch=1,EE,000F03F0,word,92040002
|
|
patch=1,EE,000F03F4,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F03F8,word,a2020003
|
|
patch=1,EE,000F03FC,word,92040001
|
|
patch=1,EE,000F0400,word,0C03C109 // jal tobcd
|
|
patch=1,EE,000F0404,word,a2020002
|
|
patch=1,EE,000F0408,word,a2020001
|
|
patch=1,EE,000F040C,word,dfbf0010
|
|
patch=1,EE,000F0410,word,dfb00000
|
|
patch=1,EE,000F0414,word,3c04000f
|
|
patch=1,EE,000F0418,word,8c821014 // and now, ladies and gentleman, we restore v0! Yay! We can now exit without any feelings of guilt or remorse!
|
|
patch=1,EE,000F041C,word,03e00008
|
|
patch=1,EE,000F0420,word,27bd0020
|
|
|
|
patch=1,EE,000F0424,word,2403000a // tobcd
|
|
patch=1,EE,000F0428,word,308400ff
|
|
patch=1,EE,000F042C,word,0083001b
|
|
patch=1,EE,000F0430,word,24050006
|
|
patch=1,EE,000F0434,word,50600001
|
|
patch=1,EE,000F0438,word,000001cd
|
|
patch=1,EE,000F043C,word,00001012
|
|
patch=1,EE,000F0440,word,00451818
|
|
patch=1,EE,000F0444,word,00641021
|
|
patch=1,EE,000F0448,word,03e00008
|
|
patch=1,EE,000F044C,word,304200ff |