REDIVIVUS

Proposals / #1176

Mac ITEMMODE_GetItemGoldValue: void __fastcc (pGame, pUnit, pItem) prototype

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

Mac 0x001ba02e is "undefined (void)", convention unknown. Entry: EDI=EDX (unit: [EDI+0x60] inventory passed to 0x001695eb), ESI=ECX (game, kept for later calls), EBX=[EBP+8] (item: passed to 0x001695eb and item getter 0x0019032d); no other stack args. It sits in the same ITEMMODE callback table as ITEMMODE_CheckCanPickup (data refs 0x0061896c/0x00618974 region), whose caller passes ECX=pGame, EDX=pUnit, [ESP]=item. Same three values as Windows twin 0x0055d940 void (pGame, D2UnitStrc* pUnit, D2UnitStrc* pUnit2).

Changes 1, applied together

  1. Set prototype mac 0x001ba02e

    signatureundefined ITEMMODE_GetItemGoldValue(void)→void ITEMMODE_GetItemGoldValue(D2GameStrc * pGame, D2UnitStrc * pUnit, D2UnitStrc * pItem)
    conventionunknown→__fastcc