math.h File Reference

hardware coprocessor instructions More...

#include "nds/ndstypes.h"

Functions

void crossf32 (int32 *a, int32 *b, int32 *result)
 1.19.12 fixed point cross product function result = AxB
int32 div32 (int32 num, int32 den)
 integer divide
int32 div64 (int64 num, int32 den)
 integer 64 bit divide
int32 divf32 (int32 num, int32 den)
 Fixed point divide.
int32 dotf32 (int32 *a, int32 *b)
 1.19.12 fixed point dot product function result = A dot B
int32 mod32 (int32 num, int32 den)
 integer modulous
int32 mod64 (int64 num, int32 den)
 integer 64 bit modulous
int32 mulf32 (int32 a, int32 b)
 Fixed point multiply.
void normalizef32 (int32 *a)
 1.19.12 fixed point normalize function A = A / |A|
u32 sqrt32 (int a)
 integer sqrt
u32 sqrt64 (long long a)
 integer sqrt
int32 sqrtf32 (int32 a)
 Fixed point sqrt.


Detailed Description

hardware coprocessor instructions


Function Documentation

static void crossf32 ( int32 *  a,
int32 *  b,
int32 *  result 
) [inline]

1.19.12 fixed point cross product function result = AxB

Parameters:
a pointer to fixed 3x3 matrix
b pointer to fixed 3x3 matrix
result pointer to fixed 3x3 matrix Cross product x = Ay * Bz - By * Az y = Az * Bx - Bz * Ax z = Ax * By - Bx * Ay

static int32 div32 ( int32  num,
int32  den 
) [inline]

integer divide

Parameters:
num numerator
den denominator
Returns:
returns 32 bit integer result

static int32 div64 ( int64  num,
int32  den 
) [inline]

integer 64 bit divide

Parameters:
num 64 bit numerator
den 32 bit denominator
Returns:
returns 32 bit integer result

static divf32 ( int32  num,
int32  den 
) [inline]

Fixed point divide.

Parameters:
num Takes 20.12 numerator and denominator
den Takes 20.12 numerator and denominator
Returns:
returns 20.12 result

static int32 dotf32 ( int32 *  a,
int32 *  b 
) [inline]

1.19.12 fixed point dot product function result = A dot B

Parameters:
a pointer to fixed 3x3 matrix
b pointer to fixed 3x3 matrix
Returns:
32 bit integer result Dot Product result = Ax * Bx + Ay * By + Az * Bz

static int32 mod32 ( int32  num,
int32  den 
) [inline]

integer modulous

Parameters:
num numerator
den denominator
Returns:
returns 32 bit integer remainder

static int32 mod64 ( int64  num,
int32  den 
) [inline]

integer 64 bit modulous

Parameters:
num 64 bit numerator
den 32 bit denominator
Returns:
returns 32 bit integer remainder

static static int32 mulf32 ( int32  a,
int32  b 
) [inline]

Fixed point multiply.

Parameters:
a Takes 20.12
b Takes 20.12
Returns:
returns 20.12 result

static void normalizef32 ( int32 *  a  )  [inline]

1.19.12 fixed point normalize function A = A / |A|

Parameters:
a pointer to fixed 3x3 matrix Normalize Ax = Ax / mag Ay = Ay / mag Az = Az / mag

static int32 sqrt32 ( int  a  )  [inline]

integer sqrt

Parameters:
a 32 bit integer argument
Returns:
returns 32 bit integer result

static int32 sqrt64 ( long long  a  )  [inline]

integer sqrt

Parameters:
a 64 bit integer argument
Returns:
returns 32 bit integer result

static int32 sqrtf32 ( int32  a  )  [inline]

Fixed point sqrt.

Parameters:
a Takes 20.12
Returns:
returns 20.12 result


Generated on Sun Mar 7 12:47:54 2010 for libnds by  doxygen 1.5.7.1