tp/include/Z2AudioLib/Z2EnvSeMgr/asm/func_802C66B0.s

206 lines
10 KiB
ArmAsm

/* 802C66B0 002C35F0 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 802C66B4 002C35F4 7C 08 02 A6 */ mflr r0
/* 802C66B8 002C35F8 90 01 00 54 */ stw r0, 0x54(r1)
/* 802C66BC 002C35FC DB E1 00 40 */ stfd f31, 0x40(r1)
/* 802C66C0 002C3600 F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0
/* 802C66C4 002C3604 DB C1 00 30 */ stfd f30, 0x30(r1)
/* 802C66C8 002C3608 F3 C1 00 38 */ psq_st f30, 56(r1), 0, 0
/* 802C66CC 002C360C 39 61 00 30 */ addi r11, r1, 0x30
/* 802C66D0 002C3610 48 09 BB 0D */ bl _savegpr_29
/* 802C66D4 002C3614 7C 7F 1B 78 */ mr r31, r3
/* 802C66D8 002C3618 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802C66DC 002C361C 83 C3 00 04 */ lwz r30, 4(r3)
/* 802C66E0 002C3620 88 1F 00 7C */ lbz r0, 0x7c(r31)
/* 802C66E4 002C3624 7C 00 07 75 */ extsb. r0, r0
/* 802C66E8 002C3628 41 80 00 84 */ blt lbl_802C676C
/* 802C66EC 002C362C 88 1F 02 14 */ lbz r0, 0x214(r31)
/* 802C66F0 002C3630 28 00 00 12 */ cmplwi r0, 0x12
/* 802C66F4 002C3634 41 82 00 48 */ beq lbl_802C673C
/* 802C66F8 002C3638 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 802C66FC 002C363C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 802C6700 002C3640 3B A3 07 F0 */ addi r29, r3, 0x7f0
/* 802C6704 002C3644 7F A3 EB 78 */ mr r3, r29
/* 802C6708 002C3648 3C 80 80 3A */ lis r4, lbl_803A7288@ha
/* 802C670C 002C364C 38 84 72 88 */ addi r4, r4, lbl_803A7288@l
/* 802C6710 002C3650 A0 84 00 D0 */ lhz r4, 0xd0(r4)
/* 802C6714 002C3654 4B D6 E2 A9 */ bl isEventBit__11dSv_event_cCFUs
/* 802C6718 002C3658 2C 03 00 00 */ cmpwi r3, 0
/* 802C671C 002C365C 41 82 00 48 */ beq lbl_802C6764
/* 802C6720 002C3660 7F A3 EB 78 */ mr r3, r29
/* 802C6724 002C3664 3C 80 80 3A */ lis r4, lbl_803A7288@ha
/* 802C6728 002C3668 38 84 72 88 */ addi r4, r4, lbl_803A7288@l
/* 802C672C 002C366C A0 84 01 F4 */ lhz r4, 0x1f4(r4)
/* 802C6730 002C3670 4B D6 E2 8D */ bl isEventBit__11dSv_event_cCFUs
/* 802C6734 002C3674 2C 03 00 00 */ cmpwi r3, 0
/* 802C6738 002C3678 40 82 00 2C */ bne lbl_802C6764
lbl_802C673C:
/* 802C673C 002C367C 38 80 00 00 */ li r4, 0
/* 802C6740 002C3680 38 1E FF E9 */ addi r0, r30, -23
/* 802C6744 002C3684 28 00 00 01 */ cmplwi r0, 1
/* 802C6748 002C3688 40 81 00 0C */ ble lbl_802C6754
/* 802C674C 002C368C 2C 1E 00 19 */ cmpwi r30, 0x19
/* 802C6750 002C3690 40 82 00 08 */ bne lbl_802C6758
lbl_802C6754:
/* 802C6754 002C3694 38 80 00 01 */ li r4, 1
lbl_802C6758:
/* 802C6758 002C3698 7F E3 FB 78 */ mr r3, r31
/* 802C675C 002C369C 38 A0 00 64 */ li r5, 0x64
/* 802C6760 002C36A0 48 00 10 D1 */ bl Z2EnvSeMgr_NS_startRainSe
lbl_802C6764:
/* 802C6764 002C36A4 38 7F 00 64 */ addi r3, r31, 0x64
/* 802C6768 002C36A8 4B FE 85 55 */ bl resetMultiSePos__12Z2MultiSeMgrFv
lbl_802C676C:
/* 802C676C 002C36AC 2C 1E 00 2E */ cmpwi r30, 0x2e
/* 802C6770 002C36B0 40 82 00 18 */ bne lbl_802C6788
/* 802C6774 002C36B4 7F E3 FB 78 */ mr r3, r31
/* 802C6778 002C36B8 38 80 FF FF */ li r4, -1
/* 802C677C 002C36BC 48 00 40 19 */ bl Z2EnvSeMgr_NS_startLv3WaterSe
/* 802C6780 002C36C0 38 00 00 00 */ li r0, 0
/* 802C6784 002C36C4 98 1F 01 40 */ stb r0, 0x140(r31)
lbl_802C6788:
/* 802C6788 002C36C8 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802C678C 002C36CC 88 03 00 1D */ lbz r0, 0x1d(r3)
/* 802C6790 002C36D0 28 00 00 00 */ cmplwi r0, 0
/* 802C6794 002C36D4 41 82 00 70 */ beq lbl_802C6804
/* 802C6798 002C36D8 7F E3 FB 78 */ mr r3, r31
/* 802C679C 002C36DC 48 00 04 81 */ bl Z2EnvSeMgr_NS_playSceneEnvSe
/* 802C67A0 002C36E0 88 7F 01 40 */ lbz r3, 0x140(r31)
/* 802C67A4 002C36E4 7C 60 07 75 */ extsb. r0, r3
/* 802C67A8 002C36E8 40 81 00 5C */ ble lbl_802C6804
/* 802C67AC 002C36EC 88 1F 01 41 */ lbz r0, 0x141(r31)
/* 802C67B0 002C36F0 7C 00 07 75 */ extsb. r0, r0
/* 802C67B4 002C36F4 40 82 00 50 */ bne lbl_802C6804
/* 802C67B8 002C36F8 80 9F 00 84 */ lwz r4, 0x84(r31)
/* 802C67BC 002C36FC 28 04 00 00 */ cmplwi r4, 0
/* 802C67C0 002C3700 41 82 00 18 */ beq lbl_802C67D8
/* 802C67C4 002C3704 7C 63 07 74 */ extsb r3, r3
/* 802C67C8 002C3708 80 04 00 10 */ lwz r0, 0x10(r4)
/* 802C67CC 002C370C 7C 03 00 40 */ cmplw r3, r0
/* 802C67D0 002C3710 40 81 00 08 */ ble lbl_802C67D8
/* 802C67D4 002C3714 90 64 00 10 */ stw r3, 0x10(r4)
lbl_802C67D8:
/* 802C67D8 002C3718 80 9F 00 8C */ lwz r4, 0x8c(r31)
/* 802C67DC 002C371C 28 04 00 00 */ cmplwi r4, 0
/* 802C67E0 002C3720 41 82 00 1C */ beq lbl_802C67FC
/* 802C67E4 002C3724 88 7F 01 40 */ lbz r3, 0x140(r31)
/* 802C67E8 002C3728 7C 63 07 74 */ extsb r3, r3
/* 802C67EC 002C372C 80 04 00 10 */ lwz r0, 0x10(r4)
/* 802C67F0 002C3730 7C 03 00 40 */ cmplw r3, r0
/* 802C67F4 002C3734 40 81 00 08 */ ble lbl_802C67FC
/* 802C67F8 002C3738 90 64 00 10 */ stw r3, 0x10(r4)
lbl_802C67FC:
/* 802C67FC 002C373C 38 00 00 00 */ li r0, 0
/* 802C6800 002C3740 98 1F 01 40 */ stb r0, 0x140(r31)
lbl_802C6804:
/* 802C6804 002C3744 C0 5F 03 08 */ lfs f2, 0x308(r31)
/* 802C6808 002C3748 C0 22 C3 48 */ lfs f1, lbl_80455D48-_SDA2_BASE_(r2)
/* 802C680C 002C374C FC 02 08 40 */ fcmpo cr0, f2, f1
/* 802C6810 002C3750 40 81 00 20 */ ble lbl_802C6830
/* 802C6814 002C3754 C0 02 C3 78 */ lfs f0, lbl_80455D78-_SDA2_BASE_(r2)
/* 802C6818 002C3758 EC 02 00 28 */ fsubs f0, f2, f0
/* 802C681C 002C375C D0 1F 03 08 */ stfs f0, 0x308(r31)
/* 802C6820 002C3760 C0 1F 03 08 */ lfs f0, 0x308(r31)
/* 802C6824 002C3764 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 802C6828 002C3768 40 80 00 08 */ bge lbl_802C6830
/* 802C682C 002C376C D0 3F 03 08 */ stfs f1, 0x308(r31)
lbl_802C6830:
/* 802C6830 002C3770 88 7F 01 B8 */ lbz r3, 0x1b8(r31)
/* 802C6834 002C3774 7C 60 07 75 */ extsb. r0, r3
/* 802C6838 002C3778 40 81 00 1C */ ble lbl_802C6854
/* 802C683C 002C377C 7C 60 07 74 */ extsb r0, r3
/* 802C6840 002C3780 2C 00 00 64 */ cmpwi r0, 0x64
/* 802C6844 002C3784 40 80 00 10 */ bge lbl_802C6854
/* 802C6848 002C3788 38 03 00 01 */ addi r0, r3, 1
/* 802C684C 002C378C 98 1F 01 B8 */ stb r0, 0x1b8(r31)
/* 802C6850 002C3790 48 00 00 24 */ b lbl_802C6874
lbl_802C6854:
/* 802C6854 002C3794 7C 60 07 75 */ extsb. r0, r3
/* 802C6858 002C3798 40 80 00 1C */ bge lbl_802C6874
/* 802C685C 002C379C 7C 60 07 74 */ extsb r0, r3
/* 802C6860 002C37A0 2C 00 FF 9C */ cmpwi r0, -100
/* 802C6864 002C37A4 40 81 00 10 */ ble lbl_802C6874
/* 802C6868 002C37A8 88 7F 01 B8 */ lbz r3, 0x1b8(r31)
/* 802C686C 002C37AC 38 03 FF FF */ addi r0, r3, -1
/* 802C6870 002C37B0 98 1F 01 B8 */ stb r0, 0x1b8(r31)
lbl_802C6874:
/* 802C6874 002C37B4 88 7F 01 41 */ lbz r3, 0x141(r31)
/* 802C6878 002C37B8 7C 60 07 75 */ extsb. r0, r3
/* 802C687C 002C37BC 40 81 00 0C */ ble lbl_802C6888
/* 802C6880 002C37C0 38 03 FF FF */ addi r0, r3, -1
/* 802C6884 002C37C4 98 1F 01 41 */ stb r0, 0x141(r31)
lbl_802C6888:
/* 802C6888 002C37C8 80 6D 8D E0 */ lwz r3, lbl_80451360-_SDA_BASE_(r13)
/* 802C688C 002C37CC 28 03 00 00 */ cmplwi r3, 0
/* 802C6890 002C37D0 41 82 00 CC */ beq lbl_802C695C
/* 802C6894 002C37D4 88 03 00 CB */ lbz r0, 0xcb(r3)
/* 802C6898 002C37D8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802C689C 002C37DC 41 82 00 C0 */ beq lbl_802C695C
/* 802C68A0 002C37E0 88 7F 02 E4 */ lbz r3, 0x2e4(r31)
/* 802C68A4 002C37E4 28 03 00 1E */ cmplwi r3, 0x1e
/* 802C68A8 002C37E8 40 80 00 0C */ bge lbl_802C68B4
/* 802C68AC 002C37EC 38 03 00 01 */ addi r0, r3, 1
/* 802C68B0 002C37F0 98 1F 02 E4 */ stb r0, 0x2e4(r31)
lbl_802C68B4:
/* 802C68B4 002C37F4 88 1F 02 D8 */ lbz r0, 0x2d8(r31)
/* 802C68B8 002C37F8 7C 00 07 75 */ extsb. r0, r0
/* 802C68BC 002C37FC 41 80 00 B4 */ blt lbl_802C6970
/* 802C68C0 002C3800 C0 1F 02 C4 */ lfs f0, 0x2c4(r31)
/* 802C68C4 002C3804 C3 C2 C3 44 */ lfs f30, lbl_80455D44-_SDA2_BASE_(r2)
/* 802C68C8 002C3808 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 802C68CC 002C380C 40 81 00 08 */ ble lbl_802C68D4
/* 802C68D0 002C3810 48 00 00 18 */ b lbl_802C68E8
lbl_802C68D4:
/* 802C68D4 002C3814 C3 C2 C3 48 */ lfs f30, lbl_80455D48-_SDA2_BASE_(r2)
/* 802C68D8 002C3818 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 802C68DC 002C381C 40 80 00 08 */ bge lbl_802C68E4
/* 802C68E0 002C3820 48 00 00 08 */ b lbl_802C68E8
lbl_802C68E4:
/* 802C68E4 002C3824 FF C0 00 90 */ fmr f30, f0
lbl_802C68E8:
/* 802C68E8 002C3828 3C 60 00 09 */ lis r3, 0x0009001E@ha
/* 802C68EC 002C382C 38 03 00 1E */ addi r0, r3, 0x0009001E@l
/* 802C68F0 002C3830 90 01 00 08 */ stw r0, 8(r1)
/* 802C68F4 002C3834 38 7F 02 C0 */ addi r3, r31, 0x2c0
/* 802C68F8 002C3838 4B FE 84 C9 */ bl getDolbyPower__12Z2MultiSeMgrFv
/* 802C68FC 002C383C FF E0 08 90 */ fmr f31, f1
/* 802C6900 002C3840 38 7F 02 C0 */ addi r3, r31, 0x2c0
/* 802C6904 002C3844 4B FE 83 DD */ bl getPanPower__12Z2MultiSeMgrFv
/* 802C6908 002C3848 FC 60 08 90 */ fmr f3, f1
/* 802C690C 002C384C 38 7F 02 DC */ addi r3, r31, 0x2dc
/* 802C6910 002C3850 38 81 00 08 */ addi r4, r1, 8
/* 802C6914 002C3854 C0 22 C3 48 */ lfs f1, lbl_80455D48-_SDA2_BASE_(r2)
/* 802C6918 002C3858 88 1F 02 E4 */ lbz r0, 0x2e4(r31)
/* 802C691C 002C385C C8 42 C3 58 */ lfd f2, lbl_80455D58-_SDA2_BASE_(r2)
/* 802C6920 002C3860 90 01 00 14 */ stw r0, 0x14(r1)
/* 802C6924 002C3864 3C 00 43 30 */ lis r0, 0x4330
/* 802C6928 002C3868 90 01 00 10 */ stw r0, 0x10(r1)
/* 802C692C 002C386C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802C6930 002C3870 EC 40 10 28 */ fsubs f2, f0, f2
/* 802C6934 002C3874 C0 02 C3 EC */ lfs f0, lbl_80455DEC-_SDA2_BASE_(r2)
/* 802C6938 002C3878 EC 02 00 24 */ fdivs f0, f2, f0
/* 802C693C 002C387C EC 40 07 B2 */ fmuls f2, f0, f30
/* 802C6940 002C3880 FC 80 F8 90 */ fmr f4, f31
/* 802C6944 002C3884 C0 A2 C3 44 */ lfs f5, lbl_80455D44-_SDA2_BASE_(r2)
/* 802C6948 002C3888 38 A0 00 00 */ li r5, 0
/* 802C694C 002C388C 4B FF F1 69 */ bl Z2EnvSeBase_NS_startEnvSeLevel
/* 802C6950 002C3890 38 7F 02 C0 */ addi r3, r31, 0x2c0
/* 802C6954 002C3894 4B FE 83 69 */ bl resetMultiSePos__12Z2MultiSeMgrFv
/* 802C6958 002C3898 48 00 00 18 */ b lbl_802C6970
lbl_802C695C:
/* 802C695C 002C389C 88 7F 02 E4 */ lbz r3, 0x2e4(r31)
/* 802C6960 002C38A0 28 03 00 00 */ cmplwi r3, 0
/* 802C6964 002C38A4 41 82 00 0C */ beq lbl_802C6970
/* 802C6968 002C38A8 38 03 FF FF */ addi r0, r3, -1
/* 802C696C 002C38AC 98 1F 02 E4 */ stb r0, 0x2e4(r31)
lbl_802C6970:
/* 802C6970 002C38B0 E3 E1 00 48 */ psq_l f31, 72(r1), 0, 0
/* 802C6974 002C38B4 CB E1 00 40 */ lfd f31, 0x40(r1)
/* 802C6978 002C38B8 E3 C1 00 38 */ psq_l f30, 56(r1), 0, 0
/* 802C697C 002C38BC CB C1 00 30 */ lfd f30, 0x30(r1)
/* 802C6980 002C38C0 39 61 00 30 */ addi r11, r1, 0x30
/* 802C6984 002C38C4 48 09 B8 A5 */ bl _restgpr_29
/* 802C6988 002C38C8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802C698C 002C38CC 7C 08 03 A6 */ mtlr r0
/* 802C6990 002C38D0 38 21 00 50 */ addi r1, r1, 0x50
/* 802C6994 002C38D4 4E 80 00 20 */ blr