REDIVIVUS

Proposals / #1211

Mac HasMercItems: BOOL __fastcc (pGame ECX, pUnit EDX, pUnit2 stack) prototype

rejected · by KierTaylor · submitted 2026-11-05, rejected 2026-11-05

Mac 0x00212e29 is "undefined (void)", convention unknown. Entry: ESI=ECX (game: arg 1 of 0x001b6cb1), [EDX+0x60] (unit inventory) walked via 0x00167701/0x00169cb4/0x00169f41; for each item with type 2 it calls 0x001b6cb1(pGame, [EBP+8], pItem); returns 0/1 in EAX. [EBP+8] is the only stack read. Same three values as Windows twin 0x005672d0 BOOL (pGame, D2UnitStrc* pUnit2, D2UnitStrc* pUnit), in Mac register order.

Changes 1, applied together

  1. Set prototype mac 0x00212e29

    signatureundefined HasMercItems(void)→BOOL HasMercItems(D2GameStrc * pGame, D2UnitStrc * pUnit, D2UnitStrc * pUnit2)
    conventionunknown→__fastcc