summaryrefslogtreecommitdiff
path: root/asm/SDK/AXFX/AXFXChorus.s
blob: 9e105708585800bd014c6ffd6d3de73bb93e2756 (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
.include "macros.inc"

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

.global AXFXChorusGetMemSize
AXFXChorusGetMemSize:
/* 80295894 002914F4  48 00 01 64 */	b AXFXChorusExpGetMemSize

.global AXFXChorusInit
AXFXChorusInit:
/* 80295898 002914F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8029589C 002914FC  7C 08 02 A6 */	mflr r0
/* 802958A0 00291500  3C C0 43 30 */	lis r6, 0x4330
/* 802958A4 00291504  C8 C2 A3 30 */	lfd f6, lbl_80642930-_SDA2_BASE_(r2)
/* 802958A8 00291508  90 01 00 24 */	stw r0, 0x24(r1)
/* 802958AC 0029150C  38 00 00 00 */	li r0, 0
/* 802958B0 00291510  C0 22 A3 24 */	lfs f1, lbl_80642924-_SDA2_BASE_(r2)
/* 802958B4 00291514  80 E3 00 A0 */	lwz r7, 0xa0(r3)
/* 802958B8 00291518  80 A3 00 A4 */	lwz r5, 0xa4(r3)
/* 802958BC 0029151C  80 83 00 A8 */	lwz r4, 0xa8(r3)
/* 802958C0 00291520  90 E1 00 0C */	stw r7, 0xc(r1)
/* 802958C4 00291524  C0 42 A3 20 */	lfs f2, lbl_80642920-_SDA2_BASE_(r2)
/* 802958C8 00291528  90 C1 00 08 */	stw r6, 8(r1)
/* 802958CC 0029152C  C8 01 00 08 */	lfd f0, 8(r1)
/* 802958D0 00291530  90 A1 00 14 */	stw r5, 0x14(r1)
/* 802958D4 00291534  EC A0 30 28 */	fsubs f5, f0, f6
/* 802958D8 00291538  C0 02 A3 28 */	lfs f0, lbl_80642928-_SDA2_BASE_(r2)
/* 802958DC 0029153C  90 C1 00 10 */	stw r6, 0x10(r1)
/* 802958E0 00291540  C8 61 00 10 */	lfd f3, 0x10(r1)
/* 802958E4 00291544  90 81 00 1C */	stw r4, 0x1c(r1)
/* 802958E8 00291548  EC 83 30 28 */	fsubs f4, f3, f6
/* 802958EC 0029154C  90 C1 00 18 */	stw r6, 0x18(r1)
/* 802958F0 00291550  EC 84 28 24 */	fdivs f4, f4, f5
/* 802958F4 00291554  C8 61 00 18 */	lfd f3, 0x18(r1)
/* 802958F8 00291558  D0 03 00 98 */	stfs f0, 0x98(r3)
/* 802958FC 0029155C  D0 A3 00 80 */	stfs f5, 0x80(r3)
/* 80295900 00291560  D0 23 00 8C */	stfs f1, 0x8c(r3)
/* 80295904 00291564  90 03 00 90 */	stw r0, 0x90(r3)
/* 80295908 00291568  EC 03 30 28 */	fsubs f0, f3, f6
/* 8029590C 0029156C  90 03 00 94 */	stw r0, 0x94(r3)
/* 80295910 00291570  D0 83 00 84 */	stfs f4, 0x84(r3)
/* 80295914 00291574  EC 02 00 24 */	fdivs f0, f2, f0
/* 80295918 00291578  D0 23 00 9C */	stfs f1, 0x9c(r3)
/* 8029591C 0029157C  D0 03 00 88 */	stfs f0, 0x88(r3)
/* 80295920 00291580  48 00 00 E5 */	bl AXFXChorusExpInit
/* 80295924 00291584  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80295928 00291588  7C 08 03 A6 */	mtlr r0
/* 8029592C 0029158C  38 21 00 20 */	addi r1, r1, 0x20
/* 80295930 00291590  4E 80 00 20 */	blr

.global AXFXChorusShutdown
AXFXChorusShutdown:
/* 80295934 00291594  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80295938 00291598  7C 08 02 A6 */	mflr r0
/* 8029593C 0029159C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80295940 002915A0  48 00 04 49 */	bl AXFXChorusExpShutdown
/* 80295944 002915A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80295948 002915A8  38 60 00 01 */	li r3, 1
/* 8029594C 002915AC  7C 08 03 A6 */	mtlr r0
/* 80295950 002915B0  38 21 00 10 */	addi r1, r1, 0x10
/* 80295954 002915B4  4E 80 00 20 */	blr

.global AXFXChorusSettings
AXFXChorusSettings:
/* 80295958 002915B8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8029595C 002915BC  7C 08 02 A6 */	mflr r0
/* 80295960 002915C0  3C C0 43 30 */	lis r6, 0x4330
/* 80295964 002915C4  C8 C2 A3 30 */	lfd f6, lbl_80642930-_SDA2_BASE_(r2)
/* 80295968 002915C8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8029596C 002915CC  38 00 00 00 */	li r0, 0
/* 80295970 002915D0  C0 22 A3 24 */	lfs f1, lbl_80642924-_SDA2_BASE_(r2)
/* 80295974 002915D4  80 E3 00 A0 */	lwz r7, 0xa0(r3)
/* 80295978 002915D8  80 A3 00 A4 */	lwz r5, 0xa4(r3)
/* 8029597C 002915DC  80 83 00 A8 */	lwz r4, 0xa8(r3)
/* 80295980 002915E0  90 E1 00 0C */	stw r7, 0xc(r1)
/* 80295984 002915E4  C0 42 A3 20 */	lfs f2, lbl_80642920-_SDA2_BASE_(r2)
/* 80295988 002915E8  90 C1 00 08 */	stw r6, 8(r1)
/* 8029598C 002915EC  C8 01 00 08 */	lfd f0, 8(r1)
/* 80295990 002915F0  90 A1 00 14 */	stw r5, 0x14(r1)
/* 80295994 002915F4  EC A0 30 28 */	fsubs f5, f0, f6
/* 80295998 002915F8  C0 02 A3 28 */	lfs f0, lbl_80642928-_SDA2_BASE_(r2)
/* 8029599C 002915FC  90 C1 00 10 */	stw r6, 0x10(r1)
/* 802959A0 00291600  C8 61 00 10 */	lfd f3, 0x10(r1)
/* 802959A4 00291604  90 81 00 1C */	stw r4, 0x1c(r1)
/* 802959A8 00291608  EC 83 30 28 */	fsubs f4, f3, f6
/* 802959AC 0029160C  90 C1 00 18 */	stw r6, 0x18(r1)
/* 802959B0 00291610  EC 84 28 24 */	fdivs f4, f4, f5
/* 802959B4 00291614  C8 61 00 18 */	lfd f3, 0x18(r1)
/* 802959B8 00291618  D0 03 00 98 */	stfs f0, 0x98(r3)
/* 802959BC 0029161C  D0 A3 00 80 */	stfs f5, 0x80(r3)
/* 802959C0 00291620  D0 23 00 8C */	stfs f1, 0x8c(r3)
/* 802959C4 00291624  90 03 00 90 */	stw r0, 0x90(r3)
/* 802959C8 00291628  EC 03 30 28 */	fsubs f0, f3, f6
/* 802959CC 0029162C  90 03 00 94 */	stw r0, 0x94(r3)
/* 802959D0 00291630  D0 83 00 84 */	stfs f4, 0x84(r3)
/* 802959D4 00291634  EC 02 00 24 */	fdivs f0, f2, f0
/* 802959D8 00291638  D0 23 00 9C */	stfs f1, 0x9c(r3)
/* 802959DC 0029163C  D0 03 00 88 */	stfs f0, 0x88(r3)
/* 802959E0 00291640  48 00 02 81 */	bl AXFXChorusExpSettings
/* 802959E4 00291644  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802959E8 00291648  7C 08 03 A6 */	mtlr r0
/* 802959EC 0029164C  38 21 00 20 */	addi r1, r1, 0x20
/* 802959F0 00291650  4E 80 00 20 */	blr

.global AXFXChorusCallback
AXFXChorusCallback:
/* 802959F4 00291654  48 00 04 24 */	b AXFXChorusExpCallback