Files
libretro/bios/Other/eka2l1/scripts/eternal_legacy_crash_fix.lua
T

16 lines
764 B
Lua

local common = require('eka2l1.common')
local evt = require('eka2l1.events')
local cpu = require('eka2l1.cpu')
local ffi = require('ffi')
function fixWrongGLSLCodeHash()
-- For some reason they try to hash configuration header string instead. They take the combined string
-- length, so we can try to replace the configuration string with combined
-- Again, this crash sometimes are constant!! Because the emulator's randomness does not exist. Note that
-- OpenGL operations does not cause any allocations that is supposed to make the memory orders random.
cpu.setReg(7, cpu.getReg(8))
end
common.log('Script enabled: Eternal Legacy (Gameloft) crash fix.')
evt.registerBreakpointHook('eternallegacy.exe', 0x00270488, 0, 0, fixWrongGLSLCodeHash, 0x7C16F812)