REDIVIVUS

Proposals / #1008

Recover the Boolean result of the Mac waypoint mini-panel hit test

applied · by Commit-Will · submitted 2026-11-02, applied 2026-11-02

Ghidra vmac 111 · 3cfe190

Mac 000dbc37 currently returns undefined4, but its complete native body explicitly normalizes every result to full EAX 0/1. At the sole RET, the only reaching definitions are MOV EAX,1 and XOR EAX,EAX. Both complete caller functions immediately TEST full EAX. Recover the existing 4-byte BOOL return while preserving __cdecl, zero formals, selected names and all storage intent. All 57 target instructions, complete callers and actual scalar/UI producers independently match separate assembly: 1320 code bytes plus 8 pointer-cell bytes. UI calls use literal IDs 20/21 below the actual native bound 38; underlying state words need not themselves be normalized. No semantic incoming register or argument-slot input is used; written frame storage and fixed-PIC sources close. This is an independently complete return contract, with no RET-only arity inference, shared funcdef/global/layout/caller changes or reduced held-claim refile. Static Mac proof only; no execution, Windows pairing or build gain.

Changes 1, applied together

  1. Set prototype mac 0x000dbc37

    signatureundefined4 WAYPOINT_IsMouseInMiniPanel(void)→BOOL WAYPOINT_IsMouseInMiniPanel(void)
    convention__cdecl