summaryrefslogtreecommitdiff
path: root/asm/JSystem/JStudio/JStudio_JParticle/object-particle/func_8028F1C0.s
blob: c925579c0f176af6abaad141ce1eb42dc011c515 (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
lbl_8028F1C0:
/* 8028F1C0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8028F1C4  7C 08 02 A6 */	mflr r0
/* 8028F1C8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8028F1CC  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8028F1D0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8028F1D4  7C 7E 1B 78 */	mr r30, r3
/* 8028F1D8  7C 9F 23 78 */	mr r31, r4
/* 8028F1DC  80 83 01 A4 */	lwz r4, 0x1a4(r3)
/* 8028F1E0  28 04 00 00 */	cmplwi r4, 0
/* 8028F1E4  41 82 00 EC */	beq lbl_8028F2D0
/* 8028F1E8  28 1F 00 00 */	cmplwi r31, 0
/* 8028F1EC  40 82 00 30 */	bne lbl_8028F21C
/* 8028F1F0  80 7E 01 A0 */	lwz r3, 0x1a0(r30)
/* 8028F1F4  81 83 00 00 */	lwz r12, 0(r3)
/* 8028F1F8  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 8028F1FC  7D 89 03 A6 */	mtctr r12
/* 8028F200  4E 80 04 21 */	bctrl 
/* 8028F204  38 00 00 00 */	li r0, 0
/* 8028F208  90 1E 01 A4 */	stw r0, 0x1a4(r30)
/* 8028F20C  98 1E 01 B8 */	stb r0, 0x1b8(r30)
/* 8028F210  90 1E 01 C0 */	stw r0, 0x1c0(r30)
/* 8028F214  90 1E 01 C4 */	stw r0, 0x1c4(r30)
/* 8028F218  48 00 00 B8 */	b lbl_8028F2D0
lbl_8028F21C:
/* 8028F21C  88 7E 01 B8 */	lbz r3, 0x1b8(r30)
/* 8028F220  38 00 00 03 */	li r0, 3
/* 8028F224  98 1E 01 B8 */	stb r0, 0x1b8(r30)
/* 8028F228  80 9E 01 C4 */	lwz r4, 0x1c4(r30)
/* 8028F22C  28 04 00 00 */	cmplwi r4, 0
/* 8028F230  40 82 00 0C */	bne lbl_8028F23C
/* 8028F234  93 FE 01 C0 */	stw r31, 0x1c0(r30)
/* 8028F238  48 00 00 98 */	b lbl_8028F2D0
lbl_8028F23C:
/* 8028F23C  38 A0 00 00 */	li r5, 0
/* 8028F240  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8028F244  2C 00 00 02 */	cmpwi r0, 2
/* 8028F248  41 82 00 30 */	beq lbl_8028F278
/* 8028F24C  40 80 00 10 */	bge lbl_8028F25C
/* 8028F250  2C 00 00 01 */	cmpwi r0, 1
/* 8028F254  40 80 00 14 */	bge lbl_8028F268
/* 8028F258  48 00 00 20 */	b lbl_8028F278
lbl_8028F25C:
/* 8028F25C  2C 00 00 04 */	cmpwi r0, 4
/* 8028F260  40 80 00 18 */	bge lbl_8028F278
/* 8028F264  48 00 00 0C */	b lbl_8028F270
lbl_8028F268:
/* 8028F268  7C 85 23 78 */	mr r5, r4
/* 8028F26C  48 00 00 0C */	b lbl_8028F278
lbl_8028F270:
/* 8028F270  80 1E 01 C0 */	lwz r0, 0x1c0(r30)
/* 8028F274  7C A4 00 50 */	subf r5, r4, r0
lbl_8028F278:
/* 8028F278  C8 42 BB 50 */	lfd f2, lit_1629(r2)
/* 8028F27C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028F280  3C 60 43 30 */	lis r3, 0x4330
/* 8028F284  90 61 00 08 */	stw r3, 8(r1)
/* 8028F288  C8 01 00 08 */	lfd f0, 8(r1)
/* 8028F28C  FC 20 10 28 */	fsub f1, f0, f2
/* 8028F290  80 1E 01 C0 */	lwz r0, 0x1c0(r30)
/* 8028F294  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028F298  90 61 00 10 */	stw r3, 0x10(r1)
/* 8028F29C  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8028F2A0  FC 00 10 28 */	fsub f0, f0, f2
/* 8028F2A4  FC 21 00 32 */	fmul f1, f1, f0
/* 8028F2A8  90 A1 00 1C */	stw r5, 0x1c(r1)
/* 8028F2AC  90 61 00 18 */	stw r3, 0x18(r1)
/* 8028F2B0  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8028F2B4  FC 00 10 28 */	fsub f0, f0, f2
/* 8028F2B8  FC 21 00 24 */	fdiv f1, f1, f0
/* 8028F2BC  48 0D 2D F1 */	bl __cvt_fp2unsigned
/* 8028F2C0  90 7E 01 C0 */	stw r3, 0x1c0(r30)
/* 8028F2C4  80 1E 01 C0 */	lwz r0, 0x1c0(r30)
/* 8028F2C8  7C 1F 00 50 */	subf r0, r31, r0
/* 8028F2CC  90 1E 01 C4 */	stw r0, 0x1c4(r30)
lbl_8028F2D0:
/* 8028F2D0  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8028F2D4  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8028F2D8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8028F2DC  7C 08 03 A6 */	mtlr r0
/* 8028F2E0  38 21 00 30 */	addi r1, r1, 0x30
/* 8028F2E4  4E 80 00 20 */	blr