summaryrefslogtreecommitdiff
path: root/asm/code_80223A0C.s
blob: 118cc81ae7cd6af24cd020779e5b9a7015812162 (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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global func_80223A0C
func_80223A0C:
/* 80223A0C 0021F66C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80223A10 0021F670  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80223A14 0021F674  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80223A18 0021F678  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80223A1C 0021F67C  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80223A20 0021F680  DB A1 00 10 */	stfd f29, 0x10(r1)
/* 80223A24 0021F684  F3 A1 00 18 */	psq_st f29, 24(r1), 0, qr0
/* 80223A28 0021F688  C1 A4 00 00 */	lfs f13, 0(r4)
/* 80223A2C 0021F68C  C1 84 00 04 */	lfs f12, 4(r4)
/* 80223A30 0021F690  C1 44 00 08 */	lfs f10, 8(r4)
/* 80223A34 0021F694  EC ED 03 72 */	fmuls f7, f13, f13
/* 80223A38 0021F698  C0 A4 00 0C */	lfs f5, 0xc(r4)
/* 80223A3C 0021F69C  ED 6C 03 32 */	fmuls f11, f12, f12
/* 80223A40 0021F6A0  EF CA 02 B2 */	fmuls f30, f10, f10
/* 80223A44 0021F6A4  C3 E3 00 00 */	lfs f31, 0(r3)
/* 80223A48 0021F6A8  EF A5 01 72 */	fmuls f29, f5, f5
/* 80223A4C 0021F6AC  EC 4D 03 32 */	fmuls f2, f13, f12
/* 80223A50 0021F6B0  C0 03 00 04 */	lfs f0, 4(r3)
/* 80223A54 0021F6B4  EC CA 01 72 */	fmuls f6, f10, f5
/* 80223A58 0021F6B8  EC 9D 38 2A */	fadds f4, f29, f7
/* 80223A5C 0021F6BC  C0 23 00 08 */	lfs f1, 8(r3)
/* 80223A60 0021F6C0  EC 6B F0 28 */	fsubs f3, f11, f30
/* 80223A64 0021F6C4  ED 02 30 28 */	fsubs f8, f2, f6
/* 80223A68 0021F6C8  C1 22 9C 68 */	lfs f9, lbl_80642268-_SDA2_BASE_(r2)
/* 80223A6C 0021F6CC  EC C2 30 2A */	fadds f6, f2, f6
/* 80223A70 0021F6D0  EC 5E 58 28 */	fsubs f2, f30, f11
/* 80223A74 0021F6D4  EC 84 F0 28 */	fsubs f4, f4, f30
/* 80223A78 0021F6D8  EC 7D 18 2A */	fadds f3, f29, f3
/* 80223A7C 0021F6DC  EC 42 38 28 */	fsubs f2, f2, f7
/* 80223A80 0021F6E0  ED 64 58 28 */	fsubs f11, f4, f11
/* 80223A84 0021F6E4  EC E3 38 28 */	fsubs f7, f3, f7
/* 80223A88 0021F6E8  EC 9D 10 2A */	fadds f4, f29, f2
/* 80223A8C 0021F6EC  EF AC 01 72 */	fmuls f29, f12, f5
/* 80223A90 0021F6F0  EC 4D 02 B2 */	fmuls f2, f13, f10
/* 80223A94 0021F6F4  ED 8C 02 B2 */	fmuls f12, f12, f10
/* 80223A98 0021F6F8  EC 6D 01 72 */	fmuls f3, f13, f5
/* 80223A9C 0021F6FC  ED 5D 10 2A */	fadds f10, f29, f2
/* 80223AA0 0021F700  EC 42 E8 28 */	fsubs f2, f2, f29
/* 80223AA4 0021F704  EC AC 18 28 */	fsubs f5, f12, f3
/* 80223AA8 0021F708  EC 6C 18 2A */	fadds f3, f12, f3
/* 80223AAC 0021F70C  ED 41 02 B2 */	fmuls f10, f1, f10
/* 80223AB0 0021F710  ED 00 02 32 */	fmuls f8, f0, f8
/* 80223AB4 0021F714  EC A1 01 72 */	fmuls f5, f1, f5
/* 80223AB8 0021F718  EC DF 01 B2 */	fmuls f6, f31, f6
/* 80223ABC 0021F71C  ED 0A 40 2A */	fadds f8, f10, f8
/* 80223AC0 0021F720  EC 60 00 F2 */	fmuls f3, f0, f3
/* 80223AC4 0021F724  EC 5F 00 B2 */	fmuls f2, f31, f2
/* 80223AC8 0021F728  EC A6 28 2A */	fadds f5, f6, f5
/* 80223ACC 0021F72C  ED 5F 02 F2 */	fmuls f10, f31, f11
/* 80223AD0 0021F730  EC 43 10 2A */	fadds f2, f3, f2
/* 80223AD4 0021F734  EC C0 01 F2 */	fmuls f6, f0, f7
/* 80223AD8 0021F738  ED 09 02 32 */	fmuls f8, f9, f8
/* 80223ADC 0021F73C  EC 69 01 72 */	fmuls f3, f9, f5
/* 80223AE0 0021F740  EC 09 00 B2 */	fmuls f0, f9, f2
/* 80223AE4 0021F744  EC 21 01 32 */	fmuls f1, f1, f4
/* 80223AE8 0021F748  EC AA 40 2A */	fadds f5, f10, f8
/* 80223AEC 0021F74C  EC 46 18 2A */	fadds f2, f6, f3
/* 80223AF0 0021F750  EC 01 00 2A */	fadds f0, f1, f0
/* 80223AF4 0021F754  D0 A3 00 00 */	stfs f5, 0(r3)
/* 80223AF8 0021F758  D0 43 00 04 */	stfs f2, 4(r3)
/* 80223AFC 0021F75C  D0 03 00 08 */	stfs f0, 8(r3)
/* 80223B00 0021F760  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80223B04 0021F764  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80223B08 0021F768  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80223B0C 0021F76C  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80223B10 0021F770  E3 A1 00 18 */	psq_l f29, 24(r1), 0, qr0
/* 80223B14 0021F774  CB A1 00 10 */	lfd f29, 0x10(r1)
/* 80223B18 0021F778  38 21 00 40 */	addi r1, r1, 0x40
/* 80223B1C 0021F77C  4E 80 00 20 */	blr

.global func_80223B20
func_80223B20:
/* 80223B20 0021F780  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80223B24 0021F784  39 80 00 01 */	li r12, 1
/* 80223B28 0021F788  C0 22 9C 6C */	lfs f1, lbl_8064226C-_SDA2_BASE_(r2)
/* 80223B2C 0021F78C  39 4D A2 E8 */	addi r10, r13, lbl_8063F5A8-_SDA_BASE_
/* 80223B30 0021F790  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80223B34 0021F794  3F E0 80 49 */	lis r31, lbl_80493608@ha
/* 80223B38 0021F798  3B FF 36 08 */	addi r31, r31, lbl_80493608@l
/* 80223B3C 0021F79C  C0 02 9C 70 */	lfs f0, lbl_80642270-_SDA2_BASE_(r2)
/* 80223B40 0021F7A0  39 3F 00 00 */	addi r9, r31, 0
/* 80223B44 0021F7A4  39 60 00 04 */	li r11, 4
/* 80223B48 0021F7A8  39 1F 00 0C */	addi r8, r31, 0xc
/* 80223B4C 0021F7AC  38 FF 00 18 */	addi r7, r31, 0x18
/* 80223B50 0021F7B0  38 DF 00 24 */	addi r6, r31, 0x24
/* 80223B54 0021F7B4  38 BF 00 30 */	addi r5, r31, 0x30
/* 80223B58 0021F7B8  38 00 00 00 */	li r0, 0
/* 80223B5C 0021F7BC  38 8D A2 F0 */	addi r4, r13, lbl_8063F5B0-_SDA_BASE_
/* 80223B60 0021F7C0  38 6D A2 F8 */	addi r3, r13, lbl_8063F5B8-_SDA_BASE_
/* 80223B64 0021F7C4  99 8D A2 E8 */	stb r12, lbl_8063F5A8-_SDA_BASE_(r13)
/* 80223B68 0021F7C8  B1 6A 00 02 */	sth r11, 2(r10)
/* 80223B6C 0021F7CC  98 0A 00 04 */	stb r0, 4(r10)
/* 80223B70 0021F7D0  D0 3F 00 00 */	stfs f1, 0(r31)
/* 80223B74 0021F7D4  D0 09 00 04 */	stfs f0, 4(r9)
/* 80223B78 0021F7D8  D0 09 00 08 */	stfs f0, 8(r9)
/* 80223B7C 0021F7DC  D0 1F 00 0C */	stfs f0, 0xc(r31)
/* 80223B80 0021F7E0  D0 28 00 04 */	stfs f1, 4(r8)
/* 80223B84 0021F7E4  D0 08 00 08 */	stfs f0, 8(r8)
/* 80223B88 0021F7E8  D0 1F 00 18 */	stfs f0, 0x18(r31)
/* 80223B8C 0021F7EC  D0 07 00 04 */	stfs f0, 4(r7)
/* 80223B90 0021F7F0  D0 27 00 08 */	stfs f1, 8(r7)
/* 80223B94 0021F7F4  D0 1F 00 24 */	stfs f0, 0x24(r31)
/* 80223B98 0021F7F8  D0 06 00 04 */	stfs f0, 4(r6)
/* 80223B9C 0021F7FC  D0 06 00 08 */	stfs f0, 8(r6)
/* 80223BA0 0021F800  D0 3F 00 30 */	stfs f1, 0x30(r31)
/* 80223BA4 0021F804  D0 25 00 04 */	stfs f1, 4(r5)
/* 80223BA8 0021F808  D0 25 00 08 */	stfs f1, 8(r5)
/* 80223BAC 0021F80C  D0 0D A2 F0 */	stfs f0, lbl_8063F5B0-_SDA_BASE_(r13)
/* 80223BB0 0021F810  D0 04 00 04 */	stfs f0, 4(r4)
/* 80223BB4 0021F814  D0 2D A2 F8 */	stfs f1, lbl_8063F5B8-_SDA_BASE_(r13)
/* 80223BB8 0021F818  D0 23 00 04 */	stfs f1, 4(r3)
/* 80223BBC 0021F81C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80223BC0 0021F820  38 21 00 10 */	addi r1, r1, 0x10
/* 80223BC4 0021F824  4E 80 00 20 */	blr