mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-30 01:49:04 -04:00
0eec99db4d
* 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>
194 lines
10 KiB
ArmAsm
194 lines
10 KiB
ArmAsm
/* 801AAD50 001A7C90 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 801AAD54 001A7C94 7C 08 02 A6 */ mflr r0
|
|
/* 801AAD58 001A7C98 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 801AAD5C 001A7C9C 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 801AAD60 001A7CA0 48 1B 74 75 */ bl _savegpr_27
|
|
/* 801AAD64 001A7CA4 3C 60 80 43 */ lis r3, lbl_8042CA54@ha
|
|
/* 801AAD68 001A7CA8 3B E3 CA 54 */ addi r31, r3, lbl_8042CA54@l
|
|
/* 801AAD6C 001A7CAC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
|
|
/* 801AAD70 001A7CB0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
|
|
/* 801AAD74 001A7CB4 83 C3 5D AC */ lwz r30, 0x5dac(r3)
|
|
/* 801AAD78 001A7CB8 83 83 5D 74 */ lwz r28, 0x5d74(r3)
|
|
/* 801AAD7C 001A7CBC 3B 63 4E 00 */ addi r27, r3, 0x4e00
|
|
/* 801AAD80 001A7CC0 7F 63 DB 78 */ mr r3, r27
|
|
/* 801AAD84 001A7CC4 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
|
|
/* 801AAD88 001A7CC8 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
|
|
/* 801AAD8C 001A7CCC 38 84 01 44 */ addi r4, r4, 0x144
|
|
/* 801AAD90 001A7CD0 48 1B DC 05 */ bl strcmp
|
|
/* 801AAD94 001A7CD4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 801AAD98 001A7CD8 40 82 00 24 */ bne lbl_801AADBC
|
|
/* 801AAD9C 001A7CDC 88 0D 87 E4 */ lbz r0, lbl_80450D64-_SDA_BASE_(r13)
|
|
/* 801AADA0 001A7CE0 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 801AADA4 001A7CE4 40 82 00 18 */ bne lbl_801AADBC
|
|
/* 801AADA8 001A7CE8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
|
|
/* 801AADAC 001A7CEC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
|
|
/* 801AADB0 001A7CF0 88 03 4E 0B */ lbz r0, 0x4e0b(r3)
|
|
/* 801AADB4 001A7CF4 2C 00 00 0C */ cmpwi r0, 0xc
|
|
/* 801AADB8 001A7CF8 41 82 02 4C */ beq lbl_801AB004
|
|
lbl_801AADBC:
|
|
/* 801AADBC 001A7CFC 48 00 17 C1 */ bl dKy_darkworld_check
|
|
/* 801AADC0 001A7D00 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 801AADC4 001A7D04 41 82 02 40 */ beq lbl_801AB004
|
|
/* 801AADC8 001A7D08 7F 63 DB 78 */ mr r3, r27
|
|
/* 801AADCC 001A7D0C 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
|
|
/* 801AADD0 001A7D10 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
|
|
/* 801AADD4 001A7D14 38 84 01 00 */ addi r4, r4, 0x100
|
|
/* 801AADD8 001A7D18 38 A0 00 06 */ li r5, 6
|
|
/* 801AADDC 001A7D1C 48 1B B2 B1 */ bl func_8036608C
|
|
/* 801AADE0 001A7D20 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 801AADE4 001A7D24 40 82 00 08 */ bne lbl_801AADEC
|
|
/* 801AADE8 001A7D28 48 00 02 1C */ b lbl_801AB004
|
|
lbl_801AADEC:
|
|
/* 801AADEC 001A7D2C 4B FB 46 39 */ bl daPy_py_c_NS_checkNowWolfEyeUp
|
|
/* 801AADF0 001A7D30 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 801AADF4 001A7D34 40 82 02 10 */ bne lbl_801AB004
|
|
/* 801AADF8 001A7D38 38 60 00 00 */ li r3, 0
|
|
/* 801AADFC 001A7D3C 3B 60 00 00 */ li r27, 0
|
|
/* 801AAE00 001A7D40 38 00 00 06 */ li r0, 6
|
|
/* 801AAE04 001A7D44 7C 09 03 A6 */ mtctr r0
|
|
lbl_801AAE08:
|
|
/* 801AAE08 001A7D48 7F BF DA 14 */ add r29, r31, r27
|
|
/* 801AAE0C 001A7D4C 88 1D 0C 3E */ lbz r0, 0xc3e(r29)
|
|
/* 801AAE10 001A7D50 28 00 00 01 */ cmplwi r0, 1
|
|
/* 801AAE14 001A7D54 41 82 01 E4 */ beq lbl_801AAFF8
|
|
/* 801AAE18 001A7D58 4B FF 21 CD */ bl dKy_twi_wolflight_set
|
|
/* 801AAE1C 001A7D5C C0 02 A2 90 */ lfs f0, lbl_80453C90-_SDA2_BASE_(r2)
|
|
/* 801AAE20 001A7D60 D0 1D 0C 2C */ stfs f0, 0xc2c(r29)
|
|
/* 801AAE24 001A7D64 38 00 00 FE */ li r0, 0xfe
|
|
/* 801AAE28 001A7D68 98 1D 0C 27 */ stb r0, 0xc27(r29)
|
|
/* 801AAE2C 001A7D6C C0 42 A2 0C */ lfs f2, lbl_80453C0C-_SDA2_BASE_(r2)
|
|
/* 801AAE30 001A7D70 28 1E 00 00 */ cmplwi r30, 0
|
|
/* 801AAE34 001A7D74 41 82 00 34 */ beq lbl_801AAE68
|
|
/* 801AAE38 001A7D78 C0 3C 00 DC */ lfs f1, 0xdc(r28)
|
|
/* 801AAE3C 001A7D7C C0 1E 04 D4 */ lfs f0, 0x4d4(r30)
|
|
/* 801AAE40 001A7D80 EC 21 00 28 */ fsubs f1, f1, f0
|
|
/* 801AAE44 001A7D84 FC 01 10 40 */ fcmpo cr0, f1, f2
|
|
/* 801AAE48 001A7D88 40 80 00 08 */ bge lbl_801AAE50
|
|
/* 801AAE4C 001A7D8C FC 20 10 90 */ fmr f1, f2
|
|
lbl_801AAE50:
|
|
/* 801AAE50 001A7D90 C0 02 A3 D0 */ lfs f0, lbl_80453DD0-_SDA2_BASE_(r2)
|
|
/* 801AAE54 001A7D94 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 801AAE58 001A7D98 40 81 00 08 */ ble lbl_801AAE60
|
|
/* 801AAE5C 001A7D9C FC 20 00 90 */ fmr f1, f0
|
|
lbl_801AAE60:
|
|
/* 801AAE60 001A7DA0 C0 02 A2 D0 */ lfs f0, lbl_80453CD0-_SDA2_BASE_(r2)
|
|
/* 801AAE64 001A7DA4 EC 41 00 24 */ fdivs f2, f1, f0
|
|
lbl_801AAE68:
|
|
/* 801AAE68 001A7DA8 3C 60 80 43 */ lis r3, lbl_8042CA54@ha
|
|
/* 801AAE6C 001A7DAC 38 63 CA 54 */ addi r3, r3, lbl_8042CA54@l
|
|
/* 801AAE70 001A7DB0 88 03 13 09 */ lbz r0, 0x1309(r3)
|
|
/* 801AAE74 001A7DB4 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 801AAE78 001A7DB8 41 82 00 C4 */ beq lbl_801AAF3C
|
|
/* 801AAE7C 001A7DBC 40 80 00 14 */ bge lbl_801AAE90
|
|
/* 801AAE80 001A7DC0 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 801AAE84 001A7DC4 41 82 00 18 */ beq lbl_801AAE9C
|
|
/* 801AAE88 001A7DC8 40 80 00 64 */ bge lbl_801AAEEC
|
|
/* 801AAE8C 001A7DCC 48 00 01 4C */ b lbl_801AAFD8
|
|
lbl_801AAE90:
|
|
/* 801AAE90 001A7DD0 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 801AAE94 001A7DD4 40 80 01 44 */ bge lbl_801AAFD8
|
|
/* 801AAE98 001A7DD8 48 00 00 F4 */ b lbl_801AAF8C
|
|
lbl_801AAE9C:
|
|
/* 801AAE9C 001A7DDC 38 00 00 19 */ li r0, 0x19
|
|
/* 801AAEA0 001A7DE0 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAEA4 001A7DE4 98 03 0C 24 */ stb r0, 0xc24(r3)
|
|
/* 801AAEA8 001A7DE8 38 00 00 5A */ li r0, 0x5a
|
|
/* 801AAEAC 001A7DEC 98 03 0C 25 */ stb r0, 0xc25(r3)
|
|
/* 801AAEB0 001A7DF0 38 00 00 B7 */ li r0, 0xb7
|
|
/* 801AAEB4 001A7DF4 98 03 0C 26 */ stb r0, 0xc26(r3)
|
|
/* 801AAEB8 001A7DF8 38 7D 0C 28 */ addi r3, r29, 0xc28
|
|
/* 801AAEBC 001A7DFC C0 22 A3 D4 */ lfs f1, lbl_80453DD4-_SDA2_BASE_(r2)
|
|
/* 801AAEC0 001A7E00 C0 02 A3 34 */ lfs f0, lbl_80453D34-_SDA2_BASE_(r2)
|
|
/* 801AAEC4 001A7E04 EC 00 00 B2 */ fmuls f0, f0, f2
|
|
/* 801AAEC8 001A7E08 EC 21 00 2A */ fadds f1, f1, f0
|
|
/* 801AAECC 001A7E0C C0 42 A2 F4 */ lfs f2, lbl_80453CF4-_SDA2_BASE_(r2)
|
|
/* 801AAED0 001A7E10 C0 62 A3 28 */ lfs f3, lbl_80453D28-_SDA2_BASE_(r2)
|
|
/* 801AAED4 001A7E14 C0 82 A3 30 */ lfs f4, lbl_80453D30-_SDA2_BASE_(r2)
|
|
/* 801AAED8 001A7E18 48 0C 4A A5 */ bl cLib_addCalc__FPfffff
|
|
/* 801AAEDC 001A7E1C C0 02 A2 2C */ lfs f0, lbl_80453C2C-_SDA2_BASE_(r2)
|
|
/* 801AAEE0 001A7E20 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAEE4 001A7E24 D0 03 0C 30 */ stfs f0, 0xc30(r3)
|
|
/* 801AAEE8 001A7E28 48 00 00 F0 */ b lbl_801AAFD8
|
|
lbl_801AAEEC:
|
|
/* 801AAEEC 001A7E2C 38 00 00 48 */ li r0, 0x48
|
|
/* 801AAEF0 001A7E30 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAEF4 001A7E34 98 03 0C 24 */ stb r0, 0xc24(r3)
|
|
/* 801AAEF8 001A7E38 38 00 00 87 */ li r0, 0x87
|
|
/* 801AAEFC 001A7E3C 98 03 0C 25 */ stb r0, 0xc25(r3)
|
|
/* 801AAF00 001A7E40 38 00 00 CE */ li r0, 0xce
|
|
/* 801AAF04 001A7E44 98 03 0C 26 */ stb r0, 0xc26(r3)
|
|
/* 801AAF08 001A7E48 38 7D 0C 28 */ addi r3, r29, 0xc28
|
|
/* 801AAF0C 001A7E4C C0 22 A3 D8 */ lfs f1, lbl_80453DD8-_SDA2_BASE_(r2)
|
|
/* 801AAF10 001A7E50 C0 02 A3 34 */ lfs f0, lbl_80453D34-_SDA2_BASE_(r2)
|
|
/* 801AAF14 001A7E54 EC 00 00 B2 */ fmuls f0, f0, f2
|
|
/* 801AAF18 001A7E58 EC 21 00 2A */ fadds f1, f1, f0
|
|
/* 801AAF1C 001A7E5C C0 42 A2 F4 */ lfs f2, lbl_80453CF4-_SDA2_BASE_(r2)
|
|
/* 801AAF20 001A7E60 C0 62 A3 28 */ lfs f3, lbl_80453D28-_SDA2_BASE_(r2)
|
|
/* 801AAF24 001A7E64 C0 82 A3 30 */ lfs f4, lbl_80453D30-_SDA2_BASE_(r2)
|
|
/* 801AAF28 001A7E68 48 0C 4A 55 */ bl cLib_addCalc__FPfffff
|
|
/* 801AAF2C 001A7E6C C0 02 A3 DC */ lfs f0, lbl_80453DDC-_SDA2_BASE_(r2)
|
|
/* 801AAF30 001A7E70 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAF34 001A7E74 D0 03 0C 30 */ stfs f0, 0xc30(r3)
|
|
/* 801AAF38 001A7E78 48 00 00 A0 */ b lbl_801AAFD8
|
|
lbl_801AAF3C:
|
|
/* 801AAF3C 001A7E7C 38 00 00 48 */ li r0, 0x48
|
|
/* 801AAF40 001A7E80 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAF44 001A7E84 98 03 0C 24 */ stb r0, 0xc24(r3)
|
|
/* 801AAF48 001A7E88 38 00 00 87 */ li r0, 0x87
|
|
/* 801AAF4C 001A7E8C 98 03 0C 25 */ stb r0, 0xc25(r3)
|
|
/* 801AAF50 001A7E90 38 00 00 CE */ li r0, 0xce
|
|
/* 801AAF54 001A7E94 98 03 0C 26 */ stb r0, 0xc26(r3)
|
|
/* 801AAF58 001A7E98 38 7D 0C 28 */ addi r3, r29, 0xc28
|
|
/* 801AAF5C 001A7E9C C0 22 A3 E0 */ lfs f1, lbl_80453DE0-_SDA2_BASE_(r2)
|
|
/* 801AAF60 001A7EA0 C0 02 A3 34 */ lfs f0, lbl_80453D34-_SDA2_BASE_(r2)
|
|
/* 801AAF64 001A7EA4 EC 00 00 B2 */ fmuls f0, f0, f2
|
|
/* 801AAF68 001A7EA8 EC 21 00 2A */ fadds f1, f1, f0
|
|
/* 801AAF6C 001A7EAC C0 42 A2 F4 */ lfs f2, lbl_80453CF4-_SDA2_BASE_(r2)
|
|
/* 801AAF70 001A7EB0 C0 62 A3 28 */ lfs f3, lbl_80453D28-_SDA2_BASE_(r2)
|
|
/* 801AAF74 001A7EB4 C0 82 A3 30 */ lfs f4, lbl_80453D30-_SDA2_BASE_(r2)
|
|
/* 801AAF78 001A7EB8 48 0C 4A 05 */ bl cLib_addCalc__FPfffff
|
|
/* 801AAF7C 001A7EBC C0 02 A3 DC */ lfs f0, lbl_80453DDC-_SDA2_BASE_(r2)
|
|
/* 801AAF80 001A7EC0 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAF84 001A7EC4 D0 03 0C 30 */ stfs f0, 0xc30(r3)
|
|
/* 801AAF88 001A7EC8 48 00 00 50 */ b lbl_801AAFD8
|
|
lbl_801AAF8C:
|
|
/* 801AAF8C 001A7ECC 38 00 00 50 */ li r0, 0x50
|
|
/* 801AAF90 001A7ED0 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAF94 001A7ED4 98 03 0C 24 */ stb r0, 0xc24(r3)
|
|
/* 801AAF98 001A7ED8 38 00 00 87 */ li r0, 0x87
|
|
/* 801AAF9C 001A7EDC 98 03 0C 25 */ stb r0, 0xc25(r3)
|
|
/* 801AAFA0 001A7EE0 38 00 00 CE */ li r0, 0xce
|
|
/* 801AAFA4 001A7EE4 98 03 0C 26 */ stb r0, 0xc26(r3)
|
|
/* 801AAFA8 001A7EE8 38 7D 0C 28 */ addi r3, r29, 0xc28
|
|
/* 801AAFAC 001A7EEC C0 22 A3 E4 */ lfs f1, lbl_80453DE4-_SDA2_BASE_(r2)
|
|
/* 801AAFB0 001A7EF0 C0 02 A3 34 */ lfs f0, lbl_80453D34-_SDA2_BASE_(r2)
|
|
/* 801AAFB4 001A7EF4 EC 00 00 B2 */ fmuls f0, f0, f2
|
|
/* 801AAFB8 001A7EF8 EC 21 00 2A */ fadds f1, f1, f0
|
|
/* 801AAFBC 001A7EFC C0 42 A2 F4 */ lfs f2, lbl_80453CF4-_SDA2_BASE_(r2)
|
|
/* 801AAFC0 001A7F00 C0 62 A3 28 */ lfs f3, lbl_80453D28-_SDA2_BASE_(r2)
|
|
/* 801AAFC4 001A7F04 C0 82 A3 30 */ lfs f4, lbl_80453D30-_SDA2_BASE_(r2)
|
|
/* 801AAFC8 001A7F08 48 0C 49 B5 */ bl cLib_addCalc__FPfffff
|
|
/* 801AAFCC 001A7F0C C0 02 A3 E8 */ lfs f0, lbl_80453DE8-_SDA2_BASE_(r2)
|
|
/* 801AAFD0 001A7F10 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAFD4 001A7F14 D0 03 0C 30 */ stfs f0, 0xc30(r3)
|
|
lbl_801AAFD8:
|
|
/* 801AAFD8 001A7F18 38 00 00 02 */ li r0, 2
|
|
/* 801AAFDC 001A7F1C 7C 7F DA 14 */ add r3, r31, r27
|
|
/* 801AAFE0 001A7F20 98 03 0C 3C */ stb r0, 0xc3c(r3)
|
|
/* 801AAFE4 001A7F24 38 00 00 03 */ li r0, 3
|
|
/* 801AAFE8 001A7F28 98 03 0C 3D */ stb r0, 0xc3d(r3)
|
|
/* 801AAFEC 001A7F2C 38 00 00 01 */ li r0, 1
|
|
/* 801AAFF0 001A7F30 98 03 0C 3E */ stb r0, 0xc3e(r3)
|
|
/* 801AAFF4 001A7F34 48 00 00 10 */ b lbl_801AB004
|
|
lbl_801AAFF8:
|
|
/* 801AAFF8 001A7F38 38 63 00 01 */ addi r3, r3, 1
|
|
/* 801AAFFC 001A7F3C 3B 7B 00 28 */ addi r27, r27, 0x28
|
|
/* 801AB000 001A7F40 42 00 FE 08 */ bdnz lbl_801AAE08
|
|
lbl_801AB004:
|
|
/* 801AB004 001A7F44 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 801AB008 001A7F48 48 1B 72 19 */ bl _restgpr_27
|
|
/* 801AB00C 001A7F4C 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 801AB010 001A7F50 7C 08 03 A6 */ mtlr r0
|
|
/* 801AB014 001A7F54 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 801AB018 001A7F58 4E 80 00 20 */ blr
|