d_a_obj_lv3Candle OK (#2093)

* All methods matching

* Some cleanup, stuck on TU match

* d_a_obj_heavySw OK (#2091)

* match functions

* Match TU

* Cleanup

* remove asm and update progress

* d_a_obj_sekizo OK (#2092)

* Test commit.

* Match initBaseMtx and setBaseMtx

* Match Create, Draw. Execute almost matched.

* Match Execute and simpler functions.

* Misc changes for pause.

* Match CreateHeap and Delete. Start cleanup.

* Match create(). Update inherited fopAc_ac_c members.

* Most of sekizo matched, but .data has extra zeros (param_c underutilized?).

* Minor cleanup.

* Remove unused asm and update progress.

* Fix progress.

* Casting and cullMtx feedback.

* Decomp OK, minor cleanup

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
Co-authored-by: Trueffel <106771418+Trueffeloot@users.noreply.github.com>
Co-authored-by: ErraticOocca <161252953+ErraticOocca@users.noreply.github.com>
This commit is contained in:
Jeff Padgham 2024-03-13 08:23:47 -07:00 committed by GitHub
parent 86af5df121
commit 567a12ac9a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
22 changed files with 251 additions and 1301 deletions

View File

@ -21,8 +21,8 @@ Total | 52.688307% | 2118424 | 4020672
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 52.688307% | 2118424 | 4020672
RELs | 36.639420% | 4213652 | 11500324
Total | 40.796841% | 6332076 | 15520996
RELs | 36.662828% | 4216344 | 11500324
Total | 40.814185% | 6334768 | 15520996
## RELs
@ -484,7 +484,7 @@ d_a_obj_lp | 29.557762% | 2620 | 8864
d_a_obj_lv1Candle00 | 100.000000% | 5756 | 5756
d_a_obj_lv1Candle01 | 100.000000% | 5340 | 5340
d_a_obj_lv2Candle | 100.000000% | 6960 | 6960
d_a_obj_lv3Candle | 45.638126% | 2260 | 4952
d_a_obj_lv3Candle | 100.000000% | 4952 | 4952
d_a_obj_lv3Water | 44.263566% | 4568 | 10320
d_a_obj_lv3Water2 | 41.786571% | 2788 | 6672
d_a_obj_lv3WaterB | 100.000000% | 3708 | 3708
@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244
d_a_warp_bug | 100.000000% | 2024 | 2024
d_a_ykgr | 44.400631% | 2252 | 5072
f_pc_profile_lst | 100.000000% | 28156 | 28156
Total | 36.639420% | 4213652 | 11500324
Total | 36.662828% | 4216344 | 11500324

View File

@ -1,33 +0,0 @@
lbl_80C57BC0:
/* 80C57BC0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57BC4 7C 08 02 A6 */ mflr r0
/* 80C57BC8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57BCC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C57BD0 7C 7F 1B 78 */ mr r31, r3
/* 80C57BD4 88 03 05 74 */ lbz r0, 0x574(r3)
/* 80C57BD8 54 00 10 3A */ slwi r0, r0, 2
/* 80C57BDC 3C 60 80 C6 */ lis r3, l_resNameIdx@ha /* 0x80C58630@ha */
/* 80C57BE0 38 63 86 30 */ addi r3, r3, l_resNameIdx@l /* 0x80C58630@l */
/* 80C57BE4 7C 63 00 2E */ lwzx r3, r3, r0
/* 80C57BE8 3C 80 80 C6 */ lis r4, l_bmdIdx@ha /* 0x80C58594@ha */
/* 80C57BEC 38 84 85 94 */ addi r4, r4, l_bmdIdx@l /* 0x80C58594@l */
/* 80C57BF0 7C 84 00 2E */ lwzx r4, r4, r0
/* 80C57BF4 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C57BF8 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C57BFC 3C A5 00 02 */ addis r5, r5, 2
/* 80C57C00 38 C0 00 80 */ li r6, 0x80
/* 80C57C04 38 A5 C2 F8 */ addi r5, r5, -15624
/* 80C57C08 4B 3E 46 E5 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80C57C0C 3C 80 00 08 */ lis r4, 8
/* 80C57C10 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */
/* 80C57C14 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */
/* 80C57C18 4B 3B D0 3D */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
/* 80C57C1C 90 7F 05 70 */ stw r3, 0x570(r31)
/* 80C57C20 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80C57C24 30 03 FF FF */ addic r0, r3, -1
/* 80C57C28 7C 60 19 10 */ subfe r3, r0, r3
/* 80C57C2C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C57C30 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57C34 7C 08 03 A6 */ mtlr r0
/* 80C57C38 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57C3C 4E 80 00 20 */ blr

View File

@ -1,27 +0,0 @@
lbl_80C583A0:
/* 80C583A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C583A4 7C 08 02 A6 */ mflr r0
/* 80C583A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C583AC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C583B0 7C 7F 1B 78 */ mr r31, r3
/* 80C583B4 38 7F 07 34 */ addi r3, r31, 0x734
/* 80C583B8 4B 66 5C 41 */ bl deleteObject__14Z2SoundObjBaseFv
/* 80C583BC 38 7F 05 68 */ addi r3, r31, 0x568
/* 80C583C0 88 1F 05 74 */ lbz r0, 0x574(r31)
/* 80C583C4 54 00 10 3A */ slwi r0, r0, 2
/* 80C583C8 3C 80 80 C6 */ lis r4, l_resNameIdx@ha /* 0x80C58630@ha */
/* 80C583CC 38 84 86 30 */ addi r4, r4, l_resNameIdx@l /* 0x80C58630@l */
/* 80C583D0 7C 84 00 2E */ lwzx r4, r4, r0
/* 80C583D4 4B 3D 4C 35 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 80C583D8 88 1F 07 08 */ lbz r0, 0x708(r31)
/* 80C583DC 28 00 00 00 */ cmplwi r0, 0
/* 80C583E0 41 82 00 0C */ beq lbl_80C583EC
/* 80C583E4 38 7F 07 10 */ addi r3, r31, 0x710
/* 80C583E8 4B 54 F5 45 */ bl dKy_plight_cut__FP15LIGHT_INFLUENCE
lbl_80C583EC:
/* 80C583EC 38 60 00 01 */ li r3, 1
/* 80C583F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C583F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C583F8 7C 08 03 A6 */ mtlr r0
/* 80C583FC 38 21 00 10 */ addi r1, r1, 0x10
/* 80C58400 4E 80 00 20 */ blr

View File

@ -1,42 +0,0 @@
lbl_80C582FC:
/* 80C582FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58300 7C 08 02 A6 */ mflr r0
/* 80C58304 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58308 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5830C 93 C1 00 08 */ stw r30, 8(r1)
/* 80C58310 7C 7E 1B 78 */ mr r30, r3
/* 80C58314 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80C58318 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80C5831C 38 80 00 10 */ li r4, 0x10
/* 80C58320 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80C58324 38 DE 01 0C */ addi r6, r30, 0x10c
/* 80C58328 4B 54 B4 9D */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c
/* 80C5832C 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80C58330 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80C58334 80 9E 05 70 */ lwz r4, 0x570(r30)
/* 80C58338 80 84 00 04 */ lwz r4, 4(r4)
/* 80C5833C 38 BE 01 0C */ addi r5, r30, 0x10c
/* 80C58340 4B 54 CA 61 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c
/* 80C58344 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C58348 38 83 61 C0 */ addi r4, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C5834C 80 04 5F 70 */ lwz r0, 0x5f70(r4)
/* 80C58350 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */
/* 80C58354 3B E3 4A C8 */ addi r31, r3, j3dSys@l /* 0x80434AC8@l */
/* 80C58358 90 1F 00 48 */ stw r0, 0x48(r31)
/* 80C5835C 80 04 5F 74 */ lwz r0, 0x5f74(r4)
/* 80C58360 90 1F 00 4C */ stw r0, 0x4c(r31)
/* 80C58364 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80C58368 4B 3B 59 5D */ bl mDoExt_modelUpdateDL__FP8J3DModel
/* 80C5836C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C58370 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C58374 80 03 5F 80 */ lwz r0, 0x5f80(r3)
/* 80C58378 90 1F 00 48 */ stw r0, 0x48(r31)
/* 80C5837C 80 03 5F 84 */ lwz r0, 0x5f84(r3)
/* 80C58380 90 1F 00 4C */ stw r0, 0x4c(r31)
/* 80C58384 38 60 00 01 */ li r3, 1
/* 80C58388 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5838C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80C58390 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58394 7C 08 03 A6 */ mtlr r0
/* 80C58398 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5839C 4E 80 00 20 */ blr

View File

@ -1,157 +0,0 @@
lbl_80C580A0:
/* 80C580A0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80C580A4 7C 08 02 A6 */ mflr r0
/* 80C580A8 90 01 00 34 */ stw r0, 0x34(r1)
/* 80C580AC 39 61 00 30 */ addi r11, r1, 0x30
/* 80C580B0 4B 70 A1 2D */ bl _savegpr_29
/* 80C580B4 7C 7E 1B 78 */ mr r30, r3
/* 80C580B8 3C 60 80 C6 */ lis r3, mCcDObjInfo__13daLv3Candle_c@ha /* 0x80C58564@ha */
/* 80C580BC 3B E3 85 64 */ addi r31, r3, mCcDObjInfo__13daLv3Candle_c@l /* 0x80C58564@l */
/* 80C580C0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C580C4 3B A3 61 C0 */ addi r29, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C580C8 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80C580CC 38 80 01 00 */ li r4, 0x100
/* 80C580D0 38 BE 06 EC */ addi r5, r30, 0x6ec
/* 80C580D4 38 C0 00 00 */ li r6, 0
/* 80C580D8 38 E0 00 FF */ li r7, 0xff
/* 80C580DC 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */
/* 80C580E0 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */
/* 80C580E4 7D 09 43 78 */ mr r9, r8
/* 80C580E8 39 40 00 00 */ li r10, 0
/* 80C580EC C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 80C580F0 4B 3F 50 C9 */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif
/* 80C580F4 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80C580F8 38 80 01 01 */ li r4, 0x101
/* 80C580FC 38 BE 06 EC */ addi r5, r30, 0x6ec
/* 80C58100 38 C0 00 00 */ li r6, 0
/* 80C58104 38 E0 00 FF */ li r7, 0xff
/* 80C58108 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */
/* 80C5810C 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */
/* 80C58110 7D 09 43 78 */ mr r9, r8
/* 80C58114 39 40 00 00 */ li r10, 0
/* 80C58118 C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 80C5811C 4B 3F 50 9D */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif
/* 80C58120 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80C58124 38 80 01 03 */ li r4, 0x103
/* 80C58128 38 BE 06 EC */ addi r5, r30, 0x6ec
/* 80C5812C 38 C0 00 00 */ li r6, 0
/* 80C58130 38 E0 00 FF */ li r7, 0xff
/* 80C58134 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */
/* 80C58138 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */
/* 80C5813C 7D 09 43 78 */ mr r9, r8
/* 80C58140 39 40 00 00 */ li r10, 0
/* 80C58144 C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 80C58148 4B 3F 50 71 */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif
/* 80C5814C 88 1E 04 E2 */ lbz r0, 0x4e2(r30)
/* 80C58150 7C 03 07 74 */ extsb r3, r0
/* 80C58154 4B 3D 4F 19 */ bl dComIfGp_getReverb__Fi
/* 80C58158 7C 67 1B 78 */ mr r7, r3
/* 80C5815C 3C 60 00 08 */ lis r3, 0x0008 /* 0x00080018@ha */
/* 80C58160 38 03 00 18 */ addi r0, r3, 0x0018 /* 0x00080018@l */
/* 80C58164 90 01 00 08 */ stw r0, 8(r1)
/* 80C58168 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80C5816C 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80C58170 80 63 00 00 */ lwz r3, 0(r3)
/* 80C58174 38 81 00 08 */ addi r4, r1, 8
/* 80C58178 38 BE 06 EC */ addi r5, r30, 0x6ec
/* 80C5817C 38 C0 00 00 */ li r6, 0
/* 80C58180 C0 3F 00 50 */ lfs f1, 0x50(r31)
/* 80C58184 FC 40 08 90 */ fmr f2, f1
/* 80C58188 C0 7F 00 68 */ lfs f3, 0x68(r31)
/* 80C5818C FC 80 18 90 */ fmr f4, f3
/* 80C58190 39 00 00 00 */ li r8, 0
/* 80C58194 4B 65 43 79 */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80C58198 38 7E 05 B4 */ addi r3, r30, 0x5b4
/* 80C5819C 4B 42 C2 C5 */ bl ChkTgHit__12dCcD_GObjInfFv
/* 80C581A0 28 03 00 00 */ cmplwi r3, 0
/* 80C581A4 41 82 00 7C */ beq lbl_80C58220
/* 80C581A8 38 7E 05 B4 */ addi r3, r30, 0x5b4
/* 80C581AC 4B 42 C3 4D */ bl GetTgHitObj__12dCcD_GObjInfFv
/* 80C581B0 28 03 00 00 */ cmplwi r3, 0
/* 80C581B4 41 82 00 74 */ beq lbl_80C58228
/* 80C581B8 3B A0 00 01 */ li r29, 1
/* 80C581BC 4B 60 B8 8D */ bl GetAc__8cCcD_ObjFv
/* 80C581C0 A8 03 00 08 */ lha r0, 8(r3)
/* 80C581C4 2C 00 00 FD */ cmpwi r0, 0xfd
/* 80C581C8 40 82 00 28 */ bne lbl_80C581F0
/* 80C581CC 38 7E 05 B4 */ addi r3, r30, 0x5b4
/* 80C581D0 4B 42 C3 79 */ bl GetTgHitGObj__12dCcD_GObjInfFv
/* 80C581D4 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80C581D8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80C581DC 41 82 00 14 */ beq lbl_80C581F0
/* 80C581E0 88 1E 07 30 */ lbz r0, 0x730(r30)
/* 80C581E4 28 00 00 00 */ cmplwi r0, 0
/* 80C581E8 41 82 00 08 */ beq lbl_80C581F0
/* 80C581EC 3B A0 00 00 */ li r29, 0
lbl_80C581F0:
/* 80C581F0 57 A0 06 3F */ clrlwi. r0, r29, 0x18
/* 80C581F4 41 82 00 34 */ beq lbl_80C58228
/* 80C581F8 38 7E 05 B4 */ addi r3, r30, 0x5b4
/* 80C581FC 4B 42 C3 81 */ bl GetTgHitObjSe__12dCcD_GObjInfFv
/* 80C58200 38 80 00 01 */ li r4, 1
/* 80C58204 4B 42 C3 AD */ bl getHitSeID__12dCcD_GObjInfFUci
/* 80C58208 7C 64 1B 78 */ mr r4, r3
/* 80C5820C 38 7E 07 34 */ addi r3, r30, 0x734
/* 80C58210 38 A0 00 09 */ li r5, 9
/* 80C58214 38 C0 00 00 */ li r6, 0
/* 80C58218 4B 66 62 8D */ bl startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase
/* 80C5821C 48 00 00 0C */ b lbl_80C58228
lbl_80C58220:
/* 80C58220 38 00 00 00 */ li r0, 0
/* 80C58224 98 1E 07 30 */ stb r0, 0x730(r30)
lbl_80C58228:
/* 80C58228 88 1E 04 E2 */ lbz r0, 0x4e2(r30)
/* 80C5822C 7C 03 07 74 */ extsb r3, r0
/* 80C58230 4B 3D 4E 3D */ bl dComIfGp_getReverb__Fi
/* 80C58234 7C 65 1B 78 */ mr r5, r3
/* 80C58238 38 7E 07 34 */ addi r3, r30, 0x734
/* 80C5823C 38 80 00 00 */ li r4, 0
/* 80C58240 81 9E 07 44 */ lwz r12, 0x744(r30)
/* 80C58244 81 8C 00 08 */ lwz r12, 8(r12)
/* 80C58248 7D 89 03 A6 */ mtctr r12
/* 80C5824C 4E 80 04 21 */ bctrl
/* 80C58250 7F C3 F3 78 */ mr r3, r30
/* 80C58254 4B FF F8 E5 */ bl setBaseMtx__13daLv3Candle_cFv
/* 80C58258 C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
/* 80C5825C D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80C58260 C0 1E 04 D4 */ lfs f0, 0x4d4(r30)
/* 80C58264 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80C58268 C0 1E 04 D8 */ lfs f0, 0x4d8(r30)
/* 80C5826C D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80C58270 88 1E 05 74 */ lbz r0, 0x574(r30)
/* 80C58274 28 00 00 00 */ cmplwi r0, 0
/* 80C58278 40 82 00 24 */ bne lbl_80C5829C
/* 80C5827C 38 7E 06 D8 */ addi r3, r30, 0x6d8
/* 80C58280 C0 3F 00 6C */ lfs f1, 0x6c(r31)
/* 80C58284 4B 61 74 85 */ bl SetR__8cM3dGSphFf
/* 80C58288 C0 21 00 14 */ lfs f1, 0x14(r1)
/* 80C5828C C0 1F 00 70 */ lfs f0, 0x70(r31)
/* 80C58290 EC 01 00 2A */ fadds f0, f1, f0
/* 80C58294 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80C58298 48 00 00 20 */ b lbl_80C582B8
lbl_80C5829C:
/* 80C5829C 38 7E 06 D8 */ addi r3, r30, 0x6d8
/* 80C582A0 C0 3F 00 74 */ lfs f1, 0x74(r31)
/* 80C582A4 4B 61 74 65 */ bl SetR__8cM3dGSphFf
/* 80C582A8 C0 21 00 10 */ lfs f1, 0x10(r1)
/* 80C582AC C0 1F 00 44 */ lfs f0, 0x44(r31)
/* 80C582B0 EC 01 00 28 */ fsubs f0, f1, f0
/* 80C582B4 D0 01 00 10 */ stfs f0, 0x10(r1)
lbl_80C582B8:
/* 80C582B8 38 7E 06 D8 */ addi r3, r30, 0x6d8
/* 80C582BC 38 81 00 0C */ addi r4, r1, 0xc
/* 80C582C0 4B 61 73 89 */ bl SetC__8cM3dGSphFRC4cXyz
/* 80C582C4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C582C8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C582CC 38 63 23 3C */ addi r3, r3, 0x233c
/* 80C582D0 38 9E 05 B4 */ addi r4, r30, 0x5b4
/* 80C582D4 4B 60 C8 D5 */ bl Set__4cCcSFP8cCcD_Obj
/* 80C582D8 7F C3 F3 78 */ mr r3, r30
/* 80C582DC 4B FF FD 3D */ bl pointLightProc__13daLv3Candle_cFv
/* 80C582E0 38 60 00 01 */ li r3, 1
/* 80C582E4 39 61 00 30 */ addi r11, r1, 0x30
/* 80C582E8 4B 70 9F 41 */ bl _restgpr_29
/* 80C582EC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80C582F0 7C 08 03 A6 */ mtlr r0
/* 80C582F4 38 21 00 30 */ addi r1, r1, 0x30
/* 80C582F8 4E 80 00 20 */ blr

View File

@ -1,10 +0,0 @@
lbl_80C57ACC:
/* 80C57ACC 3C 80 80 C6 */ lis r4, __vt__14mDoHIO_entry_c@ha /* 0x80C586AC@ha */
/* 80C57AD0 38 04 86 AC */ addi r0, r4, __vt__14mDoHIO_entry_c@l /* 0x80C586AC@l */
/* 80C57AD4 90 03 00 00 */ stw r0, 0(r3)
/* 80C57AD8 3C 80 80 C6 */ lis r4, __vt__17daLv3Candle_HIO_c@ha /* 0x80C586A0@ha */
/* 80C57ADC 38 04 86 A0 */ addi r0, r4, __vt__17daLv3Candle_HIO_c@l /* 0x80C586A0@l */
/* 80C57AE0 90 03 00 00 */ stw r0, 0(r3)
/* 80C57AE4 38 00 00 1E */ li r0, 0x1e
/* 80C57AE8 98 03 00 04 */ stb r0, 4(r3)
/* 80C57AEC 4E 80 00 20 */ blr

View File

@ -1,20 +0,0 @@
lbl_80C57AF0:
/* 80C57AF0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57AF4 7C 08 02 A6 */ mflr r0
/* 80C57AF8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57AFC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C57B00 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C57B04 41 82 00 1C */ beq lbl_80C57B20
/* 80C57B08 3C A0 80 C6 */ lis r5, __vt__14mDoHIO_entry_c@ha /* 0x80C586AC@ha */
/* 80C57B0C 38 05 86 AC */ addi r0, r5, __vt__14mDoHIO_entry_c@l /* 0x80C586AC@l */
/* 80C57B10 90 1F 00 00 */ stw r0, 0(r31)
/* 80C57B14 7C 80 07 35 */ extsh. r0, r4
/* 80C57B18 40 81 00 08 */ ble lbl_80C57B20
/* 80C57B1C 4B 67 72 21 */ bl __dl__FPv
lbl_80C57B20:
/* 80C57B20 7F E3 FB 78 */ mr r3, r31
/* 80C57B24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C57B28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57B2C 7C 08 03 A6 */ mtlr r0
/* 80C57B30 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57B34 4E 80 00 20 */ blr

View File

@ -1,26 +0,0 @@
lbl_80C58484:
/* 80C58484 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58488 7C 08 02 A6 */ mflr r0
/* 80C5848C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58490 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C58494 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C58498 41 82 00 30 */ beq lbl_80C584C8
/* 80C5849C 3C 60 80 C6 */ lis r3, __vt__17daLv3Candle_HIO_c@ha /* 0x80C586A0@ha */
/* 80C584A0 38 03 86 A0 */ addi r0, r3, __vt__17daLv3Candle_HIO_c@l /* 0x80C586A0@l */
/* 80C584A4 90 1F 00 00 */ stw r0, 0(r31)
/* 80C584A8 41 82 00 10 */ beq lbl_80C584B8
/* 80C584AC 3C 60 80 C6 */ lis r3, __vt__14mDoHIO_entry_c@ha /* 0x80C586AC@ha */
/* 80C584B0 38 03 86 AC */ addi r0, r3, __vt__14mDoHIO_entry_c@l /* 0x80C586AC@l */
/* 80C584B4 90 1F 00 00 */ stw r0, 0(r31)
lbl_80C584B8:
/* 80C584B8 7C 80 07 35 */ extsh. r0, r4
/* 80C584BC 40 81 00 0C */ ble lbl_80C584C8
/* 80C584C0 7F E3 FB 78 */ mr r3, r31
/* 80C584C4 4B 67 68 79 */ bl __dl__FPv
lbl_80C584C8:
/* 80C584C8 7F E3 FB 78 */ mr r3, r31
/* 80C584CC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C584D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C584D4 7C 08 03 A6 */ mtlr r0
/* 80C584D8 38 21 00 10 */ addi r1, r1, 0x10
/* 80C584DC 4E 80 00 20 */ blr

View File

@ -1,20 +0,0 @@
lbl_80C57F24:
/* 80C57F24 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57F28 7C 08 02 A6 */ mflr r0
/* 80C57F2C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57F30 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C57F34 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C57F38 41 82 00 1C */ beq lbl_80C57F54
/* 80C57F3C 3C A0 80 C6 */ lis r5, __vt__8cM3dGAab@ha /* 0x80C58694@ha */
/* 80C57F40 38 05 86 94 */ addi r0, r5, __vt__8cM3dGAab@l /* 0x80C58694@l */
/* 80C57F44 90 1F 00 18 */ stw r0, 0x18(r31)
/* 80C57F48 7C 80 07 35 */ extsh. r0, r4
/* 80C57F4C 40 81 00 08 */ ble lbl_80C57F54
/* 80C57F50 4B 67 6D ED */ bl __dl__FPv
lbl_80C57F54:
/* 80C57F54 7F E3 FB 78 */ mr r3, r31
/* 80C57F58 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C57F5C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57F60 7C 08 03 A6 */ mtlr r0
/* 80C57F64 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57F68 4E 80 00 20 */ blr

View File

@ -1,20 +0,0 @@
lbl_80C57EDC:
/* 80C57EDC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57EE0 7C 08 02 A6 */ mflr r0
/* 80C57EE4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57EE8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C57EEC 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C57EF0 41 82 00 1C */ beq lbl_80C57F0C
/* 80C57EF4 3C A0 80 C6 */ lis r5, __vt__8cM3dGSph@ha /* 0x80C58688@ha */
/* 80C57EF8 38 05 86 88 */ addi r0, r5, __vt__8cM3dGSph@l /* 0x80C58688@l */
/* 80C57EFC 90 1F 00 10 */ stw r0, 0x10(r31)
/* 80C57F00 7C 80 07 35 */ extsh. r0, r4
/* 80C57F04 40 81 00 08 */ ble lbl_80C57F0C
/* 80C57F08 4B 67 6E 35 */ bl __dl__FPv
lbl_80C57F0C:
/* 80C57F0C 7F E3 FB 78 */ mr r3, r31
/* 80C57F10 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C57F14 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57F18 7C 08 03 A6 */ mtlr r0
/* 80C57F1C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57F20 4E 80 00 20 */ blr

View File

@ -1,30 +0,0 @@
lbl_80C584E0:
/* 80C584E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C584E4 7C 08 02 A6 */ mflr r0
/* 80C584E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C584EC 3C 60 80 C6 */ lis r3, l_HIO@ha /* 0x80C586CC@ha */
/* 80C584F0 38 63 86 CC */ addi r3, r3, l_HIO@l /* 0x80C586CC@l */
/* 80C584F4 4B FF F5 D9 */ bl __ct__17daLv3Candle_HIO_cFv
/* 80C584F8 3C 80 80 C6 */ lis r4, __dt__17daLv3Candle_HIO_cFv@ha /* 0x80C58484@ha */
/* 80C584FC 38 84 84 84 */ addi r4, r4, __dt__17daLv3Candle_HIO_cFv@l /* 0x80C58484@l */
/* 80C58500 3C A0 80 C6 */ lis r5, lit_3623@ha /* 0x80C586C0@ha */
/* 80C58504 38 A5 86 C0 */ addi r5, r5, lit_3623@l /* 0x80C586C0@l */
/* 80C58508 4B FF F5 51 */ bl __register_global_object
/* 80C5850C 3C 60 80 C6 */ lis r3, mCcDSph__13daLv3Candle_c@ha /* 0x80C585F0@ha */
/* 80C58510 38 63 85 F0 */ addi r3, r3, mCcDSph__13daLv3Candle_c@l /* 0x80C585F0@l */
/* 80C58514 38 A3 FF FC */ addi r5, r3, -4
/* 80C58518 3C 60 80 C6 */ lis r3, mCcDObjInfo__13daLv3Candle_c@ha /* 0x80C58564@ha */
/* 80C5851C 38 63 85 64 */ addi r3, r3, mCcDObjInfo__13daLv3Candle_c@l /* 0x80C58564@l */
/* 80C58520 38 83 FF FC */ addi r4, r3, -4
/* 80C58524 38 00 00 06 */ li r0, 6
/* 80C58528 7C 09 03 A6 */ mtctr r0
lbl_80C5852C:
/* 80C5852C 80 64 00 04 */ lwz r3, 4(r4)
/* 80C58530 84 04 00 08 */ lwzu r0, 8(r4)
/* 80C58534 90 65 00 04 */ stw r3, 4(r5)
/* 80C58538 94 05 00 08 */ stwu r0, 8(r5)
/* 80C5853C 42 00 FF F0 */ bdnz lbl_80C5852C
/* 80C58540 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58544 7C 08 03 A6 */ mtlr r0
/* 80C58548 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5854C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C57F6C:
/* 80C57F6C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57F70 7C 08 02 A6 */ mflr r0
/* 80C57F74 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57F78 4B FF FC 49 */ bl CreateHeap__13daLv3Candle_cFv
/* 80C57F7C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57F80 7C 08 03 A6 */ mtlr r0
/* 80C57F84 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57F88 4E 80 00 20 */ blr

View File

@ -1,177 +0,0 @@
lbl_80C57C40:
/* 80C57C40 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80C57C44 7C 08 02 A6 */ mflr r0
/* 80C57C48 90 01 00 34 */ stw r0, 0x34(r1)
/* 80C57C4C 39 61 00 30 */ addi r11, r1, 0x30
/* 80C57C50 4B 70 A5 89 */ bl _savegpr_28
/* 80C57C54 7C 7D 1B 78 */ mr r29, r3
/* 80C57C58 3C 80 80 C6 */ lis r4, mCcDObjInfo__13daLv3Candle_c@ha /* 0x80C58564@ha */
/* 80C57C5C 3B E4 85 64 */ addi r31, r4, mCcDObjInfo__13daLv3Candle_c@l /* 0x80C58564@l */
/* 80C57C60 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80C57C64 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80C57C68 40 82 00 B0 */ bne lbl_80C57D18
/* 80C57C6C 7F A0 EB 79 */ or. r0, r29, r29
/* 80C57C70 41 82 00 9C */ beq lbl_80C57D0C
/* 80C57C74 7C 1E 03 78 */ mr r30, r0
/* 80C57C78 4B 3C 0E ED */ bl __ct__10fopAc_ac_cFv
/* 80C57C7C 3C 60 80 3C */ lis r3, __vt__9cCcD_Stts@ha /* 0x803C3728@ha */
/* 80C57C80 38 03 37 28 */ addi r0, r3, __vt__9cCcD_Stts@l /* 0x803C3728@l */
/* 80C57C84 90 1E 05 90 */ stw r0, 0x590(r30)
/* 80C57C88 38 7E 05 94 */ addi r3, r30, 0x594
/* 80C57C8C 4B 42 BA D5 */ bl __ct__10dCcD_GSttsFv
/* 80C57C90 3C 60 80 3B */ lis r3, __vt__9dCcD_Stts@ha /* 0x803AC2E4@ha */
/* 80C57C94 38 63 C2 E4 */ addi r3, r3, __vt__9dCcD_Stts@l /* 0x803AC2E4@l */
/* 80C57C98 90 7E 05 90 */ stw r3, 0x590(r30)
/* 80C57C9C 38 03 00 20 */ addi r0, r3, 0x20
/* 80C57CA0 90 1E 05 94 */ stw r0, 0x594(r30)
/* 80C57CA4 3B 9E 05 B4 */ addi r28, r30, 0x5b4
/* 80C57CA8 7F 83 E3 78 */ mr r3, r28
/* 80C57CAC 4B 42 BD 7D */ bl __ct__12dCcD_GObjInfFv
/* 80C57CB0 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */
/* 80C57CB4 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */
/* 80C57CB8 90 1C 01 20 */ stw r0, 0x120(r28)
/* 80C57CBC 3C 60 80 C6 */ lis r3, __vt__8cM3dGAab@ha /* 0x80C58694@ha */
/* 80C57CC0 38 03 86 94 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x80C58694@l */
/* 80C57CC4 90 1C 01 1C */ stw r0, 0x11c(r28)
/* 80C57CC8 3C 60 80 C6 */ lis r3, __vt__8cM3dGSph@ha /* 0x80C58688@ha */
/* 80C57CCC 38 03 86 88 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x80C58688@l */
/* 80C57CD0 90 1C 01 34 */ stw r0, 0x134(r28)
/* 80C57CD4 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */
/* 80C57CD8 38 63 35 40 */ addi r3, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */
/* 80C57CDC 90 7C 01 20 */ stw r3, 0x120(r28)
/* 80C57CE0 38 03 00 58 */ addi r0, r3, 0x58
/* 80C57CE4 90 1C 01 34 */ stw r0, 0x134(r28)
/* 80C57CE8 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */
/* 80C57CEC 38 63 BF C0 */ addi r3, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */
/* 80C57CF0 90 7C 00 3C */ stw r3, 0x3c(r28)
/* 80C57CF4 38 03 00 2C */ addi r0, r3, 0x2c
/* 80C57CF8 90 1C 01 20 */ stw r0, 0x120(r28)
/* 80C57CFC 38 03 00 84 */ addi r0, r3, 0x84
/* 80C57D00 90 1C 01 34 */ stw r0, 0x134(r28)
/* 80C57D04 38 7E 07 34 */ addi r3, r30, 0x734
/* 80C57D08 4B 66 6B 3D */ bl __ct__16Z2SoundObjSimpleFv
lbl_80C57D0C:
/* 80C57D0C 80 1D 04 A0 */ lwz r0, 0x4a0(r29)
/* 80C57D10 60 00 00 08 */ ori r0, r0, 8
/* 80C57D14 90 1D 04 A0 */ stw r0, 0x4a0(r29)
lbl_80C57D18:
/* 80C57D18 80 1D 00 B0 */ lwz r0, 0xb0(r29)
/* 80C57D1C 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f
/* 80C57D20 98 1D 05 74 */ stb r0, 0x574(r29)
/* 80C57D24 88 1D 05 74 */ lbz r0, 0x574(r29)
/* 80C57D28 28 00 00 FF */ cmplwi r0, 0xff
/* 80C57D2C 40 82 00 0C */ bne lbl_80C57D38
/* 80C57D30 38 00 00 00 */ li r0, 0
/* 80C57D34 98 1D 05 74 */ stb r0, 0x574(r29)
lbl_80C57D38:
/* 80C57D38 38 7D 05 68 */ addi r3, r29, 0x568
/* 80C57D3C 88 1D 05 74 */ lbz r0, 0x574(r29)
/* 80C57D40 54 00 10 3A */ slwi r0, r0, 2
/* 80C57D44 3C 80 80 C6 */ lis r4, l_resNameIdx@ha /* 0x80C58630@ha */
/* 80C57D48 38 84 86 30 */ addi r4, r4, l_resNameIdx@l /* 0x80C58630@l */
/* 80C57D4C 7C 84 00 2E */ lwzx r4, r4, r0
/* 80C57D50 4B 3D 51 6D */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
/* 80C57D54 7C 7E 1B 78 */ mr r30, r3
/* 80C57D58 2C 1E 00 04 */ cmpwi r30, 4
/* 80C57D5C 40 82 01 64 */ bne lbl_80C57EC0
/* 80C57D60 7F A3 EB 78 */ mr r3, r29
/* 80C57D64 3C 80 80 C5 */ lis r4, createHeapCallBack__13daLv3Candle_cFP10fopAc_ac_c@ha /* 0x80C57F6C@ha */
/* 80C57D68 38 84 7F 6C */ addi r4, r4, createHeapCallBack__13daLv3Candle_cFP10fopAc_ac_c@l /* 0x80C57F6C@l */
/* 80C57D6C 38 A0 09 00 */ li r5, 0x900
/* 80C57D70 4B 3C 27 41 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
/* 80C57D74 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80C57D78 40 82 00 0C */ bne lbl_80C57D84
/* 80C57D7C 38 60 00 05 */ li r3, 5
/* 80C57D80 48 00 01 44 */ b lbl_80C57EC4
lbl_80C57D84:
/* 80C57D84 7F A3 EB 78 */ mr r3, r29
/* 80C57D88 4B FF FD B1 */ bl setBaseMtx__13daLv3Candle_cFv
/* 80C57D8C 80 7D 05 70 */ lwz r3, 0x570(r29)
/* 80C57D90 38 03 00 24 */ addi r0, r3, 0x24
/* 80C57D94 90 1D 05 04 */ stw r0, 0x504(r29)
/* 80C57D98 80 7D 05 70 */ lwz r3, 0x570(r29)
/* 80C57D9C 80 83 00 04 */ lwz r4, 4(r3)
/* 80C57DA0 7F A3 EB 78 */ mr r3, r29
/* 80C57DA4 4B 3C 27 D5 */ bl fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData
/* 80C57DA8 38 7D 05 78 */ addi r3, r29, 0x578
/* 80C57DAC 38 80 00 FF */ li r4, 0xff
/* 80C57DB0 38 A0 00 FF */ li r5, 0xff
/* 80C57DB4 7F A6 EB 78 */ mr r6, r29
/* 80C57DB8 4B 42 BA A9 */ bl Init__9dCcD_SttsFiiP10fopAc_ac_c
/* 80C57DBC 38 7D 05 B4 */ addi r3, r29, 0x5b4
/* 80C57DC0 3C 80 80 C6 */ lis r4, mCcDSph__13daLv3Candle_c@ha /* 0x80C585F0@ha */
/* 80C57DC4 38 84 85 F0 */ addi r4, r4, mCcDSph__13daLv3Candle_c@l /* 0x80C585F0@l */
/* 80C57DC8 4B 42 CC 6D */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
/* 80C57DCC 38 1D 05 78 */ addi r0, r29, 0x578
/* 80C57DD0 90 1D 05 F8 */ stw r0, 0x5f8(r29)
/* 80C57DD4 C0 1D 04 D0 */ lfs f0, 0x4d0(r29)
/* 80C57DD8 D0 1D 06 EC */ stfs f0, 0x6ec(r29)
/* 80C57DDC C0 1D 04 D4 */ lfs f0, 0x4d4(r29)
/* 80C57DE0 D0 1D 06 F0 */ stfs f0, 0x6f0(r29)
/* 80C57DE4 C0 1D 04 D8 */ lfs f0, 0x4d8(r29)
/* 80C57DE8 D0 1D 06 F4 */ stfs f0, 0x6f4(r29)
/* 80C57DEC 88 1D 05 74 */ lbz r0, 0x574(r29)
/* 80C57DF0 28 00 00 00 */ cmplwi r0, 0
/* 80C57DF4 40 82 00 5C */ bne lbl_80C57E50
/* 80C57DF8 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80C57DFC D0 01 00 08 */ stfs f0, 8(r1)
/* 80C57E00 C0 1F 00 3C */ lfs f0, 0x3c(r31)
/* 80C57E04 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80C57E08 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80C57E0C D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80C57E10 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C57E14 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C57E18 A8 9D 04 E4 */ lha r4, 0x4e4(r29)
/* 80C57E1C A8 BD 04 E6 */ lha r5, 0x4e6(r29)
/* 80C57E20 A8 DD 04 E8 */ lha r6, 0x4e8(r29)
/* 80C57E24 4B 3B 43 E5 */ bl mDoMtx_ZXYrotS__FPA4_fsss
/* 80C57E28 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C57E2C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C57E30 38 81 00 08 */ addi r4, r1, 8
/* 80C57E34 7C 85 23 78 */ mr r5, r4
/* 80C57E38 4B 6E EF 35 */ bl PSMTXMultVec
/* 80C57E3C 38 7D 06 EC */ addi r3, r29, 0x6ec
/* 80C57E40 38 81 00 08 */ addi r4, r1, 8
/* 80C57E44 7C 65 1B 78 */ mr r5, r3
/* 80C57E48 4B 6E F2 49 */ bl PSVECAdd
/* 80C57E4C 48 00 00 14 */ b lbl_80C57E60
lbl_80C57E50:
/* 80C57E50 C0 3D 06 F0 */ lfs f1, 0x6f0(r29)
/* 80C57E54 C0 1F 00 44 */ lfs f0, 0x44(r31)
/* 80C57E58 EC 01 00 28 */ fsubs f0, f1, f0
/* 80C57E5C D0 1D 06 F0 */ stfs f0, 0x6f0(r29)
lbl_80C57E60:
/* 80C57E60 80 1D 00 B0 */ lwz r0, 0xb0(r29)
/* 80C57E64 98 1D 07 08 */ stb r0, 0x708(r29)
/* 80C57E68 88 1D 07 08 */ lbz r0, 0x708(r29)
/* 80C57E6C 28 00 00 FF */ cmplwi r0, 0xff
/* 80C57E70 40 82 00 0C */ bne lbl_80C57E7C
/* 80C57E74 38 00 00 00 */ li r0, 0
/* 80C57E78 98 1D 07 08 */ stb r0, 0x708(r29)
lbl_80C57E7C:
/* 80C57E7C 7F A3 EB 78 */ mr r3, r29
/* 80C57E80 48 00 01 0D */ bl lightInit__13daLv3Candle_cFv
/* 80C57E84 C0 1D 06 EC */ lfs f0, 0x6ec(r29)
/* 80C57E88 D0 1D 05 38 */ stfs f0, 0x538(r29)
/* 80C57E8C C0 1D 06 F0 */ lfs f0, 0x6f0(r29)
/* 80C57E90 D0 1D 05 3C */ stfs f0, 0x53c(r29)
/* 80C57E94 C0 1D 06 F4 */ lfs f0, 0x6f4(r29)
/* 80C57E98 D0 1D 05 40 */ stfs f0, 0x540(r29)
/* 80C57E9C 38 7D 07 34 */ addi r3, r29, 0x734
/* 80C57EA0 38 9D 04 D0 */ addi r4, r29, 0x4d0
/* 80C57EA4 38 A0 00 01 */ li r5, 1
/* 80C57EA8 81 9D 07 44 */ lwz r12, 0x744(r29)
/* 80C57EAC 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80C57EB0 7D 89 03 A6 */ mtctr r12
/* 80C57EB4 4E 80 04 21 */ bctrl
/* 80C57EB8 38 00 00 00 */ li r0, 0
/* 80C57EBC 98 1D 07 30 */ stb r0, 0x730(r29)
lbl_80C57EC0:
/* 80C57EC0 7F C3 F3 78 */ mr r3, r30
lbl_80C57EC4:
/* 80C57EC4 39 61 00 30 */ addi r11, r1, 0x30
/* 80C57EC8 4B 70 A3 5D */ bl _restgpr_28
/* 80C57ECC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80C57ED0 7C 08 03 A6 */ mtlr r0
/* 80C57ED4 38 21 00 30 */ addi r1, r1, 0x30
/* 80C57ED8 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C58464:
/* 80C58464 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58468 7C 08 02 A6 */ mflr r0
/* 80C5846C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58470 4B FF F7 D1 */ bl create__13daLv3Candle_cFv
/* 80C58474 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58478 7C 08 03 A6 */ mtlr r0
/* 80C5847C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C58480 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C58444:
/* 80C58444 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58448 7C 08 02 A6 */ mflr r0
/* 80C5844C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58450 4B FF FF 51 */ bl Delete__13daLv3Candle_cFv
/* 80C58454 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58458 7C 08 03 A6 */ mtlr r0
/* 80C5845C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C58460 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C58404:
/* 80C58404 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58408 7C 08 02 A6 */ mflr r0
/* 80C5840C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58410 4B FF FE ED */ bl Draw__13daLv3Candle_cFv
/* 80C58414 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58418 7C 08 03 A6 */ mtlr r0
/* 80C5841C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C58420 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C58424:
/* 80C58424 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C58428 7C 08 02 A6 */ mflr r0
/* 80C5842C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C58430 4B FF FC 71 */ bl Execute__13daLv3Candle_cFv
/* 80C58434 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C58438 7C 08 03 A6 */ mtlr r0
/* 80C5843C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C58440 4E 80 00 20 */ blr

View File

@ -1,37 +0,0 @@
lbl_80C57F8C:
/* 80C57F8C 3C 80 80 C6 */ lis r4, mCcDObjInfo__13daLv3Candle_c@ha /* 0x80C58564@ha */
/* 80C57F90 38 84 85 64 */ addi r4, r4, mCcDObjInfo__13daLv3Candle_c@l /* 0x80C58564@l */
/* 80C57F94 C0 03 06 EC */ lfs f0, 0x6ec(r3)
/* 80C57F98 D0 03 06 FC */ stfs f0, 0x6fc(r3)
/* 80C57F9C C0 03 06 F0 */ lfs f0, 0x6f0(r3)
/* 80C57FA0 D0 03 07 00 */ stfs f0, 0x700(r3)
/* 80C57FA4 C0 03 06 F4 */ lfs f0, 0x6f4(r3)
/* 80C57FA8 D0 03 07 04 */ stfs f0, 0x704(r3)
/* 80C57FAC C0 23 07 00 */ lfs f1, 0x700(r3)
/* 80C57FB0 C0 04 00 48 */ lfs f0, 0x48(r4)
/* 80C57FB4 EC 01 00 2A */ fadds f0, f1, f0
/* 80C57FB8 D0 03 07 00 */ stfs f0, 0x700(r3)
/* 80C57FBC 88 03 07 08 */ lbz r0, 0x708(r3)
/* 80C57FC0 28 00 00 00 */ cmplwi r0, 0
/* 80C57FC4 41 82 00 48 */ beq lbl_80C5800C
/* 80C57FC8 C0 03 06 FC */ lfs f0, 0x6fc(r3)
/* 80C57FCC D0 03 07 10 */ stfs f0, 0x710(r3)
/* 80C57FD0 C0 03 07 00 */ lfs f0, 0x700(r3)
/* 80C57FD4 D0 03 07 14 */ stfs f0, 0x714(r3)
/* 80C57FD8 C0 03 07 04 */ lfs f0, 0x704(r3)
/* 80C57FDC D0 03 07 18 */ stfs f0, 0x718(r3)
/* 80C57FE0 38 00 00 BC */ li r0, 0xbc
/* 80C57FE4 B0 03 07 1C */ sth r0, 0x71c(r3)
/* 80C57FE8 38 00 00 66 */ li r0, 0x66
/* 80C57FEC B0 03 07 1E */ sth r0, 0x71e(r3)
/* 80C57FF0 38 00 00 42 */ li r0, 0x42
/* 80C57FF4 B0 03 07 20 */ sth r0, 0x720(r3)
/* 80C57FF8 C0 04 00 4C */ lfs f0, 0x4c(r4)
/* 80C57FFC D0 03 07 24 */ stfs f0, 0x724(r3)
/* 80C58000 C0 04 00 50 */ lfs f0, 0x50(r4)
/* 80C58004 D0 03 07 28 */ stfs f0, 0x728(r3)
/* 80C58008 4E 80 00 20 */ blr
lbl_80C5800C:
/* 80C5800C C0 04 00 38 */ lfs f0, 0x38(r4)
/* 80C58010 D0 03 07 0C */ stfs f0, 0x70c(r3)
/* 80C58014 4E 80 00 20 */ blr

View File

@ -1,36 +0,0 @@
lbl_80C58018:
/* 80C58018 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80C5801C 7C 08 02 A6 */ mflr r0
/* 80C58020 90 01 00 24 */ stw r0, 0x24(r1)
/* 80C58024 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80C58028 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80C5802C 7C 7E 1B 78 */ mr r30, r3
/* 80C58030 3C 60 80 C6 */ lis r3, mCcDObjInfo__13daLv3Candle_c@ha /* 0x80C58564@ha */
/* 80C58034 3B E3 85 64 */ addi r31, r3, mCcDObjInfo__13daLv3Candle_c@l /* 0x80C58564@l */
/* 80C58038 88 1E 07 08 */ lbz r0, 0x708(r30)
/* 80C5803C 28 00 00 00 */ cmplwi r0, 0
/* 80C58040 40 82 00 48 */ bne lbl_80C58088
/* 80C58044 80 1F 00 54 */ lwz r0, 0x54(r31)
/* 80C58048 90 01 00 08 */ stw r0, 8(r1)
/* 80C5804C 38 7E 07 0C */ addi r3, r30, 0x70c
/* 80C58050 C0 3F 00 50 */ lfs f1, 0x50(r31)
/* 80C58054 C0 5F 00 58 */ lfs f2, 0x58(r31)
/* 80C58058 C0 7F 00 5C */ lfs f3, 0x5c(r31)
/* 80C5805C C0 9F 00 60 */ lfs f4, 0x60(r31)
/* 80C58060 4B 61 79 1D */ bl cLib_addCalc__FPfffff
/* 80C58064 C0 3E 07 0C */ lfs f1, 0x70c(r30)
/* 80C58068 C0 1F 00 64 */ lfs f0, 0x64(r31)
/* 80C5806C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80C58070 4C 41 13 82 */ cror 2, 1, 2
/* 80C58074 40 82 00 14 */ bne lbl_80C58088
/* 80C58078 38 7E 06 FC */ addi r3, r30, 0x6fc
/* 80C5807C 38 81 00 08 */ addi r4, r1, 8
/* 80C58080 38 A0 00 00 */ li r5, 0
/* 80C58084 4B 55 1C DD */ bl dKy_BossLight_set__FP4cXyzP8_GXColorfUc
lbl_80C58088:
/* 80C58088 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80C5808C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80C58090 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80C58094 7C 08 03 A6 */ mtlr r0
/* 80C58098 38 21 00 20 */ addi r1, r1, 0x20
/* 80C5809C 4E 80 00 20 */ blr

View File

@ -1,35 +0,0 @@
lbl_80C57B38:
/* 80C57B38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C57B3C 7C 08 02 A6 */ mflr r0
/* 80C57B40 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C57B44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C57B48 7C 7F 1B 78 */ mr r31, r3
/* 80C57B4C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C57B50 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C57B54 C0 3F 04 D0 */ lfs f1, 0x4d0(r31)
/* 80C57B58 C0 5F 04 D4 */ lfs f2, 0x4d4(r31)
/* 80C57B5C C0 7F 04 D8 */ lfs f3, 0x4d8(r31)
/* 80C57B60 4B 6E ED 89 */ bl PSMTXTrans
/* 80C57B64 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C57B68 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C57B6C A8 9F 04 DC */ lha r4, 0x4dc(r31)
/* 80C57B70 A8 BF 04 DE */ lha r5, 0x4de(r31)
/* 80C57B74 A8 DF 04 E0 */ lha r6, 0x4e0(r31)
/* 80C57B78 4B 3B 47 29 */ bl mDoMtx_ZXYrotM__FPA4_fsss
/* 80C57B7C 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80C57B80 C0 1F 04 EC */ lfs f0, 0x4ec(r31)
/* 80C57B84 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 80C57B88 C0 1F 04 F0 */ lfs f0, 0x4f0(r31)
/* 80C57B8C D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 80C57B90 C0 1F 04 F4 */ lfs f0, 0x4f4(r31)
/* 80C57B94 D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80C57B98 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C57B9C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C57BA0 80 9F 05 70 */ lwz r4, 0x570(r31)
/* 80C57BA4 38 84 00 24 */ addi r4, r4, 0x24
/* 80C57BA8 4B 6E E9 09 */ bl PSMTXCopy
/* 80C57BAC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C57BB0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C57BB4 7C 08 03 A6 */ mtlr r0
/* 80C57BB8 38 21 00 10 */ addi r1, r1, 0x10
/* 80C57BBC 4E 80 00 20 */ blr

View File

@ -1,6 +1,54 @@
#ifndef D_A_OBJ_LV3CANDLE_H
#define D_A_OBJ_LV3CANDLE_H
#include "dolphin/types.h"
#include "Z2AudioLib/Z2SoundObject.h"
#include "d/cc/d_cc_d.h"
#include "f_op/f_op_actor_mng.h"
#include "m_Do/m_Do_hostIO.h"
class daLv3Candle_HIO_c : public mDoHIO_entry_c {
public:
/* 80C57ACC */ daLv3Candle_HIO_c();
/* 80C58484 */ virtual ~daLv3Candle_HIO_c() {}
/* 0x00 vtable */
/* 0x04 */ u8 field_0x04;
};
class daLv3Candle_c : public fopAc_ac_c {
public:
/* 80C57B38 */ void setBaseMtx();
/* 80C57BC0 */ int CreateHeap();
/* 80C57C40 */ cPhs__Step create();
/* 80C57F6C */ static int createHeapCallBack(fopAc_ac_c*);
/* 80C57F8C */ void lightInit();
/* 80C58018 */ void pointLightProc();
/* 80C580A0 */ int Execute();
/* 80C582FC */ int Draw();
/* 80C583A0 */ int Delete();
u8 getSwBit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getType() { return fopAcM_GetParamBit(this, 8, 8); }
/* 0x568 */ request_of_phase_process_class mPhaseReq;
/* 0x570 */ J3DModel* mpModel;
/* 0x574 */ u8 mType;
/* 0x578 */ dCcD_Stts mStts;
/* 0x5B4 */ dCcD_Sph mSph;
/* 0x6EC */ cXyz mTorchPos;
/* 0x6F8 */ u32 field_0x6f8; // Unused?
/* 0x6FC */ cXyz mLightPos;
/* 0x708 */ u8 mIsLit;
/* 0x70C */ f32 mIntensity;
/* 0x710 */ LIGHT_INFLUENCE mLight;
/* 0x730 */ u8 mTgHit;
/* 0x734 */ Z2SoundObjSimple mSound;
static dCcD_SrcGObjInf const mCcDObjInfo;
static dCcD_SrcSph mCcDSph;
}; // Size: 0x754
STATIC_ASSERT(sizeof(daLv3Candle_c) == 0x754);
#endif /* D_A_OBJ_LV3CANDLE_H */

View File

@ -1,644 +1,261 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_obj_lv3Candle
// d_a_obj_lv3Candle.cpp
// Object - Level 3 Candle
//
#include "rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h"
#include "dol2asm.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct mDoMtx_stack_c {
static u8 now[48];
};
struct mDoHIO_entry_c {
/* 80C57AF0 */ ~mDoHIO_entry_c();
};
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
};
struct daLv3Candle_c {
/* 80C57B38 */ void setBaseMtx();
/* 80C57BC0 */ void CreateHeap();
/* 80C57C40 */ void create();
/* 80C57F6C */ void createHeapCallBack(fopAc_ac_c*);
/* 80C57F8C */ void lightInit();
/* 80C58018 */ void pointLightProc();
/* 80C580A0 */ void Execute();
/* 80C582FC */ void Draw();
/* 80C583A0 */ void Delete();
static u8 const mCcDObjInfo[48];
static u8 mCcDSph[64];
};
struct daLv3Candle_HIO_c {
/* 80C57ACC */ daLv3Candle_HIO_c();
/* 80C58484 */ ~daLv3Candle_HIO_c();
};
struct dKy_tevstr_c {};
struct J3DModelData {};
struct cXyz {};
struct dScnKy_env_light_c {
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
};
struct dRes_info_c {};
struct dRes_control_c {
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
};
struct _GXColor {};
struct dPa_control_c {
/* 8004D1B8 */ void setSimple(u16, cXyz const*, dKy_tevstr_c const*, u8, _GXColor const&,
_GXColor const&, int, f32);
};
struct dCcD_Stts {
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
};
struct dCcD_SrcSph {};
struct dCcD_Sph {
/* 80084A34 */ void Set(dCcD_SrcSph const&);
};
struct dCcD_GStts {
/* 80083760 */ dCcD_GStts();
};
struct dCcD_GObjInf {
/* 80083A28 */ dCcD_GObjInf();
/* 80084460 */ void ChkTgHit();
/* 800844F8 */ void GetTgHitObj();
/* 80084548 */ void GetTgHitGObj();
/* 8008457C */ void GetTgHitObjSe();
/* 800845B0 */ void getHitSeID(u8, int);
};
struct cM3dGSph {
/* 8026F648 */ void SetC(cXyz const&);
/* 8026F708 */ void SetR(f32);
/* 80C57EDC */ ~cM3dGSph();
};
struct cM3dGAab {
/* 80C57F24 */ ~cM3dGAab();
};
struct cCcD_Obj {
/* 80263A48 */ void GetAc();
};
struct cCcS {
/* 80264BA8 */ void Set(cCcD_Obj*);
};
struct Z2SoundObjSimple {
/* 802BE844 */ Z2SoundObjSimple();
};
struct Z2SoundObjBase {
/* 802BDFF8 */ void deleteObject();
/* 802BE4A4 */ void startCollisionSE(u32, u32, Z2SoundObjBase*);
};
struct JAISoundID {};
struct Vec {};
struct Z2SeMgr {
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
struct LIGHT_INFLUENCE {};
struct J3DModel {};
//
// Forward References:
//
extern "C" void __ct__17daLv3Candle_HIO_cFv();
extern "C" void __dt__14mDoHIO_entry_cFv();
extern "C" void setBaseMtx__13daLv3Candle_cFv();
extern "C" void CreateHeap__13daLv3Candle_cFv();
extern "C" void create__13daLv3Candle_cFv();
extern "C" void __dt__8cM3dGSphFv();
extern "C" void __dt__8cM3dGAabFv();
extern "C" void createHeapCallBack__13daLv3Candle_cFP10fopAc_ac_c();
extern "C" void lightInit__13daLv3Candle_cFv();
extern "C" void pointLightProc__13daLv3Candle_cFv();
extern "C" void Execute__13daLv3Candle_cFv();
extern "C" void Draw__13daLv3Candle_cFv();
extern "C" void Delete__13daLv3Candle_cFv();
extern "C" static void daLv3Candle_Draw__FP13daLv3Candle_c();
extern "C" static void daLv3Candle_Execute__FP13daLv3Candle_c();
extern "C" static void daLv3Candle_Delete__FP13daLv3Candle_c();
extern "C" static void daLv3Candle_Create__FP10fopAc_ac_c();
extern "C" void __dt__17daLv3Candle_HIO_cFv();
extern "C" void __sinit_d_a_obj_lv3Candle_cpp();
extern "C" u8 const mCcDObjInfo__13daLv3Candle_c[48];
extern "C" extern char const* const d_a_obj_lv3Candle__stringBase0;
extern "C" u8 mCcDSph__13daLv3Candle_c[64];
//
// External References:
//
extern "C" void mDoMtx_ZXYrotS__FPA4_fsss();
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
extern "C" void fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void dComIfGp_getReverb__Fi();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
extern "C" void __ct__12dCcD_GObjInfFv();
extern "C" void ChkTgHit__12dCcD_GObjInfFv();
extern "C" void GetTgHitObj__12dCcD_GObjInfFv();
extern "C" void GetTgHitGObj__12dCcD_GObjInfFv();
extern "C" void GetTgHitObjSe__12dCcD_GObjInfFv();
extern "C" void getHitSeID__12dCcD_GObjInfFUci();
extern "C" void Set__8dCcD_SphFRC11dCcD_SrcSph();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void dKy_plight_cut__FP15LIGHT_INFLUENCE();
extern "C" void dKy_BossLight_set__FP4cXyzP8_GXColorfUc();
extern "C" void GetAc__8cCcD_ObjFv();
extern "C" void Set__4cCcSFP8cCcD_Obj();
extern "C" void SetC__8cM3dGSphFRC4cXyz();
extern "C" void SetR__8cM3dGSphFf();
extern "C" void cLib_addCalc__FPfffff();
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void deleteObject__14Z2SoundObjBaseFv();
extern "C" void startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase();
extern "C" void __ct__16Z2SoundObjSimpleFv();
extern "C" void __dl__FPv();
extern "C" void PSMTXCopy();
extern "C" void PSMTXTrans();
extern "C" void PSMTXMultVec();
extern "C" void PSVECAdd();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" extern void* __vt__8dCcD_Sph[36];
extern "C" extern void* __vt__9dCcD_Stts[11];
extern "C" extern void* __vt__12cCcD_SphAttr[25];
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
extern "C" extern void* __vt__9cCcD_Stts[8];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_env_light[4880];
extern "C" extern u8 j3dSys[284];
extern "C" extern u32 g_whiteColor;
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern "C" void __register_global_object();
#include "d/com/d_com_inf_game.h"
//
// Declarations:
//
/* ############################################################################################## */
/* 80C585DC-80C585DC 000078 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80C585DC = "L3candl";
SECTION_DEAD static char const* const stringBase_80C585E4 = "L3candl2";
#pragma pop
/* 80C585F0-80C58630 000000 0040+00 2/2 0/0 0/0 .data mCcDSph__13daLv3Candle_c */
SECTION_DATA u8 daLv3Candle_c::mCcDSph[64] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 80C58630-80C58638 -00001 0008+00 3/3 0/0 0/0 .data l_resNameIdx */
SECTION_DATA static void* l_resNameIdx[2] = {
(void*)&d_a_obj_lv3Candle__stringBase0,
(void*)(((char*)&d_a_obj_lv3Candle__stringBase0) + 0x8),
};
/* 80C58638-80C58658 -00001 0020+00 1/0 0/0 0/0 .data l_daLv3Candle_Method */
SECTION_DATA static void* l_daLv3Candle_Method[8] = {
(void*)daLv3Candle_Create__FP10fopAc_ac_c,
(void*)daLv3Candle_Delete__FP13daLv3Candle_c,
(void*)daLv3Candle_Execute__FP13daLv3Candle_c,
(void*)NULL,
(void*)daLv3Candle_Draw__FP13daLv3Candle_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 80C58658-80C58688 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv3Candle */
SECTION_DATA extern void* g_profile_Obj_Lv3Candle[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x01720000, (void*)&g_fpcLf_Method,
(void*)0x00000754, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x026C0000, (void*)&l_daLv3Candle_Method,
(void*)0x00060000, (void*)0x000E0000,
};
/* 80C58688-80C58694 000098 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */
SECTION_DATA extern void* __vt__8cM3dGSph[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGSphFv,
};
/* 80C58694-80C586A0 0000A4 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGAabFv,
};
/* 80C586A0-80C586AC 0000B0 000C+00 2/2 0/0 0/0 .data __vt__17daLv3Candle_HIO_c */
SECTION_DATA extern void* __vt__17daLv3Candle_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17daLv3Candle_HIO_cFv,
};
/* 80C586AC-80C586B8 0000BC 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14mDoHIO_entry_cFv,
};
static daLv3Candle_HIO_c l_HIO;
/* 80C57ACC-80C57AF0 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daLv3Candle_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daLv3Candle_HIO_c::daLv3Candle_HIO_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__ct__17daLv3Candle_HIO_cFv.s"
daLv3Candle_HIO_c::daLv3Candle_HIO_c() {
field_0x04 = 0x1e;
}
#pragma pop
/* 80C57AF0-80C57B38 000110 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm mDoHIO_entry_c::~mDoHIO_entry_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__dt__14mDoHIO_entry_cFv.s"
}
#pragma pop
/* 80C57B38-80C57BC0 000158 0088+00 2/2 0/0 0/0 .text setBaseMtx__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::setBaseMtx() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/setBaseMtx__13daLv3Candle_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80C58564-80C58594 000000 0030+00 5/5 0/0 0/0 .rodata mCcDObjInfo__13daLv3Candle_c */
SECTION_RODATA u8 const daLv3Candle_c::mCcDObjInfo[48] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13,
0xD8, 0xFB, 0xFD, 0xFF, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x79, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
dCcD_SrcGObjInf const daLv3Candle_c::mCcDObjInfo = {
{0, {{0x200, 0, 0x13}, {0xd8fbfdff, 0x1f}, {0x79}}},
{1, 0, 0, 0, 0},
{0xa, 0, 0, 0, 6},
{0},
};
COMPILER_STRIP_GATE(0x80C58564, &daLv3Candle_c::mCcDObjInfo);
dCcD_SrcSph daLv3Candle_c::mCcDSph = {daLv3Candle_c::mCcDObjInfo, {{{0.0f, 0.0f, 0.0f}, 0.0f}}};
/* 80C58630-80C58638 -00001 0008+00 3/3 0/0 0/0 .data l_resNameIdx */
static char* l_resNameIdx[] = {"L3candl", "L3candl2"};
/* 80C57B38-80C57BC0 000158 0088+00 2/2 0/0 0/0 .text setBaseMtx__13daLv3Candle_cFv */
void daLv3Candle_c::setBaseMtx() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::ZXYrotM(current.angle.x, current.angle.y, current.angle.z);
mpModel->setBaseScale(scale);
mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get());
}
/* 80C58594-80C5859C 000030 0008+00 1/1 0/0 0/0 .rodata l_bmdIdx */
SECTION_RODATA static u8 const l_bmdIdx[8] = {
0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x03,
};
COMPILER_STRIP_GATE(0x80C58594, &l_bmdIdx);
static u32 const l_bmdIdx[] = {0x03, 0x03};
/* 80C57BC0-80C57C40 0001E0 0080+00 1/1 0/0 0/0 .text CreateHeap__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::CreateHeap() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/CreateHeap__13daLv3Candle_cFv.s"
int daLv3Candle_c::CreateHeap() {
J3DModelData* model_data =
(J3DModelData*)dComIfG_getObjectRes(l_resNameIdx[mType], l_bmdIdx[mType]);
mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084);
if (mpModel == NULL) {
return FALSE;
}
return TRUE;
}
#pragma pop
/* ############################################################################################## */
/* 80C5859C-80C585A0 000038 0004+00 0/3 0/0 0/0 .rodata @3753 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3753[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80C5859C, &lit_3753);
#pragma pop
/* 80C585A0-80C585A4 00003C 0004+00 0/1 0/0 0/0 .rodata @3754 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3754 = 20.0f;
COMPILER_STRIP_GATE(0x80C585A0, &lit_3754);
#pragma pop
/* 80C585A4-80C585A8 000040 0004+00 0/1 0/0 0/0 .rodata @3755 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3755 = 125.0f;
COMPILER_STRIP_GATE(0x80C585A4, &lit_3755);
#pragma pop
/* 80C585A8-80C585AC 000044 0004+00 0/2 0/0 0/0 .rodata @3756 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3756 = 200.0f;
COMPILER_STRIP_GATE(0x80C585A8, &lit_3756);
#pragma pop
/* 80C57C40-80C57EDC 000260 029C+00 1/1 0/0 0/0 .text create__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::create() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/create__13daLv3Candle_cFv.s"
}
#pragma pop
cPhs__Step daLv3Candle_c::create() {
fopAcM_SetupActor(this, daLv3Candle_c);
/* 80C57EDC-80C57F24 0004FC 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm cM3dGSph::~cM3dGSph() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__dt__8cM3dGSphFv.s"
}
#pragma pop
mType = getType();
if (mType == 0xff) {
mType = 0;
}
/* 80C57F24-80C57F6C 000544 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm cM3dGAab::~cM3dGAab() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__dt__8cM3dGAabFv.s"
cPhs__Step step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, l_resNameIdx[mType]);
if (step == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0x900)) {
return cPhs_ERROR_e;
} else {
setBaseMtx();
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
fopAcM_setCullSizeBox2(this, mpModel->getModelData());
mStts.Init(0xff, 0xff, this);
mSph.Set(mCcDSph);
mSph.SetStts(&mStts);
mTorchPos = current.pos;
if (mType == 0) {
cXyz v(0.0f, 20.0f, 125.0f);
mDoMtx_stack_c::ZXYrotS(shape_angle.x, shape_angle.y, shape_angle.z);
mDoMtx_stack_c::multVec(&v, &v);
mTorchPos += v;
} else {
mTorchPos.y -= 200.0f;
}
mIsLit = getSwBit();
if (mIsLit == 0xff) {
mIsLit = 0;
}
lightInit();
eyePos = mTorchPos;
mSound.init(&current.pos, 1);
mTgHit = 0;
}
}
return step;
}
#pragma pop
/* 80C57F6C-80C57F8C 00058C 0020+00 1/1 0/0 0/0 .text
* createHeapCallBack__13daLv3Candle_cFP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::createHeapCallBack(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/createHeapCallBack__13daLv3Candle_cFP10fopAc_ac_c.s"
int daLv3Candle_c::createHeapCallBack(fopAc_ac_c* i_this) {
return static_cast<daLv3Candle_c*>(i_this)->CreateHeap();
}
#pragma pop
/* ############################################################################################## */
/* 80C585AC-80C585B0 000048 0004+00 0/1 0/0 0/0 .rodata @3846 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3846 = 10.0f;
COMPILER_STRIP_GATE(0x80C585AC, &lit_3846);
#pragma pop
/* 80C585B0-80C585B4 00004C 0004+00 0/1 0/0 0/0 .rodata @3847 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3847 = 500.0f;
COMPILER_STRIP_GATE(0x80C585B0, &lit_3847);
#pragma pop
/* 80C585B4-80C585B8 000050 0004+00 0/3 0/0 0/0 .rodata @3848 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3848 = 1.0f;
COMPILER_STRIP_GATE(0x80C585B4, &lit_3848);
#pragma pop
/* 80C57F8C-80C58018 0005AC 008C+00 1/1 0/0 0/0 .text lightInit__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::lightInit() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/lightInit__13daLv3Candle_cFv.s"
void daLv3Candle_c::lightInit() {
mLightPos = mTorchPos;
mLightPos.y += 10.0f;
if (mIsLit) {
mLight.mPosition = mLightPos;
mLight.mColor.r = 188;
mLight.mColor.g = 102;
mLight.mColor.b = 66;
mLight.mPow = 500.0f;
mLight.mFluctuation = 1.0f;
return;
}
mIntensity = 0.0f;
}
#pragma pop
/* ############################################################################################## */
/* 80C585B8-80C585BC 000054 0004+00 0/1 0/0 0/0 .rodata @3866 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3866 = 0xBC6642FF;
COMPILER_STRIP_GATE(0x80C585B8, &lit_3866);
#pragma pop
/* 80C585BC-80C585C0 000058 0004+00 0/1 0/0 0/0 .rodata @3871 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3871 = 0.5f;
COMPILER_STRIP_GATE(0x80C585BC, &lit_3871);
#pragma pop
/* 80C585C0-80C585C4 00005C 0004+00 0/1 0/0 0/0 .rodata @3872 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3872 = 1.0f / 10.0f;
COMPILER_STRIP_GATE(0x80C585C0, &lit_3872);
#pragma pop
/* 80C585C4-80C585C8 000060 0004+00 0/1 0/0 0/0 .rodata @3873 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3873 = 0x38D1B717;
COMPILER_STRIP_GATE(0x80C585C4, &lit_3873);
#pragma pop
/* 80C585C8-80C585CC 000064 0004+00 0/1 0/0 0/0 .rodata @3874 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3874 = 0x358637BD;
COMPILER_STRIP_GATE(0x80C585C8, &lit_3874);
#pragma pop
/* 80C58018-80C580A0 000638 0088+00 1/1 0/0 0/0 .text pointLightProc__13daLv3Candle_cFv
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::pointLightProc() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/pointLightProc__13daLv3Candle_cFv.s"
void daLv3Candle_c::pointLightProc() {
if (!mIsLit) {
GXColor color = {188, 102, 66, 255};
cLib_addCalc(&mIntensity, 1.0f, 0.5f, 0.1f, 0.0001f);
if (mIntensity >= 0.000001f) {
dKy_BossLight_set(&mLightPos, &color, mIntensity, 0);
}
}
}
#pragma pop
/* ############################################################################################## */
/* 80C585CC-80C585D0 000068 0004+00 0/1 0/0 0/0 .rodata @3922 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3922 = -1.0f;
COMPILER_STRIP_GATE(0x80C585CC, &lit_3922);
#pragma pop
/* 80C585D0-80C585D4 00006C 0004+00 0/1 0/0 0/0 .rodata @3923 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3923 = 90.0f;
COMPILER_STRIP_GATE(0x80C585D0, &lit_3923);
#pragma pop
/* 80C585D4-80C585D8 000070 0004+00 0/1 0/0 0/0 .rodata @3924 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3924 = 70.0f;
COMPILER_STRIP_GATE(0x80C585D4, &lit_3924);
#pragma pop
/* 80C585D8-80C585DC 000074 0004+00 0/1 0/0 0/0 .rodata @3925 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3925 = 60.0f;
COMPILER_STRIP_GATE(0x80C585D8, &lit_3925);
#pragma pop
/* 80C580A0-80C582FC 0006C0 025C+00 1/1 0/0 0/0 .text Execute__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::Execute() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/Execute__13daLv3Candle_cFv.s"
int daLv3Candle_c::Execute() {
dComIfGp_particle_setSimple(0x100, &mTorchPos, 0xff, g_whiteColor, g_whiteColor, 0, 0.0f);
dComIfGp_particle_setSimple(0x101, &mTorchPos, 0xff, g_whiteColor, g_whiteColor, 0, 0.0f);
dComIfGp_particle_setSimple(0x103, &mTorchPos, 0xff, g_whiteColor, g_whiteColor, 0, 0.0f);
i_mDoAud_seStartLevel(0x80018, &mTorchPos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
if (mSph.ChkTgHit()) {
cCcD_Obj* obj = mSph.GetTgHitObj();
if (obj != NULL) {
bool play_sound = true;
fopAc_ac_c* actor = obj->GetAc();
if (fopAcM_GetName(actor) == PROC_ALINK) {
dCcD_GObjInf* gobj = mSph.GetTgHitGObj();
if (gobj->GetAtType() & AT_TYPE_NORMAL_SWORD && mTgHit != 0) {
play_sound = false;
}
}
if (play_sound) {
u32 se_id = mSph.GetTgHitObjHitSeID(1);
mSound.startCollisionSE(se_id, 9, NULL);
}
}
} else {
mTgHit = 0;
}
mSound.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
setBaseMtx();
cXyz pos = current.pos;
if (mType == 0) {
mSph.SetR(90.0f);
pos.z += 70.0f;
} else {
mSph.SetR(60.0f);
pos.y -= 200.0f;
}
mSph.SetC(pos);
dComIfG_Ccsp()->Set(&mSph);
pointLightProc();
return TRUE;
}
#pragma pop
/* 80C582FC-80C583A0 00091C 00A4+00 1/1 0/0 0/0 .text Draw__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::Draw() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/Draw__13daLv3Candle_cFv.s"
int daLv3Candle_c::Draw() {
g_env_light.settingTevStruct(0x10, &current.pos, &tevStr);
g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr);
dComIfGd_setListBG();
mDoExt_modelUpdateDL(mpModel);
dComIfGd_setList();
return TRUE;
}
#pragma pop
/* 80C583A0-80C58404 0009C0 0064+00 1/1 0/0 0/0 .text Delete__13daLv3Candle_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv3Candle_c::Delete() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/Delete__13daLv3Candle_cFv.s"
int daLv3Candle_c::Delete() {
mSound.deleteObject();
dComIfG_resDelete(&mPhaseReq, l_resNameIdx[mType]);
if (mIsLit) {
dKy_plight_cut(&mLight);
}
return TRUE;
}
#pragma pop
/* 80C58404-80C58424 000A24 0020+00 1/0 0/0 0/0 .text daLv3Candle_Draw__FP13daLv3Candle_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv3Candle_Draw(daLv3Candle_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/daLv3Candle_Draw__FP13daLv3Candle_c.s"
static int daLv3Candle_Draw(daLv3Candle_c* i_this) {
return static_cast<daLv3Candle_c*>(i_this)->Draw();
}
#pragma pop
/* 80C58424-80C58444 000A44 0020+00 1/0 0/0 0/0 .text daLv3Candle_Execute__FP13daLv3Candle_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv3Candle_Execute(daLv3Candle_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/daLv3Candle_Execute__FP13daLv3Candle_c.s"
static int daLv3Candle_Execute(daLv3Candle_c* i_this) {
return static_cast<daLv3Candle_c*>(i_this)->Execute();
}
#pragma pop
/* 80C58444-80C58464 000A64 0020+00 1/0 0/0 0/0 .text daLv3Candle_Delete__FP13daLv3Candle_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv3Candle_Delete(daLv3Candle_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/daLv3Candle_Delete__FP13daLv3Candle_c.s"
static int daLv3Candle_Delete(daLv3Candle_c* i_this) {
return static_cast<daLv3Candle_c*>(i_this)->Delete();
}
#pragma pop
/* 80C58464-80C58484 000A84 0020+00 1/0 0/0 0/0 .text daLv3Candle_Create__FP10fopAc_ac_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv3Candle_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/daLv3Candle_Create__FP10fopAc_ac_c.s"
static int daLv3Candle_Create(fopAc_ac_c* i_this) {
return static_cast<daLv3Candle_c*>(i_this)->create();
}
#pragma pop
/* 80C58484-80C584E0 000AA4 005C+00 2/1 0/0 0/0 .text __dt__17daLv3Candle_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daLv3Candle_HIO_c::~daLv3Candle_HIO_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__dt__17daLv3Candle_HIO_cFv.s"
}
#pragma pop
/* 80C58638-80C58658 -00001 0020+00 1/0 0/0 0/0 .data l_daLv3Candle_Method */
static actor_method_class l_daLv3Candle_Method = {
(process_method_func)daLv3Candle_Create, (process_method_func)daLv3Candle_Delete,
(process_method_func)daLv3Candle_Execute, NULL,
(process_method_func)daLv3Candle_Draw,
};
/* ############################################################################################## */
/* 80C586C0-80C586CC 000008 000C+00 1/1 0/0 0/0 .bss @3623 */
static u8 lit_3623[12];
/* 80C586CC-80C586D4 000014 0008+00 1/1 0/0 0/0 .bss l_HIO */
static u8 l_HIO[8];
/* 80C584E0-80C58550 000B00 0070+00 0/0 1/0 0/0 .text __sinit_d_a_obj_lv3Candle_cpp */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __sinit_d_a_obj_lv3Candle_cpp() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle/__sinit_d_a_obj_lv3Candle_cpp.s"
}
#pragma pop
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80C584E0, __sinit_d_a_obj_lv3Candle_cpp);
#pragma pop
/* 80C585DC-80C585DC 000078 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
/* 80C58658-80C58688 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv3Candle */
extern actor_process_profile_definition g_profile_Obj_Lv3Candle = {
fpcLy_CURRENT_e, // mLayerID
7, // mListID
fpcPi_CURRENT_e, // mListPrio
PROC_Obj_Lv3Candle, // mProcName
&g_fpcLf_Method.mBase, // sub_method
sizeof(daLv3Candle_c), // mSize
0, // mSizeOther
0, // mParameters
&g_fopAc_Method.base, // sub_method
620, // mPriority
&l_daLv3Candle_Method, // sub_method
0x60000, // mStatus
fopAc_ACTOR_e, // mActorType
fopAc_CULLBOX_CUSTOM_e, // cullType
};