REDIVIVUS

Proposals / #1147

Mac SKILLS_SetSrvDoFuncAndAttackTarget: BOOL __cdecl (pGame, pUnit) prototype

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

Mac 0x0026962f is "undefined (void)", convention unknown. Reads only [EBP+8] (pGame -> ESI) and [EBP+0xc] (pUnit -> EDI; sets [EDI+0xc4] |= 0x40), passes both to 0x00279d5d and 0x0027f48b, returns ECX=0/1 via MOV EAX,ECX, plain RET at 0x0026967f. Both callers store only [ESP] (pGame) and [ESP+4] (unit) before CALL (0x0026ad10-0x0026ad17, 0x0026b11b-0x0026b125). Windows twin 0x0056c2d0 returns BOOL and has an extra dwUnused the Mac build does not pass.

Changes 1, applied together

  1. Set prototype mac 0x0026962f

    signatureundefined SKILLS_SetSrvDoFuncAndAttackTarget(void)→BOOL SKILLS_SetSrvDoFuncAndAttackTarget(D2GameStrc * pGame, D2UnitStrc * pUnit)
    conventionunknown→__cdecl