Merge pull request #362 from TakaRikka/kytag15

d_a_kytag15 / d_a_tag_mwait OK
This commit is contained in:
hatal175 2023-07-06 10:50:45 +03:00 committed by GitHub
commit d1ee455dd6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 373 additions and 1373 deletions

View File

@ -1,20 +0,0 @@
lbl_80860AF0:
/* 80860AF0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80860AF4 7C 08 02 A6 */ mflr r0
/* 80860AF8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80860AFC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80860B00 7C 7F 1B 79 */ or. r31, r3, r3
/* 80860B04 41 82 00 1C */ beq lbl_80860B20
/* 80860B08 3C A0 80 86 */ lis r5, __vt__12J3DFrameCtrl@ha /* 0x80860BC8@ha */
/* 80860B0C 38 05 0B C8 */ addi r0, r5, __vt__12J3DFrameCtrl@l /* 0x80860BC8@l */
/* 80860B10 90 1F 00 00 */ stw r0, 0(r31)
/* 80860B14 7C 80 07 35 */ extsh. r0, r4
/* 80860B18 40 81 00 08 */ ble lbl_80860B20
/* 80860B1C 4B A6 E2 21 */ bl __dl__FPv
lbl_80860B20:
/* 80860B20 7F E3 FB 78 */ mr r3, r31
/* 80860B24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80860B28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80860B2C 7C 08 03 A6 */ mtlr r0
/* 80860B30 38 21 00 10 */ addi r1, r1, 0x10
/* 80860B34 4E 80 00 20 */ blr

View File

@ -1,89 +0,0 @@
lbl_808609B4:
/* 808609B4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 808609B8 7C 08 02 A6 */ mflr r0
/* 808609BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 808609C0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 808609C4 93 C1 00 08 */ stw r30, 8(r1)
/* 808609C8 7C 7F 1B 78 */ mr r31, r3
/* 808609CC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 808609D0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 808609D4 38 63 4E 00 */ addi r3, r3, 0x4e00
/* 808609D8 3C 80 80 86 */ lis r4, d_a_kytag15__stringBase0@ha /* 0x80860B68@ha */
/* 808609DC 38 84 0B 68 */ addi r4, r4, d_a_kytag15__stringBase0@l /* 0x80860B68@l */
/* 808609E0 38 84 00 08 */ addi r4, r4, 8
/* 808609E4 4B B0 7F B1 */ bl strcmp
/* 808609E8 2C 03 00 00 */ cmpwi r3, 0
/* 808609EC 40 82 00 10 */ bne lbl_808609FC
/* 808609F0 38 00 00 01 */ li r0, 1
/* 808609F4 98 1F 05 8C */ stb r0, 0x58c(r31)
/* 808609F8 48 00 00 0C */ b lbl_80860A04
lbl_808609FC:
/* 808609FC 38 00 00 00 */ li r0, 0
/* 80860A00 98 1F 05 8C */ stb r0, 0x58c(r31)
lbl_80860A04:
/* 80860A04 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 80860A08 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80860A0C 40 82 00 44 */ bne lbl_80860A50
/* 80860A10 28 1F 00 00 */ cmplwi r31, 0
/* 80860A14 41 82 00 30 */ beq lbl_80860A44
/* 80860A18 7F E3 FB 78 */ mr r3, r31
/* 80860A1C 4B 7B 81 49 */ bl __ct__10fopAc_ac_cFv
/* 80860A20 3B DF 05 6C */ addi r30, r31, 0x56c
/* 80860A24 3C 60 80 86 */ lis r3, __vt__12J3DFrameCtrl@ha /* 0x80860BC8@ha */
/* 80860A28 38 03 0B C8 */ addi r0, r3, __vt__12J3DFrameCtrl@l /* 0x80860BC8@l */
/* 80860A2C 90 1F 05 6C */ stw r0, 0x56c(r31)
/* 80860A30 7F C3 F3 78 */ mr r3, r30
/* 80860A34 38 80 00 00 */ li r4, 0
/* 80860A38 4B AC 79 C5 */ bl init__12J3DFrameCtrlFs
/* 80860A3C 38 00 00 00 */ li r0, 0
/* 80860A40 90 1E 00 14 */ stw r0, 0x14(r30)
lbl_80860A44:
/* 80860A44 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 80860A48 60 00 00 08 */ ori r0, r0, 8
/* 80860A4C 90 1F 04 A0 */ stw r0, 0x4a0(r31)
lbl_80860A50:
/* 80860A50 88 1F 05 8C */ lbz r0, 0x58c(r31)
/* 80860A54 28 00 00 00 */ cmplwi r0, 0
/* 80860A58 40 82 00 30 */ bne lbl_80860A88
/* 80860A5C 4B 93 F0 5D */ bl dKy_daynight_check__Fv
/* 80860A60 2C 03 00 00 */ cmpwi r3, 0
/* 80860A64 40 82 00 14 */ bne lbl_80860A78
/* 80860A68 3C 60 80 86 */ lis r3, lit_3845@ha /* 0x80860B58@ha */
/* 80860A6C C0 03 0B 58 */ lfs f0, lit_3845@l(r3) /* 0x80860B58@l */
/* 80860A70 D0 1F 05 90 */ stfs f0, 0x590(r31)
/* 80860A74 48 00 00 20 */ b lbl_80860A94
lbl_80860A78:
/* 80860A78 3C 60 80 86 */ lis r3, lit_3823@ha /* 0x80860B40@ha */
/* 80860A7C C0 03 0B 40 */ lfs f0, lit_3823@l(r3) /* 0x80860B40@l */
/* 80860A80 D0 1F 05 90 */ stfs f0, 0x590(r31)
/* 80860A84 48 00 00 10 */ b lbl_80860A94
lbl_80860A88:
/* 80860A88 3C 60 80 86 */ lis r3, lit_3823@ha /* 0x80860B40@ha */
/* 80860A8C C0 03 0B 40 */ lfs f0, lit_3823@l(r3) /* 0x80860B40@l */
/* 80860A90 D0 1F 05 90 */ stfs f0, 0x590(r31)
lbl_80860A94:
/* 80860A94 38 7F 05 84 */ addi r3, r31, 0x584
/* 80860A98 3C 80 80 86 */ lis r4, d_a_kytag15__stringBase0@ha /* 0x80860B68@ha */
/* 80860A9C 38 84 0B 68 */ addi r4, r4, d_a_kytag15__stringBase0@l /* 0x80860B68@l */
/* 80860AA0 4B 7C C4 1D */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
/* 80860AA4 7C 7E 1B 78 */ mr r30, r3
/* 80860AA8 2C 1E 00 04 */ cmpwi r30, 4
/* 80860AAC 40 82 00 28 */ bne lbl_80860AD4
/* 80860AB0 7F E3 FB 78 */ mr r3, r31
/* 80860AB4 3C 80 80 86 */ lis r4, useHeapInit__FP10fopAc_ac_c@ha /* 0x808608E8@ha */
/* 80860AB8 38 84 08 E8 */ addi r4, r4, useHeapInit__FP10fopAc_ac_c@l /* 0x808608E8@l */
/* 80860ABC 38 A0 00 00 */ li r5, 0
/* 80860AC0 4B 7B 99 F1 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
/* 80860AC4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80860AC8 40 82 00 0C */ bne lbl_80860AD4
/* 80860ACC 38 60 00 05 */ li r3, 5
/* 80860AD0 48 00 00 08 */ b lbl_80860AD8
lbl_80860AD4:
/* 80860AD4 7F C3 F3 78 */ mr r3, r30
lbl_80860AD8:
/* 80860AD8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80860ADC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80860AE0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80860AE4 7C 08 03 A6 */ mtlr r0
/* 80860AE8 38 21 00 10 */ addi r1, r1, 0x10
/* 80860AEC 4E 80 00 20 */ blr

View File

@ -1,13 +0,0 @@
lbl_808608B8:
/* 808608B8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 808608BC 7C 08 02 A6 */ mflr r0
/* 808608C0 90 01 00 14 */ stw r0, 0x14(r1)
/* 808608C4 3C 80 80 86 */ lis r4, d_a_kytag15__stringBase0@ha /* 0x80860B68@ha */
/* 808608C8 38 84 0B 68 */ addi r4, r4, d_a_kytag15__stringBase0@l /* 0x80860B68@l */
/* 808608CC 38 63 05 84 */ addi r3, r3, 0x584
/* 808608D0 4B 7C C7 39 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 808608D4 38 60 00 01 */ li r3, 1
/* 808608D8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 808608DC 7C 08 03 A6 */ mtlr r0
/* 808608E0 38 21 00 10 */ addi r1, r1, 0x10
/* 808608E4 4E 80 00 20 */ blr

View File

@ -1,116 +0,0 @@
lbl_80860638:
/* 80860638 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8086063C 7C 08 02 A6 */ mflr r0
/* 80860640 90 01 00 44 */ stw r0, 0x44(r1)
/* 80860644 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80860648 93 C1 00 38 */ stw r30, 0x38(r1)
/* 8086064C 7C 7F 1B 78 */ mr r31, r3
/* 80860650 3C 60 80 86 */ lis r3, lit_3823@ha /* 0x80860B40@ha */
/* 80860654 3B C3 0B 40 */ addi r30, r3, lit_3823@l /* 0x80860B40@l */
/* 80860658 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 8086065C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80860660 C0 3E 00 00 */ lfs f1, 0(r30)
/* 80860664 FC 40 08 90 */ fmr f2, f1
/* 80860668 FC 60 08 90 */ fmr f3, f1
/* 8086066C 4B AE 62 7D */ bl PSMTXTrans
/* 80860670 C0 1E 00 04 */ lfs f0, 4(r30)
/* 80860674 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80860678 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 8086067C D0 01 00 18 */ stfs f0, 0x18(r1)
/* 80860680 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 80860684 28 03 00 00 */ cmplwi r3, 0
/* 80860688 41 82 01 54 */ beq lbl_808607DC
/* 8086068C C0 3F 05 90 */ lfs f1, 0x590(r31)
/* 80860690 C0 1E 00 00 */ lfs f0, 0(r30)
/* 80860694 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80860698 40 81 01 44 */ ble lbl_808607DC
/* 8086069C 80 63 00 04 */ lwz r3, 4(r3)
/* 808606A0 80 63 00 60 */ lwz r3, 0x60(r3)
/* 808606A4 80 63 00 00 */ lwz r3, 0(r3)
/* 808606A8 38 00 00 00 */ li r0, 0
/* 808606AC B0 01 00 0C */ sth r0, 0xc(r1)
/* 808606B0 B0 01 00 0A */ sth r0, 0xa(r1)
/* 808606B4 B0 01 00 08 */ sth r0, 8(r1)
/* 808606B8 38 00 FF 4C */ li r0, -180
/* 808606BC B0 01 00 0E */ sth r0, 0xe(r1)
/* 808606C0 88 1F 05 8C */ lbz r0, 0x58c(r31)
/* 808606C4 28 00 00 01 */ cmplwi r0, 1
/* 808606C8 40 82 00 0C */ bne lbl_808606D4
/* 808606CC 38 00 FF 9C */ li r0, -100
/* 808606D0 B0 01 00 0E */ sth r0, 0xe(r1)
lbl_808606D4:
/* 808606D4 C0 7E 00 08 */ lfs f3, 8(r30)
/* 808606D8 C0 5E 00 0C */ lfs f2, 0xc(r30)
/* 808606DC A8 01 00 0E */ lha r0, 0xe(r1)
/* 808606E0 C8 3E 00 10 */ lfd f1, 0x10(r30)
/* 808606E4 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 808606E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 808606EC 3C 00 43 30 */ lis r0, 0x4330
/* 808606F0 90 01 00 20 */ stw r0, 0x20(r1)
/* 808606F4 C8 01 00 20 */ lfd f0, 0x20(r1)
/* 808606F8 EC 00 08 28 */ fsubs f0, f0, f1
/* 808606FC EC 22 00 2A */ fadds f1, f2, f0
/* 80860700 C0 1F 05 90 */ lfs f0, 0x590(r31)
/* 80860704 EC 01 00 32 */ fmuls f0, f1, f0
/* 80860708 EC 03 00 2A */ fadds f0, f3, f0
/* 8086070C FC 00 00 1E */ fctiwz f0, f0
/* 80860710 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 80860714 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80860718 B0 01 00 0E */ sth r0, 0xe(r1)
/* 8086071C 80 63 00 2C */ lwz r3, 0x2c(r3)
/* 80860720 38 80 00 00 */ li r4, 0
/* 80860724 38 A1 00 08 */ addi r5, r1, 8
/* 80860728 81 83 00 00 */ lwz r12, 0(r3)
/* 8086072C 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 80860730 7D 89 03 A6 */ mtctr r12
/* 80860734 4E 80 04 21 */ bctrl
/* 80860738 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 8086073C C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80860740 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 80860744 C0 01 00 14 */ lfs f0, 0x14(r1)
/* 80860748 D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 8086074C C0 01 00 18 */ lfs f0, 0x18(r1)
/* 80860750 D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80860754 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80860758 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 8086075C 80 9F 05 68 */ lwz r4, 0x568(r31)
/* 80860760 38 84 00 24 */ addi r4, r4, 0x24
/* 80860764 4B AE 5D 4D */ bl PSMTXCopy
/* 80860768 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 8086076C 80 83 00 04 */ lwz r4, 4(r3)
/* 80860770 C0 3F 05 7C */ lfs f1, 0x57c(r31)
/* 80860774 38 7F 05 6C */ addi r3, r31, 0x56c
/* 80860778 38 84 00 58 */ addi r4, r4, 0x58
/* 8086077C 4B 7A CF 5D */ bl entry__13mDoExt_btkAnmFP16J3DMaterialTablef
/* 80860780 38 7F 05 6C */ addi r3, r31, 0x56c
/* 80860784 4B 7A CC A5 */ bl play__14mDoExt_baseAnmFv
/* 80860788 88 1F 05 8C */ lbz r0, 0x58c(r31)
/* 8086078C 28 00 00 01 */ cmplwi r0, 1
/* 80860790 40 82 00 0C */ bne lbl_8086079C
/* 80860794 38 7F 05 6C */ addi r3, r31, 0x56c
/* 80860798 4B 7A CC 91 */ bl play__14mDoExt_baseAnmFv
lbl_8086079C:
/* 8086079C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 808607A0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 808607A4 80 03 5F AC */ lwz r0, 0x5fac(r3)
/* 808607A8 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */
/* 808607AC 3B C3 4A C8 */ addi r30, r3, j3dSys@l /* 0x80434AC8@l */
/* 808607B0 90 1E 00 4C */ stw r0, 0x4c(r30)
/* 808607B4 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 808607B8 4B 7A D5 0D */ bl mDoExt_modelUpdateDL__FP8J3DModel
/* 808607BC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 808607C0 38 83 61 C0 */ addi r4, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 808607C4 80 04 5F 80 */ lwz r0, 0x5f80(r4)
/* 808607C8 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */
/* 808607CC 38 63 4A C8 */ addi r3, r3, j3dSys@l /* 0x80434AC8@l */
/* 808607D0 90 03 00 48 */ stw r0, 0x48(r3)
/* 808607D4 80 04 5F 84 */ lwz r0, 0x5f84(r4)
/* 808607D8 90 1E 00 4C */ stw r0, 0x4c(r30)
lbl_808607DC:
/* 808607DC 38 60 00 01 */ li r3, 1
/* 808607E0 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 808607E4 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 808607E8 80 01 00 44 */ lwz r0, 0x44(r1)
/* 808607EC 7C 08 03 A6 */ mtlr r0
/* 808607F0 38 21 00 40 */ addi r1, r1, 0x40
/* 808607F4 4E 80 00 20 */ blr

View File

@ -1,50 +0,0 @@
lbl_808607F8:
/* 808607F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 808607FC 7C 08 02 A6 */ mflr r0
/* 80860800 90 01 00 14 */ stw r0, 0x14(r1)
/* 80860804 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80860808 93 C1 00 08 */ stw r30, 8(r1)
/* 8086080C 7C 7E 1B 78 */ mr r30, r3
/* 80860810 3C 60 80 86 */ lis r3, lit_3823@ha /* 0x80860B40@ha */
/* 80860814 3B E3 0B 40 */ addi r31, r3, lit_3823@l /* 0x80860B40@l */
/* 80860818 88 1E 05 8C */ lbz r0, 0x58c(r30)
/* 8086081C 28 00 00 00 */ cmplwi r0, 0
/* 80860820 40 82 00 48 */ bne lbl_80860868
/* 80860824 4B 93 F2 95 */ bl dKy_daynight_check__Fv
/* 80860828 2C 03 00 00 */ cmpwi r3, 0
/* 8086082C 40 82 00 20 */ bne lbl_8086084C
/* 80860830 38 7E 05 90 */ addi r3, r30, 0x590
/* 80860834 C0 3F 00 18 */ lfs f1, 0x18(r31)
/* 80860838 C0 5F 00 1C */ lfs f2, 0x1c(r31)
/* 8086083C C0 7F 00 20 */ lfs f3, 0x20(r31)
/* 80860840 C0 9F 00 24 */ lfs f4, 0x24(r31)
/* 80860844 4B A0 F1 39 */ bl cLib_addCalc__FPfffff
/* 80860848 48 00 00 4C */ b lbl_80860894
lbl_8086084C:
/* 8086084C 38 7E 05 90 */ addi r3, r30, 0x590
/* 80860850 C0 3F 00 00 */ lfs f1, 0(r31)
/* 80860854 C0 5F 00 1C */ lfs f2, 0x1c(r31)
/* 80860858 C0 7F 00 20 */ lfs f3, 0x20(r31)
/* 8086085C C0 9F 00 24 */ lfs f4, 0x24(r31)
/* 80860860 4B A0 F1 1D */ bl cLib_addCalc__FPfffff
/* 80860864 48 00 00 30 */ b lbl_80860894
lbl_80860868:
/* 80860868 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 8086086C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80860870 88 03 12 C2 */ lbz r0, 0x12c2(r3)
/* 80860874 28 00 00 0B */ cmplwi r0, 0xb
/* 80860878 40 82 00 1C */ bne lbl_80860894
/* 8086087C 38 7E 05 90 */ addi r3, r30, 0x590
/* 80860880 C0 3F 00 18 */ lfs f1, 0x18(r31)
/* 80860884 C0 5F 00 1C */ lfs f2, 0x1c(r31)
/* 80860888 C0 7F 00 20 */ lfs f3, 0x20(r31)
/* 8086088C C0 9F 00 24 */ lfs f4, 0x24(r31)
/* 80860890 4B A0 F0 ED */ bl cLib_addCalc__FPfffff
lbl_80860894:
/* 80860894 38 60 00 01 */ li r3, 1
/* 80860898 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8086089C 83 C1 00 08 */ lwz r30, 8(r1)
/* 808608A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 808608A4 7C 08 03 A6 */ mtlr r0
/* 808608A8 38 21 00 10 */ addi r1, r1, 0x10
/* 808608AC 4E 80 00 20 */ blr

View File

@ -1,54 +0,0 @@
lbl_808608E8:
/* 808608E8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 808608EC 7C 08 02 A6 */ mflr r0
/* 808608F0 90 01 00 24 */ stw r0, 0x24(r1)
/* 808608F4 39 61 00 20 */ addi r11, r1, 0x20
/* 808608F8 4B B0 18 E5 */ bl _savegpr_29
/* 808608FC 7C 7D 1B 78 */ mr r29, r3
/* 80860900 3C 60 80 86 */ lis r3, d_a_kytag15__stringBase0@ha /* 0x80860B68@ha */
/* 80860904 38 63 0B 68 */ addi r3, r3, d_a_kytag15__stringBase0@l /* 0x80860B68@l */
/* 80860908 38 80 00 04 */ li r4, 4
/* 8086090C 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80860910 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80860914 3F C5 00 02 */ addis r30, r5, 2
/* 80860918 3B DE C2 F8 */ addi r30, r30, -15624
/* 8086091C 7F C5 F3 78 */ mr r5, r30
/* 80860920 38 C0 00 80 */ li r6, 0x80
/* 80860924 4B 7D B9 C9 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80860928 7C 7F 1B 78 */ mr r31, r3
/* 8086092C 3C 80 00 08 */ lis r4, 8
/* 80860930 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000284@ha */
/* 80860934 38 A5 02 84 */ addi r5, r5, 0x0284 /* 0x11000284@l */
/* 80860938 4B 7B 43 1D */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
/* 8086093C 90 7D 05 68 */ stw r3, 0x568(r29)
/* 80860940 80 1D 05 68 */ lwz r0, 0x568(r29)
/* 80860944 28 00 00 00 */ cmplwi r0, 0
/* 80860948 40 82 00 0C */ bne lbl_80860954
/* 8086094C 38 60 00 00 */ li r3, 0
/* 80860950 48 00 00 4C */ b lbl_8086099C
lbl_80860954:
/* 80860954 3C 60 80 86 */ lis r3, d_a_kytag15__stringBase0@ha /* 0x80860B68@ha */
/* 80860958 38 63 0B 68 */ addi r3, r3, d_a_kytag15__stringBase0@l /* 0x80860B68@l */
/* 8086095C 38 80 00 07 */ li r4, 7
/* 80860960 7F C5 F3 78 */ mr r5, r30
/* 80860964 38 C0 00 80 */ li r6, 0x80
/* 80860968 4B 7D B9 85 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 8086096C 7C 65 1B 78 */ mr r5, r3
/* 80860970 38 7D 05 6C */ addi r3, r29, 0x56c
/* 80860974 38 9F 00 58 */ addi r4, r31, 0x58
/* 80860978 38 C0 00 01 */ li r6, 1
/* 8086097C 38 E0 00 02 */ li r7, 2
/* 80860980 3D 00 80 86 */ lis r8, lit_3845@ha /* 0x80860B58@ha */
/* 80860984 C0 28 0B 58 */ lfs f1, lit_3845@l(r8) /* 0x80860B58@l */
/* 80860988 39 00 00 00 */ li r8, 0
/* 8086098C 39 20 FF FF */ li r9, -1
/* 80860990 4B 7A CC AD */ bl init__13mDoExt_btkAnmFP16J3DMaterialTableP19J3DAnmTextureSRTKeyiifss
/* 80860994 30 03 FF FF */ addic r0, r3, -1
/* 80860998 7C 60 19 10 */ subfe r3, r0, r3
lbl_8086099C:
/* 8086099C 39 61 00 20 */ addi r11, r1, 0x20
/* 808609A0 4B B0 18 89 */ bl _restgpr_29
/* 808609A4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 808609A8 7C 08 03 A6 */ mtlr r0
/* 808609AC 38 21 00 20 */ addi r1, r1, 0x20
/* 808609B0 4E 80 00 20 */ blr

View File

@ -1,27 +0,0 @@
lbl_80D5C01C:
/* 80D5C01C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5C020 7C 08 02 A6 */ mflr r0
/* 80D5C024 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5C028 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D5C02C 93 C1 00 08 */ stw r30, 8(r1)
/* 80D5C030 7C 7E 1B 79 */ or. r30, r3, r3
/* 80D5C034 7C 9F 23 78 */ mr r31, r4
/* 80D5C038 41 82 00 2C */ beq lbl_80D5C064
/* 80D5C03C 38 7E 05 80 */ addi r3, r30, 0x580
/* 80D5C040 38 80 FF FF */ li r4, -1
/* 80D5C044 4B 4E DF 05 */ bl __dt__10dMsgFlow_cFv
/* 80D5C048 7F C3 F3 78 */ mr r3, r30
/* 80D5C04C 38 80 00 00 */ li r4, 0
/* 80D5C050 4B 2B CC 3D */ bl __dt__10fopAc_ac_cFv
/* 80D5C054 7F E0 07 35 */ extsh. r0, r31
/* 80D5C058 40 81 00 0C */ ble lbl_80D5C064
/* 80D5C05C 7F C3 F3 78 */ mr r3, r30
/* 80D5C060 4B 57 2C DD */ bl __dl__FPv
lbl_80D5C064:
/* 80D5C064 7F C3 F3 78 */ mr r3, r30
/* 80D5C068 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D5C06C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D5C070 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5C074 7C 08 03 A6 */ mtlr r0
/* 80D5C078 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5C07C 4E 80 00 20 */ blr

View File

@ -1,133 +0,0 @@
lbl_80D5BE18:
/* 80D5BE18 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80D5BE1C 7C 08 02 A6 */ mflr r0
/* 80D5BE20 90 01 00 24 */ stw r0, 0x24(r1)
/* 80D5BE24 39 61 00 20 */ addi r11, r1, 0x20
/* 80D5BE28 4B 60 63 B5 */ bl _savegpr_29
/* 80D5BE2C 7C 7E 1B 78 */ mr r30, r3
/* 80D5BE30 3C 80 80 D6 */ lis r4, lit_3841@ha /* 0x80D5C580@ha */
/* 80D5BE34 3B E4 C5 80 */ addi r31, r4, lit_3841@l /* 0x80D5C580@l */
/* 80D5BE38 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80D5BE3C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80D5BE40 40 82 00 28 */ bne lbl_80D5BE68
/* 80D5BE44 7F C0 F3 79 */ or. r0, r30, r30
/* 80D5BE48 41 82 00 14 */ beq lbl_80D5BE5C
/* 80D5BE4C 7C 1D 03 78 */ mr r29, r0
/* 80D5BE50 4B 2B CD 15 */ bl __ct__10fopAc_ac_cFv
/* 80D5BE54 38 7D 05 80 */ addi r3, r29, 0x580
/* 80D5BE58 4B 4E E0 A9 */ bl __ct__10dMsgFlow_cFv
lbl_80D5BE5C:
/* 80D5BE5C 80 1E 04 A0 */ lwz r0, 0x4a0(r30)
/* 80D5BE60 60 00 00 08 */ ori r0, r0, 8
/* 80D5BE64 90 1E 04 A0 */ stw r0, 0x4a0(r30)
lbl_80D5BE68:
/* 80D5BE68 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D5BE6C 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f
/* 80D5BE70 98 1E 05 69 */ stb r0, 0x569(r30)
/* 80D5BE74 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5BE78 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5BE7C 88 9E 05 69 */ lbz r4, 0x569(r30)
/* 80D5BE80 88 1E 04 BA */ lbz r0, 0x4ba(r30)
/* 80D5BE84 7C 05 07 74 */ extsb r5, r0
/* 80D5BE88 4B 2D 94 D9 */ bl isSwitch__10dSv_info_cCFii
/* 80D5BE8C 2C 03 00 00 */ cmpwi r3, 0
/* 80D5BE90 41 82 00 0C */ beq lbl_80D5BE9C
/* 80D5BE94 38 60 00 05 */ li r3, 5
/* 80D5BE98 48 00 01 4C */ b lbl_80D5BFE4
lbl_80D5BE9C:
/* 80D5BE9C 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D5BEA0 98 1E 05 68 */ stb r0, 0x568(r30)
/* 80D5BEA4 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D5BEA8 54 00 86 3F */ rlwinm. r0, r0, 0x10, 0x18, 0x1f
/* 80D5BEAC 41 82 00 0C */ beq lbl_80D5BEB8
/* 80D5BEB0 28 00 00 FF */ cmplwi r0, 0xff
/* 80D5BEB4 40 82 00 10 */ bne lbl_80D5BEC4
lbl_80D5BEB8:
/* 80D5BEB8 C0 1F 00 00 */ lfs f0, 0(r31)
/* 80D5BEBC D0 1E 05 70 */ stfs f0, 0x570(r30)
/* 80D5BEC0 48 00 00 2C */ b lbl_80D5BEEC
lbl_80D5BEC4:
/* 80D5BEC4 C0 5F 00 04 */ lfs f2, 4(r31)
/* 80D5BEC8 7C 00 01 D6 */ mullw r0, r0, r0
/* 80D5BECC C8 3F 00 18 */ lfd f1, 0x18(r31)
/* 80D5BED0 90 01 00 0C */ stw r0, 0xc(r1)
/* 80D5BED4 3C 00 43 30 */ lis r0, 0x4330
/* 80D5BED8 90 01 00 08 */ stw r0, 8(r1)
/* 80D5BEDC C8 01 00 08 */ lfd f0, 8(r1)
/* 80D5BEE0 EC 00 08 28 */ fsubs f0, f0, f1
/* 80D5BEE4 EC 02 00 32 */ fmuls f0, f2, f0
/* 80D5BEE8 D0 1E 05 70 */ stfs f0, 0x570(r30)
lbl_80D5BEEC:
/* 80D5BEEC A8 1E 04 E4 */ lha r0, 0x4e4(r30)
/* 80D5BEF0 54 00 07 3E */ clrlwi r0, r0, 0x1c
/* 80D5BEF4 98 1E 05 6B */ stb r0, 0x56b(r30)
/* 80D5BEF8 88 1E 05 6B */ lbz r0, 0x56b(r30)
/* 80D5BEFC 28 00 00 02 */ cmplwi r0, 2
/* 80D5BF00 41 80 00 0C */ blt lbl_80D5BF0C
/* 80D5BF04 38 00 00 00 */ li r0, 0
/* 80D5BF08 98 1E 05 6B */ stb r0, 0x56b(r30)
lbl_80D5BF0C:
/* 80D5BF0C A8 1E 04 E4 */ lha r0, 0x4e4(r30)
/* 80D5BF10 54 00 E7 3E */ rlwinm r0, r0, 0x1c, 0x1c, 0x1f
/* 80D5BF14 98 1E 05 6D */ stb r0, 0x56d(r30)
/* 80D5BF18 88 1E 05 6D */ lbz r0, 0x56d(r30)
/* 80D5BF1C 28 00 00 02 */ cmplwi r0, 2
/* 80D5BF20 41 80 00 0C */ blt lbl_80D5BF2C
/* 80D5BF24 38 00 00 00 */ li r0, 0
/* 80D5BF28 98 1E 05 6D */ stb r0, 0x56d(r30)
lbl_80D5BF2C:
/* 80D5BF2C 38 7E 04 EC */ addi r3, r30, 0x4ec
/* 80D5BF30 7C 64 1B 78 */ mr r4, r3
/* 80D5BF34 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5BF38 4B 5E B1 A1 */ bl PSVECScale
/* 80D5BF3C 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D5BF40 54 00 46 3F */ rlwinm. r0, r0, 8, 0x18, 0x1f
/* 80D5BF44 41 82 00 0C */ beq lbl_80D5BF50
/* 80D5BF48 28 00 00 FF */ cmplwi r0, 0xff
/* 80D5BF4C 40 82 00 08 */ bne lbl_80D5BF54
lbl_80D5BF50:
/* 80D5BF50 38 00 00 00 */ li r0, 0
lbl_80D5BF54:
/* 80D5BF54 C0 9E 04 D8 */ lfs f4, 0x4d8(r30)
/* 80D5BF58 C0 7E 04 D4 */ lfs f3, 0x4d4(r30)
/* 80D5BF5C C0 5F 00 08 */ lfs f2, 8(r31)
/* 80D5BF60 C8 3F 00 18 */ lfd f1, 0x18(r31)
/* 80D5BF64 90 01 00 0C */ stw r0, 0xc(r1)
/* 80D5BF68 3C 00 43 30 */ lis r0, 0x4330
/* 80D5BF6C 90 01 00 08 */ stw r0, 8(r1)
/* 80D5BF70 C8 01 00 08 */ lfd f0, 8(r1)
/* 80D5BF74 EC 00 08 28 */ fsubs f0, f0, f1
/* 80D5BF78 EC 02 00 32 */ fmuls f0, f2, f0
/* 80D5BF7C EC 23 00 2A */ fadds f1, f3, f0
/* 80D5BF80 C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
/* 80D5BF84 D0 1E 05 74 */ stfs f0, 0x574(r30)
/* 80D5BF88 D0 3E 05 78 */ stfs f1, 0x578(r30)
/* 80D5BF8C D0 9E 05 7C */ stfs f4, 0x57c(r30)
/* 80D5BF90 C0 5E 05 7C */ lfs f2, 0x57c(r30)
/* 80D5BF94 C0 3F 00 0C */ lfs f1, 0xc(r31)
/* 80D5BF98 C0 1E 05 78 */ lfs f0, 0x578(r30)
/* 80D5BF9C EC 21 00 2A */ fadds f1, f1, f0
/* 80D5BFA0 C0 1E 05 74 */ lfs f0, 0x574(r30)
/* 80D5BFA4 D0 1E 05 50 */ stfs f0, 0x550(r30)
/* 80D5BFA8 D0 3E 05 54 */ stfs f1, 0x554(r30)
/* 80D5BFAC D0 5E 05 58 */ stfs f2, 0x558(r30)
/* 80D5BFB0 C0 5E 05 7C */ lfs f2, 0x57c(r30)
/* 80D5BFB4 C0 3F 00 10 */ lfs f1, 0x10(r31)
/* 80D5BFB8 C0 1E 05 78 */ lfs f0, 0x578(r30)
/* 80D5BFBC EC 21 00 2A */ fadds f1, f1, f0
/* 80D5BFC0 C0 1E 05 74 */ lfs f0, 0x574(r30)
/* 80D5BFC4 D0 1E 05 38 */ stfs f0, 0x538(r30)
/* 80D5BFC8 D0 3E 05 3C */ stfs f1, 0x53c(r30)
/* 80D5BFCC D0 5E 05 40 */ stfs f2, 0x540(r30)
/* 80D5BFD0 38 00 00 36 */ li r0, 0x36
/* 80D5BFD4 98 1E 05 45 */ stb r0, 0x545(r30)
/* 80D5BFD8 38 00 00 00 */ li r0, 0
/* 80D5BFDC 90 1E 05 5C */ stw r0, 0x55c(r30)
/* 80D5BFE0 38 60 00 04 */ li r3, 4
lbl_80D5BFE4:
/* 80D5BFE4 39 61 00 20 */ addi r11, r1, 0x20
/* 80D5BFE8 4B 60 62 41 */ bl _restgpr_29
/* 80D5BFEC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80D5BFF0 7C 08 03 A6 */ mtlr r0
/* 80D5BFF4 38 21 00 20 */ addi r1, r1, 0x20
/* 80D5BFF8 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5BFFC:
/* 80D5BFFC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5C000 7C 08 02 A6 */ mflr r0
/* 80D5C004 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5C008 4B FF FE 11 */ bl create__12daTagMwait_cFv
/* 80D5C00C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5C010 7C 08 03 A6 */ mtlr r0
/* 80D5C014 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5C018 4E 80 00 20 */ blr

View File

@ -1,11 +0,0 @@
lbl_80D5C080:
/* 80D5C080 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5C084 7C 08 02 A6 */ mflr r0
/* 80D5C088 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5C08C 38 80 FF FF */ li r4, -1
/* 80D5C090 4B FF FF 8D */ bl __dt__12daTagMwait_cFv
/* 80D5C094 38 60 00 01 */ li r3, 1
/* 80D5C098 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5C09C 7C 08 03 A6 */ mtlr r0
/* 80D5C0A0 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5C0A4 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5C550:
/* 80D5C550 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5C554 7C 08 02 A6 */ mflr r0
/* 80D5C558 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5C55C 4B FF FB 4D */ bl execute__12daTagMwait_cFv
/* 80D5C560 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5C564 7C 08 03 A6 */ mtlr r0
/* 80D5C568 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5C56C 4E 80 00 20 */ blr

View File

@ -1,322 +0,0 @@
lbl_80D5C0A8:
/* 80D5C0A8 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80D5C0AC 7C 08 02 A6 */ mflr r0
/* 80D5C0B0 90 01 00 54 */ stw r0, 0x54(r1)
/* 80D5C0B4 DB E1 00 40 */ stfd f31, 0x40(r1)
/* 80D5C0B8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0 /* qr0 */
/* 80D5C0BC 39 61 00 40 */ addi r11, r1, 0x40
/* 80D5C0C0 4B 60 61 19 */ bl _savegpr_28
/* 80D5C0C4 7C 7C 1B 78 */ mr r28, r3
/* 80D5C0C8 3C 80 80 D6 */ lis r4, lit_3841@ha /* 0x80D5C580@ha */
/* 80D5C0CC 3B E4 C5 80 */ addi r31, r4, lit_3841@l /* 0x80D5C580@l */
/* 80D5C0D0 3C 80 80 45 */ lis r4, m_midnaActor__9daPy_py_c@ha /* 0x80451018@ha */
/* 80D5C0D4 83 A4 10 18 */ lwz r29, m_midnaActor__9daPy_py_c@l(r4) /* 0x80451018@l */
/* 80D5C0D8 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5C0DC 38 A4 61 C0 */ addi r5, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5C0E0 83 C5 5D B4 */ lwz r30, 0x5db4(r5)
/* 80D5C0E4 28 1D 00 00 */ cmplwi r29, 0
/* 80D5C0E8 40 82 00 0C */ bne lbl_80D5C0F4
/* 80D5C0EC 38 60 00 01 */ li r3, 1
/* 80D5C0F0 48 00 04 40 */ b lbl_80D5C530
lbl_80D5C0F4:
/* 80D5C0F4 38 80 00 00 */ li r4, 0
/* 80D5C0F8 90 9C 05 5C */ stw r4, 0x55c(r28)
/* 80D5C0FC A0 1C 00 F8 */ lhz r0, 0xf8(r28)
/* 80D5C100 28 00 00 01 */ cmplwi r0, 1
/* 80D5C104 40 82 00 98 */ bne lbl_80D5C19C
/* 80D5C108 88 1C 05 6C */ lbz r0, 0x56c(r28)
/* 80D5C10C 28 00 00 00 */ cmplwi r0, 0
/* 80D5C110 41 82 00 10 */ beq lbl_80D5C120
/* 80D5C114 A0 1D 05 E4 */ lhz r0, 0x5e4(r29)
/* 80D5C118 28 00 01 CA */ cmplwi r0, 0x1ca
/* 80D5C11C 41 82 04 10 */ beq lbl_80D5C52C
lbl_80D5C120:
/* 80D5C120 88 1C 05 6A */ lbz r0, 0x56a(r28)
/* 80D5C124 28 00 00 00 */ cmplwi r0, 0
/* 80D5C128 40 82 00 2C */ bne lbl_80D5C154
/* 80D5C12C 38 7C 05 80 */ addi r3, r28, 0x580
/* 80D5C130 7F 84 E3 78 */ mr r4, r28
/* 80D5C134 A8 1C 04 E8 */ lha r0, 0x4e8(r28)
/* 80D5C138 54 05 04 3E */ clrlwi r5, r0, 0x10
/* 80D5C13C 38 C0 00 00 */ li r6, 0
/* 80D5C140 38 E0 00 00 */ li r7, 0
/* 80D5C144 4B 4E DE 4D */ bl init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c
/* 80D5C148 38 00 00 01 */ li r0, 1
/* 80D5C14C 98 1C 05 6A */ stb r0, 0x56a(r28)
/* 80D5C150 48 00 03 DC */ b lbl_80D5C52C
lbl_80D5C154:
/* 80D5C154 38 7C 05 80 */ addi r3, r28, 0x580
/* 80D5C158 7F 84 E3 78 */ mr r4, r28
/* 80D5C15C 38 A0 00 00 */ li r5, 0
/* 80D5C160 38 C0 00 00 */ li r6, 0
/* 80D5C164 4B 4E E1 75 */ bl doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci
/* 80D5C168 2C 03 00 00 */ cmpwi r3, 0
/* 80D5C16C 41 82 03 C0 */ beq lbl_80D5C52C
/* 80D5C170 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5C174 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5C178 38 63 4E C8 */ addi r3, r3, 0x4ec8
/* 80D5C17C 4B 2E 62 ED */ bl reset__14dEvt_control_cFv
/* 80D5C180 88 1C 05 6C */ lbz r0, 0x56c(r28)
/* 80D5C184 28 00 00 00 */ cmplwi r0, 0
/* 80D5C188 41 82 03 A4 */ beq lbl_80D5C52C
/* 80D5C18C 7F 83 E3 78 */ mr r3, r28
/* 80D5C190 4B 2B DA ED */ bl fopAcM_delete__FP10fopAc_ac_c
/* 80D5C194 38 60 00 01 */ li r3, 1
/* 80D5C198 48 00 03 98 */ b lbl_80D5C530
lbl_80D5C19C:
/* 80D5C19C 88 1C 05 6C */ lbz r0, 0x56c(r28)
/* 80D5C1A0 28 00 00 00 */ cmplwi r0, 0
/* 80D5C1A4 41 82 00 50 */ beq lbl_80D5C1F4
/* 80D5C1A8 38 80 00 00 */ li r4, 0
/* 80D5C1AC 38 A0 00 00 */ li r5, 0
/* 80D5C1B0 4B 2B EF ED */ bl fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs
/* 80D5C1B4 A0 1C 00 FA */ lhz r0, 0xfa(r28)
/* 80D5C1B8 60 00 00 01 */ ori r0, r0, 1
/* 80D5C1BC B0 1C 00 FA */ sth r0, 0xfa(r28)
/* 80D5C1C0 C0 1D 05 50 */ lfs f0, 0x550(r29)
/* 80D5C1C4 D0 1C 05 50 */ stfs f0, 0x550(r28)
/* 80D5C1C8 C0 1D 05 54 */ lfs f0, 0x554(r29)
/* 80D5C1CC D0 1C 05 54 */ stfs f0, 0x554(r28)
/* 80D5C1D0 C0 1D 05 58 */ lfs f0, 0x558(r29)
/* 80D5C1D4 D0 1C 05 58 */ stfs f0, 0x558(r28)
/* 80D5C1D8 C0 1C 05 50 */ lfs f0, 0x550(r28)
/* 80D5C1DC D0 1C 05 38 */ stfs f0, 0x538(r28)
/* 80D5C1E0 C0 1C 05 54 */ lfs f0, 0x554(r28)
/* 80D5C1E4 D0 1C 05 3C */ stfs f0, 0x53c(r28)
/* 80D5C1E8 C0 1C 05 58 */ lfs f0, 0x558(r28)
/* 80D5C1EC D0 1C 05 40 */ stfs f0, 0x540(r28)
/* 80D5C1F0 48 00 03 3C */ b lbl_80D5C52C
lbl_80D5C1F4:
/* 80D5C1F4 98 9C 05 6A */ stb r4, 0x56a(r28)
/* 80D5C1F8 80 65 5D B4 */ lwz r3, 0x5db4(r5)
/* 80D5C1FC 80 03 05 74 */ lwz r0, 0x574(r3)
/* 80D5C200 54 00 01 8D */ rlwinm. r0, r0, 0, 6, 6
/* 80D5C204 41 82 03 28 */ beq lbl_80D5C52C
/* 80D5C208 28 1D 00 00 */ cmplwi r29, 0
/* 80D5C20C 41 82 03 20 */ beq lbl_80D5C52C
/* 80D5C210 7C A3 2B 78 */ mr r3, r5
/* 80D5C214 88 9C 05 68 */ lbz r4, 0x568(r28)
/* 80D5C218 88 1C 04 BA */ lbz r0, 0x4ba(r28)
/* 80D5C21C 7C 05 07 74 */ extsb r5, r0
/* 80D5C220 4B 2D 91 41 */ bl isSwitch__10dSv_info_cCFii
/* 80D5C224 2C 03 00 00 */ cmpwi r3, 0
/* 80D5C228 41 82 03 04 */ beq lbl_80D5C52C
/* 80D5C22C 88 1C 05 6B */ lbz r0, 0x56b(r28)
/* 80D5C230 28 00 00 01 */ cmplwi r0, 1
/* 80D5C234 40 82 00 38 */ bne lbl_80D5C26C
/* 80D5C238 C0 1C 05 74 */ lfs f0, 0x574(r28)
/* 80D5C23C D0 1D 09 AC */ stfs f0, 0x9ac(r29)
/* 80D5C240 C0 1C 05 78 */ lfs f0, 0x578(r28)
/* 80D5C244 D0 1D 09 B0 */ stfs f0, 0x9b0(r29)
/* 80D5C248 C0 1C 05 7C */ lfs f0, 0x57c(r28)
/* 80D5C24C D0 1D 09 B4 */ stfs f0, 0x9b4(r29)
/* 80D5C250 80 1D 08 90 */ lwz r0, 0x890(r29)
/* 80D5C254 60 00 04 00 */ ori r0, r0, 0x400
/* 80D5C258 90 1D 08 90 */ stw r0, 0x890(r29)
/* 80D5C25C 80 1D 08 98 */ lwz r0, 0x898(r29)
/* 80D5C260 60 00 00 02 */ ori r0, r0, 2
/* 80D5C264 90 1D 08 98 */ stw r0, 0x898(r29)
/* 80D5C268 48 00 00 28 */ b lbl_80D5C290
lbl_80D5C26C:
/* 80D5C26C C0 1C 05 74 */ lfs f0, 0x574(r28)
/* 80D5C270 D0 1D 09 AC */ stfs f0, 0x9ac(r29)
/* 80D5C274 C0 1C 05 78 */ lfs f0, 0x578(r28)
/* 80D5C278 D0 1D 09 B0 */ stfs f0, 0x9b0(r29)
/* 80D5C27C C0 1C 05 7C */ lfs f0, 0x57c(r28)
/* 80D5C280 D0 1D 09 B4 */ stfs f0, 0x9b4(r29)
/* 80D5C284 80 1D 08 90 */ lwz r0, 0x890(r29)
/* 80D5C288 60 00 04 00 */ ori r0, r0, 0x400
/* 80D5C28C 90 1D 08 90 */ stw r0, 0x890(r29)
lbl_80D5C290:
/* 80D5C290 38 7D 04 D0 */ addi r3, r29, 0x4d0
/* 80D5C294 38 9C 05 74 */ addi r4, r28, 0x574
/* 80D5C298 4B 5E B1 05 */ bl PSVECSquareDistance
/* 80D5C29C C0 1F 00 20 */ lfs f0, 0x20(r31)
/* 80D5C2A0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D5C2A4 40 81 00 58 */ ble lbl_80D5C2FC
/* 80D5C2A8 FC 00 08 34 */ frsqrte f0, f1
/* 80D5C2AC C8 9F 00 28 */ lfd f4, 0x28(r31)
/* 80D5C2B0 FC 44 00 32 */ fmul f2, f4, f0
/* 80D5C2B4 C8 7F 00 30 */ lfd f3, 0x30(r31)
/* 80D5C2B8 FC 00 00 32 */ fmul f0, f0, f0
/* 80D5C2BC FC 01 00 32 */ fmul f0, f1, f0
/* 80D5C2C0 FC 03 00 28 */ fsub f0, f3, f0
/* 80D5C2C4 FC 02 00 32 */ fmul f0, f2, f0
/* 80D5C2C8 FC 44 00 32 */ fmul f2, f4, f0
/* 80D5C2CC FC 00 00 32 */ fmul f0, f0, f0
/* 80D5C2D0 FC 01 00 32 */ fmul f0, f1, f0
/* 80D5C2D4 FC 03 00 28 */ fsub f0, f3, f0
/* 80D5C2D8 FC 02 00 32 */ fmul f0, f2, f0
/* 80D5C2DC FC 44 00 32 */ fmul f2, f4, f0
/* 80D5C2E0 FC 00 00 32 */ fmul f0, f0, f0
/* 80D5C2E4 FC 01 00 32 */ fmul f0, f1, f0
/* 80D5C2E8 FC 03 00 28 */ fsub f0, f3, f0
/* 80D5C2EC FC 02 00 32 */ fmul f0, f2, f0
/* 80D5C2F0 FC 21 00 32 */ fmul f1, f1, f0
/* 80D5C2F4 FC 20 08 18 */ frsp f1, f1
/* 80D5C2F8 48 00 00 88 */ b lbl_80D5C380
lbl_80D5C2FC:
/* 80D5C2FC C8 1F 00 38 */ lfd f0, 0x38(r31)
/* 80D5C300 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D5C304 40 80 00 10 */ bge lbl_80D5C314
/* 80D5C308 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D5C30C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80D5C310 48 00 00 70 */ b lbl_80D5C380
lbl_80D5C314:
/* 80D5C314 D0 21 00 08 */ stfs f1, 8(r1)
/* 80D5C318 80 81 00 08 */ lwz r4, 8(r1)
/* 80D5C31C 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80D5C320 3C 00 7F 80 */ lis r0, 0x7f80
/* 80D5C324 7C 03 00 00 */ cmpw r3, r0
/* 80D5C328 41 82 00 14 */ beq lbl_80D5C33C
/* 80D5C32C 40 80 00 40 */ bge lbl_80D5C36C
/* 80D5C330 2C 03 00 00 */ cmpwi r3, 0
/* 80D5C334 41 82 00 20 */ beq lbl_80D5C354
/* 80D5C338 48 00 00 34 */ b lbl_80D5C36C
lbl_80D5C33C:
/* 80D5C33C 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D5C340 41 82 00 0C */ beq lbl_80D5C34C
/* 80D5C344 38 00 00 01 */ li r0, 1
/* 80D5C348 48 00 00 28 */ b lbl_80D5C370
lbl_80D5C34C:
/* 80D5C34C 38 00 00 02 */ li r0, 2
/* 80D5C350 48 00 00 20 */ b lbl_80D5C370
lbl_80D5C354:
/* 80D5C354 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D5C358 41 82 00 0C */ beq lbl_80D5C364
/* 80D5C35C 38 00 00 05 */ li r0, 5
/* 80D5C360 48 00 00 10 */ b lbl_80D5C370
lbl_80D5C364:
/* 80D5C364 38 00 00 03 */ li r0, 3
/* 80D5C368 48 00 00 08 */ b lbl_80D5C370
lbl_80D5C36C:
/* 80D5C36C 38 00 00 04 */ li r0, 4
lbl_80D5C370:
/* 80D5C370 2C 00 00 01 */ cmpwi r0, 1
/* 80D5C374 40 82 00 0C */ bne lbl_80D5C380
/* 80D5C378 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D5C37C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80D5C380:
/* 80D5C380 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80D5C384 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D5C388 40 80 01 A4 */ bge lbl_80D5C52C
/* 80D5C38C 88 1C 05 6D */ lbz r0, 0x56d(r28)
/* 80D5C390 28 00 00 01 */ cmplwi r0, 1
/* 80D5C394 40 82 00 10 */ bne lbl_80D5C3A4
/* 80D5C398 80 1D 08 90 */ lwz r0, 0x890(r29)
/* 80D5C39C 64 00 80 00 */ oris r0, r0, 0x8000
/* 80D5C3A0 90 1D 08 90 */ stw r0, 0x890(r29)
lbl_80D5C3A4:
/* 80D5C3A4 C0 5E 04 D8 */ lfs f2, 0x4d8(r30)
/* 80D5C3A8 C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
/* 80D5C3AC D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80D5C3B0 C0 3F 00 20 */ lfs f1, 0x20(r31)
/* 80D5C3B4 D0 21 00 10 */ stfs f1, 0x10(r1)
/* 80D5C3B8 D0 41 00 14 */ stfs f2, 0x14(r1)
/* 80D5C3BC C0 5C 04 D8 */ lfs f2, 0x4d8(r28)
/* 80D5C3C0 C0 1C 04 D0 */ lfs f0, 0x4d0(r28)
/* 80D5C3C4 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 80D5C3C8 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 80D5C3CC D0 41 00 20 */ stfs f2, 0x20(r1)
/* 80D5C3D0 38 61 00 0C */ addi r3, r1, 0xc
/* 80D5C3D4 38 81 00 18 */ addi r4, r1, 0x18
/* 80D5C3D8 4B 5E AF C5 */ bl PSVECSquareDistance
/* 80D5C3DC FF E0 08 90 */ fmr f31, f1
/* 80D5C3E0 C0 1C 04 EC */ lfs f0, 0x4ec(r28)
/* 80D5C3E4 EC 00 00 32 */ fmuls f0, f0, f0
/* 80D5C3E8 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80D5C3EC 4C 40 13 82 */ cror 2, 0, 2
/* 80D5C3F0 40 82 00 2C */ bne lbl_80D5C41C
/* 80D5C3F4 C0 5E 04 D4 */ lfs f2, 0x4d4(r30)
/* 80D5C3F8 C0 3C 04 D4 */ lfs f1, 0x4d4(r28)
/* 80D5C3FC FC 02 08 40 */ fcmpo cr0, f2, f1
/* 80D5C400 4C 41 13 82 */ cror 2, 1, 2
/* 80D5C404 40 82 00 18 */ bne lbl_80D5C41C
/* 80D5C408 C0 1C 04 F0 */ lfs f0, 0x4f0(r28)
/* 80D5C40C EC 01 00 2A */ fadds f0, f1, f0
/* 80D5C410 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80D5C414 4C 40 13 82 */ cror 2, 0, 2
/* 80D5C418 41 82 00 24 */ beq lbl_80D5C43C
lbl_80D5C41C:
/* 80D5C41C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5C420 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5C424 88 9C 05 69 */ lbz r4, 0x569(r28)
/* 80D5C428 88 1C 04 BA */ lbz r0, 0x4ba(r28)
/* 80D5C42C 7C 05 07 74 */ extsb r5, r0
/* 80D5C430 4B 2D 8F 31 */ bl isSwitch__10dSv_info_cCFii
/* 80D5C434 2C 03 00 00 */ cmpwi r3, 0
/* 80D5C438 41 82 00 A0 */ beq lbl_80D5C4D8
lbl_80D5C43C:
/* 80D5C43C 80 9D 08 90 */ lwz r4, 0x890(r29)
/* 80D5C440 3C 60 78 00 */ lis r3, 0x7800 /* 0x77FFFBFF@ha */
/* 80D5C444 38 03 FB FF */ addi r0, r3, 0xFBFF /* 0x77FFFBFF@l */
/* 80D5C448 7C 80 00 38 */ and r0, r4, r0
/* 80D5C44C 90 1D 08 90 */ stw r0, 0x890(r29)
/* 80D5C450 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5C454 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5C458 88 9C 05 69 */ lbz r4, 0x569(r28)
/* 80D5C45C 88 1C 04 BA */ lbz r0, 0x4ba(r28)
/* 80D5C460 7C 05 07 74 */ extsb r5, r0
/* 80D5C464 4B 2D 8D 9D */ bl onSwitch__10dSv_info_cFii
/* 80D5C468 38 00 00 01 */ li r0, 1
/* 80D5C46C 98 1C 05 6C */ stb r0, 0x56c(r28)
/* 80D5C470 A8 1C 04 E8 */ lha r0, 0x4e8(r28)
/* 80D5C474 2C 00 00 00 */ cmpwi r0, 0
/* 80D5C478 40 82 00 10 */ bne lbl_80D5C488
/* 80D5C47C 7F 83 E3 78 */ mr r3, r28
/* 80D5C480 4B 2B D7 FD */ bl fopAcM_delete__FP10fopAc_ac_c
/* 80D5C484 48 00 00 A8 */ b lbl_80D5C52C
lbl_80D5C488:
/* 80D5C488 C0 1D 05 50 */ lfs f0, 0x550(r29)
/* 80D5C48C D0 1C 05 50 */ stfs f0, 0x550(r28)
/* 80D5C490 C0 1D 05 54 */ lfs f0, 0x554(r29)
/* 80D5C494 D0 1C 05 54 */ stfs f0, 0x554(r28)
/* 80D5C498 C0 1D 05 58 */ lfs f0, 0x558(r29)
/* 80D5C49C D0 1C 05 58 */ stfs f0, 0x558(r28)
/* 80D5C4A0 C0 1C 05 50 */ lfs f0, 0x550(r28)
/* 80D5C4A4 D0 1C 05 38 */ stfs f0, 0x538(r28)
/* 80D5C4A8 C0 1C 05 54 */ lfs f0, 0x554(r28)
/* 80D5C4AC D0 1C 05 3C */ stfs f0, 0x53c(r28)
/* 80D5C4B0 C0 1C 05 58 */ lfs f0, 0x558(r28)
/* 80D5C4B4 D0 1C 05 40 */ stfs f0, 0x540(r28)
/* 80D5C4B8 7F 83 E3 78 */ mr r3, r28
/* 80D5C4BC 38 80 00 00 */ li r4, 0
/* 80D5C4C0 38 A0 00 00 */ li r5, 0
/* 80D5C4C4 4B 2B EC D9 */ bl fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs
/* 80D5C4C8 A0 1C 00 FA */ lhz r0, 0xfa(r28)
/* 80D5C4CC 60 00 00 01 */ ori r0, r0, 1
/* 80D5C4D0 B0 1C 00 FA */ sth r0, 0xfa(r28)
/* 80D5C4D4 48 00 00 58 */ b lbl_80D5C52C
lbl_80D5C4D8:
/* 80D5C4D8 C0 3C 05 70 */ lfs f1, 0x570(r28)
/* 80D5C4DC C0 1F 00 20 */ lfs f0, 0x20(r31)
/* 80D5C4E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D5C4E4 40 81 00 48 */ ble lbl_80D5C52C
/* 80D5C4E8 FC 1F 08 40 */ fcmpo cr0, f31, f1
/* 80D5C4EC 40 80 00 40 */ bge lbl_80D5C52C
/* 80D5C4F0 C0 5E 04 D4 */ lfs f2, 0x4d4(r30)
/* 80D5C4F4 C0 3C 04 D4 */ lfs f1, 0x4d4(r28)
/* 80D5C4F8 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 80D5C4FC 4C 41 13 82 */ cror 2, 1, 2
/* 80D5C500 40 82 00 2C */ bne lbl_80D5C52C
/* 80D5C504 C0 1C 04 F0 */ lfs f0, 0x4f0(r28)
/* 80D5C508 EC 01 00 2A */ fadds f0, f1, f0
/* 80D5C50C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80D5C510 4C 40 13 82 */ cror 2, 0, 2
/* 80D5C514 40 82 00 18 */ bne lbl_80D5C52C
/* 80D5C518 38 00 00 02 */ li r0, 2
/* 80D5C51C 90 1C 05 5C */ stw r0, 0x55c(r28)
/* 80D5C520 A0 1C 00 FA */ lhz r0, 0xfa(r28)
/* 80D5C524 60 00 00 01 */ ori r0, r0, 1
/* 80D5C528 B0 1C 00 FA */ sth r0, 0xfa(r28)
lbl_80D5C52C:
/* 80D5C52C 38 60 00 01 */ li r3, 1
lbl_80D5C530:
/* 80D5C530 E3 E1 00 48 */ psq_l f31, 72(r1), 0, 0 /* qr0 */
/* 80D5C534 CB E1 00 40 */ lfd f31, 0x40(r1)
/* 80D5C538 39 61 00 40 */ addi r11, r1, 0x40
/* 80D5C53C 4B 60 5C E9 */ bl _restgpr_28
/* 80D5C540 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80D5C544 7C 08 03 A6 */ mtlr r0
/* 80D5C548 38 21 00 50 */ addi r1, r1, 0x50
/* 80D5C54C 4E 80 00 20 */ blr

View File

@ -6252,14 +6252,17 @@ public:
enum daMidna_ERFLG0 {
ERFLG0_NO_SERVICE_WAIT = 0x80,
ERFLG0_FORCE_PANIC = 8,
ERFLG0_UNK_2 = 2,
};
enum daMidna_FLG0 {
FLG0_UNK_80000000 = 0x80000000,
FLG0_UNK_8000000 = 0x8000000,
FLG0_NPC_NEAR = 0x100000,
FLG0_NPC_FAR = 0x40000,
FLG0_NO_INPUT = 0x4000,
FLG0_NO_DRAW = 0x2000,
FLG0_UNK_400 = 0x400,
FLG0_UNK_800 = 0x800,
FLG0_UNK_200 = 0x200,
};
@ -6276,10 +6279,8 @@ public:
u32 checkForceNormalColor() const;
u32 checkForceTiredColor() const;
bool checkMidnaTired();
bool i_checkMidnaTired() {
return dComIfGs_isTransformLV(3) && !i_dComIfGs_isEventBit(0x1e08);
}
void onNoServiceWait();
/* 804BC3E0 */ void modelCallBack(int);
/* 804BC5C4 */ void changeUpperBck();
/* 804BC614 */ void changeFaceBck();
@ -6326,6 +6327,8 @@ public:
/* 804C61A4 */ ~daMidna_c();
void onEndResetStateFlg0(daMidna_ERFLG0 pFlg) { mEndResetStateFlg0 |= pFlg; }
void onStateFlg0(daMidna_FLG0 i_flag) { mStateFlg0 |= i_flag; }
void offStateFlg0(daMidna_FLG0 i_flag) { mStateFlg0 &= ~i_flag; }
u32 checkStateFlg0(daMidna_FLG0 flag) const { return mStateFlg0 & flag; }
u32 checkStateFlg1(daMidna_FLG1 flag) const { return mStateFlg1 & flag; }
void setFaceNum(int num) { mFaceNum = num; }
@ -6341,6 +6344,29 @@ public:
int checkMetamorphoseEnable() { return (this->*mpFunc)(); }
int checkShadowModelDrawDemoForce() const { return checkStateFlg1(FLG1_SHADOW_MODEL_DRAW_DEMO_FORCE); }
void onTagWaitPosWarp(const cXyz* param_0) {
field_0x9ac = *param_0;
onStateFlg0(FLG0_UNK_400);
onEndResetStateFlg0(ERFLG0_UNK_2);
}
void onTagWaitPos(const cXyz* param_0) {
field_0x9ac = *param_0;
onStateFlg0(FLG0_UNK_400);
}
void offTagWaitPos() {
offStateFlg0((daMidna_FLG0)(FLG0_UNK_80000000 | FLG0_UNK_8000000 | FLG0_UNK_400));
}
void onTagNoHairLead() {
onStateFlg0(FLG0_UNK_80000000);
}
bool checkReturnAnime() const {
return field_0x5e4[0].getIdx() == 0x1CA;
}
bool checkShadowModelDrawSmode() const {
if (field_0x84e != 3 && field_0x84e != 4) {
if (field_0x84e == 2) {
@ -6363,7 +6389,7 @@ public:
}
int checkShadowReturnEnd() const {
if (field_0x5e4[0].getIdx() == 0x21c && !field_0x578->isStop()) {
if (field_0x5e4[0].getIdx() == 0x21C && !field_0x578->isStop()) {
return 1;
}
@ -6383,6 +6409,10 @@ public:
inline static BOOL checkMidnaRealBody();
bool i_checkMidnaTired() {
return dComIfGs_isTransformLV(3) && !i_dComIfGs_isEventBit(0x1E08);
}
static u8 const m_texDataTable[84];
static u8 const m_anmDataTable[636];
@ -6477,7 +6507,9 @@ private:
/* 0x091C */ cXyz field_0x91c[5];
/* 0x0958 */ u8 field_0x958[0xC]; // cXyz here, fix later
/* 0x0964 */ cXyz field_0x964[5];
/* 0x09A0 */ u8 field_0x9a0[0x14];
/* 0x09A0 */ u8 field_0x9a0[0xC];
/* 0x09AC */ cXyz field_0x9ac;
/* 0x09B8 */ u8 field_0x9b8[0x9C4 - 0x9B8];
/* 0x09C4 */ cXyz field_0x9c4;
/* 0x09D0 */ u8 field_0x9d0[4];
/* 0x09D4 */ daMidna_func mpFunc;

View File

@ -37,9 +37,9 @@ public:
/* 80249F00 */ dMsgFlow_c();
/* 80249F48 */ virtual ~dMsgFlow_c();
/* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**);
/* 80249F90 */ void init(fopAc_ac_c* i_partner, int i_flowID, int, fopAc_ac_c**);
/* 8024A13C */ int checkOpenDoor(fopAc_ac_c*, int*);
/* 8024A2D8 */ int doFlow(fopAc_ac_c*, fopAc_ac_c**, int);
/* 8024A2D8 */ int doFlow(fopAc_ac_c*, fopAc_ac_c**, int i_flow);
/* 8024A424 */ int checkEventRender(int*, int*, int*, int*);
/* 8024A4C4 */ void remove();
/* 8024A528 */ u16 getEventId(int*);

View File

@ -464,7 +464,7 @@ s32 fopAcM_cullingCheck(const fopAc_ac_c*);
void* event_second_actor(u16);
s32 fopAcM_orderTalkEvent(fopAc_ac_c*, fopAc_ac_c*, u16, u16);
s32 fopAcM_orderTalkItemBtnEvent(u16, fopAc_ac_c*, fopAc_ac_c*, u16, u16);
s32 fopAcM_orderSpeakEvent(fopAc_ac_c*, u16, u16);
s32 fopAcM_orderSpeakEvent(fopAc_ac_c* i_actor, u16 i_priority, u16 i_flag);
s32 fopAcM_orderDoorEvent(fopAc_ac_c*, fopAc_ac_c*, u16, u16);
s32 fopAcM_orderCatchEvent(fopAc_ac_c*, fopAc_ac_c*, u16, u16);
s32 fopAcM_orderOtherEvent(fopAc_ac_c*, const char*, u16, u16, u16);

View File

@ -1,6 +1,16 @@
#ifndef D_A_KYTAG15_H
#define D_A_KYTAG15_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class kytag15_class : public fopAc_ac_c {
public:
/* 0x568 */ J3DModel* mpModel;
/* 0x56C */ mDoExt_btkAnm mBtk;
/* 0x584 */ request_of_phase_process_class mPhase;
/* 0x58C */ u8 field_0x58c;
/* 0x58D */ u8 field_0x58d[0x590 - 0x58D];
/* 0x590 */ f32 field_0x590;
};
#endif /* D_A_KYTAG15_H */

View File

@ -1,6 +1,24 @@
#ifndef D_A_TAG_MWAIT_H
#define D_A_TAG_MWAIT_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
#include "d/msg/d_msg_flow.h"
class daTagMwait_c : public fopAc_ac_c {
public:
/* 80D5BE18 */ int create();
/* 80D5C01C */ ~daTagMwait_c();
/* 80D5C0A8 */ int execute();
/* 0x568 */ u8 mOnSw;
/* 0x569 */ u8 mEnterSw;
/* 0x56A */ bool mInitMsgFlow;
/* 0x56B */ u8 mWarpToPos;
/* 0x56C */ bool mEnteredTrigger;
/* 0x56D */ u8 field_0x56d;
/* 0x570 */ f32 field_0x570;
/* 0x574 */ cXyz mWaitPosition;
/* 0x580 */ dMsgFlow_c mMsgFlow;
};
#endif /* D_A_TAG_MWAIT_H */

View File

@ -1,278 +1,159 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_kytag15
//
/**
* d_a_kytag15.cpp
*
*/
#include "rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct mDoMtx_stack_c {
static u8 now[48];
};
struct J3DMaterialTable {};
struct J3DAnmTextureSRTKey {};
struct mDoExt_btkAnm {
/* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16);
/* 8000D6D8 */ void entry(J3DMaterialTable*, f32);
};
struct mDoExt_baseAnm {
/* 8000D428 */ void play();
};
struct kytag15_class {};
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
};
struct dRes_info_c {};
struct dRes_control_c {
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
};
struct J3DModelData {};
struct J3DModel {};
struct J3DFrameCtrl {
/* 803283FC */ void init(s16);
/* 80860AF0 */ ~J3DFrameCtrl();
};
//
// Forward References:
//
extern "C" static void daKytag15_Draw__FP13kytag15_class();
extern "C" static void daKytag15_Execute__FP13kytag15_class();
extern "C" static bool daKytag15_IsDelete__FP13kytag15_class();
extern "C" static void daKytag15_Delete__FP13kytag15_class();
extern "C" static void useHeapInit__FP10fopAc_ac_c();
extern "C" static void daKytag15_Create__FP10fopAc_ac_c();
extern "C" void __dt__12J3DFrameCtrlFv();
extern "C" extern char const* const d_a_kytag15__stringBase0;
//
// External References:
//
extern "C" void play__14mDoExt_baseAnmFv();
extern "C" void init__13mDoExt_btkAnmFP16J3DMaterialTableP19J3DAnmTextureSRTKeyiifss();
extern "C" void entry__13mDoExt_btkAnmFP16J3DMaterialTablef();
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 dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void dKy_daynight_check__Fv();
extern "C" void cLib_addCalc__FPfffff();
extern "C" void __dl__FPv();
extern "C" void init__12J3DFrameCtrlFs();
extern "C" void PSMTXCopy();
extern "C" void PSMTXTrans();
extern "C" void _savegpr_29();
extern "C" void _restgpr_29();
extern "C" void strcmp();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
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];
//
// Declarations:
//
/* ############################################################################################## */
/* 80860B40-80860B44 000000 0004+00 3/3 0/0 0/0 .rodata @3823 */
SECTION_RODATA static u8 const lit_3823[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80860B40, &lit_3823);
/* 80860B44-80860B48 000004 0004+00 0/1 0/0 0/0 .rodata @3824 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3824 = 0x3BABB44E;
COMPILER_STRIP_GATE(0x80860B44, &lit_3824);
#pragma pop
/* 80860B48-80860B4C 000008 0004+00 0/1 0/0 0/0 .rodata @3825 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3825 = -255.0f;
COMPILER_STRIP_GATE(0x80860B48, &lit_3825);
#pragma pop
/* 80860B4C-80860B50 00000C 0004+00 0/1 0/0 0/0 .rodata @3826 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3826 = 255.0f;
COMPILER_STRIP_GATE(0x80860B4C, &lit_3826);
#pragma pop
/* 80860B50-80860B58 000010 0008+00 0/1 0/0 0/0 .rodata @3828 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3828[8] = {
0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80860B50, &lit_3828);
#pragma pop
#include "JSystem/J3DGraphBase/J3DMaterial.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
/* 80860638-808607F8 000078 01C0+00 1/0 0/0 0/0 .text daKytag15_Draw__FP13kytag15_class
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daKytag15_Draw(kytag15_class* param_0) {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/daKytag15_Draw__FP13kytag15_class.s"
static int daKytag15_Draw(kytag15_class* i_this) {
cXyz scale;
mDoMtx_stack_c::transS(0.0f, 0.0f, 0.0f);
scale.x = 0.00524f;
scale.y = 0.00524f;
scale.z = 0.00524f;
if (i_this->mpModel != NULL && i_this->field_0x590 > 0.0f) {
GXColorS10 color;
J3DMaterial* mat_p = i_this->mpModel->getModelData()->getMaterialNodePointer(0);
color.b = 0;
color.g = 0;
color.r = 0;
color.a = -180;
if (i_this->field_0x58c == 1) {
color.a = -100;
}
color.a = (color.a + 255.0f) * i_this->field_0x590 + -255.0f;
mat_p->setTevColor(0, (J3DGXColorS10*)&color);
i_this->mpModel->setBaseScale(scale);
i_this->mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get());
i_this->mBtk.entry(i_this->mpModel->getModelData());
i_this->mBtk.play();
if (i_this->field_0x58c == 1) {
i_this->mBtk.play();
}
dComIfGd_setXluList2DScreen();
mDoExt_modelUpdateDL(i_this->mpModel);
dComIfGd_setList();
}
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80860B58-80860B5C 000018 0004+00 2/3 0/0 0/0 .rodata @3845 */
SECTION_RODATA static f32 const lit_3845 = 1.0f;
COMPILER_STRIP_GATE(0x80860B58, &lit_3845);
/* 80860B5C-80860B60 00001C 0004+00 0/1 0/0 0/0 .rodata @3846 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3846 = 1.0f / 20.0f;
COMPILER_STRIP_GATE(0x80860B5C, &lit_3846);
#pragma pop
/* 80860B60-80860B64 000020 0004+00 0/1 0/0 0/0 .rodata @3847 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3847 = 1.0f / 100.0f;
COMPILER_STRIP_GATE(0x80860B60, &lit_3847);
#pragma pop
/* 80860B64-80860B68 000024 0004+00 0/1 0/0 0/0 .rodata @3848 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3848 = 0x322BCC77;
COMPILER_STRIP_GATE(0x80860B64, &lit_3848);
#pragma pop
/* 808607F8-808608B0 000238 00B8+00 1/0 0/0 0/0 .text daKytag15_Execute__FP13kytag15_class */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daKytag15_Execute(kytag15_class* param_0) {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/daKytag15_Execute__FP13kytag15_class.s"
static int daKytag15_Execute(kytag15_class* i_this) {
if (!i_this->field_0x58c) {
if (!dKy_daynight_check()) {
cLib_addCalc(&i_this->field_0x590, 1.0f, 0.05f, 0.01f, 1.0E-8f);
} else {
cLib_addCalc(&i_this->field_0x590, 0.0f, 0.05f, 0.01f, 1.0E-8f);
}
} else if (g_env_light.mColPatPrev == 11) {
cLib_addCalc(&i_this->field_0x590, 1.0f, 0.05f, 0.01f, 1.0E-8f);
}
return 1;
}
#pragma pop
/* 808608B0-808608B8 0002F0 0008+00 1/0 0/0 0/0 .text daKytag15_IsDelete__FP13kytag15_class */
static bool daKytag15_IsDelete(kytag15_class* param_0) {
return true;
static int daKytag15_IsDelete(kytag15_class* i_this) {
return 1;
}
/* ############################################################################################## */
/* 80860B68-80860B68 000028 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80860B68 = "Kytag15";
#pragma pop
/* 808608B8-808608E8 0002F8 0030+00 1/0 0/0 0/0 .text daKytag15_Delete__FP13kytag15_class
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daKytag15_Delete(kytag15_class* param_0) {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/daKytag15_Delete__FP13kytag15_class.s"
static int daKytag15_Delete(kytag15_class* i_this) {
dComIfG_resDelete(&i_this->mPhase, "Kytag15");
return 1;
}
/* 808608E8-808609B4 000328 00CC+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */
static int useHeapInit(fopAc_ac_c* i_this) {
kytag15_class* this_ = (kytag15_class*)i_this;
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("Kytag15", 4);
this_->mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000284);
if (this_->mpModel == NULL) {
return 0;
}
J3DAnmTextureSRTKey* btk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes("Kytag15", 7);
if (!this_->mBtk.init(modelData, btk, TRUE, 2, 1.0f, 0, -1)) {
return 0;
}
return 1;
}
/* 808609B4-80860AF0 0003F4 013C+00 1/0 0/0 0/0 .text daKytag15_Create__FP10fopAc_ac_c */
static int daKytag15_Create(fopAc_ac_c* i_this) {
kytag15_class* this_ = (kytag15_class*)i_this;
if (strcmp(dComIfGp_getStartStageName(), "F_SP118") == 0) {
this_->field_0x58c = 1;
} else {
this_->field_0x58c = 0;
}
if (!fopAcM_CheckCondition(this_, 8)) {
new (this_) kytag15_class();
fopAcM_OnCondition(this_, 8);
}
if (this_->field_0x58c == 0) {
if (!dKy_daynight_check()) {
this_->field_0x590 = 1.0f;
} else {
this_->field_0x590 = 0.0f;
}
} else {
this_->field_0x590 = 0.0f;
}
int phase = dComIfG_resLoad(&this_->mPhase, "Kytag15");
if (phase == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this_, useHeapInit, 0)) {
return cPhs_ERROR_e;
}
}
return phase;
}
#pragma pop
/* ############################################################################################## */
/* 80860B78-80860B98 -00001 0020+00 1/0 0/0 0/0 .data l_daKytag15_Method */
SECTION_DATA static void* l_daKytag15_Method[8] = {
(void*)daKytag15_Create__FP10fopAc_ac_c,
(void*)daKytag15_Delete__FP13kytag15_class,
(void*)daKytag15_Execute__FP13kytag15_class,
(void*)daKytag15_IsDelete__FP13kytag15_class,
(void*)daKytag15_Draw__FP13kytag15_class,
(void*)NULL,
(void*)NULL,
(void*)NULL,
static actor_method_class l_daKytag15_Method = {
(process_method_func)daKytag15_Create, (process_method_func)daKytag15_Delete,
(process_method_func)daKytag15_Execute, (process_method_func)daKytag15_IsDelete,
(process_method_func)daKytag15_Draw,
};
/* 80860B98-80860BC8 -00001 0030+00 0/1 0/0 1/0 .data g_profile_KYTAG15 */
SECTION_DATA extern void* g_profile_KYTAG15[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x02B90000, (void*)&g_fpcLf_Method,
(void*)0x00000594, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x006D0000, (void*)&l_daKytag15_Method,
(void*)0x00044000, (void*)NULL,
extern actor_process_profile_definition g_profile_KYTAG15 = {
-3,
7,
-3,
PROC_KYTAG15,
&g_fpcLf_Method.mBase,
sizeof(kytag15_class),
0,
0,
&g_fopAc_Method.base,
109,
&l_daKytag15_Method,
0x44000,
0,
0,
};
/* 808608E8-808609B4 000328 00CC+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void useHeapInit(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/useHeapInit__FP10fopAc_ac_c.s"
}
#pragma pop
/* ############################################################################################## */
/* 80860B68-80860B68 000028 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80860B70 = "F_SP118";
#pragma pop
/* 80860BC8-80860BD4 000050 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */
SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__12J3DFrameCtrlFv,
};
/* 808609B4-80860AF0 0003F4 013C+00 1/0 0/0 0/0 .text daKytag15_Create__FP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daKytag15_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/daKytag15_Create__FP10fopAc_ac_c.s"
}
#pragma pop
/* 80860AF0-80860B38 000530 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J3DFrameCtrl::~J3DFrameCtrl() {
nofralloc
#include "asm/rel/d/a/kytag/d_a_kytag15/d_a_kytag15/__dt__12J3DFrameCtrlFv.s"
}
#pragma pop
/* 80860B68-80860B68 000028 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

View File

@ -1,277 +1,189 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_tag_mwait
//
/**
* d_a_tag_mwait.cpp
* Midna Wait Trigger
*/
#include "rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
/* 80018C8C */ ~fopAc_ac_c();
};
struct daTagMwait_c {
/* 80D5BE18 */ void create();
/* 80D5C01C */ ~daTagMwait_c();
/* 80D5C0A8 */ void execute();
};
struct daPy_py_c {
static u8 m_midnaActor[4];
};
struct dSv_info_c {
/* 80035200 */ void onSwitch(int, int);
/* 80035360 */ void isSwitch(int, int) const;
};
struct dMsgFlow_c {
/* 80249F00 */ dMsgFlow_c();
/* 80249F48 */ ~dMsgFlow_c();
/* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**);
/* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int);
};
struct dEvt_control_c {
/* 80042468 */ void reset();
};
//
// Forward References:
//
extern "C" void create__12daTagMwait_cFv();
extern "C" static void daTagMwait_Create__FP10fopAc_ac_c();
extern "C" void __dt__12daTagMwait_cFv();
extern "C" static void daTagMwait_Delete__FP12daTagMwait_c();
extern "C" void execute__12daTagMwait_cFv();
extern "C" static void daTagMwait_Execute__FP12daTagMwait_c();
extern "C" static bool daTagMwait_Draw__FP12daTagMwait_c();
extern "C" extern void* g_profile_Tag_Mwait[12];
//
// External References:
//
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
extern "C" void fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs();
extern "C" void onSwitch__10dSv_info_cFii();
extern "C" void isSwitch__10dSv_info_cCFii();
extern "C" void reset__14dEvt_control_cFv();
extern "C" void __ct__10dMsgFlow_cFv();
extern "C" void __dt__10dMsgFlow_cFv();
extern "C" void init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c();
extern "C" void doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci();
extern "C" void __dl__FPv();
extern "C" void PSVECScale();
extern "C" void PSVECSquareDistance();
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 u8 g_dComIfG_gameInfo[122384];
extern "C" extern u32 __float_nan;
extern "C" u8 m_midnaActor__9daPy_py_c[4];
//
// Declarations:
//
/* ############################################################################################## */
/* 80D5C580-80D5C584 000000 0004+00 2/2 0/0 0/0 .rodata @3841 */
SECTION_RODATA static f32 const lit_3841 = -1.0f;
COMPILER_STRIP_GATE(0x80D5C580, &lit_3841);
/* 80D5C584-80D5C588 000004 0004+00 0/1 0/0 0/0 .rodata @3842 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3842 = 100.0f;
COMPILER_STRIP_GATE(0x80D5C584, &lit_3842);
#pragma pop
/* 80D5C588-80D5C58C 000008 0004+00 0/1 0/0 0/0 .rodata @3843 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3843 = 10.0f;
COMPILER_STRIP_GATE(0x80D5C588, &lit_3843);
#pragma pop
/* 80D5C58C-80D5C590 00000C 0004+00 0/1 0/0 0/0 .rodata @3844 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3844 = 220.0f;
COMPILER_STRIP_GATE(0x80D5C58C, &lit_3844);
#pragma pop
/* 80D5C590-80D5C598 000010 0004+04 0/1 0/0 0/0 .rodata @3845 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3845[1 + 1 /* padding */] = {
150.0f,
/* padding */
0.0f,
};
COMPILER_STRIP_GATE(0x80D5C590, &lit_3845);
#pragma pop
/* 80D5C598-80D5C5A0 000018 0008+00 0/1 0/0 0/0 .rodata @3847 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3847[8] = {
0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D5C598, &lit_3847);
#pragma pop
#include "JSystem/JKernel/JKRHeap.h"
#include "d/a/d_a_alink.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
/* 80D5BE18-80D5BFFC 000078 01E4+00 1/1 0/0 0/0 .text create__12daTagMwait_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagMwait_c::create() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/create__12daTagMwait_cFv.s"
int daTagMwait_c::create() {
if (!fopAcM_CheckCondition(this, 8)) {
new (this) daTagMwait_c();
fopAcM_OnCondition(this, 8);
}
mEnterSw = fopAcM_GetParam(this) >> 8;
if (i_fopAcM_isSwitch(this, mEnterSw)) {
return cPhs_ERROR_e;
}
mOnSw = fopAcM_GetParam(this);
u32 prm = (fopAcM_GetParam(this) >> 0x10) & 0xFF;
if (prm == 0 || prm == 0xFF) {
field_0x570 = -1.0f;
} else {
field_0x570 = prm * prm * 100.0f;
}
mWarpToPos = shape_angle.x & 0xF;
if (mWarpToPos >= 2) {
mWarpToPos = 0;
}
field_0x56d = (shape_angle.x >> 4) & 0xF;
if (field_0x56d >= 2) {
field_0x56d = 0;
}
mScale *= 100.0f;
u32 wait_y_offset = (fopAcM_GetParam(this) >> 0x18) & 0xFF;
if (wait_y_offset == 0 || wait_y_offset == 0xFF) {
wait_y_offset = 0;
}
mWaitPosition.set(current.pos.x, current.pos.y + (wait_y_offset * 10.0f), current.pos.z);
mAttentionInfo.mPosition.set(mWaitPosition.x, mWaitPosition.y + 220.0f, mWaitPosition.z);
mEyePos.set(mWaitPosition.x, mWaitPosition.y + 150.0f, mWaitPosition.z);
mAttentionInfo.field_0x0[1] = 54;
mAttentionInfo.mFlags = 0;
return cPhs_COMPLEATE_e;
}
#pragma pop
/* 80D5BFFC-80D5C01C 00025C 0020+00 1/0 0/0 0/0 .text daTagMwait_Create__FP10fopAc_ac_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagMwait_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/daTagMwait_Create__FP10fopAc_ac_c.s"
static int daTagMwait_Create(fopAc_ac_c* i_this) {
return static_cast<daTagMwait_c*>(i_this)->create();
}
#pragma pop
/* 80D5C01C-80D5C080 00027C 0064+00 1/1 0/0 0/0 .text __dt__12daTagMwait_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daTagMwait_c::~daTagMwait_c() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/__dt__12daTagMwait_cFv.s"
}
#pragma pop
daTagMwait_c::~daTagMwait_c() {}
/* 80D5C080-80D5C0A8 0002E0 0028+00 1/0 0/0 0/0 .text daTagMwait_Delete__FP12daTagMwait_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagMwait_Delete(daTagMwait_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/daTagMwait_Delete__FP12daTagMwait_c.s"
static int daTagMwait_Delete(daTagMwait_c* i_this) {
i_this->~daTagMwait_c();
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80D5C5A0-80D5C5A8 000020 0004+04 0/1 0/0 0/0 .rodata @4006 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_4006[4 + 4 /* padding */] = {
0x00,
0x00,
0x00,
0x00,
/* padding */
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80D5C5A0, &lit_4006);
#pragma pop
/* 80D5C5A8-80D5C5B0 000028 0008+00 0/1 0/0 0/0 .rodata @4007 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_4007[8] = {
0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D5C5A8, &lit_4007);
#pragma pop
/* 80D5C5B0-80D5C5B8 000030 0008+00 0/1 0/0 0/0 .rodata @4008 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_4008[8] = {
0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D5C5B0, &lit_4008);
#pragma pop
/* 80D5C5B8-80D5C5C0 000038 0008+00 0/1 0/0 0/0 .rodata @4009 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_4009[8] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D5C5B8, &lit_4009);
#pragma pop
/* 80D5C5C0-80D5C5C4 000040 0004+00 0/1 0/0 0/0 .rodata @4010 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4010 = 5.0f;
COMPILER_STRIP_GATE(0x80D5C5C0, &lit_4010);
#pragma pop
/* 80D5C0A8-80D5C550 000308 04A8+00 1/1 0/0 0/0 .text execute__12daTagMwait_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagMwait_c::execute() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/execute__12daTagMwait_cFv.s"
int daTagMwait_c::execute() {
daMidna_c* midna_p = daPy_py_c::getMidnaActor();
daPy_py_c* player_p = daPy_getLinkPlayerActorClass();
if (midna_p == NULL) {
return 1;
}
mAttentionInfo.mFlags = 0;
if (mEvtInfo.checkCommandTalk()) {
if (!mEnteredTrigger || !midna_p->checkReturnAnime()) {
if (!mInitMsgFlow) {
mMsgFlow.init(this, (u16)shape_angle.z, 0, NULL);
mInitMsgFlow = true;
} else if (mMsgFlow.doFlow(this, NULL, 0)) {
i_dComIfGp_event_reset();
if (mEnteredTrigger) {
fopAcM_delete(this);
return 1;
}
}
}
} else if (mEnteredTrigger) {
fopAcM_orderSpeakEvent(this, 0, 0);
mEvtInfo.i_onCondition(1);
mAttentionInfo.mPosition = midna_p->mAttentionInfo.mPosition;
mEyePos = mAttentionInfo.mPosition;
} else {
mInitMsgFlow = false;
if (daPy_py_c::i_checkNowWolf() && midna_p != NULL && i_fopAcM_isSwitch(this, mOnSw))
{
if (mWarpToPos == 1) {
midna_p->onTagWaitPosWarp(&mWaitPosition);
} else {
midna_p->onTagWaitPos(&mWaitPosition);
}
if (midna_p->current.pos.abs(mWaitPosition) < 5.0f) {
if (field_0x56d == 1) {
midna_p->onTagNoHairLead();
}
f32 player_dist = player_p->current.pos.abs2XZ(current.pos);
if ((player_dist <= mScale.x * mScale.x &&
player_p->current.pos.y >= current.pos.y &&
player_p->current.pos.y <= current.pos.y + mScale.y) ||
i_fopAcM_isSwitch(this, mEnterSw))
{
midna_p->offTagWaitPos();
i_fopAcM_onSwitch(this, mEnterSw);
mEnteredTrigger = true;
if (shape_angle.z == 0) {
fopAcM_delete(this);
} else {
mAttentionInfo.mPosition = midna_p->mAttentionInfo.mPosition;
mEyePos = mAttentionInfo.mPosition;
fopAcM_orderSpeakEvent(this, 0, 0);
mEvtInfo.i_onCondition(1);
}
} else if (field_0x570 > 0.0f && player_dist < field_0x570 &&
player_p->current.pos.y >= current.pos.y &&
player_p->current.pos.y <= current.pos.y + mScale.y)
{
mAttentionInfo.mFlags = 2;
mEvtInfo.i_onCondition(1);
}
}
}
}
return 1;
}
#pragma pop
/* 80D5C550-80D5C570 0007B0 0020+00 1/0 0/0 0/0 .text daTagMwait_Execute__FP12daTagMwait_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagMwait_Execute(daTagMwait_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait/daTagMwait_Execute__FP12daTagMwait_c.s"
static int daTagMwait_Execute(daTagMwait_c* i_this) {
return i_this->execute();
}
#pragma pop
/* 80D5C570-80D5C578 0007D0 0008+00 1/0 0/0 0/0 .text daTagMwait_Draw__FP12daTagMwait_c
*/
static bool daTagMwait_Draw(daTagMwait_c* param_0) {
return true;
static int daTagMwait_Draw(daTagMwait_c* i_this) {
return 1;
}
/* ############################################################################################## */
/* 80D5C5C4-80D5C5E4 -00001 0020+00 1/0 0/0 0/0 .data l_daTagMwait_Method */
SECTION_DATA static void* l_daTagMwait_Method[8] = {
(void*)daTagMwait_Create__FP10fopAc_ac_c,
(void*)daTagMwait_Delete__FP12daTagMwait_c,
(void*)daTagMwait_Execute__FP12daTagMwait_c,
(void*)NULL,
(void*)daTagMwait_Draw__FP12daTagMwait_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
static actor_method_class l_daTagMwait_Method = {
(process_method_func)daTagMwait_Create, (process_method_func)daTagMwait_Delete,
(process_method_func)daTagMwait_Execute, (process_method_func)NULL,
(process_method_func)daTagMwait_Draw,
};
/* 80D5C5E4-80D5C614 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Mwait */
SECTION_DATA extern void* g_profile_Tag_Mwait[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x02C30000, (void*)&g_fpcLf_Method,
(void*)0x000005CC, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x01000000, (void*)&l_daTagMwait_Method,
(void*)0x00044000, (void*)0x030E0000,
extern actor_process_profile_definition g_profile_Tag_Mwait = {
-3,
7,
-3,
PROC_Tag_Mwait,
&g_fpcLf_Method.mBase,
sizeof(daTagMwait_c),
0,
0,
&g_fopAc_Method.base,
256,
&l_daTagMwait_Method,
0x44000,
3,
14,
};

View File

@ -448,7 +448,7 @@ SECTION_DEAD static char const* const stringBase_80399CB5 = "FLI1";
/* 80249F90-8024A13C 2448D0 01AC+00 0/0 10/10 86/86 .text
* init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c */
void dMsgFlow_c::init(fopAc_ac_c* param_0, int param_1, int param_2, fopAc_ac_c** param_3) {
void dMsgFlow_c::init(fopAc_ac_c* i_partner, int i_flowID, int param_2, fopAc_ac_c** param_3) {
u16 uVar4;
u16 flow_val;
@ -459,11 +459,11 @@ void dMsgFlow_c::init(fopAc_ac_c* param_0, int param_1, int param_2, fopAc_ac_c*
}
if (param_2 == 0 && g_MsgObject_HIO_c.mMsgDebug == 2) {
param_1 = g_MsgObject_HIO_c.mFlowIndex;
i_flowID = g_MsgObject_HIO_c.mFlowIndex;
}
flow_val = param_1;
flow_val = i_flowID;
dMsgObject_changeFlowGroup(param_1);
dMsgObject_changeFlowGroup(i_flowID);
if (param_2 == 0) {
setInitValue(1);
mFlow_p = getMsgDataBlock("FLW1");
@ -473,15 +473,15 @@ void dMsgFlow_c::init(fopAc_ac_c* param_0, int param_1, int param_2, fopAc_ac_c*
field_0x18 = field_0x14 + *(u16*)(mFlow_p + 8);
mFlow = flow_val;
if (param_0 != NULL) {
dMsgObject_setTalkPartner(param_0);
if (i_partner != NULL) {
dMsgObject_setTalkPartner(i_partner);
}
setNodeIndex(getInitNodeIndex(mFlow), param_3);
} else {
uVar4 = field_0x10;
setInitValue(0);
if (param_0 != NULL) {
dMsgObject_setTalkPartner(param_0);
if (i_partner != NULL) {
dMsgObject_setTalkPartner(i_partner);
}
setNodeIndex(uVar4, param_3);
}
@ -568,9 +568,9 @@ asm int dMsgFlow_c::checkOpenDoor(fopAc_ac_c* param_0, int* param_1) {
/* 8024A2D8-8024A424 244C18 014C+00 0/0 21/21 78/78 .text
* doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci */
int dMsgFlow_c::doFlow(fopAc_ac_c* param_0, fopAc_ac_c** param_1, int flow) {
int dMsgFlow_c::doFlow(fopAc_ac_c* param_0, fopAc_ac_c** param_1, int i_flow) {
int check = false;
u16 set_flow = flow;
u16 set_flow = i_flow;
dMsgObject_changeFlowGroup(mFlow);
if (dMsgObject_isKillMessageFlag()) {