User:Scalerize: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
apiRequest(0.1) | |||
local eeObj = getEEObject() | local eeObj = getEEObject() | ||
local emuObj = getEmuObject() | local emuObj = getEmuObject() | ||
-- Create a Pointer in 000FFF10 and a previous value in 000FFF14 | |||
--(There is no need to write these instructions more than once so why bother?) | |||
eeObj.WriteMem32(0x0011F38C, 0x0803FFC8) | eeObj.WriteMem32(0x0011F38C, 0x0803FFC8) | ||
eeObj.WriteMem32(0x000FFF20, 0x3C1B000F) | eeObj.WriteMem32(0x000FFF20, 0x3C1B000F) | ||
Line 32: | Line 32: | ||
eeObj.WriteMem32(0x000FFF90, 0xAF770014) | eeObj.WriteMem32(0x000FFF90, 0xAF770014) | ||
local | --Continuously check for updates, and patch the necessary offsets | ||
local Hooks = function() | |||
if | if eeObj.ReadMem32(0x000FFF10) ~= 0 and eeObj.ReadMem32(0x000FFF14) ~= eeObj.ReadMem32(0x000FFF10) then | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10),0x7120CDA8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x8,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0xB8,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0xC0,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x158,0x701188FC, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x160,0x70E0CDA8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x1F8,0x7019CC3F, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x200,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x2A8,0x7120CDA8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x2B0,0x7009E688, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x350,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x358,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x3F0,0x701188FC, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x3F8,0x70E0CDA8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x490,0x7019CC3F, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x498,0x00000000, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x540,0x7120CDA8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x548,0x7009E688, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x5E8,0x0019C900, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x5F0,0x0325C820, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x688,0x000F7880, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x690,0x22310006, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook( | eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x728,0x7017BEC8, function() eeObj.AdvanceClock(6000) end) | ||
eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x730,0x71D18D88, function() eeObj.AdvanceClock(6000) end) | |||
eeObj.AddHook( | |||
end | end | ||
end | end | ||
emuObj.AddVsyncHook( | emuObj.AddVsyncHook(Hooks) | ||
</pre> | </pre> |
Revision as of 20:34, 29 August 2024
apiRequest(0.1) local eeObj = getEEObject() local emuObj = getEmuObject()
-- Create a Pointer in 000FFF10 and a previous value in 000FFF14 --(There is no need to write these instructions more than once so why bother?) eeObj.WriteMem32(0x0011F38C, 0x0803FFC8) 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(0x000FFF40, 0x24167000) eeObj.WriteMem32(0x000FFF44, 0x26D618B4) eeObj.WriteMem32(0x000FFF48, 0x8EF70000) eeObj.WriteMem32(0x000FFF4C, 0x02D7B821) eeObj.WriteMem32(0x000FFF50, 0x3C157120) eeObj.WriteMem32(0x000FFF54, 0x36B5CDA8) eeObj.WriteMem32(0x000FFF5C, 0x12950004) eeObj.WriteMem32(0x000FFF58, 0x8EF40000) eeObj.WriteMem32(0x000FFF64, 0x26F70004) eeObj.WriteMem32(0x000FFF68, 0x1000FFFB) eeObj.WriteMem32(0x000FFF70, 0xAF770010) eeObj.WriteMem32(0x000FFF7C, 0x8F74000C) eeObj.WriteMem32(0x000FFF80, 0x8F760004) eeObj.WriteMem32(0x000FFF84, 0x8F750008) eeObj.WriteMem32(0x000FFF88, 0xAF770014) eeObj.WriteMem32(0x000FFF8C, 0x241B0000) eeObj.WriteMem32(0x000FFF90, 0xAF770014)
--Continuously check for updates, and patch the necessary offsets local Hooks = function()
if eeObj.ReadMem32(0x000FFF10) ~= 0 and eeObj.ReadMem32(0x000FFF14) ~= eeObj.ReadMem32(0x000FFF10) then eeObj.AddHook(eeObj.ReadMem32(0x000FFF10),0x7120CDA8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x8,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0xB8,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0xC0,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x158,0x701188FC, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x160,0x70E0CDA8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x1F8,0x7019CC3F, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x200,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x2A8,0x7120CDA8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x2B0,0x7009E688, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x350,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x358,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x3F0,0x701188FC, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x3F8,0x70E0CDA8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x490,0x7019CC3F, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x498,0x00000000, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x540,0x7120CDA8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x548,0x7009E688, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x5E8,0x0019C900, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x5F0,0x0325C820, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x688,0x000F7880, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x690,0x22310006, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x728,0x7017BEC8, function() eeObj.AdvanceClock(6000) end) eeObj.AddHook(eeObj.ReadMem32(0x000FFF10)+0x730,0x71D18D88, function() eeObj.AdvanceClock(6000) end) end end emuObj.AddVsyncHook(Hooks)