sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
fixed.h File Reference

Go to the source code of this file.

Macros

#define mad_fixed64_t   signed long long
#define MAD_F_FRACBITS   28
#define MAD_F(x)
#define MAD_F_MIN   ((mad_fixed_t) -0x80000000L)
#define MAD_F_MAX   ((mad_fixed_t) +0x7fffffffL)
#define MAD_F_ONE   MAD_F(0x10000000)
#define mad_f_tofixed(x)
#define mad_f_todouble(x)
#define mad_f_intpart(x)
#define mad_f_fracpart(x)
#define mad_f_fromint(x)
#define mad_f_add(x, y)
#define mad_f_sub(x, y)
#define mad_f_mul(x, y)
#define MAD_F_ML0(hi, lo, x, y)
#define MAD_F_MLA(hi, lo, x, y)
#define MAD_F_MLN(hi, lo)
#define MAD_F_MLZ(hi, lo)
#define mad_f_scale64(hi, lo)
#define MAD_F_SCALEBITS   MAD_F_FRACBITS

Typedefs

typedef signed long mad_fixed_t
typedef signed long mad_fixed64hi_t
typedef unsigned long mad_fixed64lo_t

Functions

mad_fixed_t mad_f_abs (mad_fixed_t)
mad_fixed_t mad_f_div (mad_fixed_t, mad_fixed_t)

Macro Definition Documentation

◆ MAD_F

#define MAD_F ( x)
Value:
((mad_fixed_t) (x##L))

Definition at line 79 of file fixed.h.

◆ mad_f_add

#define mad_f_add ( x,
y )
Value:
((x) + (y))

Definition at line 110 of file fixed.h.

◆ MAD_F_FRACBITS

#define MAD_F_FRACBITS   28

Definition at line 76 of file fixed.h.

◆ mad_f_fracpart

#define mad_f_fracpart ( x)
Value:
((x) & ((1L << MAD_F_FRACBITS) - 1))

Definition at line 105 of file fixed.h.

◆ mad_f_fromint

#define mad_f_fromint ( x)
Value:
((x) << MAD_F_FRACBITS)

Definition at line 108 of file fixed.h.

◆ mad_f_intpart

#define mad_f_intpart ( x)
Value:
((x) >> MAD_F_FRACBITS)

Definition at line 104 of file fixed.h.

◆ MAD_F_MAX

#define MAD_F_MAX   ((mad_fixed_t) +0x7fffffffL)

Definition at line 95 of file fixed.h.

◆ MAD_F_MIN

#define MAD_F_MIN   ((mad_fixed_t) -0x80000000L)

Definition at line 94 of file fixed.h.

◆ MAD_F_ML0

#define MAD_F_ML0 ( hi,
lo,
x,
y )
Value:
((lo) = mad_f_mul((x), (y)))

Definition at line 465 of file fixed.h.

◆ MAD_F_MLA

#define MAD_F_MLA ( hi,
lo,
x,
y )
Value:
((lo) += mad_f_mul((x), (y)))

Definition at line 466 of file fixed.h.

◆ MAD_F_MLN

#define MAD_F_MLN ( hi,
lo )
Value:
((lo) = -(lo))

Definition at line 467 of file fixed.h.

◆ MAD_F_MLZ

#define MAD_F_MLZ ( hi,
lo )
Value:
((void) (hi), (mad_fixed_t) (lo))

Definition at line 468 of file fixed.h.

◆ mad_f_mul

#define mad_f_mul ( x,
y )
Value:
({ register mad_fixed64hi_t __hi; \
register mad_fixed64lo_t __lo; \
MAD_F_MLX(__hi, __lo, (x), (y)); \
mad_f_scale64(__hi, __lo); \
})

Definition at line 456 of file fixed.h.

◆ MAD_F_ONE

#define MAD_F_ONE   MAD_F(0x10000000)

Definition at line 97 of file fixed.h.

◆ mad_f_scale64

#define mad_f_scale64 ( hi,
lo )
Value:
((mad_fixed_t) \
(((hi) << (32 - MAD_F_SCALEBITS)) | \
((lo) >> MAD_F_SCALEBITS)))

Definition at line 490 of file fixed.h.

◆ MAD_F_SCALEBITS

#define MAD_F_SCALEBITS   MAD_F_FRACBITS

Definition at line 495 of file fixed.h.

◆ mad_f_sub

#define mad_f_sub ( x,
y )
Value:
((x) - (y))

Definition at line 111 of file fixed.h.

◆ mad_f_todouble

#define mad_f_todouble ( x)
Value:
((double) \
((x) / (double) (1L << MAD_F_FRACBITS)))

Definition at line 101 of file fixed.h.

◆ mad_f_tofixed

#define mad_f_tofixed ( x)
Value:
((mad_fixed_t) \
((x) * (double) (1L << MAD_F_FRACBITS) + 0.5))

Definition at line 99 of file fixed.h.

◆ mad_fixed64_t

#define mad_fixed64_t   signed long long

Definition at line 44 of file fixed.h.

Typedef Documentation

◆ mad_fixed64hi_t

typedef signed long mad_fixed64hi_t

Definition at line 37 of file fixed.h.

◆ mad_fixed64lo_t

typedef unsigned long mad_fixed64lo_t

Definition at line 38 of file fixed.h.

◆ mad_fixed_t

typedef signed long mad_fixed_t

Definition at line 35 of file fixed.h.

Function Documentation

◆ mad_f_abs()

mad_fixed_t mad_f_abs ( mad_fixed_t x)

Definition at line 34 of file fixed.c.

◆ mad_f_div()

mad_fixed_t mad_f_div ( mad_fixed_t x,
mad_fixed_t y )

Definition at line 43 of file fixed.c.