Type both ANIM_GetSequenceFrameInfo inputs as D2MonSeqTxt arrays
Ghidra v1797 (mac 105) · 3bccb89
Win 00663410 and Mac 0014b1ba index six-byte sequence records and read unsigned mode/frame/dir/event bytes at +2/+3/+4/+5. Both complete bodies use signed frame>>8 and advance event reads by six bytes. All three callers per build pass the actual sequence array: GetEventFrameInfo and MONSTER_PreloadSequenceAnimations pass MERC_GetSequenceTxt's typed result; UpdateSequenceMode loads the unit field populated by InitializeSequence from that same getter. The getter loads D2MonSeqMonsterTbls.pMonSeqTxt; the original MonSeq loader compiles six-byte records and stores their addresses in that table. Existing D2MonSeqTxt matches the complete layout in both databases. Retype only the four-byte first-stack input, preserving names, both frame inputs, four output pointers, void return and seven-argument stdcall/cdecl ABI. Complete targets/callers/producers and original Windows bytes verified. Static only; no unit-field, caller or pending-function edits.
Changes 2, applied together
Retype variable
win 0x00663410 Stack[0x4]typebyte *→D2MonSeqTxt *Retype variable
mac 0x0014b1ba Stack[0x4]typebyte *→D2MonSeqTxt *