REDIVIVUS

Proposals / #929

Mac CHAT_HandleWhisperCommand: __fastcc BOOL (char * szInput, char * szCommandName)

applied · by KierTaylor · submitted 2026-11-02, applied 2026-11-02

Ghidra vmac 111 · 3c6740e

Mac body: ECX (EDI) is the typed line and EDX (EBX) the command word: EDX goes to strlen, both go to CHAT_CompareCaseInsensitive (ECX, EDX), and the byte of ECX after the command length must be a space/NUL; the target name and text are then tokenised out of ECX. It returns 0/1 in EAX and never reads [EBP+8], so the Windows bInGame parameter is absent here. Callers in INPUT_HandleChatCharInput set ECX = input line (ESI) and EDX = a command-name string constant (0x0009f7f8/0x0009f7fe, x4). Windows twin CHAT_HandleWhisperCommand 0x0047c1f0 is BOOL (int32_t bInGame, char * szCommandName, char * szInput).

Changes 1, applied together

  1. Set prototype mac 0x000a0289

    signatureundefined CHAT_HandleWhisperCommand(void)→BOOL CHAT_HandleWhisperCommand(char * szInput, char * szCommandName)
    conventionunknown→__fastcc