#include "game_types.h"

/* Float_Normalize5 @ 0x0801EDC4 (real 108B) -- fixed-point multiply-accumulate. Mirrors src/matched/Float_Normalize5.c. */
/* Fixed-point MAC: returns the high word of (a*b... precisely (a*c)>>32
   plus a*d + b*c with 32-bit wrap. The packed repack lane is dead. */
int Float_Normalize5(unsigned a, unsigned b, unsigned c, unsigned d)
{
    unsigned long long p = (unsigned long long)a * c;
    return (int)(p >> 32) + (int)(a * d + b * c);
}
