mirror of
https://github.com/sfall-team/sfall.git
synced 2026-07-27 16:52:34 -07:00
Fixed the format of some debug messages (#195)
This commit is contained in:
@@ -373,6 +373,21 @@ static void __declspec(naked) debug_log_hack() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* scrNameFmt = "\nScript: %s ";
|
||||||
|
|
||||||
|
static void __declspec(naked) debugMsg() {
|
||||||
|
__asm {
|
||||||
|
mov edx, ds:[FO_VAR_currentProgram];
|
||||||
|
push [edx]; // script name
|
||||||
|
push scrNameFmt;
|
||||||
|
call fo::funcoffs::debug_printf_;
|
||||||
|
add esp, 8;
|
||||||
|
jmp fo::funcoffs::debug_printf_;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//static const DWORD addrNewLine[] = {0x50B244, 0x50B27C, 0x50B2B6, 0x50B2EE}; // ERROR: attempt to reference * var out of range: %d
|
||||||
|
|
||||||
static void DebugModePatch() {
|
static void DebugModePatch() {
|
||||||
int dbgMode = iniGetInt("Debugging", "DebugMode", 0, ::sfall::ddrawIni);
|
int dbgMode = iniGetInt("Debugging", "DebugMode", 0, ::sfall::ddrawIni);
|
||||||
if (dbgMode > 0) {
|
if (dbgMode > 0) {
|
||||||
@@ -411,6 +426,18 @@ static void DebugModePatch() {
|
|||||||
__int64 data = 0x51DF0415FFF08990; // mov eax, esi; call ds:_debug_func
|
__int64 data = 0x51DF0415FFF08990; // mov eax, esi; call ds:_debug_func
|
||||||
SafeWriteBytes(0x455419, (BYTE*)&data, 8); // op_display_msg_
|
SafeWriteBytes(0x455419, (BYTE*)&data, 8); // op_display_msg_
|
||||||
|
|
||||||
|
// set the position of the debug window
|
||||||
|
SafeWrite8(0x4DC34D, 15);
|
||||||
|
|
||||||
|
// Fix the format of some debug messages
|
||||||
|
// SafeWriteBatch<BYTE>(0xA, addrNewLine);
|
||||||
|
HookCalls(debugMsg, {
|
||||||
|
0x482240, // map_set_global_var_
|
||||||
|
0x482274, // map_get_global_var_
|
||||||
|
0x4822A0, // map_set_local_var_
|
||||||
|
0x4822D4 // map_get_local_var_
|
||||||
|
});
|
||||||
|
|
||||||
dlogr(" Done", DL_INIT);
|
dlogr(" Done", DL_INIT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user