Files
dusklight/include/SComponent/c_m3d/asm/func_8026BC7C.s
T
lepelog 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

35 lines
1.7 KiB
ArmAsm

/* 8026BC7C 00268BBC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8026BC80 00268BC0 7C 08 02 A6 */ mflr r0
/* 8026BC84 00268BC4 90 01 00 34 */ stw r0, 0x34(r1)
/* 8026BC88 00268BC8 39 61 00 30 */ addi r11, r1, 0x30
/* 8026BC8C 00268BCC 48 0F 65 51 */ bl _savegpr_29
/* 8026BC90 00268BD0 7C 7D 1B 78 */ mr r29, r3
/* 8026BC94 00268BD4 7C 9E 23 78 */ mr r30, r4
/* 8026BC98 00268BD8 7C BF 2B 78 */ mr r31, r5
/* 8026BC9C 00268BDC 38 A1 00 08 */ addi r5, r1, 8
/* 8026BCA0 00268BE0 48 0D B4 15 */ bl PSVECSubtract
/* 8026BCA4 00268BE4 38 61 00 08 */ addi r3, r1, 8
/* 8026BCA8 00268BE8 48 0D B4 A9 */ bl PSVECMag
/* 8026BCAC 00268BEC C0 5D 00 0C */ lfs f2, 0xc(r29)
/* 8026BCB0 00268BF0 C0 1E 00 0C */ lfs f0, 0xc(r30)
/* 8026BCB4 00268BF4 EC 02 00 2A */ fadds f0, f2, f0
/* 8026BCB8 00268BF8 EC 00 08 28 */ fsubs f0, f0, f1
/* 8026BCBC 00268BFC D0 1F 00 00 */ stfs f0, 0(r31)
/* 8026BCC0 00268C00 C0 3F 00 00 */ lfs f1, 0(r31)
/* 8026BCC4 00268C04 C0 0D 8C 00 */ lfs f0, lbl_80451180-_SDA_BASE_(r13)
/* 8026BCC8 00268C08 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8026BCCC 00268C0C 40 81 00 0C */ ble lbl_8026BCD8
/* 8026BCD0 00268C10 38 60 00 01 */ li r3, 1
/* 8026BCD4 00268C14 48 00 00 10 */ b lbl_8026BCE4
lbl_8026BCD8:
/* 8026BCD8 00268C18 C0 02 B7 18 */ lfs f0, lbl_80455118-_SDA2_BASE_(r2)
/* 8026BCDC 00268C1C D0 1F 00 00 */ stfs f0, 0(r31)
/* 8026BCE0 00268C20 38 60 00 00 */ li r3, 0
lbl_8026BCE4:
/* 8026BCE4 00268C24 39 61 00 30 */ addi r11, r1, 0x30
/* 8026BCE8 00268C28 48 0F 65 41 */ bl _restgpr_29
/* 8026BCEC 00268C2C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8026BCF0 00268C30 7C 08 03 A6 */ mtlr r0
/* 8026BCF4 00268C34 38 21 00 30 */ addi r1, r1, 0x30
/* 8026BCF8 00268C38 4E 80 00 20 */ blr