-- Without Warning (SLUS)
-- Widescreen hack by nemesis2000 @PCSX2 forums
-- 60 fps by asasega @PCSX2 forums
-- emu used=aofa
local gpr = require("ee-gpr-alias")
apiRequest(0.4)
local eeObj = getEEObject()
local emuObj = getEmuObject()
--16:9 (crashes emu if used as WriteMem32)
eeInsnReplace(0x001486fc, 0x00000000, 0x3c013f40)
eeInsnReplace(0x00148700, 0x3c013f40, 0x44810800)
eeInsnReplace(0x00148704, 0x44810000, 0x27bdffe0)
eeInsnReplace(0x00148708, 0x27bdffe0, 0x3c04004b)
eeInsnReplace(0x0014870c, 0x3c04004b, 0x8c848318)
eeInsnReplace(0x00148710, 0x8c848318, 0x03a0282d)
eeInsnReplace(0x00148714, 0x03a0282d, 0x46016002)
eeInsnReplace(0x00148718, 0x46006002, 0x46016303)
eeInsnReplace(0x00148368, 0x0c0521c0, 0x0c0521bf)
eeInsnReplace(0x00197ddc, 0x0c0521c0, 0x0c0521bf)
eeInsnReplace(0x00197df8, 0x0c0521c0, 0x0c0521bf)
--black borders fix
eeInsnReplace(0x0017f75c, 0x3c014260, 0x3c013f80)
local patcher = function()
--God Mode by Code Master, Lajos Szalay
-- God Mode Toggle
local pad_bits = emuObj.GetPad()
local UP = pad_bits & 0x0010
local DOWN = pad_bits & 0x0040
local LEFT = pad_bits & 0x0080
local RIGHT = pad_bits & 0x0020
local Triangle = pad_bits & 0x1000
local Cross = pad_bits & 0x4000
local Square = pad_bits & 0x8000
local Circle = pad_bits & 0x2000
local L1 = pad_bits & 0x0400
local L2 = pad_bits & 0x0100
local L3 = pad_bits & 0x0002
local R1 = pad_bits & 0x0800
local R2 = pad_bits & 0x0200
local R3 = pad_bits & 0x0004
local Select = pad_bits & 0x0001
local Start = pad_bits & 0x0008
if (L1 ~= 0 and Select ~= 0) then -- normal
eeObj.WriteMem32(0x004A5A8B,0x00000000) -- normal man
end
if (R1 ~= 0 and Select ~= 0) then -- god
eeObj.WriteMem32(0x004A5A8B,0x00000001) -- god-like entity
end
--- 60FPS enable
--60 fps -- Notes: activate ingame, title menu freezes for whatever reason, probably because of the fmv played in the background
if (R3 ~= 0 and Select ~= 0) then
eeObj.WriteMem32(0x004A749C,0x00000001) -- 60fps
end
emuObj.ThrottleMax()
end
emuObj.AddVsyncHook(patcher)