|
libnds
|
hardware coprocessor math instructions. More...
#include "nds/ndstypes.h"Functions | |
| static void | crossf32 (int32 *a, int32 *b, int32 *result) |
| 1.19.12 fixed point cross product function result = AxB | |
| static int32 | div32 (int32 num, int32 den) |
| integer divide | |
| static int32 | div64 (int64 num, int32 den) |
| integer 64 bit divide | |
| static int32 | divf32 (int32 num, int32 den) |
| Fixed point divide. | |
| static int32 | dotf32 (int32 *a, int32 *b) |
| 1.19.12 fixed point dot product function result = A dot B | |
| static int32 | mod32 (int32 num, int32 den) |
| integer modulous | |
| static int32 | mod64 (int64 num, int32 den) |
| integer 64 bit modulous | |
| static int32 | mulf32 (int32 a, int32 b) |
| Fixed point multiply. | |
| static void | normalizef32 (int32 *a) |
| 1.19.12 fixed point normalize function A = A / |A| | |
| static u32 | sqrt32 (int a) |
| integer sqrt | |
| static u32 | sqrt64 (long long a) |
| integer sqrt | |
| static int32 | sqrtf32 (int32 a) |
| Fixed point sqrt. | |
hardware coprocessor math instructions.
1.19.12 fixed point cross product function result = AxB
| 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 |
integer divide
| num | numerator |
| den | denominator |
integer 64 bit divide
| num | 64 bit numerator |
| den | 32 bit denominator |
Fixed point divide.
| num | Takes 20.12 numerator. |
| den | Takes 20.12 denominator. |
1.19.12 fixed point dot product function result = A dot B
| a | pointer to fixed 3x3 matrix |
| b | pointer to fixed 3x3 matrix |
integer modulous
| num | numerator |
| den | denominator |
integer 64 bit modulous
| num | 64 bit numerator |
| den | 32 bit denominator |
Fixed point multiply.
| a | Takes 20.12 |
| b | Takes 20.12 |
| static void normalizef32 | ( | int32 * | a | ) | [inline, static] |
1.19.12 fixed point normalize function A = A / |A|
| a | pointer to fixed 3x3 matrix Normalize Ax = Ax / mag Ay = Ay / mag Az = Az / mag |
| static u32 sqrt32 | ( | int | a | ) | [inline, static] |
integer sqrt
| a | 32 bit integer argument |
| static u32 sqrt64 | ( | long long | a | ) | [inline, static] |
integer sqrt
| a | 64 bit integer argument |
1.7.3