You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, thcrap_loader, the binary hack system and the breakpoint system all assume a game's main module to be loaded at a constant place in memory. Thus, a game loaded to a dynamic base address essentially can't be patched at all.
This feature is required for supporting Hopeless Masquerade and the PC-98 games at all.
Prerequisites
None.
Implementation
For binary hack and breakpoint addresses, add rva as an alternative key for addresses relative to the module's base address.
The text was updated successfully, but these errors were encountered:
Would you like to explain why we need a scheme using PE section names?
I think finding the base address by module name(maybe NULL for main exe module) then using RVA to locate is enough for binhack and breakpoint addresses, at least on Windows. For PC-98 DOS, there are even no PE sections.
Yeah, you're right. I was under the impression that base address randomization could also randomly move the individual PE sections, but after some research (which I admittedly haven't done when posting the implementation part), that doesn't seem to be the case.
On PC-98 DOS, I have verified that, I just wasn't so sure about Windows. So, RVA is the way to go.
Dynamic base addresses
Description
Right now,
thcrap_loader
, the binary hack system and the breakpoint system all assume a game's main module to be loaded at a constant place in memory. Thus, a game loaded to a dynamic base address essentially can't be patched at all.This feature is required for supporting Hopeless Masquerade and the PC-98 games at all.
Prerequisites
None.
Implementation
rva
as an alternative key for addresses relative to the module's base address.The text was updated successfully, but these errors were encountered: