summaryrefslogtreecommitdiff
path: root/libs/JSystem/JMath/JMath.cpp
blob: 46215f95279f40cf7cf48e830cde926b657b75bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
//
// Generated By: dol2asm
// Translation Unit: JMath
//

#include "JSystem/JMath/JMath.h"
#include "dol2asm.h"
#include "dolphin/types.h"

//
// Forward References:
//

extern "C" void JMAEulerToQuat__FsssP10Quaternion();
extern "C" void JMAQuatLerp__FPC10QuaternionPC10QuaternionfP10Quaternion();
extern "C" void JMAFastVECNormalize__FPC3VecP3Vec();
extern "C" void JMAVECScaleAdd__FPC3VecPC3VecP3Vecf();
extern "C" void JMAMTXApplyScale__FPA4_CfPA4_ffff();

//
// External References:
//

extern "C" u8 sincosTable___5JMath[65536];

//
// Declarations:
//

/* 80339878-80339938 3341B8 00C0+00 0/0 11/11 2/2 .text            JMAEulerToQuat__FsssP10Quaternion
 */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JMAEulerToQuat(s16 param_0, s16 param_1, s16 param_2, Quaternion* param_3) {
    nofralloc
#include "asm/JSystem/JMath/JMath/JMAEulerToQuat__FsssP10Quaternion.s"
}
#pragma pop

/* ############################################################################################## */
/* 804564C8-804564D0 004AC8 0008+00 1/1 0/0 0/0 .sdata2          @376 */
SECTION_SDATA2 static u8 lit_376[8] = {
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

/* 80339938-80339A30 334278 00F8+00 0/0 5/5 0/0 .text
 * JMAQuatLerp__FPC10QuaternionPC10QuaternionfP10Quaternion     */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JMAQuatLerp(Quaternion const* param_0, Quaternion const* param_1, f32 param_2,
                     Quaternion* param_3) {
    nofralloc
#include "asm/JSystem/JMath/JMath/JMAQuatLerp__FPC10QuaternionPC10QuaternionfP10Quaternion.s"
}
#pragma pop

/* 80339A30-80339A5C 334370 002C+00 0/0 1/1 0/0 .text            JMAFastVECNormalize__FPC3VecP3Vec
 */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JMAFastVECNormalize(Vec const* param_0, Vec* param_1) {
    nofralloc
#include "asm/JSystem/JMath/JMath/JMAFastVECNormalize__FPC3VecP3Vec.s"
}
#pragma pop

/* 80339A5C-80339A84 33439C 0028+00 0/0 1/1 0/0 .text            JMAVECScaleAdd__FPC3VecPC3VecP3Vecf
 */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JMAVECScaleAdd(Vec const* param_0, Vec const* param_1, Vec* param_2, f32 param_3) {
    nofralloc
#include "asm/JSystem/JMath/JMath/JMAVECScaleAdd__FPC3VecPC3VecP3Vecf.s"
}
#pragma pop

/* ############################################################################################## */
/* 804564D0-804564D8 004AD0 0004+04 1/1 0/0 0/0 .sdata2          @411 */
SECTION_SDATA2 static f32 lit_411[1 + 1 /* padding */] = {
    1.0f,
    /* padding */
    0.0f,
};

/* 80339A84-80339AE4 3343C4 0060+00 0/0 5/5 0/0 .text            JMAMTXApplyScale__FPA4_CfPA4_ffff
 */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JMAMTXApplyScale(f32 const (*param_0)[4], f32 (*param_1)[4], f32 param_2, f32 param_3,
                          f32 param_4) {
    nofralloc
#include "asm/JSystem/JMath/JMath/JMAMTXApplyScale__FPA4_CfPA4_ffff.s"
}
#pragma pop