Files
tp/include/SComponent/c_m3d/asm/func_8026A2E4.s
T
0cf65151b3 Split SComponent (#45)
* split c_math

* split c_angle

* split c_API_controller_pad

* split c_API_graphic

* split c_bg_s_chk

* c_bg_s_gnd_chk split

* more c_bg split

* split c_cc_d

* delete asm

* split c_cc_s

* split c_lib

* split c_m2d and c_m3d_g_aab

* split c_m3d_g_cir

* split c_m3d_g_cps

* split rest of c_m3d_g

* split c_m3d

* split c_malloc

* split c_request

* split c_sxyz

* split and partly decompile c_xyz

* format

* c_angle.h

* begin c_angle decomp

* c_angle

* progress adding stub classes for SComponent

* more c_m3d

* remove some asm and format

* more m3d headers

* more c_angle decomp

* c_lib headers

* add public to classes

* fix csXyz member names

* c_sxyz partly OK

* move Zero csXyz to c_sxyz header

* c_API_graphic

* delete some unused asm

* move math extern data, decompile some functions

* delete unused asm

* fix duplicated c_angle.h

* fix an inlined function name, add more inlined functions for c_angle.h (currently unused)

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:04:53 -05:00

111 lines
5.8 KiB
ArmAsm

/* 8026A2E4 00267224 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8026A2E8 00267228 7C 08 02 A6 */ mflr r0
/* 8026A2EC 0026722C 90 01 00 34 */ stw r0, 0x34(r1)
/* 8026A2F0 00267230 DB E1 00 20 */ stfd f31, 0x20(r1)
/* 8026A2F4 00267234 F3 E1 00 28 */ psq_st f31, 40(r1), 0, 0
/* 8026A2F8 00267238 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8026A2FC 0026723C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8026A300 00267240 7C 7E 1B 78 */ mr r30, r3
/* 8026A304 00267244 7C 9F 23 78 */ mr r31, r4
/* 8026A308 00267248 C0 03 00 04 */ lfs f0, 4(r3)
/* 8026A30C 0026724C FC 00 02 10 */ fabs f0, f0
/* 8026A310 00267250 FC 20 00 18 */ frsp f1, f0
/* 8026A314 00267254 C0 0D 8C 00 */ lfs f0, lbl_80451180-_SDA_BASE_(r13)
/* 8026A318 00267258 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026A31C 0026725C 40 80 00 0C */ bge lbl_8026A328
/* 8026A320 00267260 38 60 00 00 */ li r3, 0
/* 8026A324 00267264 48 00 01 44 */ b lbl_8026A468
lbl_8026A328:
/* 8026A328 00267268 C0 02 B7 AC */ lfs f0, lbl_804551AC-_SDA2_BASE_(r2)
/* 8026A32C 0026726C D0 01 00 08 */ stfs f0, 8(r1)
/* 8026A330 00267270 C0 3E 00 1C */ lfs f1, 0x1c(r30)
/* 8026A334 00267274 C0 5E 00 14 */ lfs f2, 0x14(r30)
/* 8026A338 00267278 C0 7E 00 28 */ lfs f3, 0x28(r30)
/* 8026A33C 0026727C C0 9E 00 20 */ lfs f4, 0x20(r30)
/* 8026A340 00267280 C0 BE 00 34 */ lfs f5, 0x34(r30)
/* 8026A344 00267284 C0 DE 00 2C */ lfs f6, 0x2c(r30)
/* 8026A348 00267288 C0 FF 00 08 */ lfs f7, 8(r31)
/* 8026A34C 0026728C C1 1F 00 00 */ lfs f8, 0(r31)
/* 8026A350 00267290 4B FF FA 15 */ bl cM3d_InclusionCheckPosIn3PosBox2d__Ffffffffff
/* 8026A354 00267294 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8026A358 00267298 40 82 00 0C */ bne lbl_8026A364
/* 8026A35C 0026729C 38 60 00 00 */ li r3, 0
/* 8026A360 002672A0 48 00 01 08 */ b lbl_8026A468
lbl_8026A364:
/* 8026A364 002672A4 C0 3E 00 1C */ lfs f1, 0x1c(r30)
/* 8026A368 002672A8 C0 5E 00 14 */ lfs f2, 0x14(r30)
/* 8026A36C 002672AC C0 7E 00 28 */ lfs f3, 0x28(r30)
/* 8026A370 002672B0 C0 9E 00 20 */ lfs f4, 0x20(r30)
/* 8026A374 002672B4 C0 BF 00 08 */ lfs f5, 8(r31)
/* 8026A378 002672B8 C0 DF 00 00 */ lfs f6, 0(r31)
/* 8026A37C 002672BC 4B FF E5 19 */ bl cM3d_VectorProduct2d__Fffffff
/* 8026A380 002672C0 FF E0 08 90 */ fmr f31, f1
/* 8026A384 002672C4 C0 02 B7 B0 */ lfs f0, lbl_804551B0-_SDA2_BASE_(r2)
/* 8026A388 002672C8 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 8026A38C 002672CC 4C 40 13 82 */ cror 2, 0, 2
/* 8026A390 002672D0 40 82 00 64 */ bne lbl_8026A3F4
/* 8026A394 002672D4 C0 3E 00 28 */ lfs f1, 0x28(r30)
/* 8026A398 002672D8 C0 5E 00 20 */ lfs f2, 0x20(r30)
/* 8026A39C 002672DC C0 7E 00 34 */ lfs f3, 0x34(r30)
/* 8026A3A0 002672E0 C0 9E 00 2C */ lfs f4, 0x2c(r30)
/* 8026A3A4 002672E4 C0 BF 00 08 */ lfs f5, 8(r31)
/* 8026A3A8 002672E8 C0 DF 00 00 */ lfs f6, 0(r31)
/* 8026A3AC 002672EC 4B FF E4 E9 */ bl cM3d_VectorProduct2d__Fffffff
/* 8026A3B0 002672F0 C0 02 B7 B0 */ lfs f0, lbl_804551B0-_SDA2_BASE_(r2)
/* 8026A3B4 002672F4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026A3B8 002672F8 4C 40 13 82 */ cror 2, 0, 2
/* 8026A3BC 002672FC 40 82 00 38 */ bne lbl_8026A3F4
/* 8026A3C0 00267300 C0 3E 00 34 */ lfs f1, 0x34(r30)
/* 8026A3C4 00267304 C0 5E 00 2C */ lfs f2, 0x2c(r30)
/* 8026A3C8 00267308 C0 7E 00 1C */ lfs f3, 0x1c(r30)
/* 8026A3CC 0026730C C0 9E 00 14 */ lfs f4, 0x14(r30)
/* 8026A3D0 00267310 C0 BF 00 08 */ lfs f5, 8(r31)
/* 8026A3D4 00267314 C0 DF 00 00 */ lfs f6, 0(r31)
/* 8026A3D8 00267318 4B FF E4 BD */ bl cM3d_VectorProduct2d__Fffffff
/* 8026A3DC 0026731C C0 02 B7 B0 */ lfs f0, lbl_804551B0-_SDA2_BASE_(r2)
/* 8026A3E0 00267320 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026A3E4 00267324 4C 40 13 82 */ cror 2, 0, 2
/* 8026A3E8 00267328 40 82 00 0C */ bne lbl_8026A3F4
/* 8026A3EC 0026732C 38 60 00 01 */ li r3, 1
/* 8026A3F0 00267330 48 00 00 78 */ b lbl_8026A468
lbl_8026A3F4:
/* 8026A3F4 00267334 C0 02 B7 B4 */ lfs f0, lbl_804551B4-_SDA2_BASE_(r2)
/* 8026A3F8 00267338 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 8026A3FC 0026733C 4C 41 13 82 */ cror 2, 1, 2
/* 8026A400 00267340 40 82 00 64 */ bne lbl_8026A464
/* 8026A404 00267344 C0 3E 00 28 */ lfs f1, 0x28(r30)
/* 8026A408 00267348 C0 5E 00 20 */ lfs f2, 0x20(r30)
/* 8026A40C 0026734C C0 7E 00 34 */ lfs f3, 0x34(r30)
/* 8026A410 00267350 C0 9E 00 2C */ lfs f4, 0x2c(r30)
/* 8026A414 00267354 C0 BF 00 08 */ lfs f5, 8(r31)
/* 8026A418 00267358 C0 DF 00 00 */ lfs f6, 0(r31)
/* 8026A41C 0026735C 4B FF E4 79 */ bl cM3d_VectorProduct2d__Fffffff
/* 8026A420 00267360 C0 02 B7 B4 */ lfs f0, lbl_804551B4-_SDA2_BASE_(r2)
/* 8026A424 00267364 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026A428 00267368 4C 41 13 82 */ cror 2, 1, 2
/* 8026A42C 0026736C 40 82 00 38 */ bne lbl_8026A464
/* 8026A430 00267370 C0 3E 00 34 */ lfs f1, 0x34(r30)
/* 8026A434 00267374 C0 5E 00 2C */ lfs f2, 0x2c(r30)
/* 8026A438 00267378 C0 7E 00 1C */ lfs f3, 0x1c(r30)
/* 8026A43C 0026737C C0 9E 00 14 */ lfs f4, 0x14(r30)
/* 8026A440 00267380 C0 BF 00 08 */ lfs f5, 8(r31)
/* 8026A444 00267384 C0 DF 00 00 */ lfs f6, 0(r31)
/* 8026A448 00267388 4B FF E4 4D */ bl cM3d_VectorProduct2d__Fffffff
/* 8026A44C 0026738C C0 02 B7 B4 */ lfs f0, lbl_804551B4-_SDA2_BASE_(r2)
/* 8026A450 00267390 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026A454 00267394 4C 41 13 82 */ cror 2, 1, 2
/* 8026A458 00267398 40 82 00 0C */ bne lbl_8026A464
/* 8026A45C 0026739C 38 60 00 01 */ li r3, 1
/* 8026A460 002673A0 48 00 00 08 */ b lbl_8026A468
lbl_8026A464:
/* 8026A464 002673A4 38 60 00 00 */ li r3, 0
lbl_8026A468:
/* 8026A468 002673A8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, 0
/* 8026A46C 002673AC CB E1 00 20 */ lfd f31, 0x20(r1)
/* 8026A470 002673B0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8026A474 002673B4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8026A478 002673B8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8026A47C 002673BC 7C 08 03 A6 */ mtlr r0
/* 8026A480 002673C0 38 21 00 30 */ addi r1, r1, 0x30
/* 8026A484 002673C4 4E 80 00 20 */ blr