mirror of https://github.com/zeldaret/tp.git
Various Matches and Improvements (#1889)
This commit is contained in:
parent
42c47c82a7
commit
cf0b47a5ba
|
|
@ -1,69 +0,0 @@
|
|||
lbl_802A108C:
|
||||
/* 802A108C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802A1090 7C 08 02 A6 */ mflr r0
|
||||
/* 802A1094 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802A1098 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802A109C 48 0C 11 41 */ bl _savegpr_29
|
||||
/* 802A10A0 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802A10A4 88 03 02 BD */ lbz r0, 0x2bd(r3)
|
||||
/* 802A10A8 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 802A10AC 41 82 00 1C */ beq lbl_802A10C8
|
||||
/* 802A10B0 88 1D 02 BD */ lbz r0, 0x2bd(r29)
|
||||
/* 802A10B4 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
||||
/* 802A10B8 40 82 00 1C */ bne lbl_802A10D4
|
||||
/* 802A10BC 88 1D 00 1E */ lbz r0, 0x1e(r29)
|
||||
/* 802A10C0 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 802A10C4 40 82 00 10 */ bne lbl_802A10D4
|
||||
lbl_802A10C8:
|
||||
/* 802A10C8 7F A3 EB 78 */ mr r3, r29
|
||||
/* 802A10CC 48 00 00 B5 */ bl die___6JAISeqFv
|
||||
/* 802A10D0 48 00 00 98 */ b lbl_802A1168
|
||||
lbl_802A10D4:
|
||||
/* 802A10D4 7F A3 EB 78 */ mr r3, r29
|
||||
/* 802A10D8 48 00 15 E1 */ bl calc_JAISound___8JAISoundFv
|
||||
/* 802A10DC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 802A10E0 41 82 00 88 */ beq lbl_802A1168
|
||||
/* 802A10E4 C0 3D 03 70 */ lfs f1, 0x370(r29)
|
||||
/* 802A10E8 80 7D 03 7C */ lwz r3, 0x37c(r29)
|
||||
/* 802A10EC 28 03 00 01 */ cmplwi r3, 1
|
||||
/* 802A10F0 40 81 00 18 */ ble lbl_802A1108
|
||||
/* 802A10F4 38 03 FF FF */ addi r0, r3, -1
|
||||
/* 802A10F8 90 1D 03 7C */ stw r0, 0x37c(r29)
|
||||
/* 802A10FC C0 1D 03 74 */ lfs f0, 0x374(r29)
|
||||
/* 802A1100 EC 21 00 2A */ fadds f1, f1, f0
|
||||
/* 802A1104 48 00 00 14 */ b lbl_802A1118
|
||||
lbl_802A1108:
|
||||
/* 802A1108 40 82 00 10 */ bne lbl_802A1118
|
||||
/* 802A110C 38 00 00 00 */ li r0, 0
|
||||
/* 802A1110 90 1D 03 7C */ stw r0, 0x37c(r29)
|
||||
/* 802A1114 C0 3D 03 78 */ lfs f1, 0x378(r29)
|
||||
lbl_802A1118:
|
||||
/* 802A1118 D0 3D 03 70 */ stfs f1, 0x370(r29)
|
||||
/* 802A111C 3B C0 00 00 */ li r30, 0
|
||||
/* 802A1120 3B E0 00 00 */ li r31, 0
|
||||
lbl_802A1124:
|
||||
/* 802A1124 38 1F 02 F0 */ addi r0, r31, 0x2f0
|
||||
/* 802A1128 7C 7D 00 2E */ lwzx r3, r29, r0
|
||||
/* 802A112C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A1130 41 82 00 08 */ beq lbl_802A1138
|
||||
/* 802A1134 48 00 1A 49 */ bl calc__13JAISoundChildFv
|
||||
lbl_802A1138:
|
||||
/* 802A1138 3B DE 00 01 */ addi r30, r30, 1
|
||||
/* 802A113C 2C 1E 00 20 */ cmpwi r30, 0x20
|
||||
/* 802A1140 3B FF 00 04 */ addi r31, r31, 4
|
||||
/* 802A1144 41 80 FF E0 */ blt lbl_802A1124
|
||||
/* 802A1148 80 7D 03 A8 */ lwz r3, 0x3a8(r29)
|
||||
/* 802A114C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A1150 41 82 00 18 */ beq lbl_802A1168
|
||||
/* 802A1154 7F A4 EB 78 */ mr r4, r29
|
||||
/* 802A1158 81 83 00 00 */ lwz r12, 0(r3)
|
||||
/* 802A115C 81 8C 00 0C */ lwz r12, 0xc(r12)
|
||||
/* 802A1160 7D 89 03 A6 */ mtctr r12
|
||||
/* 802A1164 4E 80 04 21 */ bctrl
|
||||
lbl_802A1168:
|
||||
/* 802A1168 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802A116C 48 0C 10 BD */ bl _restgpr_29
|
||||
/* 802A1170 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802A1174 7C 08 03 A6 */ mtlr r0
|
||||
/* 802A1178 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802A117C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,79 +0,0 @@
|
|||
lbl_80079CC4:
|
||||
/* 80079CC4 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80079CC8 7C 08 02 A6 */ mflr r0
|
||||
/* 80079CCC 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80079CD0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80079CD4 48 2E 85 05 */ bl _savegpr_28
|
||||
/* 80079CD8 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 80079CDC 7C 9E 23 78 */ mr r30, r4
|
||||
/* 80079CE0 80 83 00 A0 */ lwz r4, 0xa0(r3)
|
||||
/* 80079CE4 80 04 00 24 */ lwz r0, 0x24(r4)
|
||||
/* 80079CE8 1F FE 00 34 */ mulli r31, r30, 0x34
|
||||
/* 80079CEC 7C 80 FA 14 */ add r4, r0, r31
|
||||
/* 80079CF0 A0 84 00 2E */ lhz r4, 0x2e(r4)
|
||||
/* 80079CF4 28 04 FF FF */ cmplwi r4, 0xffff
|
||||
/* 80079CF8 41 82 00 68 */ beq lbl_80079D60
|
||||
/* 80079CFC 4B FF FE E1 */ bl MakeNodeTreeRp__4cBgWFi
|
||||
/* 80079D00 80 9D 00 AC */ lwz r4, 0xac(r29)
|
||||
/* 80079D04 80 7D 00 A0 */ lwz r3, 0xa0(r29)
|
||||
/* 80079D08 80 03 00 24 */ lwz r0, 0x24(r3)
|
||||
/* 80079D0C 7C 60 FA 14 */ add r3, r0, r31
|
||||
/* 80079D10 A0 03 00 2E */ lhz r0, 0x2e(r3)
|
||||
/* 80079D14 1C 00 00 1C */ mulli r0, r0, 0x1c
|
||||
/* 80079D18 7C 84 02 14 */ add r4, r4, r0
|
||||
/* 80079D1C 80 1D 00 A8 */ lwz r0, 0xa8(r29)
|
||||
/* 80079D20 57 DC 28 34 */ slwi r28, r30, 5
|
||||
/* 80079D24 38 7C 00 04 */ addi r3, r28, 4
|
||||
/* 80079D28 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 80079D2C 48 1F 50 79 */ bl SetMin__8cM3dGAabFRC4cXyz
|
||||
/* 80079D30 80 BD 00 AC */ lwz r5, 0xac(r29)
|
||||
/* 80079D34 80 7D 00 A0 */ lwz r3, 0xa0(r29)
|
||||
/* 80079D38 80 03 00 24 */ lwz r0, 0x24(r3)
|
||||
/* 80079D3C 7C 60 FA 14 */ add r3, r0, r31
|
||||
/* 80079D40 A0 03 00 2E */ lhz r0, 0x2e(r3)
|
||||
/* 80079D44 1C 60 00 1C */ mulli r3, r0, 0x1c
|
||||
/* 80079D48 38 83 00 0C */ addi r4, r3, 0xc
|
||||
/* 80079D4C 7C 85 22 14 */ add r4, r5, r4
|
||||
/* 80079D50 80 1D 00 A8 */ lwz r0, 0xa8(r29)
|
||||
/* 80079D54 38 7C 00 04 */ addi r3, r28, 4
|
||||
/* 80079D58 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 80079D5C 48 1F 50 89 */ bl SetMax__8cM3dGAabFRC4cXyz
|
||||
lbl_80079D60:
|
||||
/* 80079D60 80 7D 00 A0 */ lwz r3, 0xa0(r29)
|
||||
/* 80079D64 80 03 00 24 */ lwz r0, 0x24(r3)
|
||||
/* 80079D68 7C 60 FA 14 */ add r3, r0, r31
|
||||
/* 80079D6C A3 E3 00 28 */ lhz r31, 0x28(r3)
|
||||
/* 80079D70 57 DE 28 34 */ slwi r30, r30, 5
|
||||
lbl_80079D74:
|
||||
/* 80079D74 3C 1F 00 00 */ addis r0, r31, 0
|
||||
/* 80079D78 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 80079D7C 41 82 00 5C */ beq lbl_80079DD8
|
||||
/* 80079D80 7F A3 EB 78 */ mr r3, r29
|
||||
/* 80079D84 7F E4 FB 78 */ mr r4, r31
|
||||
/* 80079D88 4B FF FF 3D */ bl MakeNodeTreeGrpRp__4cBgWFi
|
||||
/* 80079D8C 80 1D 00 A8 */ lwz r0, 0xa8(r29)
|
||||
/* 80079D90 57 FC 28 34 */ slwi r28, r31, 5
|
||||
/* 80079D94 38 9C 00 04 */ addi r4, r28, 4
|
||||
/* 80079D98 7C 80 22 14 */ add r4, r0, r4
|
||||
/* 80079D9C 38 7E 00 04 */ addi r3, r30, 4
|
||||
/* 80079DA0 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 80079DA4 48 1F 50 01 */ bl SetMin__8cM3dGAabFRC4cXyz
|
||||
/* 80079DA8 80 1D 00 A8 */ lwz r0, 0xa8(r29)
|
||||
/* 80079DAC 38 9C 00 10 */ addi r4, r28, 0x10
|
||||
/* 80079DB0 7C 80 22 14 */ add r4, r0, r4
|
||||
/* 80079DB4 38 7E 00 04 */ addi r3, r30, 4
|
||||
/* 80079DB8 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 80079DBC 48 1F 50 29 */ bl SetMax__8cM3dGAabFRC4cXyz
|
||||
/* 80079DC0 80 7D 00 A0 */ lwz r3, 0xa0(r29)
|
||||
/* 80079DC4 80 83 00 24 */ lwz r4, 0x24(r3)
|
||||
/* 80079DC8 1C 7F 00 34 */ mulli r3, r31, 0x34
|
||||
/* 80079DCC 38 03 00 26 */ addi r0, r3, 0x26
|
||||
/* 80079DD0 7F E4 02 2E */ lhzx r31, r4, r0
|
||||
/* 80079DD4 4B FF FF A0 */ b lbl_80079D74
|
||||
lbl_80079DD8:
|
||||
/* 80079DD8 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80079DDC 48 2E 84 49 */ bl _restgpr_28
|
||||
/* 80079DE0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80079DE4 7C 08 03 A6 */ mtlr r0
|
||||
/* 80079DE8 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80079DEC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
lbl_80079DF0:
|
||||
/* 80079DF0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80079DF4 7C 08 02 A6 */ mflr r0
|
||||
/* 80079DF8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80079DFC 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80079E00 48 2E 83 DD */ bl _savegpr_29
|
||||
/* 80079E04 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80079E08 80 03 00 9C */ lwz r0, 0x9c(r3)
|
||||
/* 80079E0C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80079E10 40 82 00 4C */ bne lbl_80079E5C
|
||||
/* 80079E14 38 C0 00 00 */ li r6, 0
|
||||
/* 80079E18 38 60 00 00 */ li r3, 0
|
||||
/* 80079E1C 80 BF 00 A0 */ lwz r5, 0xa0(r31)
|
||||
/* 80079E20 80 05 00 20 */ lwz r0, 0x20(r5)
|
||||
/* 80079E24 7C 09 03 A6 */ mtctr r0
|
||||
/* 80079E28 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80079E2C 40 81 00 A8 */ ble lbl_80079ED4
|
||||
lbl_80079E30:
|
||||
/* 80079E30 80 85 00 24 */ lwz r4, 0x24(r5)
|
||||
/* 80079E34 38 03 00 24 */ addi r0, r3, 0x24
|
||||
/* 80079E38 7C 04 02 2E */ lhzx r0, r4, r0
|
||||
/* 80079E3C 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 80079E40 40 82 00 0C */ bne lbl_80079E4C
|
||||
/* 80079E44 B0 DF 00 92 */ sth r6, 0x92(r31)
|
||||
/* 80079E48 48 00 00 8C */ b lbl_80079ED4
|
||||
lbl_80079E4C:
|
||||
/* 80079E4C 38 C6 00 01 */ addi r6, r6, 1
|
||||
/* 80079E50 38 63 00 34 */ addi r3, r3, 0x34
|
||||
/* 80079E54 42 00 FF DC */ bdnz lbl_80079E30
|
||||
/* 80079E58 48 00 00 7C */ b lbl_80079ED4
|
||||
lbl_80079E5C:
|
||||
/* 80079E5C 3B A0 00 00 */ li r29, 0
|
||||
/* 80079E60 3B C0 00 00 */ li r30, 0
|
||||
/* 80079E64 48 00 00 1C */ b lbl_80079E80
|
||||
lbl_80079E68:
|
||||
/* 80079E68 80 1F 00 A8 */ lwz r0, 0xa8(r31)
|
||||
/* 80079E6C 38 7E 00 04 */ addi r3, r30, 4
|
||||
/* 80079E70 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 80079E74 48 1F 4E 85 */ bl ClearForMinMax__8cM3dGAabFv
|
||||
/* 80079E78 3B BD 00 01 */ addi r29, r29, 1
|
||||
/* 80079E7C 3B DE 00 20 */ addi r30, r30, 0x20
|
||||
lbl_80079E80:
|
||||
/* 80079E80 80 DF 00 A0 */ lwz r6, 0xa0(r31)
|
||||
/* 80079E84 80 06 00 20 */ lwz r0, 0x20(r6)
|
||||
/* 80079E88 7C 1D 00 00 */ cmpw r29, r0
|
||||
/* 80079E8C 41 80 FF DC */ blt lbl_80079E68
|
||||
/* 80079E90 38 80 00 00 */ li r4, 0
|
||||
/* 80079E94 38 60 00 00 */ li r3, 0
|
||||
/* 80079E98 7C 09 03 A6 */ mtctr r0
|
||||
/* 80079E9C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80079EA0 40 81 00 34 */ ble lbl_80079ED4
|
||||
lbl_80079EA4:
|
||||
/* 80079EA4 80 A6 00 24 */ lwz r5, 0x24(r6)
|
||||
/* 80079EA8 38 03 00 24 */ addi r0, r3, 0x24
|
||||
/* 80079EAC 7C 05 02 2E */ lhzx r0, r5, r0
|
||||
/* 80079EB0 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 80079EB4 40 82 00 14 */ bne lbl_80079EC8
|
||||
/* 80079EB8 B0 9F 00 92 */ sth r4, 0x92(r31)
|
||||
/* 80079EBC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80079EC0 4B FF FE 05 */ bl MakeNodeTreeGrpRp__4cBgWFi
|
||||
/* 80079EC4 48 00 00 10 */ b lbl_80079ED4
|
||||
lbl_80079EC8:
|
||||
/* 80079EC8 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 80079ECC 38 63 00 34 */ addi r3, r3, 0x34
|
||||
/* 80079ED0 42 00 FF D4 */ bdnz lbl_80079EA4
|
||||
lbl_80079ED4:
|
||||
/* 80079ED4 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80079ED8 48 2E 83 51 */ bl _restgpr_29
|
||||
/* 80079EDC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80079EE0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80079EE4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80079EE8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
lbl_801ADE00:
|
||||
/* 801ADE00 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 801ADE04 7C 08 02 A6 */ mflr r0
|
||||
/* 801ADE08 90 01 00 44 */ stw r0, 0x44(r1)
|
||||
/* 801ADE0C 4B EA 96 D5 */ bl dKyw_wether_init__Fv
|
||||
/* 801ADE10 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 801ADE14 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 801ADE18 38 63 4E 00 */ addi r3, r3, 0x4e00
|
||||
/* 801ADE1C 3C 80 80 39 */ lis r4, d_d_kyeff__stringBase0@ha /* 0x80394F38@ha */
|
||||
/* 801ADE20 38 84 4F 38 */ addi r4, r4, d_d_kyeff__stringBase0@l /* 0x80394F38@l */
|
||||
/* 801ADE24 48 1B AB 71 */ bl strcmp
|
||||
/* 801ADE28 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 801ADE2C 40 82 00 60 */ bne lbl_801ADE8C
|
||||
/* 801ADE30 48 19 48 CD */ bl OSGetTime
|
||||
/* 801ADE34 38 A1 00 08 */ addi r5, r1, 8
|
||||
/* 801ADE38 48 19 4B 3D */ bl OSTicksToCalendarTime
|
||||
/* 801ADE3C C0 02 A4 5C */ lfs f0, lit_3805(r2)
|
||||
/* 801ADE40 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 801ADE44 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 801ADE48 D0 03 0E 48 */ stfs f0, 0xe48(r3)
|
||||
/* 801ADE4C C0 02 A4 58 */ lfs f0, lit_3804(r2)
|
||||
/* 801ADE50 D0 03 0E 4C */ stfs f0, 0xe4c(r3)
|
||||
/* 801ADE54 D0 03 0E 50 */ stfs f0, 0xe50(r3)
|
||||
/* 801ADE58 C0 02 A4 68 */ lfs f0, lit_3843(r2)
|
||||
/* 801ADE5C D0 03 0E 58 */ stfs f0, 0xe58(r3)
|
||||
/* 801ADE60 C0 42 A4 6C */ lfs f2, lit_3844(r2)
|
||||
/* 801ADE64 80 01 00 10 */ lwz r0, 0x10(r1)
|
||||
/* 801ADE68 C8 22 A4 60 */ lfd f1, lit_3812(r2)
|
||||
/* 801ADE6C 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 801ADE70 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 801ADE74 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 801ADE78 90 01 00 30 */ stw r0, 0x30(r1)
|
||||
/* 801ADE7C C8 01 00 30 */ lfd f0, 0x30(r1)
|
||||
/* 801ADE80 EC 00 08 28 */ fsubs f0, f0, f1
|
||||
/* 801ADE84 EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 801ADE88 D0 03 12 44 */ stfs f0, 0x1244(r3)
|
||||
lbl_801ADE8C:
|
||||
/* 801ADE8C 38 60 00 04 */ li r3, 4
|
||||
/* 801ADE90 80 01 00 44 */ lwz r0, 0x44(r1)
|
||||
/* 801ADE94 7C 08 03 A6 */ mtlr r0
|
||||
/* 801ADE98 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 801ADE9C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
lbl_8009C8D8:
|
||||
/* 8009C8D8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8009C8DC 7C 08 02 A6 */ mflr r0
|
||||
/* 8009C8E0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8009C8E4 7C 68 1B 78 */ mr r8, r3
|
||||
/* 8009C8E8 7C 87 23 78 */ mr r7, r4
|
||||
/* 8009C8EC 80 6D 8A 20 */ lwz r3, m_myObj__10dMdl_mng_c(r13)
|
||||
/* 8009C8F0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8009C8F4 40 82 00 0C */ bne lbl_8009C900
|
||||
/* 8009C8F8 38 60 00 00 */ li r3, 0
|
||||
/* 8009C8FC 48 00 00 24 */ b lbl_8009C920
|
||||
lbl_8009C900:
|
||||
/* 8009C900 1C A5 04 04 */ mulli r5, r5, 0x404
|
||||
/* 8009C904 3C 80 80 3F */ lis r4, mStatus__20dStage_roomControl_c@ha /* 0x803F6094@ha */
|
||||
/* 8009C908 38 04 60 94 */ addi r0, r4, mStatus__20dStage_roomControl_c@l /* 0x803F6094@l */
|
||||
/* 8009C90C 7C 80 2A 14 */ add r4, r0, r5
|
||||
/* 8009C910 38 C4 00 6C */ addi r6, r4, 0x6c
|
||||
/* 8009C914 7D 04 43 78 */ mr r4, r8
|
||||
/* 8009C918 7C E5 3B 78 */ mr r5, r7
|
||||
/* 8009C91C 4B FF FE 09 */ bl entry__10dMdl_mng_cFP12J3DModelDataUsP12dKy_tevstr_c
|
||||
lbl_8009C920:
|
||||
/* 8009C920 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8009C924 7C 08 03 A6 */ mtlr r0
|
||||
/* 8009C928 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8009C92C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
lbl_80C5FD40:
|
||||
/* 80C5FD40 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80C5FD44 7C 08 02 A6 */ mflr r0
|
||||
/* 80C5FD48 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80C5FD4C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80C5FD50 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80C5FD54 3C 60 80 C6 */ lis r3, d_a_obj_lv4PoGate__stringBase0@ha /* 0x80C60848@ha */
|
||||
/* 80C5FD58 38 63 08 48 */ addi r3, r3, d_a_obj_lv4PoGate__stringBase0@l /* 0x80C60848@l */
|
||||
/* 80C5FD5C 38 80 00 04 */ li r4, 4
|
||||
/* 80C5FD60 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80C5FD64 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80C5FD68 3C A5 00 02 */ addis r5, r5, 2
|
||||
/* 80C5FD6C 38 C0 00 80 */ li r6, 0x80
|
||||
/* 80C5FD70 38 A5 C2 F8 */ addi r5, r5, -15624
|
||||
/* 80C5FD74 4B 3D C5 79 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
|
||||
/* 80C5FD78 3C 80 00 08 */ lis r4, 8
|
||||
/* 80C5FD7C 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */
|
||||
/* 80C5FD80 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */
|
||||
/* 80C5FD84 4B 3B 4E D1 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
||||
/* 80C5FD88 90 7F 05 A8 */ stw r3, 0x5a8(r31)
|
||||
/* 80C5FD8C 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
|
||||
/* 80C5FD90 30 03 FF FF */ addic r0, r3, -1
|
||||
/* 80C5FD94 7C 60 19 10 */ subfe r3, r0, r3
|
||||
/* 80C5FD98 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80C5FD9C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80C5FDA0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80C5FDA4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80C5FDA8 4E 80 00 20 */ blr
|
||||
|
|
@ -114,6 +114,10 @@ public:
|
|||
memPool_->free(ptr, n);
|
||||
}
|
||||
|
||||
static void newMemPool(int n) {
|
||||
getMemPool()->newMemPool(n);
|
||||
}
|
||||
|
||||
private:
|
||||
static JASMemPool_MultiThreaded<T>* getMemPool() {
|
||||
static JASMemPool_MultiThreaded<T> memPool_;
|
||||
|
|
|
|||
|
|
@ -148,7 +148,7 @@ struct JASTrack {
|
|||
/* 0x1F4 */ short field_0x1f4[8];
|
||||
/* 0x204 */ short field_0x204[8];
|
||||
/* 0x214 */ char field_0x214;
|
||||
/* 0x215 */ u8 mStatus;
|
||||
/* 0x215 */ volatile u8 mStatus;
|
||||
/* 0x216 */ struct {
|
||||
u8 flag0 : 1;
|
||||
u8 flag1 : 1;
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ struct dzb_tree_data {
|
|||
struct dzb_g_data {
|
||||
/* 0x00 */ u8 field_0x0[0x24 - 0x0];
|
||||
/* 0x24 */ u16 field_0x24;
|
||||
/* 0x26 */ u8 field_0x26[0x28 - 0x26];
|
||||
/* 0x26 */ u16 field_0x26;
|
||||
/* 0x28 */ u16 field_0x28;
|
||||
/* 0x2A */ u16 field_0x2a;
|
||||
/* 0x2C */ u8 field_0x2c[0x2E - 0x2C];
|
||||
|
|
@ -208,6 +208,7 @@ public:
|
|||
bool ChkNoCalcVtx() { return field_0x88 & 2; }
|
||||
bool ChkFlush() { return field_0x91 & 8; }
|
||||
void SetLock() { field_0x88 |= 0x80; }
|
||||
bool ChkRoofRegist() { return field_0x91 & 4;}
|
||||
|
||||
public:
|
||||
/* 0x18 */ MtxP pm_base;
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public:
|
|||
|
||||
/* 8009C6DC */ dMdl_c* search(J3DModelData*, u16, dKy_tevstr_c*);
|
||||
/* 8009C724 */ dMdl_c* entry(J3DModelData*, u16, dKy_tevstr_c*);
|
||||
/* 8009C8D8 */ dMdl_c* entry(J3DModelData*, u16, int);
|
||||
/* 8009C8D8 */ static dMdl_c* entry(J3DModelData*, u16, int);
|
||||
/* 8009C7AC */ static void create();
|
||||
/* 8009C864 */ void remove();
|
||||
/* 8009C8C0 */ static void reset();
|
||||
|
|
|
|||
|
|
@ -5,6 +5,22 @@
|
|||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
|
||||
class daLv4PoGate_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
/* 80C5FBEC */ daLv4PoGate_HIO_c();
|
||||
/* 80C60758 */ virtual ~daLv4PoGate_HIO_c() {};
|
||||
|
||||
/* 0x04 */ f32 mOpenSpeed;
|
||||
/* 0x08 */ f32 mCloseStep1Speed;
|
||||
/* 0x0C */ f32 mCloseStep2Speed;
|
||||
/* 0x10 */ f32 mCloseStep1Amount;
|
||||
/* 0x14 */ f32 mCloseStep2Amount;
|
||||
/* 0x18 */ u8 mCloseStep1Wait;
|
||||
/* 0x19 */ u8 mCloseStep2Wait;
|
||||
/* 0x1C */ f32 mCloseStep3Speed;
|
||||
/* 0x20 */ f32 mCloseStep3Max;
|
||||
/* 0x24 */ u8 mShockStrength;
|
||||
};
|
||||
|
||||
class daLv4PoGate_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
|
|
@ -55,21 +71,4 @@ public:
|
|||
/* 0x5B8 */ u8 mCloseWaitTime;
|
||||
};
|
||||
|
||||
class daLv4PoGate_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
/* 80C5FBEC */ daLv4PoGate_HIO_c();
|
||||
/* 80C60758 */ virtual ~daLv4PoGate_HIO_c();
|
||||
|
||||
/* 0x04 */ f32 mOpenSpeed;
|
||||
/* 0x08 */ f32 mCloseStep1Speed;
|
||||
/* 0x0C */ f32 mCloseStep2Speed;
|
||||
/* 0x10 */ f32 mCloseStep1Amount;
|
||||
/* 0x14 */ f32 mCloseStep2Amount;
|
||||
/* 0x18 */ u8 mCloseStep1Wait;
|
||||
/* 0x19 */ u8 mCloseStep2Wait;
|
||||
/* 0x1C */ f32 mCloseStep3Speed;
|
||||
/* 0x20 */ f32 mCloseStep3Max;
|
||||
/* 0x24 */ u8 mShockStrength;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_LV4POGATE_H */
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
#include "JSystem/JAudio2/JAISeq.h"
|
||||
#include "JSystem/JAudio2/JAISeqMgr.h"
|
||||
#include "JSystem/JAudio2/JASAudioReseter.h" // JASCriticalSection
|
||||
#include "JSystem/JAudio2/JAISoundChild.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
|
|
@ -295,8 +296,6 @@ bool JAISeq::prepare_(JASSoundParams const& param_0, JAISoundActivity param_1) {
|
|||
}
|
||||
|
||||
/* 802A108C-802A1180 29B9CC 00F4+00 0/0 1/1 0/0 .text JAISeqMgr_calc___6JAISeqFv */
|
||||
// missing instruction
|
||||
#ifdef NONMATCHING
|
||||
void JAISeq::JAISeqMgr_calc_() {
|
||||
if (inner_.outputTrack.getStatus() == 2 || (inner_.outputTrack.getStatus() == 0 && status_.state.unk == 2)) {
|
||||
die_();
|
||||
|
|
@ -314,16 +313,6 @@ void JAISeq::JAISeqMgr_calc_() {
|
|||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JAISeq::JAISeqMgr_calc_() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAISeq/JAISeqMgr_calc___6JAISeqFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804340A4-804340B0 060DC4 000C+00 3/3 0/0 0/0 .bss @896 */
|
||||
|
|
|
|||
|
|
@ -4,6 +4,9 @@
|
|||
//
|
||||
|
||||
#include "JSystem/JAudio2/JASAudioThread.h"
|
||||
#include "JSystem/JAudio2/JASDriverIF.h"
|
||||
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
||||
#include "JSystem/JKernel/JKRSolidHeap.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/os/OS.h"
|
||||
#include "dolphin/dsp/dsp.h"
|
||||
|
|
@ -17,18 +20,12 @@ struct JASProbe {
|
|||
/* 80290F24 */ static void stop(s32);
|
||||
};
|
||||
|
||||
template <typename A0>
|
||||
struct JASMemPool {};
|
||||
|
||||
/* JASMemPool_MultiThreaded<JASChannel> */
|
||||
struct JASMemPool_MultiThreaded__template2 {
|
||||
/* 802978DC */ void func_802978DC(void* _this);
|
||||
};
|
||||
|
||||
struct JASGenericMemPool {
|
||||
/* 80290848 */ JASGenericMemPool();
|
||||
/* 802908C8 */ static void newMemPool(u32, int);
|
||||
};
|
||||
|
||||
|
||||
struct JASDsp {
|
||||
/* 8029D958 */ static void boot(void (*)(void*));
|
||||
|
|
@ -85,7 +82,6 @@ extern "C" u8 sSystemHeap__7JKRHeap[4];
|
|||
extern "C" u8 sCurrentHeap__7JKRHeap[4];
|
||||
extern "C" extern u8 __OSReport_disable;
|
||||
|
||||
extern JKRHeap* JASDram;
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
|
@ -139,27 +135,12 @@ private:
|
|||
BOOL mInterrupts;
|
||||
};
|
||||
|
||||
class JASChannel {};
|
||||
|
||||
template <class T>
|
||||
class JASMemPool_MultiThreaded {
|
||||
public:
|
||||
static void newMemPool(int param_1) {
|
||||
Lock lock;
|
||||
JASGenericMemPool::newMemPool(0x108, param_1);
|
||||
}
|
||||
};
|
||||
|
||||
template <class T>
|
||||
class JASPoolAllocObject_MultiThreaded {
|
||||
public:
|
||||
static void newMemPool(int param_1) {
|
||||
JASMemPool_MultiThreaded<T>::newMemPool(param_1);
|
||||
}
|
||||
class JASChannel {
|
||||
u8 filler[0x108];
|
||||
};
|
||||
|
||||
/* 8029CDEC-8029CF68 29772C 017C+00 1/0 0/0 0/0 .text run__14JASAudioThreadFv */
|
||||
// JASPoolAllocObject_MultiThreaded is complex
|
||||
// Maybe location of JASPoolAllocObject_MultiThreaded<JASChannel>
|
||||
#ifdef NONMATCHING
|
||||
void* JASAudioThread::run() {
|
||||
i_OSInitFastCast();
|
||||
|
|
|
|||
|
|
@ -187,6 +187,7 @@ asm daNPC_TR_HIO_c::daNPC_TR_HIO_c() {
|
|||
#endif
|
||||
|
||||
/* 80B25A54-80B25B78 000134 0124+00 1/1 0/0 0/0 .text nodeCallBack__FP8J3DJointi */
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
static int nodeCallBack(J3DJoint* p_joint, int param_1) {
|
||||
if (param_1 == 0) {
|
||||
|
|
@ -201,8 +202,7 @@ static int nodeCallBack(J3DJoint* p_joint, int param_1) {
|
|||
} else if (jointNo >= 1 && jointNo <= 3) {
|
||||
mDoMtx_YrotM(*calc_mtx, npc_tr->field_0x5f2[jointNo - 1] + (s16)(npc_tr->field_0x5f8));
|
||||
}
|
||||
|
||||
PSMTXCopy(*calc_mtx, sysModel->i_getAnmMtx(jointNo));
|
||||
sysModel->setAnmMtx(jointNo, *calc_mtx);
|
||||
PSMTXCopy(*calc_mtx, j3dSys.mCurrentMtx);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -93,15 +93,13 @@ public:
|
|||
fopAcM_SetupActor(this, daObjCatDoor_c);
|
||||
|
||||
int phase_state = dComIfG_resLoad(&mPhaseReq, l_arcName);
|
||||
if (phase_state != cPhs_COMPLEATE_e) {
|
||||
return phase_state;
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (!fopAcM_entrySolidHeap(this, createSolidHeap, 0x2520)) {
|
||||
phase_state = cPhs_ERROR_e;
|
||||
} else {
|
||||
create_init();
|
||||
}
|
||||
}
|
||||
|
||||
if (!fopAcM_entrySolidHeap(this, createSolidHeap, 0x2520)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
create_init();
|
||||
return phase_state;
|
||||
}
|
||||
|
||||
|
|
@ -321,10 +319,10 @@ COMPILER_STRIP_GATE(0x80BC49D4, &lit_3864);
|
|||
|
||||
/* 80BC4848-80BC49AC 000608 0164+00 1/0 0/0 0/0 .text daObjCatDoor_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#ifdef NONMATCHING // inverted conditional branch
|
||||
static void daObjCatDoor_Create(fopAc_ac_c* i_this) {
|
||||
#ifdef NONMATCHING // literals + register init order
|
||||
static int daObjCatDoor_Create(fopAc_ac_c* i_this) {
|
||||
fopAcM_GetID(i_this);
|
||||
static_cast<daObjCatDoor_c*>(i_this)->create();
|
||||
return static_cast<daObjCatDoor_c*>(i_this)->create();
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
|
|
|
|||
|
|
@ -7,31 +7,15 @@
|
|||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
|
||||
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
|
||||
extern "C" void CreateHeap__13daLv4PoGate_cFv();
|
||||
extern "C" bool Create__16dBgS_MoveBgActorFv();
|
||||
extern "C" void Execute__13daLv4PoGate_cFPPA3_A4_f();
|
||||
extern "C" void Draw__13daLv4PoGate_cFv();
|
||||
extern "C" void Delete__13daLv4PoGate_cFv();
|
||||
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
|
||||
extern "C" extern char const* const d_a_obj_lv4PoGate__stringBase0;
|
||||
SECTION_DATA extern void* __vt__13daLv4PoGate_c[10];
|
||||
|
||||
/* 80C60854-80C60860 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
|
||||
SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
|
||||
static u8 cNullVec__6Z2Calc[12] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80C60860-80C60874 00000C 0004+10 0/0 0/0 0/0 .data @1787 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
// unused data ?
|
||||
SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
0x02000201,
|
||||
/* padding */
|
||||
0x40080000,
|
||||
|
|
@ -39,7 +23,6 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
|
|||
0x3FE00000,
|
||||
0x00000000,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 80C5FBEC-80C5FC5C 0000EC 0070+00 1/1 0/0 0/0 .text __ct__17daLv4PoGate_HIO_cFv */
|
||||
daLv4PoGate_HIO_c::daLv4PoGate_HIO_c() {
|
||||
|
|
@ -65,16 +48,7 @@ void daLv4PoGate_c::setBaseMtx() {
|
|||
mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C60848-80C60848 000044 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80C60848 = "L4R02Gate";
|
||||
#pragma pop
|
||||
|
||||
/* 80C5FD40-80C5FDAC 000240 006C+00 1/0 0/0 0/0 .text CreateHeap__13daLv4PoGate_cFv */
|
||||
// vtable ordering issue
|
||||
#ifdef NONMATCHING
|
||||
int daLv4PoGate_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("L4R02Gate", 4);
|
||||
|
||||
|
|
@ -85,17 +59,6 @@ int daLv4PoGate_c::CreateHeap() {
|
|||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// asm int daLv4PoGate_c::CreateHeap() {
|
||||
extern "C" asm void CreateHeap__13daLv4PoGate_cFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate/CreateHeap__13daLv4PoGate_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80C5FDAC-80C5FEDC 0002AC 0130+00 1/1 0/0 0/0 .text create__13daLv4PoGate_cFv */
|
||||
int daLv4PoGate_c::create() {
|
||||
|
|
@ -340,9 +303,6 @@ static int daLv4PoGate_Create(fopAc_ac_c* i_this) {
|
|||
return static_cast<daLv4PoGate_c*>(i_this)->create();
|
||||
}
|
||||
|
||||
/* 80C60758-80C607B4 000C58 005C+00 2/1 0/0 0/0 .text __dt__17daLv4PoGate_HIO_cFv */
|
||||
daLv4PoGate_HIO_c::~daLv4PoGate_HIO_c() {}
|
||||
|
||||
/* 80C6091C-80C6093C -00001 0020+00 1/0 0/0 0/0 .data l_daLv4PoGate_Method */
|
||||
static actor_method_class l_daLv4PoGate_Method = {
|
||||
(process_method_func)daLv4PoGate_Create, (process_method_func)daLv4PoGate_Delete,
|
||||
|
|
@ -367,17 +327,3 @@ extern actor_process_profile_definition g_profile_Obj_Lv4PoGate = {
|
|||
0,
|
||||
14,
|
||||
};
|
||||
|
||||
/* 80C6096C-80C60994 000118 0028+00 1/1 0/0 0/0 .data __vt__13daLv4PoGate_c */
|
||||
SECTION_DATA extern void* __vt__13daLv4PoGate_c[10] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)CreateHeap__13daLv4PoGate_cFv,
|
||||
(void*)Create__16dBgS_MoveBgActorFv,
|
||||
(void*)Execute__13daLv4PoGate_cFPPA3_A4_f,
|
||||
(void*)Draw__13daLv4PoGate_cFv,
|
||||
(void*)Delete__13daLv4PoGate_cFv,
|
||||
(void*)IsDelete__16dBgS_MoveBgActorFv,
|
||||
(void*)ToFore__16dBgS_MoveBgActorFv,
|
||||
(void*)ToBack__16dBgS_MoveBgActorFv,
|
||||
};
|
||||
|
|
@ -572,6 +572,50 @@ void cBgW::BlckConnect(u16* param_0, int* param_1, int param_2) {
|
|||
}
|
||||
|
||||
/* 800797BC-8007998C 0740FC 01D0+00 2/0 1/0 0/0 .text ClassifyPlane__4cBgWFv */
|
||||
// stack, G_CM3D_F_ABS_MIN is loaded outside of loop
|
||||
#ifdef NONMATCHING
|
||||
void cBgW::ClassifyPlane() {
|
||||
if (pm_vtx_tbl == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = 0; i < pm_bgd->m_b_num; i++) {
|
||||
int local_2c = pm_bgd->m_b_tbl[i].field_0x0;
|
||||
int uVar4;
|
||||
if (i != pm_bgd->m_b_num - 1) {
|
||||
uVar4 = pm_bgd->m_b_tbl[i + 1].field_0x0 - 1;
|
||||
} else {
|
||||
uVar4 = pm_bgd->m_t_num - 1;
|
||||
}
|
||||
field_0xa4[i].field_0x0 = 0xffff;
|
||||
field_0xa4[i].field_0x2 = 0xffff;
|
||||
field_0xa4[i].field_0x4 = 0xffff;
|
||||
int local_30;
|
||||
int local_34;
|
||||
int local_38 = 0xffff;
|
||||
local_34 = 0xffff;
|
||||
local_30 = 0xffff;
|
||||
|
||||
for (int uVar3 = local_2c; uVar3 <= uVar4; uVar3++) {
|
||||
f32 dVar8 = pm_tri[uVar3].m_plane.i_GetNP()->y;
|
||||
if (!cM3d_IsZero(pm_tri[uVar3].m_plane.i_GetNP()->x) ||
|
||||
!cM3d_IsZero(dVar8) || !cM3d_IsZero(pm_tri[uVar3].m_plane.i_GetNP()->z)) {
|
||||
if (cBgW_CheckBGround(dVar8)) {
|
||||
BlckConnect(&field_0xa4[i].field_0x4, &local_38, uVar3);
|
||||
} else {
|
||||
if (cBgW_CheckBRoof(dVar8)) {
|
||||
if (!ChkRoofRegist()) {
|
||||
BlckConnect(&field_0xa4[i].field_0x0, &local_30, uVar3);
|
||||
}
|
||||
} else {
|
||||
BlckConnect(&field_0xa4[i].field_0x2, &local_34, uVar3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
|
@ -580,6 +624,7 @@ asm void cBgW::ClassifyPlane() {
|
|||
#include "asm/d/bg/d_bg_w/ClassifyPlane__4cBgWFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8007998C-800799E0 0742CC 0054+00 1/1 0/0 0/0 .text MakeBlckTransMinMax__4cBgWFP4cXyzP4cXyz */
|
||||
void cBgW::MakeBlckTransMinMax(cXyz* param_0, cXyz* param_1) {
|
||||
|
|
@ -706,41 +751,45 @@ void cBgW::MakeNodeTreeRp(int param_0) {
|
|||
}
|
||||
|
||||
/* 80079CC4-80079DF0 074604 012C+00 1/1 0/0 0/0 .text MakeNodeTreeGrpRp__4cBgWFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cBgW::MakeNodeTreeGrpRp(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/bg/d_bg_w/MakeNodeTreeGrpRp__4cBgWFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* void cBgW::MakeNodeTreeGrpRp(int param_0) {
|
||||
//u16 tmp = pm_bgd->m_g_tbl[param_0].field_0x2e;
|
||||
|
||||
void cBgW::MakeNodeTreeGrpRp(int param_0) {
|
||||
if (pm_bgd->m_g_tbl[param_0].field_0x2e != 0xFFFF) {
|
||||
MakeNodeTreeRp(pm_bgd->m_g_tbl[param_0].field_0x2e);
|
||||
pm_node_tree[param_0].SetMin(pm_grp[pm_bgd->m_g_tbl[param_0].field_0x2e].mMin);
|
||||
pm_node_tree[param_0].SetMax(pm_grp[pm_bgd->m_g_tbl[param_0].field_0x2e].mMax);
|
||||
pm_grp[param_0].m_aab.SetMin(*pm_node_tree[pm_bgd->m_g_tbl[param_0].field_0x2e].GetMinP());
|
||||
pm_grp[param_0].m_aab.SetMax(*pm_node_tree[pm_bgd->m_g_tbl[param_0].field_0x2e].GetMaxP());
|
||||
}
|
||||
|
||||
u16 tmp2 = pm_bgd->m_g_tbl[param_0].field_0x28;
|
||||
while (tmp2 != 0xFFFF) {
|
||||
s32 tmp2 = pm_bgd->m_g_tbl[param_0].field_0x28;
|
||||
while (true) {
|
||||
if (tmp2 == 0xFFFF) break;
|
||||
MakeNodeTreeGrpRp(tmp2);
|
||||
pm_grp[param_0].SetMin(pm_grp[tmp2].mMin);
|
||||
pm_grp[param_0].SetMax(pm_node_tree[tmp2].mMax);
|
||||
pm_grp[param_0].m_aab.SetMin(*pm_grp[tmp2].m_aab.GetMinP());
|
||||
pm_grp[param_0].m_aab.SetMax(*pm_grp[tmp2].m_aab.GetMaxP());
|
||||
tmp2 = pm_bgd->m_g_tbl[tmp2].field_0x26;
|
||||
}
|
||||
} */
|
||||
}
|
||||
|
||||
/* 80079DF0-80079EEC 074730 00FC+00 2/2 0/0 0/0 .text MakeNodeTree__4cBgWFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cBgW::MakeNodeTree() {
|
||||
nofralloc
|
||||
#include "asm/d/bg/d_bg_w/MakeNodeTree__4cBgWFv.s"
|
||||
void cBgW::MakeNodeTree() {
|
||||
if (pm_vtx_tbl == NULL) {
|
||||
for (int i = 0; i < pm_bgd->m_g_num; i++) {
|
||||
if (pm_bgd->m_g_tbl[i].field_0x24 == 0xffff) {
|
||||
field_0x92 = i;
|
||||
return;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < pm_bgd->m_g_num; i++) {
|
||||
pm_grp[i].m_aab.ClearForMinMax();
|
||||
}
|
||||
for (int i = 0; i < pm_bgd->m_g_num; i++) {
|
||||
if (pm_bgd->m_g_tbl[i].field_0x24 == 0xffff) {
|
||||
field_0x92 = i;
|
||||
MakeNodeTreeGrpRp(i);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80079EEC-80079F38 07482C 004C+00 2/0 1/0 0/0 .text ChkMemoryError__4cBgWFv */
|
||||
bool cBgW::ChkMemoryError() {
|
||||
|
|
|
|||
|
|
@ -2618,7 +2618,7 @@ int addBombCount(u8 i_bombType, u8 i_addNum) {
|
|||
return 0;
|
||||
} else {
|
||||
dComIfGs_setEmptyBombBagItemIn(i_bombType, i_addNum, true);
|
||||
i_addNum -= (int)dComIfGs_getBombMax(i_bombType);
|
||||
i_addNum = i_addNum - dComIfGs_getBombMax(i_bombType);
|
||||
}
|
||||
} else {
|
||||
if (dComIfGs_getBombMax(bombType[bombIdx]) >= var_r22 + i_addNum) {
|
||||
|
|
@ -2626,7 +2626,7 @@ int addBombCount(u8 i_bombType, u8 i_addNum) {
|
|||
return 0;
|
||||
} else {
|
||||
dComIfGp_setItemBombNumCount(bombIdx, i_addNum);
|
||||
i_addNum -= (int)dComIfGs_getBombMax(bombType[bombIdx]) - var_r22;
|
||||
i_addNum = i_addNum - (dComIfGs_getBombMax(bombType[bombIdx]) - var_r22);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,10 +7,6 @@
|
|||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "d/kankyo/d_kankyo_wether.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
extern "C" extern char const* const d_d_kyeff__stringBase0;
|
||||
extern "C" void dKyw_wether_init__Fv();
|
||||
|
||||
/* 801ADD00-801ADD38 1A8640 0038+00 2/2 0/0 0/0 .text dKankyo_DayProc__Fv */
|
||||
void dKankyo_DayProc() {
|
||||
|
|
@ -47,30 +43,20 @@ static int dKyeff_Delete(dKyeff_c* i_this) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453E58-80453E5C 002458 0004+00 1/1 0/0 0/0 .sdata2 @3804 */
|
||||
SECTION_SDATA2 static u8 lit_3804[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
// Helper functions to set float literal order
|
||||
static f32 dummyLiteralOrder() {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
/* 80453E5C-80453E60 00245C 0004+00 1/1 0/0 0/0 .sdata2 @3805 */
|
||||
SECTION_SDATA2 static f32 lit_3805 = 1.0f;
|
||||
static f32 dummyLiteralOrder2() {
|
||||
return 1.0f;
|
||||
}
|
||||
|
||||
/* 80453E60-80453E68 002460 0008+00 1/1 0/0 0/0 .sdata2 @3812 */
|
||||
SECTION_SDATA2 static f64 lit_3812 = 4503601774854144.0 /* cast s32 to float */;
|
||||
|
||||
/* 80453E68-80453E6C 002468 0004+00 1/1 0/0 0/0 .sdata2 @3843 */
|
||||
SECTION_SDATA2 static f32 lit_3843 = 7.0f / 10.0f;
|
||||
|
||||
/* 80453E6C-80453E70 00246C 0004+00 1/1 0/0 0/0 .sdata2 @3844 */
|
||||
SECTION_SDATA2 static f32 lit_3844 = 15.0f;
|
||||
static f32 dummyLiteralOrder3(s32 hours) {
|
||||
return hours;
|
||||
}
|
||||
|
||||
/* 801ADE00-801ADEA0 1A8740 00A0+00 1/0 0/0 0/0 .text dKyeff_Create__FP12kankyo_class */
|
||||
// float data
|
||||
#ifdef NONMATCHING
|
||||
static int dKyeff_Create(kankyo_class* i_this) {
|
||||
OSCalendarTime time;
|
||||
|
||||
|
|
@ -84,16 +70,6 @@ static int dKyeff_Create(kankyo_class* i_this) {
|
|||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm int dKyeff_Create(kankyo_class* i_this) {
|
||||
nofralloc
|
||||
#include "asm/d/d_kyeff/dKyeff_Create__FP12kankyo_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803BC158-803BC16C -00001 0014+00 1/0 0/0 0/0 .data l_dKyeff_Method */
|
||||
|
|
|
|||
|
|
@ -170,30 +170,26 @@ s16 CSTControl::getAngleStick() {
|
|||
u8 STControl::checkTrigger() {
|
||||
field_0x0d = mDirectionTrig;
|
||||
f32 stickValue = getValueStick();
|
||||
s16 stickAngle_ = getAngleStick();
|
||||
s16 stickAngle = getAngleStick();
|
||||
u8 var_r6 = 0;
|
||||
s16 temp_r7 = 0x2000 - field_0x26 >> 1;
|
||||
|
||||
if (!cM3d_IsZero(stickValue)) {
|
||||
int stickAngle = stickAngle_;
|
||||
s16 temp_r4 = field_0x22;
|
||||
int temp_r3 = temp_r4 + temp_r7;
|
||||
|
||||
if (stickAngle < temp_r3 - 0x7000) {
|
||||
if (stickAngle < field_0x22 + temp_r7 - 0x7000) {
|
||||
var_r6 |= TRIG_UP;
|
||||
} else if (stickAngle < (temp_r4 - 0x5000) - temp_r7) {
|
||||
} else if (stickAngle < (field_0x22 - 0x5000) - temp_r7) {
|
||||
var_r6 |= TRIG_UP_LEFT;
|
||||
} else if (stickAngle < temp_r3 - 0x3000) {
|
||||
} else if (stickAngle < field_0x22 + temp_r7 - 0x3000) {
|
||||
var_r6 |= TRIG_LEFT;
|
||||
} else if (stickAngle < (temp_r4 - 0x1000) - temp_r7) {
|
||||
} else if (stickAngle < (field_0x22 - 0x1000) - temp_r7) {
|
||||
var_r6 |= TRIG_DOWN_LEFT;
|
||||
} else if (stickAngle < temp_r3 + 0x1000) {
|
||||
} else if (stickAngle < field_0x22 + temp_r7 + 0x1000) {
|
||||
var_r6 |= TRIG_DOWN;
|
||||
} else if (stickAngle < (temp_r4 + 0x3000) - temp_r7) {
|
||||
} else if (stickAngle < (field_0x22 + 0x3000) - temp_r7) {
|
||||
var_r6 |= TRIG_DOWN_RIGHT;
|
||||
} else if (stickAngle < temp_r3 + 0x5000) {
|
||||
} else if (stickAngle < field_0x22 + temp_r7 + 0x5000) {
|
||||
var_r6 |= TRIG_RIGHT;
|
||||
} else if (stickAngle < (temp_r4 + 0x7000) - temp_r7) {
|
||||
} else if (stickAngle < (field_0x22 + 0x7000) - temp_r7) {
|
||||
var_r6 |= TRIG_UP_RIGHT;
|
||||
} else {
|
||||
var_r6 |= TRIG_UP;
|
||||
|
|
@ -207,9 +203,8 @@ u8 STControl::checkTrigger() {
|
|||
mDirectionTrig &= ~var_r6;
|
||||
}
|
||||
|
||||
u8 temp_r3_2 = mDirectionTrig;
|
||||
if (temp_r3_2 != field_0x0d) {
|
||||
if (temp_r3_2 == 0) {
|
||||
if (mDirectionTrig != field_0x0d) {
|
||||
if (mDirectionTrig == 0) {
|
||||
field_0x22 = 0;
|
||||
} else if ((stickAngle & 0x1FFF) > 0x1000) {
|
||||
field_0x22 = field_0x24;
|
||||
|
|
|
|||
|
|
@ -7,48 +7,16 @@
|
|||
#include "JSystem/J3DGraphBase/J3DDrawBuffer.h"
|
||||
#include "JSystem/J3DGraphBase/J3DMaterial.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void draw__6dMdl_cFv();
|
||||
extern "C" void create__6dMdl_cFP12J3DModelDataUsP12dKy_tevstr_c();
|
||||
extern "C" void entryObj__6dMdl_cFP10dMdl_obj_c();
|
||||
extern "C" void search__10dMdl_mng_cFP12J3DModelDataUsP12dKy_tevstr_c();
|
||||
extern "C" void entry__10dMdl_mng_cFP12J3DModelDataUsP12dKy_tevstr_c();
|
||||
extern "C" void create__10dMdl_mng_cFv();
|
||||
extern "C" void __dt__6dMdl_cFv();
|
||||
extern "C" void remove__10dMdl_mng_cFv();
|
||||
extern "C" void reset__10dMdl_mng_cFv();
|
||||
extern "C" void entry__10dMdl_mng_cFP12J3DModelDataUsi();
|
||||
extern "C" void __ct__6dMdl_cFv();
|
||||
extern "C" u8 m_myObj__10dMdl_mng_c[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void dKy_setLight_nowroom_actor__FP12dKy_tevstr_c();
|
||||
extern "C" void dKy_setLight_again__Fv();
|
||||
extern "C" void dKy_GxFog_tevstr_set__FP12dKy_tevstr_c();
|
||||
extern "C" void* __nw__FUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" bool entry__9J3DPacketFP13J3DDrawBuffer();
|
||||
extern "C" void loadPreDrawSetting__8J3DShapeCFv();
|
||||
extern "C" void entryImm__13J3DDrawBufferFP9J3DPacketUs();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" extern void* __vt__9J3DPacket[5];
|
||||
extern "C" u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" u8 sOldVcdVatCmd__8J3DShape[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
|
@ -166,25 +134,13 @@ void dMdl_mng_c::reset() {
|
|||
}
|
||||
|
||||
/* 8009C8D8-8009C930 097218 0058+00 0/0 0/0 4/4 .text entry__10dMdl_mng_cFP12J3DModelDataUsi */
|
||||
// missing mr instructions
|
||||
#ifdef NONMATCHING
|
||||
dMdl_c* dMdl_mng_c::entry(J3DModelData* i_modelData, u16 i_materialId, int i_roomNo) {
|
||||
if (m_myObj == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return entry(i_modelData, i_materialId, dComIfGp_roomControl_getTevStr(i_roomNo));
|
||||
dKy_tevstr_c* tevstr = dComIfGp_roomControl_getTevStr(i_roomNo);
|
||||
return m_myObj->entry(i_modelData, i_materialId, tevstr);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dMdl_c* dMdl_mng_c::entry(J3DModelData* param_0, u16 param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_model/entry__10dMdl_mng_cFP12J3DModelDataUsi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8009C930-8009C964 097270 0034+00 1/1 0/0 0/0 .text __ct__6dMdl_cFv */
|
||||
dMdl_c::dMdl_c() {
|
||||
|
|
|
|||
Loading…
Reference in New Issue