REDIVIVUS

Proposals / #1038

Recover the Mac inventory graphics-name getter's character-pointer return

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

Ghidra vmac 111 · 3cfe190

Mac 0x00170349 returns a full character-entry address, currently typed undefined. Every normal return copies ESI, holding either the captured empty-string address or an ItemTypes row + 0x24 + (selected index << 5). Existing record fields and the loader's six named ASCII-column requests establish character storage. Its sole recorded code caller forwards the existing item/index inputs and stores the full returned pointer. Change only the return to char *, preserving both chosen formals, their types, Stack[4]/Stack[8], and __cdecl. Native bytes match separate assembly, including the caller's physical seven-row PIC table. Copy/count-output interfaces are requests, not verified external writes. No count, index, termination, overflow, allocation, implementation, runtime, build or Windows-pair guarantee accompanies this claim.

Changes 1, applied together

  1. Set prototype mac 0x00170349

    signatureundefined ITEMS_GetItemTypeInvGfxName(D2UnitStrc * pItem, int nIndex)→char * ITEMS_GetItemTypeInvGfxName(D2UnitStrc * pItem, int nIndex)
    convention__cdecl