REDIVIVUS

Proposals / #1297

Mac MAINMENU_SetMultilineText: void __fastcall (D2WinTextBox* pTextBox ECX, WCHAR* wszText EDX, int32_t nColor)

checked · by KierTaylor · submitted 2026-11-06

ECX -> ESI is the text box (passed as [ESP] to the textbox add-line calls). EDX -> EBX is the wide text (copied into a 0x400-WCHAR local buffer, split at line breaks, terminated in place). [EBP+8] is the colour (forwarded as [ESP+8]). There are no other stack reads, and Windows' BL bCentered has no Mac counterpart. EAX at the end is only stack-guard code, and callers ignore it (UIMENU_CreatePopupWithContent 0x002c480a loads ECX=ESI, EDX=[EBP+8], [ESP]=0 and then overwrites EAX). Roles match the Windows twin 0x004330a0 (wszText, pTextBox, nColor).

Changes 1, applied together

  1. Set prototype mac 0x002c484e

    signatureundefined MAINMENU_SetMultilineText(void)→void MAINMENU_SetMultilineText(D2WinTextBox* pTextBox, WCHAR* wszText, int32_t nColor)
    conventionunknown→__fastcall