Editing Custom Configuration Files
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 379: | Line 379: | ||
eeInsnReplace(0x262608, 0xE4400000, 0xAC410000) | eeInsnReplace(0x262608, 0xE4400000, 0xAC410000) | ||
eeInsnReplace(0x2564A8, 0x8F829764, 0x24020000)</pre> | eeInsnReplace(0x2564A8, 0x8F829764, 0x24020000)</pre> | ||
====Castlevania: Curse of Darkness==== | ====Castlevania: Curse of Darkness==== | ||
Line 876: | Line 868: | ||
<pre> | <pre> | ||
#Fix for game being stuck | #Fix for game being stuck at main menu with selections moving very fast | ||
--fpu-no-clamping=1 | --fpu-no-clamping=1 | ||
#Speedhack | #Speedhack | ||
Line 1,038: | Line 1,030: | ||
<br>SLUS-20587 | <br>SLUS-20587 | ||
<pre> | <pre> | ||
#Fix for AI cop car | #Fix for AI cop car | ||
--cop2-accurate-addsub-range=0x4b8108,0x4b8408 | --cop2-accurate-addsub-range=0x4b8108,0x4b8408 | ||
#Speedhacks | #Speedhacks | ||
Line 3,458: | Line 3,450: | ||
<br>'''''CLI''''' | <br>'''''CLI''''' | ||
<pre> | <pre> | ||
#Speedhacks | #Speedhacks + Clamping | ||
--vu1-di-bits=0 | --vu1-di-bits=0 | ||
--vu1-mpg-cycles= | --vu1-const-prop=1 | ||
--vu1-mpg-cycles=800 | |||
-- | --ee-cycle-scalar=1.2 | ||
#Jakv2 Emu Used | #Jakv2 Emu Used | ||
</pre> | </pre> | ||
Line 4,236: | Line 4,228: | ||
#Fix for texture glitches</pre> | #Fix for texture glitches</pre> | ||
====X-Files - Resist or Serve==== | ====X-Files - Resist or Serve==== | ||
Line 4,830: | Line 4,807: | ||
</pre> | </pre> | ||
====Ratchet | ====Ratchet and Clank: Up Your Arsenal==== | ||
<br> | <br>SCUS97353 | ||
<pre> | <pre> | ||
-- 23.07.2023 Added debug stuff that should print in klog. | |||
-- | -- This should help us figure out why patch fail. | ||
-- | |||
apiRequest(1.0) | |||
local em = getEmuObject() | |||
local ee = getEEObject() | |||
local patcher = function() | local patcher = function() | ||
print("CONFIG: Entering patcher!") | print("CONFIG: Entering patcher!") | ||
local base = -1 | local base = -1 | ||
Line 5,062: | Line 4,955: | ||
</pre> | </pre> | ||
<pre> | <pre> | ||
apiRequest(0.1) | apiRequest(0.1) | ||
Line 5,083: | Line 4,962: | ||
local patcher = function() | local patcher = function() | ||
-- | --JMP | ||
eeObj.WriteMem32(0x0011F38C, | eeObj.WriteMem32(0x0011F38C, 0x0803FFE6) | ||
--VCALLMS | |||
-- | eeObj.WriteMem32(0x000FFA00, 0x241B0016) | ||
eeObj.WriteMem32(0x000FFA00, | eeObj.WriteMem32(0x000FFA04, 0x4A000038) | ||
eeObj.WriteMem32(0x000FFA04, | eeObj.WriteMem32(0x000FFA08, 0x277BFFFF) | ||
eeObj.WriteMem32(0x000FFA08, | eeObj.WriteMem32(0x000FFA0C, 0x1760FFFE) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA18, 0x03E00008) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA1C, 0x241F0000) | ||
eeObj.WriteMem32( | --VI01 | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA34, 0x48C00800) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA38, 0x241B0080) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA3C, 0x277BFFFF) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA40, 0x1760FFFE) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA4C, 0x03E00008) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA50, 0x241F0000) | ||
eeObj.WriteMem32( | --VI02 | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA68, 0x48C01000) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA6C, 0x241B0100) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA70, 0x277BFFFF) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA74, 0x1760FFFE) | ||
eeObj.WriteMem32(0x000FFA80, 0x03E00008) | |||
eeObj.WriteMem32(0x000FFA84, 0x241F0000) | |||
--Patcher | --Patcher | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCA8, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCAC, 0x36B5FE80) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCB0, 0x8EF60004) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCB4, 0x12D500B1) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC0, 0xAEF50004) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC4, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC8, 0x36B5FE89) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCCC, 0xAEF500BC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD0, 0xAEF501FC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD4, 0xAEF50354) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD8, 0xAEF50494) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCDC, 0xAEF505EC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE0, 0xAEF5072C) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE4, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE8, 0x36B5FE96) | ||
eeObj.WriteMem32(0x000FFCEC, 0xAEF5015C) | |||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF0, 0xAEF502AC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF4, 0xAEF503F4) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF8, 0xAEF50544) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCFC, 0xAEF5068C) | ||
eeObj.WriteMem32(0x000FFD00, 0xAEF507E4) | |||
eeObj.WriteMem32(0x000FFD04, 0x1000009D) | |||
--Create a pointer and jmp to patcher | |||
eeObj.WriteMem32(0x000FFF20, 0x3C1B000F) | |||
eeObj.WriteMem32(0x000FFF24, 0x377BFF00) | |||
eeObj.WriteMem32(0x000FFF28, 0xAF770000) | |||
eeObj.WriteMem32(0x000FFF2C, 0xAF760004) | |||
eeObj.WriteMem32(0x000FFF30, 0xAF750008) | |||
eeObj.WriteMem32(0x000FFF34, 0xAF74000C) | |||
eeObj.WriteMem32(0x000FFF38, 0x3C1701FF) | |||
eeObj.WriteMem32(0x000FFF3C, 0x36F7FCF0) | |||
eeObj.WriteMem32(0x000FFF48, 0x8EF70000) | |||
eeObj.WriteMem32(0x000FFF4C, 0x26F77000) | |||
eeObj.WriteMem32(0x000FFF50, 0x3C157120) | |||
eeObj.WriteMem32(0x000FFF54, 0x36B5CDA8) | |||
eeObj.WriteMem32(0x000FFF68, 0x8EF40000) | |||
eeObj.WriteMem32(0x000FFF6C, 0x1295FF4E) | |||
eeObj.WriteMem32(0x000FFF74, 0x1000FFFC) | |||
eeObj.WriteMem32(0x000FFF78, 0x26F70004) | |||
eeObj.WriteMem32(0x000FFF7C, 0xAF77FFF0) | |||
eeObj.WriteMem32(0x000FFF80, 0x8F770000) | |||
eeObj.WriteMem32(0x000FFF84, 0x8F760004) | |||
eeObj.WriteMem32(0x000FFF88, 0x8F750008) | |||
eeObj.WriteMem32(0x000FFF8C, 0x8F74000C) | |||
--Ret | |||
eeObj.WriteMem32(0x000FFF90, 0x08047CE4) | |||
--Check if patcher is needed (First thing to do) | |||
eeObj.WriteMem32(0x000FFF98, 0x3C1B000F) | |||
eeObj.WriteMem32(0x000FFF9C, 0x377BFF00) | |||
eeObj.WriteMem32(0x000FFFA0, 0x3C027120) | |||
eeObj.WriteMem32(0x000FFFA4, 0x3442CDA8) | |||
eeObj.WriteMem32(0x000FFFA8, 0x8F7BFFF0) | |||
eeObj.WriteMem32(0x000FFFAC, 0x8F7B0000) | |||
eeObj.WriteMem32(0x000FFFB0, 0x1762FFDB) | |||
eeObj.WriteMem32(0x000FFFB4, 0x241B0000) | |||
--Ret | --Ret | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFFB8, 0x08047CE4) | ||
end | end | ||
emuObj.AddVsyncHook(patcher) | emuObj.AddVsyncHook(patcher) | ||
emuObj.AddVsyncHook(patcher) | |||
</pre> | </pre> | ||
====Ratchet & Clank 2 - Going Commando==== | ====Ratchet & Clank 2 - Going Commando==== | ||
'''LUA''' | '''LUA''' | ||
<br>SCUS-97268 | <br>SCUS-97268 | ||
Line 5,166: | Line 5,060: | ||
local patcher = function() | local patcher = function() | ||
--jmp | --jmp | ||
eeObj.WriteMem32(0x0011B18C, | eeObj.WriteMem32(0x0011B18C, 0x0803FFE6) | ||
--Vcallms | |||
-- | eeObj.WriteMem32(0x000FFA00, 0x241B0020) | ||
eeObj.WriteMem32(0x000FFA00, | eeObj.WriteMem32(0x000FFA04, 0x4A000038) | ||
eeObj.WriteMem32(0x000FFA04, | eeObj.WriteMem32(0x000FFA08, 0x277BFFFF) | ||
eeObj.WriteMem32(0x000FFA08, | eeObj.WriteMem32(0x000FFA0C, 0x1760FFFE) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA18, 0x03E00008) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA1C, 0x241F0000) | ||
eeObj.WriteMem32( | --VI01 | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA34, 0x48C00800) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA38, 0x241B0100) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA3C, 0x277BFFFF) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA40, 0x1760FFFE) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA4C, 0x03E00008) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA50, 0x241F0000) | ||
eeObj.WriteMem32( | --VI02 | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA68, 0x48C01000) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA6C, 0x241B0100) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA70, 0x277BFFFF) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFA74, 0x1760FFFE) | ||
eeObj.WriteMem32(0x000FFA80, 0x03E00008) | |||
eeObj.WriteMem32(0x000FFA84, 0x241F0000) | |||
--Patcher | --Patcher | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCA8, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCAC, 0x36B5FE80) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCB0, 0x8EF60004) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCB4, 0x12D500B1) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC0, 0xAEF50004) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC4, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCC8, 0x36B5FE89) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCCC, 0xAEF500BC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD0, 0xAEF501FC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD4, 0xAEF50354) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCD8, 0xAEF50494) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCDC, 0xAEF505EC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE0, 0xAEF5072C) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE4, 0x3C150C03) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCE8, 0x36B5FE96) | ||
-- | eeObj.WriteMem32(0x000FFCEC, 0xAEF5015C) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF0, 0xAEF502AC) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF4, 0xAEF503F4) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCF8, 0xAEF50544) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFCFC, 0xAEF5068C) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFD00, 0xAEF507E4) | ||
eeObj.WriteMem32(0x000FFD04, 0x1000009D) | |||
eeObj.WriteMem32( | --Create pointer and jmp to patcher | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF20, 0x3C1B000F) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF24, 0x377BFF00) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF28, 0xAF770000) | ||
-- | eeObj.WriteMem32(0x000FFF2C, 0xAF760004) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF30, 0xAF750008) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF34, 0xAF74000C) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF38, 0x3C170020) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF50, 0x3C157120) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF54, 0x36B5CDA8) | ||
eeObj.WriteMem32( | eeObj.WriteMem32(0x000FFF68, 0x8EF40000) | ||
eeObj.WriteMem32(0x000FFF6C, 0x1295FF4E) | |||
eeObj.WriteMem32(0x000FFF74, 0x1000FFFC) | |||
eeObj.WriteMem32(0x000FFF78, 0x26F70004) | |||
eeObj.WriteMem32(0x000FFF7C, 0xAF77FFF0) | |||
eeObj.WriteMem32(0x000FFF80, 0x8F770000) | |||
eeObj.WriteMem32(0x000FFF84, 0x8F760004) | |||
eeObj.WriteMem32(0x000FFF88, 0x8F750008) | |||
eeObj.WriteMem32(0x000FFF8C, 0x8F74000C) | |||
--ret | |||
eeObj.WriteMem32(0x000FFF90, 0x08046C64) | |||
--Check if patcher is needed (First thing to do) | |||
eeObj.WriteMem32(0x000FFF98, 0x3C1B000F) | |||
eeObj.WriteMem32(0x000FFF9C, 0x377BFF00) | |||
eeObj.WriteMem32(0x000FFFA0, 0x3C027120) | |||
eeObj.WriteMem32(0x000FFFA4, 0x3442CDA8) | |||
eeObj.WriteMem32(0x000FFFA8, 0x8F7BFFF0) | |||
eeObj.WriteMem32(0x000FFFAC, 0x8F7B0000) | |||
eeObj.WriteMem32(0x000FFFB0, 0x1762FFDB) | |||
eeObj.WriteMem32(0x000FFFB4, 0x241B0000) | |||
--ret | |||
eeObj.WriteMem32(0x000FFFB8, 0x08046C64) | |||
end | end | ||
emuObj.AddVsyncHook(patcher) | emuObj.AddVsyncHook(patcher) | ||
</pre> | </pre> | ||