REDIVIVUS

Proposals / #1000

Recover the Mac input-modifier flag result

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

Ghidra vmac 111 · 3cfe190

Mac0006e56d currently declares undefined INPUT_GetClickModifierFlags(void). All70 original bytes form a semantic flag producer: three fixed-PIC DWORD zero tests produce only0/4/8/12; finalMOVZX EAX,DX defines the full32-bit result. Its sole runtime caller tests bit8 to choose literal4/2 before a downstream call. Recover existing4-byte unsigned uint32_t for the raw bitmask, rather thanBOOL. Complete target and129-byte solecaller independently match separate assembly (199code bytes, no switch/gap); every input/return route closes. PartialECX writes retain arbitrary incoming high16, but finalzeroextension discards them; no semantic incoming argument is consumed. Preserve selected name, zeroformals and currentunknown convention: this return-only correction does not recover/certify anABI or inferarity fromRET. No rename, globals, layouts, callers, producer types, sharedfuncdefs or pending/held targets changed. StaticMac only; no runtime/build/Windows-pair claim.

Changes 1, applied together

  1. Set prototype mac 0x0006e56d

    signatureundefined INPUT_GetClickModifierFlags(void)→uint32_t INPUT_GetClickModifierFlags(void)
    conventionunknown