mirror of
https://github.com/projectPiki/pikmin2.git
synced 2024-12-11 07:24:00 +00:00
75c3292df0
linkmap goes faster now
1935 lines
93 KiB
ArmAsm
1935 lines
93 KiB
ArmAsm
.include "macros.inc"
|
|
.section .rodata # 0x804732E0 - 0x8049E220
|
|
.balign 8
|
|
.global lbl_804840F8
|
|
lbl_804840F8:
|
|
.4byte 0x00000004
|
|
.4byte 0x00000003
|
|
.4byte 0x00000005
|
|
.4byte 0x00000006
|
|
.4byte 0x00000007
|
|
.global lbl_8048410C
|
|
lbl_8048410C:
|
|
.4byte 0x00000001
|
|
.4byte 0x00000000
|
|
.4byte 0x00000002
|
|
.global lbl_80484118
|
|
lbl_80484118:
|
|
.4byte 0x00000001
|
|
.4byte 0x00000000
|
|
.4byte 0x00000002
|
|
.4byte 0x00000000
|
|
|
|
.section .data, "wa" # 0x8049E220 - 0x804EFC20
|
|
.balign 8
|
|
.global __vt__Q34Game4Cave10FixObjNode
|
|
__vt__Q34Game4Cave10FixObjNode:
|
|
.4byte 0
|
|
.4byte 0
|
|
.4byte __dt__Q34Game4Cave10FixObjNodeFv
|
|
.4byte getChildCount__5CNodeFv
|
|
.4byte getObjectId__Q34Game4Cave10FixObjNodeFv
|
|
.4byte getObjectType__Q34Game4Cave10FixObjNodeFv
|
|
.4byte getBirthCount__Q34Game4Cave10FixObjNodeFv
|
|
.4byte getDirection__Q34Game4Cave10FixObjNodeFv
|
|
.4byte getBirthDoorIndex__Q24Game16ObjectLayoutNodeFv
|
|
.4byte getBirthPosition__Q34Game4Cave10FixObjNodeFRfRf
|
|
.4byte getExtraCode__Q24Game16ObjectLayoutNodeFv
|
|
.4byte isFixedBattery__Q24Game16ObjectLayoutNodeFv
|
|
|
|
.section .sdata2, "a" # 0x80516360 - 0x80520E40
|
|
.balign 8
|
|
.global lbl_8051A7F8
|
|
lbl_8051A7F8:
|
|
.4byte 0x47000000
|
|
.4byte 0x00000000
|
|
.global lbl_8051A800
|
|
lbl_8051A800:
|
|
.4byte 0x43300000
|
|
.4byte 0x80000000
|
|
.global lbl_8051A808
|
|
lbl_8051A808:
|
|
.float 1.0
|
|
.global lbl_8051A80C
|
|
lbl_8051A80C:
|
|
.float 0.5
|
|
.global lbl_8051A810
|
|
lbl_8051A810:
|
|
.4byte 0x00000001
|
|
.global lbl_8051A814
|
|
lbl_8051A814:
|
|
.4byte 0x00000002
|
|
.global lbl_8051A818
|
|
lbl_8051A818:
|
|
.4byte 0x01010000
|
|
.global lbl_8051A81C
|
|
lbl_8051A81C:
|
|
.4byte 0x00000000
|
|
.global lbl_8051A820
|
|
lbl_8051A820:
|
|
.4byte 0x6974656D
|
|
.4byte 0x00000000
|
|
.global lbl_8051A828
|
|
lbl_8051A828:
|
|
.4byte 0x00000001
|
|
.global lbl_8051A82C
|
|
lbl_8051A82C:
|
|
.4byte 0x00000002
|
|
.global lbl_8051A830
|
|
lbl_8051A830:
|
|
.4byte 0x01010000
|
|
.global lbl_8051A834
|
|
lbl_8051A834:
|
|
.4byte 0x43160000
|
|
|
|
.section .sbss2, "", @nobits # 0x80520E40 - 0x80520ED8
|
|
.balign 8
|
|
lbl_80520EA8:
|
|
.skip 0x8
|
|
lbl_80520EB0:
|
|
.skip 0x8
|
|
|
|
.section .text, "ax" # 0x800056C0 - 0x80472F00
|
|
.global __ct__Q34Game4Cave12RandMapScoreFPQ34Game4Cave16MapUnitGenerator
|
|
__ct__Q34Game4Cave12RandMapScoreFPQ34Game4Cave16MapUnitGenerator:
|
|
/* 8024C878 002497B8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024C87C 002497BC 7C 08 02 A6 */ mflr r0
|
|
/* 8024C880 002497C0 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024C884 002497C4 38 00 00 00 */ li r0, 0
|
|
/* 8024C888 002497C8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024C88C 002497CC 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8024C890 002497D0 90 83 00 00 */ stw r4, 0(r3)
|
|
/* 8024C894 002497D4 38 60 00 14 */ li r3, 0x14
|
|
/* 8024C898 002497D8 90 1F 00 0C */ stw r0, 0xc(r31)
|
|
/* 8024C89C 002497DC 90 1F 00 10 */ stw r0, 0x10(r31)
|
|
/* 8024C8A0 002497E0 4B DD 77 0D */ bl __nwa__FUl
|
|
/* 8024C8A4 002497E4 90 7F 00 04 */ stw r3, 4(r31)
|
|
/* 8024C8A8 002497E8 38 60 00 14 */ li r3, 0x14
|
|
/* 8024C8AC 002497EC 4B DD 77 01 */ bl __nwa__FUl
|
|
/* 8024C8B0 002497F0 90 7F 00 08 */ stw r3, 8(r31)
|
|
/* 8024C8B4 002497F4 38 00 00 00 */ li r0, 0
|
|
/* 8024C8B8 002497F8 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024C8BC 002497FC 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024C8C0 00249800 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8024C8C4 00249804 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024C8C8 00249808 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8024C8CC 0024980C 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024C8D0 00249810 90 04 00 04 */ stw r0, 4(r4)
|
|
/* 8024C8D4 00249814 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024C8D8 00249818 90 04 00 04 */ stw r0, 4(r4)
|
|
/* 8024C8DC 0024981C 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024C8E0 00249820 90 04 00 08 */ stw r0, 8(r4)
|
|
/* 8024C8E4 00249824 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024C8E8 00249828 90 04 00 08 */ stw r0, 8(r4)
|
|
/* 8024C8EC 0024982C 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024C8F0 00249830 90 04 00 0C */ stw r0, 0xc(r4)
|
|
/* 8024C8F4 00249834 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024C8F8 00249838 90 04 00 0C */ stw r0, 0xc(r4)
|
|
/* 8024C8FC 0024983C 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024C900 00249840 90 04 00 10 */ stw r0, 0x10(r4)
|
|
/* 8024C904 00249844 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024C908 00249848 90 04 00 10 */ stw r0, 0x10(r4)
|
|
/* 8024C90C 0024984C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024C910 00249850 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024C914 00249854 7C 08 03 A6 */ mtlr r0
|
|
/* 8024C918 00249858 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024C91C 0024985C 4E 80 00 20 */ blr
|
|
|
|
.global setMapUnitScore__Q34Game4Cave12RandMapScoreFv
|
|
setMapUnitScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024C920 00249860 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024C924 00249864 7C 08 02 A6 */ mflr r0
|
|
/* 8024C928 00249868 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024C92C 0024986C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024C930 00249870 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024C934 00249874 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8024C938 00249878 48 00 03 89 */ bl clearRoomAndDoorScore__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C93C 0024987C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024C940 00249880 48 00 02 FD */ bl isScoreSetDone__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C944 00249884 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024C948 00249888 40 82 00 2C */ bne .L_8024C974
|
|
/* 8024C94C 0024988C 3B E0 00 00 */ li r31, 0
|
|
.L_8024C950:
|
|
/* 8024C950 00249890 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024C954 00249894 48 00 04 31 */ bl setUnitAndDoorScore__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C958 00249898 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024C95C 0024989C 48 00 02 E1 */ bl isScoreSetDone__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C960 002498A0 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024C964 002498A4 40 82 00 10 */ bne .L_8024C974
|
|
/* 8024C968 002498A8 3B FF 00 01 */ addi r31, r31, 1
|
|
/* 8024C96C 002498AC 2C 1F 01 F4 */ cmpwi r31, 0x1f4
|
|
/* 8024C970 002498B0 41 80 FF E0 */ blt .L_8024C950
|
|
.L_8024C974:
|
|
/* 8024C974 002498B4 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024C978 002498B8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024C97C 002498BC 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024C980 002498C0 7C 08 03 A6 */ mtlr r0
|
|
/* 8024C984 002498C4 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024C988 002498C8 4E 80 00 20 */ blr
|
|
|
|
.global setStartSlot__Q34Game4Cave12RandMapScoreFv
|
|
setStartSlot__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024C98C 002498CC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024C990 002498D0 7C 08 02 A6 */ mflr r0
|
|
/* 8024C994 002498D4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024C998 002498D8 80 83 00 00 */ lwz r4, 0(r3)
|
|
/* 8024C99C 002498DC 88 04 00 02 */ lbz r0, 2(r4)
|
|
/* 8024C9A0 002498E0 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024C9A4 002498E4 41 82 00 0C */ beq .L_8024C9B0
|
|
/* 8024C9A8 002498E8 48 00 07 1D */ bl setVersusOnyon__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C9AC 002498EC 48 00 00 08 */ b .L_8024C9B4
|
|
.L_8024C9B0:
|
|
/* 8024C9B0 002498F0 48 00 05 D9 */ bl setChallengePod__Q34Game4Cave12RandMapScoreFv
|
|
.L_8024C9B4:
|
|
/* 8024C9B4 002498F4 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024C9B8 002498F8 7C 08 03 A6 */ mtlr r0
|
|
/* 8024C9BC 002498FC 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024C9C0 00249900 4E 80 00 20 */ blr
|
|
|
|
.global setGoalSlot__Q34Game4Cave12RandMapScoreFv
|
|
setGoalSlot__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024C9C4 00249904 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024C9C8 00249908 7C 08 02 A6 */ mflr r0
|
|
/* 8024C9CC 0024990C 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024C9D0 00249910 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024C9D4 00249914 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8024C9D8 00249918 80 83 00 00 */ lwz r4, 0(r3)
|
|
/* 8024C9DC 0024991C 88 04 00 02 */ lbz r0, 2(r4)
|
|
/* 8024C9E0 00249920 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024C9E4 00249924 40 82 00 24 */ bne .L_8024CA08
|
|
/* 8024C9E8 00249928 48 00 15 59 */ bl isGoalSetHard__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C9EC 0024992C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024C9F0 00249930 41 82 00 10 */ beq .L_8024CA00
|
|
/* 8024C9F4 00249934 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024C9F8 00249938 48 00 12 25 */ bl setChallengeFixObjHard__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024C9FC 0024993C 48 00 00 0C */ b .L_8024CA08
|
|
.L_8024CA00:
|
|
/* 8024CA00 00249940 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CA04 00249944 48 00 0E 5D */ bl setChallengeFixObjNormal__Q34Game4Cave12RandMapScoreFv
|
|
.L_8024CA08:
|
|
/* 8024CA08 00249948 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024CA0C 0024994C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024CA10 00249950 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CA14 00249954 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024CA18 00249958 4E 80 00 20 */ blr
|
|
|
|
.global makeObjectLayout__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave12ObjectLayout
|
|
makeObjectLayout__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave12ObjectLayout:
|
|
/* 8024CA1C 0024995C 94 21 FF 80 */ stwu r1, -0x80(r1)
|
|
/* 8024CA20 00249960 7C 08 02 A6 */ mflr r0
|
|
/* 8024CA24 00249964 90 01 00 84 */ stw r0, 0x84(r1)
|
|
/* 8024CA28 00249968 DB E1 00 70 */ stfd f31, 0x70(r1)
|
|
/* 8024CA2C 0024996C F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0
|
|
/* 8024CA30 00249970 DB C1 00 60 */ stfd f30, 0x60(r1)
|
|
/* 8024CA34 00249974 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0
|
|
/* 8024CA38 00249978 DB A1 00 50 */ stfd f29, 0x50(r1)
|
|
/* 8024CA3C 0024997C F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0
|
|
/* 8024CA40 00249980 BF 01 00 30 */ stmw r24, 0x30(r1)
|
|
/* 8024CA44 00249984 7C 79 1B 78 */ mr r25, r3
|
|
/* 8024CA48 00249988 7C 9A 23 78 */ mr r26, r4
|
|
/* 8024CA4C 0024998C 7C BB 2B 78 */ mr r27, r5
|
|
/* 8024CA50 00249990 3B A1 00 14 */ addi r29, r1, 0x14
|
|
/* 8024CA54 00249994 3B 80 00 00 */ li r28, 0
|
|
/* 8024CA58 00249998 3B C0 00 00 */ li r30, 0
|
|
.L_8024CA5C:
|
|
/* 8024CA5C 0024999C 80 79 00 04 */ lwz r3, 4(r25)
|
|
/* 8024CA60 002499A0 7C 03 F0 2E */ lwzx r0, r3, r30
|
|
/* 8024CA64 002499A4 7C 1A 00 40 */ cmplw r26, r0
|
|
/* 8024CA68 002499A8 40 82 01 00 */ bne .L_8024CB68
|
|
/* 8024CA6C 002499AC 3C 80 80 48 */ lis r4, lbl_804840F8@ha
|
|
/* 8024CA70 002499B0 38 60 00 2C */ li r3, 0x2c
|
|
/* 8024CA74 002499B4 39 04 40 F8 */ addi r8, r4, lbl_804840F8@l
|
|
/* 8024CA78 002499B8 80 E8 00 00 */ lwz r7, 0(r8)
|
|
/* 8024CA7C 002499BC 80 C8 00 04 */ lwz r6, 4(r8)
|
|
/* 8024CA80 002499C0 80 A8 00 08 */ lwz r5, 8(r8)
|
|
/* 8024CA84 002499C4 80 88 00 0C */ lwz r4, 0xc(r8)
|
|
/* 8024CA88 002499C8 80 08 00 10 */ lwz r0, 0x10(r8)
|
|
/* 8024CA8C 002499CC 90 E1 00 14 */ stw r7, 0x14(r1)
|
|
/* 8024CA90 002499D0 90 C1 00 18 */ stw r6, 0x18(r1)
|
|
/* 8024CA94 002499D4 90 A1 00 1C */ stw r5, 0x1c(r1)
|
|
/* 8024CA98 002499D8 90 81 00 20 */ stw r4, 0x20(r1)
|
|
/* 8024CA9C 002499DC 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8024CAA0 002499E0 4B DD 74 05 */ bl __nw__FUl
|
|
/* 8024CAA4 002499E4 7C 7F 1B 79 */ or. r31, r3, r3
|
|
/* 8024CAA8 002499E8 41 82 00 28 */ beq .L_8024CAD0
|
|
/* 8024CAAC 002499EC 48 1C 48 E5 */ bl __ct__5CNodeFv
|
|
/* 8024CAB0 002499F0 3C 80 80 4C */ lis r4, __vt__Q24Game16ObjectLayoutNode@ha
|
|
/* 8024CAB4 002499F4 3C 60 80 4C */ lis r3, __vt__Q34Game4Cave10FixObjNode@ha
|
|
/* 8024CAB8 002499F8 38 84 1A A8 */ addi r4, r4, __vt__Q24Game16ObjectLayoutNode@l
|
|
/* 8024CABC 002499FC 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8024CAC0 00249A00 90 9F 00 00 */ stw r4, 0(r31)
|
|
/* 8024CAC4 00249A04 38 63 1B 18 */ addi r3, r3, __vt__Q34Game4Cave10FixObjNode@l
|
|
/* 8024CAC8 00249A08 90 7F 00 00 */ stw r3, 0(r31)
|
|
/* 8024CACC 00249A0C 90 1F 00 18 */ stw r0, 0x18(r31)
|
|
.L_8024CAD0:
|
|
/* 8024CAD0 00249A10 38 60 00 2C */ li r3, 0x2c
|
|
/* 8024CAD4 00249A14 4B DD 73 D1 */ bl __nw__FUl
|
|
/* 8024CAD8 00249A18 7C 78 1B 79 */ or. r24, r3, r3
|
|
/* 8024CADC 00249A1C 41 82 00 28 */ beq .L_8024CB04
|
|
/* 8024CAE0 00249A20 48 1C 48 B1 */ bl __ct__5CNodeFv
|
|
/* 8024CAE4 00249A24 3C 80 80 4C */ lis r4, __vt__Q24Game16ObjectLayoutNode@ha
|
|
/* 8024CAE8 00249A28 3C 60 80 4C */ lis r3, __vt__Q34Game4Cave10FixObjNode@ha
|
|
/* 8024CAEC 00249A2C 38 84 1A A8 */ addi r4, r4, __vt__Q24Game16ObjectLayoutNode@l
|
|
/* 8024CAF0 00249A30 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8024CAF4 00249A34 90 98 00 00 */ stw r4, 0(r24)
|
|
/* 8024CAF8 00249A38 38 63 1B 18 */ addi r3, r3, __vt__Q34Game4Cave10FixObjNode@l
|
|
/* 8024CAFC 00249A3C 90 78 00 00 */ stw r3, 0(r24)
|
|
/* 8024CB00 00249A40 90 18 00 18 */ stw r0, 0x18(r24)
|
|
.L_8024CB04:
|
|
/* 8024CB04 00249A44 80 99 00 04 */ lwz r4, 4(r25)
|
|
/* 8024CB08 00249A48 38 61 00 08 */ addi r3, r1, 8
|
|
/* 8024CB0C 00249A4C 80 B9 00 08 */ lwz r5, 8(r25)
|
|
/* 8024CB10 00249A50 7C 84 F0 2E */ lwzx r4, r4, r30
|
|
/* 8024CB14 00249A54 7C A5 F0 2E */ lwzx r5, r5, r30
|
|
/* 8024CB18 00249A58 4B FF 6F C5 */ bl getBaseGenGlobalPosition__Q34Game4Cave7MapNodeFPQ34Game4Cave7BaseGen
|
|
/* 8024CB1C 00249A5C 80 79 00 04 */ lwz r3, 4(r25)
|
|
/* 8024CB20 00249A60 80 99 00 08 */ lwz r4, 8(r25)
|
|
/* 8024CB24 00249A64 C3 E1 00 08 */ lfs f31, 8(r1)
|
|
/* 8024CB28 00249A68 C3 C1 00 0C */ lfs f30, 0xc(r1)
|
|
/* 8024CB2C 00249A6C C3 A1 00 10 */ lfs f29, 0x10(r1)
|
|
/* 8024CB30 00249A70 7C 63 F0 2E */ lwzx r3, r3, r30
|
|
/* 8024CB34 00249A74 7C 84 F0 2E */ lwzx r4, r4, r30
|
|
/* 8024CB38 00249A78 4B FF 73 C5 */ bl getBaseGenGlobalDirection__Q34Game4Cave7MapNodeFPQ34Game4Cave7BaseGen
|
|
/* 8024CB3C 00249A7C D3 F8 00 20 */ stfs f31, 0x20(r24)
|
|
/* 8024CB40 00249A80 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CB44 00249A84 7F 04 C3 78 */ mr r4, r24
|
|
/* 8024CB48 00249A88 D3 D8 00 24 */ stfs f30, 0x24(r24)
|
|
/* 8024CB4C 00249A8C D3 B8 00 28 */ stfs f29, 0x28(r24)
|
|
/* 8024CB50 00249A90 D0 38 00 1C */ stfs f1, 0x1c(r24)
|
|
/* 8024CB54 00249A94 48 1C 48 B5 */ bl add__5CNodeFP5CNode
|
|
/* 8024CB58 00249A98 80 9D 00 00 */ lwz r4, 0(r29)
|
|
/* 8024CB5C 00249A9C 7F 63 DB 78 */ mr r3, r27
|
|
/* 8024CB60 00249AA0 7F E5 FB 78 */ mr r5, r31
|
|
/* 8024CB64 00249AA4 48 00 3D 8D */ bl setNode__Q34Game4Cave12ObjectLayoutFiPQ24Game16ObjectLayoutNode
|
|
.L_8024CB68:
|
|
/* 8024CB68 00249AA8 3B 9C 00 01 */ addi r28, r28, 1
|
|
/* 8024CB6C 00249AAC 3B BD 00 04 */ addi r29, r29, 4
|
|
/* 8024CB70 00249AB0 2C 1C 00 05 */ cmpwi r28, 5
|
|
/* 8024CB74 00249AB4 3B DE 00 04 */ addi r30, r30, 4
|
|
/* 8024CB78 00249AB8 41 80 FE E4 */ blt .L_8024CA5C
|
|
/* 8024CB7C 00249ABC E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0
|
|
/* 8024CB80 00249AC0 CB E1 00 70 */ lfd f31, 0x70(r1)
|
|
/* 8024CB84 00249AC4 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0
|
|
/* 8024CB88 00249AC8 CB C1 00 60 */ lfd f30, 0x60(r1)
|
|
/* 8024CB8C 00249ACC E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0
|
|
/* 8024CB90 00249AD0 CB A1 00 50 */ lfd f29, 0x50(r1)
|
|
/* 8024CB94 00249AD4 BB 01 00 30 */ lmw r24, 0x30(r1)
|
|
/* 8024CB98 00249AD8 80 01 00 84 */ lwz r0, 0x84(r1)
|
|
/* 8024CB9C 00249ADC 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CBA0 00249AE0 38 21 00 80 */ addi r1, r1, 0x80
|
|
/* 8024CBA4 00249AE4 4E 80 00 20 */ blr
|
|
|
|
.global getFixObjNode__Q34Game4Cave12RandMapScoreFi
|
|
getFixObjNode__Q34Game4Cave12RandMapScoreFi:
|
|
/* 8024CBA8 00249AE8 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8024CBAC 00249AEC 54 80 10 3A */ slwi r0, r4, 2
|
|
/* 8024CBB0 00249AF0 7C 63 00 2E */ lwzx r3, r3, r0
|
|
/* 8024CBB4 00249AF4 4E 80 00 20 */ blr
|
|
|
|
.global getFixObjGen__Q34Game4Cave12RandMapScoreFi
|
|
getFixObjGen__Q34Game4Cave12RandMapScoreFi:
|
|
/* 8024CBB8 00249AF8 80 63 00 08 */ lwz r3, 8(r3)
|
|
/* 8024CBBC 00249AFC 54 80 10 3A */ slwi r0, r4, 2
|
|
/* 8024CBC0 00249B00 7C 63 00 2E */ lwzx r3, r3, r0
|
|
/* 8024CBC4 00249B04 4E 80 00 20 */ blr
|
|
|
|
.global "getGlobalPosition__Q34Game4Cave12RandMapScoreFiR10Vector3<f>"
|
|
"getGlobalPosition__Q34Game4Cave12RandMapScoreFiR10Vector3<f>":
|
|
/* 8024CBC8 00249B08 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8024CBCC 00249B0C 7C 08 02 A6 */ mflr r0
|
|
/* 8024CBD0 00249B10 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8024CBD4 00249B14 54 80 10 3A */ slwi r0, r4, 2
|
|
/* 8024CBD8 00249B18 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8024CBDC 00249B1C 7C BF 2B 78 */ mr r31, r5
|
|
/* 8024CBE0 00249B20 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8024CBE4 00249B24 7C 84 00 2E */ lwzx r4, r4, r0
|
|
/* 8024CBE8 00249B28 28 04 00 00 */ cmplwi r4, 0
|
|
/* 8024CBEC 00249B2C 41 82 00 2C */ beq .L_8024CC18
|
|
/* 8024CBF0 00249B30 80 A3 00 08 */ lwz r5, 8(r3)
|
|
/* 8024CBF4 00249B34 38 61 00 08 */ addi r3, r1, 8
|
|
/* 8024CBF8 00249B38 7C A5 00 2E */ lwzx r5, r5, r0
|
|
/* 8024CBFC 00249B3C 4B FF 6E E1 */ bl getBaseGenGlobalPosition__Q34Game4Cave7MapNodeFPQ34Game4Cave7BaseGen
|
|
/* 8024CC00 00249B40 C0 01 00 08 */ lfs f0, 8(r1)
|
|
/* 8024CC04 00249B44 D0 1F 00 00 */ stfs f0, 0(r31)
|
|
/* 8024CC08 00249B48 C0 01 00 0C */ lfs f0, 0xc(r1)
|
|
/* 8024CC0C 00249B4C D0 1F 00 04 */ stfs f0, 4(r31)
|
|
/* 8024CC10 00249B50 C0 01 00 10 */ lfs f0, 0x10(r1)
|
|
/* 8024CC14 00249B54 D0 1F 00 08 */ stfs f0, 8(r31)
|
|
.L_8024CC18:
|
|
/* 8024CC18 00249B58 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8024CC1C 00249B5C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8024CC20 00249B60 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CC24 00249B64 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8024CC28 00249B68 4E 80 00 20 */ blr
|
|
|
|
.global getVersusHighScore__Q34Game4Cave12RandMapScoreFv
|
|
getVersusHighScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CC2C 00249B6C 80 63 00 0C */ lwz r3, 0xc(r3)
|
|
/* 8024CC30 00249B70 4E 80 00 20 */ blr
|
|
|
|
.global getVersusLowScore__Q34Game4Cave12RandMapScoreFv
|
|
getVersusLowScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CC34 00249B74 80 63 00 10 */ lwz r3, 0x10(r3)
|
|
/* 8024CC38 00249B78 4E 80 00 20 */ blr
|
|
|
|
.global isScoreSetDone__Q34Game4Cave12RandMapScoreFv
|
|
isScoreSetDone__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CC3C 00249B7C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024CC40 00249B80 7C 08 02 A6 */ mflr r0
|
|
/* 8024CC44 00249B84 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024CC48 00249B88 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024CC4C 00249B8C 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024CC50 00249B90 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024CC54 00249B94 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024CC58 00249B98 83 E3 00 10 */ lwz r31, 0x10(r3)
|
|
/* 8024CC5C 00249B9C 48 00 00 40 */ b .L_8024CC9C
|
|
.L_8024CC60:
|
|
/* 8024CC60 00249BA0 3B C0 00 00 */ li r30, 0
|
|
/* 8024CC64 00249BA4 48 00 00 24 */ b .L_8024CC88
|
|
.L_8024CC68:
|
|
/* 8024CC68 00249BA8 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CC6C 00249BAC 7F C4 F3 78 */ mr r4, r30
|
|
/* 8024CC70 00249BB0 4B FF 67 F9 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024CC74 00249BB4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024CC78 00249BB8 40 82 00 0C */ bne .L_8024CC84
|
|
/* 8024CC7C 00249BBC 38 60 00 00 */ li r3, 0
|
|
/* 8024CC80 00249BC0 48 00 00 28 */ b .L_8024CCA8
|
|
.L_8024CC84:
|
|
/* 8024CC84 00249BC4 3B DE 00 01 */ addi r30, r30, 1
|
|
.L_8024CC88:
|
|
/* 8024CC88 00249BC8 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CC8C 00249BCC 4B FF 73 D5 */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024CC90 00249BD0 7C 1E 18 00 */ cmpw r30, r3
|
|
/* 8024CC94 00249BD4 41 80 FF D4 */ blt .L_8024CC68
|
|
/* 8024CC98 00249BD8 83 FF 00 04 */ lwz r31, 4(r31)
|
|
.L_8024CC9C:
|
|
/* 8024CC9C 00249BDC 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8024CCA0 00249BE0 40 82 FF C0 */ bne .L_8024CC60
|
|
/* 8024CCA4 00249BE4 38 60 00 01 */ li r3, 1
|
|
.L_8024CCA8:
|
|
/* 8024CCA8 00249BE8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024CCAC 00249BEC 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024CCB0 00249BF0 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024CCB4 00249BF4 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CCB8 00249BF8 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024CCBC 00249BFC 4E 80 00 20 */ blr
|
|
|
|
.global clearRoomAndDoorScore__Q34Game4Cave12RandMapScoreFv
|
|
clearRoomAndDoorScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CCC0 00249C00 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024CCC4 00249C04 7C 08 02 A6 */ mflr r0
|
|
/* 8024CCC8 00249C08 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024CCCC 00249C0C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024CCD0 00249C10 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024CCD4 00249C14 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8024CCD8 00249C18 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024CCDC 00249C1C 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024CCE0 00249C20 83 E3 00 10 */ lwz r31, 0x10(r3)
|
|
/* 8024CCE4 00249C24 48 00 00 24 */ b .L_8024CD08
|
|
.L_8024CCE8:
|
|
/* 8024CCE8 00249C28 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CCEC 00249C2C 4B FF 6A CD */ bl setEnemyScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024CCF0 00249C30 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CCF4 00249C34 38 80 FF FF */ li r4, -1
|
|
/* 8024CCF8 00249C38 4B FF 6B 6D */ bl setNodeScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024CCFC 00249C3C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024CD00 00249C40 4B FF 66 35 */ bl resetDoorScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024CD04 00249C44 83 FF 00 04 */ lwz r31, 4(r31)
|
|
.L_8024CD08:
|
|
/* 8024CD08 00249C48 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8024CD0C 00249C4C 40 82 FF DC */ bne .L_8024CCE8
|
|
/* 8024CD10 00249C50 80 7E 00 00 */ lwz r3, 0(r30)
|
|
/* 8024CD14 00249C54 88 03 00 02 */ lbz r0, 2(r3)
|
|
/* 8024CD18 00249C58 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024CD1C 00249C5C 41 82 00 38 */ beq .L_8024CD54
|
|
/* 8024CD20 00249C60 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024CD24 00249C64 80 83 00 0C */ lwz r4, 0xc(r3)
|
|
/* 8024CD28 00249C68 28 04 00 00 */ cmplwi r4, 0
|
|
/* 8024CD2C 00249C6C 41 82 00 0C */ beq .L_8024CD38
|
|
/* 8024CD30 00249C70 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024CD34 00249C74 48 00 01 A5 */ bl setStartMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
.L_8024CD38:
|
|
/* 8024CD38 00249C78 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024CD3C 00249C7C 80 83 00 10 */ lwz r4, 0x10(r3)
|
|
/* 8024CD40 00249C80 28 04 00 00 */ cmplwi r4, 0
|
|
/* 8024CD44 00249C84 41 82 00 28 */ beq .L_8024CD6C
|
|
/* 8024CD48 00249C88 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024CD4C 00249C8C 48 00 01 8D */ bl setStartMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
/* 8024CD50 00249C90 48 00 00 1C */ b .L_8024CD6C
|
|
.L_8024CD54:
|
|
/* 8024CD54 00249C94 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024CD58 00249C98 80 83 00 00 */ lwz r4, 0(r3)
|
|
/* 8024CD5C 00249C9C 28 04 00 00 */ cmplwi r4, 0
|
|
/* 8024CD60 00249CA0 41 82 00 0C */ beq .L_8024CD6C
|
|
/* 8024CD64 00249CA4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024CD68 00249CA8 48 00 01 71 */ bl setStartMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
.L_8024CD6C:
|
|
/* 8024CD6C 00249CAC 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024CD70 00249CB0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024CD74 00249CB4 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024CD78 00249CB8 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CD7C 00249CBC 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024CD80 00249CC0 4E 80 00 20 */ blr
|
|
|
|
.global setUnitAndDoorScore__Q34Game4Cave12RandMapScoreFv
|
|
setUnitAndDoorScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CD84 00249CC4 94 21 FF C0 */ stwu r1, -0x40(r1)
|
|
/* 8024CD88 00249CC8 7C 08 02 A6 */ mflr r0
|
|
/* 8024CD8C 00249CCC 3C 80 00 C3 */ lis r4, 0x00C35000@ha
|
|
/* 8024CD90 00249CD0 90 01 00 44 */ stw r0, 0x44(r1)
|
|
/* 8024CD94 00249CD4 BE 81 00 10 */ stmw r20, 0x10(r1)
|
|
/* 8024CD98 00249CD8 7C 76 1B 78 */ mr r22, r3
|
|
/* 8024CD9C 00249CDC 3B 64 50 00 */ addi r27, r4, 0x00C35000@l
|
|
/* 8024CDA0 00249CE0 3B A0 00 00 */ li r29, 0
|
|
/* 8024CDA4 00249CE4 3B 80 FF FF */ li r28, -1
|
|
/* 8024CDA8 00249CE8 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024CDAC 00249CEC 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024CDB0 00249CF0 83 43 00 10 */ lwz r26, 0x10(r3)
|
|
/* 8024CDB4 00249CF4 48 00 00 D8 */ b .L_8024CE8C
|
|
.L_8024CDB8:
|
|
/* 8024CDB8 00249CF8 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CDBC 00249CFC 4B FF 6B F9 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024CDC0 00249D00 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CDC4 00249D04 4B FF 72 9D */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024CDC8 00249D08 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8024CDCC 00249D0C 3B 20 00 00 */ li r25, 0
|
|
/* 8024CDD0 00249D10 3B C0 00 00 */ li r30, 0
|
|
/* 8024CDD4 00249D14 48 00 00 AC */ b .L_8024CE80
|
|
.L_8024CDD8:
|
|
/* 8024CDD8 00249D18 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CDDC 00249D1C 7F 24 CB 78 */ mr r4, r25
|
|
/* 8024CDE0 00249D20 4B FF 66 89 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024CDE4 00249D24 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024CDE8 00249D28 41 82 00 90 */ beq .L_8024CE78
|
|
/* 8024CDEC 00249D2C 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CDF0 00249D30 7F 24 CB 78 */ mr r4, r25
|
|
/* 8024CDF4 00249D34 4B FF 66 B5 */ bl getAdjustNode__Q34Game4Cave7MapNodeFi
|
|
/* 8024CDF8 00249D38 83 03 00 10 */ lwz r24, 0x10(r3)
|
|
/* 8024CDFC 00249D3C 48 00 00 74 */ b .L_8024CE70
|
|
.L_8024CE00:
|
|
/* 8024CE00 00249D40 80 98 00 18 */ lwz r4, 0x18(r24)
|
|
/* 8024CE04 00249D44 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CE08 00249D48 82 E4 00 00 */ lwz r23, 0(r4)
|
|
/* 8024CE0C 00249D4C 7E E4 BB 78 */ mr r4, r23
|
|
/* 8024CE10 00249D50 4B FF 66 59 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024CE14 00249D54 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024CE18 00249D58 40 82 00 54 */ bne .L_8024CE6C
|
|
/* 8024CE1C 00249D5C 82 98 00 18 */ lwz r20, 0x18(r24)
|
|
/* 8024CE20 00249D60 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CE24 00249D64 4B FF 6B 89 */ bl getEnemyScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024CE28 00249D68 80 14 00 08 */ lwz r0, 8(r20)
|
|
/* 8024CE2C 00249D6C 7E E4 BB 78 */ mr r4, r23
|
|
/* 8024CE30 00249D70 80 BA 00 28 */ lwz r5, 0x28(r26)
|
|
/* 8024CE34 00249D74 7C C0 19 D6 */ mullw r6, r0, r3
|
|
/* 8024CE38 00249D78 82 94 00 04 */ lwz r20, 4(r20)
|
|
/* 8024CE3C 00249D7C 38 05 00 08 */ addi r0, r5, 8
|
|
/* 8024CE40 00249D80 7C 1E 00 2E */ lwzx r0, r30, r0
|
|
/* 8024CE44 00249D84 7F 43 D3 78 */ mr r3, r26
|
|
/* 8024CE48 00249D88 7E A0 32 14 */ add r21, r0, r6
|
|
/* 8024CE4C 00249D8C 4B FF 67 D5 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024CE50 00249D90 7C 15 1A 14 */ add r0, r21, r3
|
|
/* 8024CE54 00249D94 7C 14 02 14 */ add r0, r20, r0
|
|
/* 8024CE58 00249D98 7C 1B 00 00 */ cmpw r27, r0
|
|
/* 8024CE5C 00249D9C 40 81 00 10 */ ble .L_8024CE6C
|
|
/* 8024CE60 00249DA0 7C 1B 03 78 */ mr r27, r0
|
|
/* 8024CE64 00249DA4 7F 5D D3 78 */ mr r29, r26
|
|
/* 8024CE68 00249DA8 7E FC BB 78 */ mr r28, r23
|
|
.L_8024CE6C:
|
|
/* 8024CE6C 00249DAC 83 18 00 04 */ lwz r24, 4(r24)
|
|
.L_8024CE70:
|
|
/* 8024CE70 00249DB0 28 18 00 00 */ cmplwi r24, 0
|
|
/* 8024CE74 00249DB4 40 82 FF 8C */ bne .L_8024CE00
|
|
.L_8024CE78:
|
|
/* 8024CE78 00249DB8 3B DE 00 0C */ addi r30, r30, 0xc
|
|
/* 8024CE7C 00249DBC 3B 39 00 01 */ addi r25, r25, 1
|
|
.L_8024CE80:
|
|
/* 8024CE80 00249DC0 7C 19 F8 00 */ cmpw r25, r31
|
|
/* 8024CE84 00249DC4 41 80 FF 54 */ blt .L_8024CDD8
|
|
/* 8024CE88 00249DC8 83 5A 00 04 */ lwz r26, 4(r26)
|
|
.L_8024CE8C:
|
|
/* 8024CE8C 00249DCC 28 1A 00 00 */ cmplwi r26, 0
|
|
/* 8024CE90 00249DD0 40 82 FF 28 */ bne .L_8024CDB8
|
|
/* 8024CE94 00249DD4 28 1D 00 00 */ cmplwi r29, 0
|
|
/* 8024CE98 00249DD8 41 82 00 2C */ beq .L_8024CEC4
|
|
/* 8024CE9C 00249DDC 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024CEA0 00249DE0 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024CEA4 00249DE4 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024CEA8 00249DE8 4B FF 65 8D */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024CEAC 00249DEC 1C 1C 00 0C */ mulli r0, r28, 0xc
|
|
/* 8024CEB0 00249DF0 80 9D 00 28 */ lwz r4, 0x28(r29)
|
|
/* 8024CEB4 00249DF4 7E C3 B3 78 */ mr r3, r22
|
|
/* 8024CEB8 00249DF8 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024CEBC 00249DFC 7C 84 00 2E */ lwzx r4, r4, r0
|
|
/* 8024CEC0 00249E00 48 00 09 3D */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024CEC4:
|
|
/* 8024CEC4 00249E04 BA 81 00 10 */ lmw r20, 0x10(r1)
|
|
/* 8024CEC8 00249E08 80 01 00 44 */ lwz r0, 0x44(r1)
|
|
/* 8024CECC 00249E0C 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CED0 00249E10 38 21 00 40 */ addi r1, r1, 0x40
|
|
/* 8024CED4 00249E14 4E 80 00 20 */ blr
|
|
|
|
.global setStartMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
setStartMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode:
|
|
/* 8024CED8 00249E18 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8024CEDC 00249E1C 7C 08 02 A6 */ mflr r0
|
|
/* 8024CEE0 00249E20 38 A0 00 00 */ li r5, 0
|
|
/* 8024CEE4 00249E24 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8024CEE8 00249E28 BF 61 00 0C */ stmw r27, 0xc(r1)
|
|
/* 8024CEEC 00249E2C 7C 7B 1B 78 */ mr r27, r3
|
|
/* 8024CEF0 00249E30 7C 9C 23 78 */ mr r28, r4
|
|
/* 8024CEF4 00249E34 48 00 09 09 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
/* 8024CEF8 00249E38 3B A0 00 00 */ li r29, 0
|
|
/* 8024CEFC 00249E3C 3B C0 00 00 */ li r30, 0
|
|
/* 8024CF00 00249E40 48 00 00 64 */ b .L_8024CF64
|
|
.L_8024CF04:
|
|
/* 8024CF04 00249E44 7F 83 E3 78 */ mr r3, r28
|
|
/* 8024CF08 00249E48 7F A4 EB 78 */ mr r4, r29
|
|
/* 8024CF0C 00249E4C 4B FF 65 5D */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024CF10 00249E50 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024CF14 00249E54 40 82 00 48 */ bne .L_8024CF5C
|
|
/* 8024CF18 00249E58 7F 83 E3 78 */ mr r3, r28
|
|
/* 8024CF1C 00249E5C 7F A4 EB 78 */ mr r4, r29
|
|
/* 8024CF20 00249E60 4B FF 67 01 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024CF24 00249E64 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8024CF28 00249E68 7F 83 E3 78 */ mr r3, r28
|
|
/* 8024CF2C 00249E6C 4B FF 6A 89 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024CF30 00249E70 3B FF 00 01 */ addi r31, r31, 1
|
|
/* 8024CF34 00249E74 7F A4 EB 78 */ mr r4, r29
|
|
/* 8024CF38 00249E78 7F E3 FA 14 */ add r31, r3, r31
|
|
/* 8024CF3C 00249E7C 7F 83 E3 78 */ mr r3, r28
|
|
/* 8024CF40 00249E80 7F E5 FB 78 */ mr r5, r31
|
|
/* 8024CF44 00249E84 4B FF 64 F1 */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024CF48 00249E88 80 9C 00 28 */ lwz r4, 0x28(r28)
|
|
/* 8024CF4C 00249E8C 7F 63 DB 78 */ mr r3, r27
|
|
/* 8024CF50 00249E90 7F E5 FB 78 */ mr r5, r31
|
|
/* 8024CF54 00249E94 7C 84 F0 2E */ lwzx r4, r4, r30
|
|
/* 8024CF58 00249E98 48 00 08 A5 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024CF5C:
|
|
/* 8024CF5C 00249E9C 3B DE 00 0C */ addi r30, r30, 0xc
|
|
/* 8024CF60 00249EA0 3B BD 00 01 */ addi r29, r29, 1
|
|
.L_8024CF64:
|
|
/* 8024CF64 00249EA4 7F 83 E3 78 */ mr r3, r28
|
|
/* 8024CF68 00249EA8 4B FF 70 F9 */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024CF6C 00249EAC 7C 1D 18 00 */ cmpw r29, r3
|
|
/* 8024CF70 00249EB0 41 80 FF 94 */ blt .L_8024CF04
|
|
/* 8024CF74 00249EB4 BB 61 00 0C */ lmw r27, 0xc(r1)
|
|
/* 8024CF78 00249EB8 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8024CF7C 00249EBC 7C 08 03 A6 */ mtlr r0
|
|
/* 8024CF80 00249EC0 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8024CF84 00249EC4 4E 80 00 20 */ blr
|
|
|
|
.global setChallengePod__Q34Game4Cave12RandMapScoreFv
|
|
setChallengePod__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024CF88 00249EC8 94 21 FF 90 */ stwu r1, -0x70(r1)
|
|
/* 8024CF8C 00249ECC 7C 08 02 A6 */ mflr r0
|
|
/* 8024CF90 00249ED0 90 01 00 74 */ stw r0, 0x74(r1)
|
|
/* 8024CF94 00249ED4 93 E1 00 6C */ stw r31, 0x6c(r1)
|
|
/* 8024CF98 00249ED8 93 C1 00 68 */ stw r30, 0x68(r1)
|
|
/* 8024CF9C 00249EDC 93 A1 00 64 */ stw r29, 0x64(r1)
|
|
/* 8024CFA0 00249EE0 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8024CFA4 00249EE4 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8024CFA8 00249EE8 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 8024CFAC 00249EEC 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024CFB0 00249EF0 40 82 00 F8 */ bne .L_8024D0A8
|
|
/* 8024CFB4 00249EF4 80 7D 00 00 */ lwz r3, 0(r29)
|
|
/* 8024CFB8 00249EF8 3B E0 00 00 */ li r31, 0
|
|
/* 8024CFBC 00249EFC 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024CFC0 00249F00 83 C3 00 10 */ lwz r30, 0x10(r3)
|
|
/* 8024CFC4 00249F04 48 00 00 24 */ b .L_8024CFE8
|
|
.L_8024CFC8:
|
|
/* 8024CFC8 00249F08 80 7E 00 18 */ lwz r3, 0x18(r30)
|
|
/* 8024CFCC 00249F0C 4B FF 5B AD */ bl getUnitKind__Q34Game4Cave8UnitInfoFv
|
|
/* 8024CFD0 00249F10 2C 03 00 01 */ cmpwi r3, 1
|
|
/* 8024CFD4 00249F14 40 82 00 10 */ bne .L_8024CFE4
|
|
/* 8024CFD8 00249F18 80 7D 00 04 */ lwz r3, 4(r29)
|
|
/* 8024CFDC 00249F1C 93 C3 00 00 */ stw r30, 0(r3)
|
|
/* 8024CFE0 00249F20 48 00 00 10 */ b .L_8024CFF0
|
|
.L_8024CFE4:
|
|
/* 8024CFE4 00249F24 83 DE 00 04 */ lwz r30, 4(r30)
|
|
.L_8024CFE8:
|
|
/* 8024CFE8 00249F28 28 1E 00 00 */ cmplwi r30, 0
|
|
/* 8024CFEC 00249F2C 40 82 FF DC */ bne .L_8024CFC8
|
|
.L_8024CFF0:
|
|
/* 8024CFF0 00249F30 80 7D 00 04 */ lwz r3, 4(r29)
|
|
/* 8024CFF4 00249F34 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024CFF8 00249F38 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8024CFFC 00249F3C 41 82 00 AC */ beq .L_8024D0A8
|
|
/* 8024D000 00249F40 80 63 00 18 */ lwz r3, 0x18(r3)
|
|
/* 8024D004 00249F44 4B FF 5B BD */ bl getBaseGen__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D008 00249F48 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8024D00C 00249F4C 41 82 00 34 */ beq .L_8024D040
|
|
/* 8024D010 00249F50 80 83 00 10 */ lwz r4, 0x10(r3)
|
|
/* 8024D014 00249F54 38 61 00 08 */ addi r3, r1, 8
|
|
/* 8024D018 00249F58 48 00 00 20 */ b .L_8024D038
|
|
.L_8024D01C:
|
|
/* 8024D01C 00249F5C 80 04 00 18 */ lwz r0, 0x18(r4)
|
|
/* 8024D020 00249F60 2C 00 00 07 */ cmpwi r0, 7
|
|
/* 8024D024 00249F64 40 82 00 10 */ bne .L_8024D034
|
|
/* 8024D028 00249F68 90 83 00 00 */ stw r4, 0(r3)
|
|
/* 8024D02C 00249F6C 38 63 00 04 */ addi r3, r3, 4
|
|
/* 8024D030 00249F70 3B FF 00 01 */ addi r31, r31, 1
|
|
.L_8024D034:
|
|
/* 8024D034 00249F74 80 84 00 04 */ lwz r4, 4(r4)
|
|
.L_8024D038:
|
|
/* 8024D038 00249F78 28 04 00 00 */ cmplwi r4, 0
|
|
/* 8024D03C 00249F7C 40 82 FF E0 */ bne .L_8024D01C
|
|
.L_8024D040:
|
|
/* 8024D040 00249F80 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8024D044 00249F84 41 82 00 64 */ beq .L_8024D0A8
|
|
/* 8024D048 00249F88 4B E7 C5 59 */ bl rand
|
|
/* 8024D04C 00249F8C 3C A0 43 30 */ lis r5, 0x4330
|
|
/* 8024D050 00249F90 6C 60 80 00 */ xoris r0, r3, 0x8000
|
|
/* 8024D054 00249F94 90 01 00 4C */ stw r0, 0x4c(r1)
|
|
/* 8024D058 00249F98 6F E0 80 00 */ xoris r0, r31, 0x8000
|
|
/* 8024D05C 00249F9C C8 42 C4 A0 */ lfd f2, lbl_8051A800@sda21(r2)
|
|
/* 8024D060 00249FA0 38 81 00 08 */ addi r4, r1, 8
|
|
/* 8024D064 00249FA4 90 A1 00 48 */ stw r5, 0x48(r1)
|
|
/* 8024D068 00249FA8 C0 02 C4 98 */ lfs f0, lbl_8051A7F8@sda21(r2)
|
|
/* 8024D06C 00249FAC C8 21 00 48 */ lfd f1, 0x48(r1)
|
|
/* 8024D070 00249FB0 90 01 00 54 */ stw r0, 0x54(r1)
|
|
/* 8024D074 00249FB4 EC 21 10 28 */ fsubs f1, f1, f2
|
|
/* 8024D078 00249FB8 80 7D 00 08 */ lwz r3, 8(r29)
|
|
/* 8024D07C 00249FBC 90 A1 00 50 */ stw r5, 0x50(r1)
|
|
/* 8024D080 00249FC0 EC 21 00 24 */ fdivs f1, f1, f0
|
|
/* 8024D084 00249FC4 C8 01 00 50 */ lfd f0, 0x50(r1)
|
|
/* 8024D088 00249FC8 EC 00 10 28 */ fsubs f0, f0, f2
|
|
/* 8024D08C 00249FCC EC 00 00 72 */ fmuls f0, f0, f1
|
|
/* 8024D090 00249FD0 FC 00 00 1E */ fctiwz f0, f0
|
|
/* 8024D094 00249FD4 D8 01 00 58 */ stfd f0, 0x58(r1)
|
|
/* 8024D098 00249FD8 80 01 00 5C */ lwz r0, 0x5c(r1)
|
|
/* 8024D09C 00249FDC 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8024D0A0 00249FE0 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 8024D0A4 00249FE4 90 03 00 00 */ stw r0, 0(r3)
|
|
.L_8024D0A8:
|
|
/* 8024D0A8 00249FE8 80 01 00 74 */ lwz r0, 0x74(r1)
|
|
/* 8024D0AC 00249FEC 83 E1 00 6C */ lwz r31, 0x6c(r1)
|
|
/* 8024D0B0 00249FF0 83 C1 00 68 */ lwz r30, 0x68(r1)
|
|
/* 8024D0B4 00249FF4 83 A1 00 64 */ lwz r29, 0x64(r1)
|
|
/* 8024D0B8 00249FF8 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D0BC 00249FFC 38 21 00 70 */ addi r1, r1, 0x70
|
|
/* 8024D0C0 0024A000 4E 80 00 20 */ blr
|
|
|
|
.global setVersusOnyon__Q34Game4Cave12RandMapScoreFv
|
|
setVersusOnyon__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024D0C4 0024A004 94 21 FF 80 */ stwu r1, -0x80(r1)
|
|
/* 8024D0C8 0024A008 7C 08 02 A6 */ mflr r0
|
|
/* 8024D0CC 0024A00C 90 01 00 84 */ stw r0, 0x84(r1)
|
|
/* 8024D0D0 0024A010 93 E1 00 7C */ stw r31, 0x7c(r1)
|
|
/* 8024D0D4 0024A014 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8024D0D8 0024A018 93 C1 00 78 */ stw r30, 0x78(r1)
|
|
/* 8024D0DC 0024A01C 93 A1 00 74 */ stw r29, 0x74(r1)
|
|
/* 8024D0E0 0024A020 93 81 00 70 */ stw r28, 0x70(r1)
|
|
/* 8024D0E4 0024A024 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8024D0E8 0024A028 80 03 00 0C */ lwz r0, 0xc(r3)
|
|
/* 8024D0EC 0024A02C 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D0F0 0024A030 40 82 01 6C */ bne .L_8024D25C
|
|
/* 8024D0F4 0024A034 80 03 00 10 */ lwz r0, 0x10(r3)
|
|
/* 8024D0F8 0024A038 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D0FC 0024A03C 40 82 01 60 */ bne .L_8024D25C
|
|
/* 8024D100 0024A040 80 7F 00 00 */ lwz r3, 0(r31)
|
|
/* 8024D104 0024A044 3B 81 00 18 */ addi r28, r1, 0x18
|
|
/* 8024D108 0024A048 3B A0 00 00 */ li r29, 0
|
|
/* 8024D10C 0024A04C 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D110 0024A050 83 C3 00 10 */ lwz r30, 0x10(r3)
|
|
/* 8024D114 0024A054 48 00 00 24 */ b .L_8024D138
|
|
.L_8024D118:
|
|
/* 8024D118 0024A058 80 7E 00 18 */ lwz r3, 0x18(r30)
|
|
/* 8024D11C 0024A05C 4B FF 5A 5D */ bl getUnitKind__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D120 0024A060 2C 03 00 01 */ cmpwi r3, 1
|
|
/* 8024D124 0024A064 40 82 00 10 */ bne .L_8024D134
|
|
/* 8024D128 0024A068 93 DC 00 00 */ stw r30, 0(r28)
|
|
/* 8024D12C 0024A06C 3B 9C 00 04 */ addi r28, r28, 4
|
|
/* 8024D130 0024A070 3B BD 00 01 */ addi r29, r29, 1
|
|
.L_8024D134:
|
|
/* 8024D134 0024A074 83 DE 00 04 */ lwz r30, 4(r30)
|
|
.L_8024D138:
|
|
/* 8024D138 0024A078 28 1E 00 00 */ cmplwi r30, 0
|
|
/* 8024D13C 0024A07C 40 82 FF DC */ bne .L_8024D118
|
|
/* 8024D140 0024A080 2C 1D 00 00 */ cmpwi r29, 0
|
|
/* 8024D144 0024A084 41 82 00 60 */ beq .L_8024D1A4
|
|
/* 8024D148 0024A088 4B E7 C4 59 */ bl rand
|
|
/* 8024D14C 0024A08C 3C 80 43 30 */ lis r4, 0x4330
|
|
/* 8024D150 0024A090 6C 60 80 00 */ xoris r0, r3, 0x8000
|
|
/* 8024D154 0024A094 90 01 00 5C */ stw r0, 0x5c(r1)
|
|
/* 8024D158 0024A098 6F A0 80 00 */ xoris r0, r29, 0x8000
|
|
/* 8024D15C 0024A09C C8 42 C4 A0 */ lfd f2, lbl_8051A800@sda21(r2)
|
|
/* 8024D160 0024A0A0 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8024D164 0024A0A4 90 81 00 58 */ stw r4, 0x58(r1)
|
|
/* 8024D168 0024A0A8 C0 02 C4 98 */ lfs f0, lbl_8051A7F8@sda21(r2)
|
|
/* 8024D16C 0024A0AC C8 21 00 58 */ lfd f1, 0x58(r1)
|
|
/* 8024D170 0024A0B0 90 01 00 64 */ stw r0, 0x64(r1)
|
|
/* 8024D174 0024A0B4 EC 21 10 28 */ fsubs f1, f1, f2
|
|
/* 8024D178 0024A0B8 90 81 00 60 */ stw r4, 0x60(r1)
|
|
/* 8024D17C 0024A0BC EC 21 00 24 */ fdivs f1, f1, f0
|
|
/* 8024D180 0024A0C0 C8 01 00 60 */ lfd f0, 0x60(r1)
|
|
/* 8024D184 0024A0C4 EC 00 10 28 */ fsubs f0, f0, f2
|
|
/* 8024D188 0024A0C8 EC 00 00 72 */ fmuls f0, f0, f1
|
|
/* 8024D18C 0024A0CC FC 00 00 1E */ fctiwz f0, f0
|
|
/* 8024D190 0024A0D0 D8 01 00 68 */ stfd f0, 0x68(r1)
|
|
/* 8024D194 0024A0D4 80 01 00 6C */ lwz r0, 0x6c(r1)
|
|
/* 8024D198 0024A0D8 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8024D19C 0024A0DC 7F C3 00 2E */ lwzx r30, r3, r0
|
|
/* 8024D1A0 0024A0E0 48 00 00 08 */ b .L_8024D1A8
|
|
.L_8024D1A4:
|
|
/* 8024D1A4 0024A0E4 3B C0 00 00 */ li r30, 0
|
|
.L_8024D1A8:
|
|
/* 8024D1A8 0024A0E8 80 A2 2B 48 */ lwz r5, lbl_80520EA8@sda21(r2)
|
|
/* 8024D1AC 0024A0EC 28 1E 00 00 */ cmplwi r30, 0
|
|
/* 8024D1B0 0024A0F0 80 82 2B 4C */ lwz r4, (lbl_80520EA8+4)@sda21(r2)
|
|
/* 8024D1B4 0024A0F4 80 62 2B 50 */ lwz r3, lbl_80520EB0@sda21(r2)
|
|
/* 8024D1B8 0024A0F8 80 02 2B 54 */ lwz r0, (lbl_80520EB0+4)@sda21(r2)
|
|
/* 8024D1BC 0024A0FC 90 A1 00 10 */ stw r5, 0x10(r1)
|
|
/* 8024D1C0 0024A100 90 81 00 14 */ stw r4, 0x14(r1)
|
|
/* 8024D1C4 0024A104 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8024D1C8 0024A108 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8024D1CC 0024A10C 41 82 00 90 */ beq .L_8024D25C
|
|
/* 8024D1D0 0024A110 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D1D4 0024A114 7F C4 F3 78 */ mr r4, r30
|
|
/* 8024D1D8 0024A118 48 00 01 A1 */ bl calcNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
/* 8024D1DC 0024A11C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D1E0 0024A120 7F C4 F3 78 */ mr r4, r30
|
|
/* 8024D1E4 0024A124 38 A1 00 08 */ addi r5, r1, 8
|
|
/* 8024D1E8 0024A128 48 00 00 95 */ bl getMaxScoreRoomMapNode__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePPQ34Game4Cave7BaseGen
|
|
/* 8024D1EC 0024A12C 7C 64 1B 78 */ mr r4, r3
|
|
/* 8024D1F0 0024A130 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D1F4 0024A134 90 81 00 10 */ stw r4, 0x10(r1)
|
|
/* 8024D1F8 0024A138 48 00 01 81 */ bl calcNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
/* 8024D1FC 0024A13C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D200 0024A140 48 00 05 29 */ bl copyNodeScore__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024D204 0024A144 80 81 00 10 */ lwz r4, 0x10(r1)
|
|
/* 8024D208 0024A148 38 A1 00 0C */ addi r5, r1, 0xc
|
|
/* 8024D20C 0024A14C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D210 0024A150 48 00 00 6D */ bl getMaxScoreRoomMapNode__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePPQ34Game4Cave7BaseGen
|
|
/* 8024D214 0024A154 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8024D218 0024A158 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D21C 0024A15C 93 C1 00 14 */ stw r30, 0x14(r1)
|
|
/* 8024D220 0024A160 7F C4 F3 78 */ mr r4, r30
|
|
/* 8024D224 0024A164 48 00 01 55 */ bl calcNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
/* 8024D228 0024A168 80 01 00 10 */ lwz r0, 0x10(r1)
|
|
/* 8024D22C 0024A16C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D230 0024A170 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024D234 0024A174 90 04 00 0C */ stw r0, 0xc(r4)
|
|
/* 8024D238 0024A178 80 9F 00 04 */ lwz r4, 4(r31)
|
|
/* 8024D23C 0024A17C 93 C4 00 10 */ stw r30, 0x10(r4)
|
|
/* 8024D240 0024A180 80 01 00 08 */ lwz r0, 8(r1)
|
|
/* 8024D244 0024A184 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024D248 0024A188 90 04 00 0C */ stw r0, 0xc(r4)
|
|
/* 8024D24C 0024A18C 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 8024D250 0024A190 80 9F 00 08 */ lwz r4, 8(r31)
|
|
/* 8024D254 0024A194 90 04 00 10 */ stw r0, 0x10(r4)
|
|
/* 8024D258 0024A198 48 00 05 19 */ bl subNodeScore__Q34Game4Cave12RandMapScoreFv
|
|
.L_8024D25C:
|
|
/* 8024D25C 0024A19C 80 01 00 84 */ lwz r0, 0x84(r1)
|
|
/* 8024D260 0024A1A0 83 E1 00 7C */ lwz r31, 0x7c(r1)
|
|
/* 8024D264 0024A1A4 83 C1 00 78 */ lwz r30, 0x78(r1)
|
|
/* 8024D268 0024A1A8 83 A1 00 74 */ lwz r29, 0x74(r1)
|
|
/* 8024D26C 0024A1AC 83 81 00 70 */ lwz r28, 0x70(r1)
|
|
/* 8024D270 0024A1B0 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D274 0024A1B4 38 21 00 80 */ addi r1, r1, 0x80
|
|
/* 8024D278 0024A1B8 4E 80 00 20 */ blr
|
|
|
|
.global getMaxScoreRoomMapNode__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePPQ34Game4Cave7BaseGen
|
|
getMaxScoreRoomMapNode__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePPQ34Game4Cave7BaseGen:
|
|
/* 8024D27C 0024A1BC 94 21 FF D0 */ stwu r1, -0x30(r1)
|
|
/* 8024D280 0024A1C0 7C 08 02 A6 */ mflr r0
|
|
/* 8024D284 0024A1C4 90 01 00 34 */ stw r0, 0x34(r1)
|
|
/* 8024D288 0024A1C8 BF 21 00 14 */ stmw r25, 0x14(r1)
|
|
/* 8024D28C 0024A1CC 7C 99 23 78 */ mr r25, r4
|
|
/* 8024D290 0024A1D0 7C BA 2B 78 */ mr r26, r5
|
|
/* 8024D294 0024A1D4 3B E0 00 00 */ li r31, 0
|
|
/* 8024D298 0024A1D8 3B C0 00 00 */ li r30, 0
|
|
/* 8024D29C 0024A1DC 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024D2A0 0024A1E0 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D2A4 0024A1E4 83 A3 00 10 */ lwz r29, 0x10(r3)
|
|
/* 8024D2A8 0024A1E8 48 00 00 B0 */ b .L_8024D358
|
|
.L_8024D2AC:
|
|
/* 8024D2AC 0024A1EC 7C 1D C8 40 */ cmplw r29, r25
|
|
/* 8024D2B0 0024A1F0 41 82 00 A4 */ beq .L_8024D354
|
|
/* 8024D2B4 0024A1F4 80 7D 00 18 */ lwz r3, 0x18(r29)
|
|
/* 8024D2B8 0024A1F8 4B FF 58 C1 */ bl getUnitKind__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D2BC 0024A1FC 2C 03 00 01 */ cmpwi r3, 1
|
|
/* 8024D2C0 0024A200 40 82 00 94 */ bne .L_8024D354
|
|
/* 8024D2C4 0024A204 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D2C8 0024A208 4B FF 66 ED */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D2CC 0024A20C 3B 83 00 0A */ addi r28, r3, 0xa
|
|
/* 8024D2D0 0024A210 80 7D 00 18 */ lwz r3, 0x18(r29)
|
|
/* 8024D2D4 0024A214 4B FF 58 ED */ bl getBaseGen__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D2D8 0024A218 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8024D2DC 0024A21C 41 82 00 78 */ beq .L_8024D354
|
|
/* 8024D2E0 0024A220 83 63 00 10 */ lwz r27, 0x10(r3)
|
|
/* 8024D2E4 0024A224 48 00 00 68 */ b .L_8024D34C
|
|
.L_8024D2E8:
|
|
/* 8024D2E8 0024A228 80 1B 00 18 */ lwz r0, 0x18(r27)
|
|
/* 8024D2EC 0024A22C 2C 00 00 07 */ cmpwi r0, 7
|
|
/* 8024D2F0 0024A230 40 82 00 58 */ bne .L_8024D348
|
|
/* 8024D2F4 0024A234 7C 1C F0 00 */ cmpw r28, r30
|
|
/* 8024D2F8 0024A238 41 81 00 44 */ bgt .L_8024D33C
|
|
/* 8024D2FC 0024A23C 40 82 00 4C */ bne .L_8024D348
|
|
/* 8024D300 0024A240 4B E7 C2 A1 */ bl rand
|
|
/* 8024D304 0024A244 6C 63 80 00 */ xoris r3, r3, 0x8000
|
|
/* 8024D308 0024A248 3C 00 43 30 */ lis r0, 0x4330
|
|
/* 8024D30C 0024A24C 90 61 00 0C */ stw r3, 0xc(r1)
|
|
/* 8024D310 0024A250 C8 62 C4 A0 */ lfd f3, lbl_8051A800@sda21(r2)
|
|
/* 8024D314 0024A254 90 01 00 08 */ stw r0, 8(r1)
|
|
/* 8024D318 0024A258 C0 42 C4 A8 */ lfs f2, lbl_8051A808@sda21(r2)
|
|
/* 8024D31C 0024A25C C8 01 00 08 */ lfd f0, 8(r1)
|
|
/* 8024D320 0024A260 C0 22 C4 98 */ lfs f1, lbl_8051A7F8@sda21(r2)
|
|
/* 8024D324 0024A264 EC 60 18 28 */ fsubs f3, f0, f3
|
|
/* 8024D328 0024A268 C0 02 C4 AC */ lfs f0, lbl_8051A80C@sda21(r2)
|
|
/* 8024D32C 0024A26C EC 42 00 F2 */ fmuls f2, f2, f3
|
|
/* 8024D330 0024A270 EC 22 08 24 */ fdivs f1, f2, f1
|
|
/* 8024D334 0024A274 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8024D338 0024A278 40 80 00 10 */ bge .L_8024D348
|
|
.L_8024D33C:
|
|
/* 8024D33C 0024A27C 93 7A 00 00 */ stw r27, 0(r26)
|
|
/* 8024D340 0024A280 7F BF EB 78 */ mr r31, r29
|
|
/* 8024D344 0024A284 7F 9E E3 78 */ mr r30, r28
|
|
.L_8024D348:
|
|
/* 8024D348 0024A288 83 7B 00 04 */ lwz r27, 4(r27)
|
|
.L_8024D34C:
|
|
/* 8024D34C 0024A28C 28 1B 00 00 */ cmplwi r27, 0
|
|
/* 8024D350 0024A290 40 82 FF 98 */ bne .L_8024D2E8
|
|
.L_8024D354:
|
|
/* 8024D354 0024A294 83 BD 00 04 */ lwz r29, 4(r29)
|
|
.L_8024D358:
|
|
/* 8024D358 0024A298 28 1D 00 00 */ cmplwi r29, 0
|
|
/* 8024D35C 0024A29C 40 82 FF 50 */ bne .L_8024D2AC
|
|
/* 8024D360 0024A2A0 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D364 0024A2A4 BB 21 00 14 */ lmw r25, 0x14(r1)
|
|
/* 8024D368 0024A2A8 80 01 00 34 */ lwz r0, 0x34(r1)
|
|
/* 8024D36C 0024A2AC 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D370 0024A2B0 38 21 00 30 */ addi r1, r1, 0x30
|
|
/* 8024D374 0024A2B4 4E 80 00 20 */ blr
|
|
|
|
.global calcNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode
|
|
calcNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNode:
|
|
/* 8024D378 0024A2B8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
|
/* 8024D37C 0024A2BC 7C 08 02 A6 */ mflr r0
|
|
/* 8024D380 0024A2C0 90 01 00 34 */ stw r0, 0x34(r1)
|
|
/* 8024D384 0024A2C4 BF 21 00 14 */ stmw r25, 0x14(r1)
|
|
/* 8024D388 0024A2C8 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8024D38C 0024A2CC 7C 9F 23 78 */ mr r31, r4
|
|
/* 8024D390 0024A2D0 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024D394 0024A2D4 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D398 0024A2D8 83 A3 00 10 */ lwz r29, 0x10(r3)
|
|
/* 8024D39C 0024A2DC 48 00 00 24 */ b .L_8024D3C0
|
|
.L_8024D3A0:
|
|
/* 8024D3A0 0024A2E0 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D3A4 0024A2E4 4B FF 64 15 */ bl setEnemyScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D3A8 0024A2E8 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D3AC 0024A2EC 38 80 FF FF */ li r4, -1
|
|
/* 8024D3B0 0024A2F0 4B FF 64 B5 */ bl setNodeScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024D3B4 0024A2F4 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D3B8 0024A2F8 4B FF 5F 7D */ bl resetDoorScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D3BC 0024A2FC 83 BD 00 04 */ lwz r29, 4(r29)
|
|
.L_8024D3C0:
|
|
/* 8024D3C0 0024A300 28 1D 00 00 */ cmplwi r29, 0
|
|
/* 8024D3C4 0024A304 40 82 FF DC */ bne .L_8024D3A0
|
|
/* 8024D3C8 0024A308 80 7E 00 00 */ lwz r3, 0(r30)
|
|
/* 8024D3CC 0024A30C 88 03 00 02 */ lbz r0, 2(r3)
|
|
/* 8024D3D0 0024A310 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D3D4 0024A314 41 82 01 40 */ beq .L_8024D514
|
|
/* 8024D3D8 0024A318 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024D3DC 0024A31C 83 23 00 0C */ lwz r25, 0xc(r3)
|
|
/* 8024D3E0 0024A320 28 19 00 00 */ cmplwi r25, 0
|
|
/* 8024D3E4 0024A324 41 82 00 90 */ beq .L_8024D474
|
|
/* 8024D3E8 0024A328 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D3EC 0024A32C 7F 24 CB 78 */ mr r4, r25
|
|
/* 8024D3F0 0024A330 38 A0 00 00 */ li r5, 0
|
|
/* 8024D3F4 0024A334 48 00 04 09 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
/* 8024D3F8 0024A338 3B 60 00 00 */ li r27, 0
|
|
/* 8024D3FC 0024A33C 7F 7A DB 78 */ mr r26, r27
|
|
/* 8024D400 0024A340 48 00 00 64 */ b .L_8024D464
|
|
.L_8024D404:
|
|
/* 8024D404 0024A344 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D408 0024A348 7F 64 DB 78 */ mr r4, r27
|
|
/* 8024D40C 0024A34C 4B FF 60 5D */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D410 0024A350 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D414 0024A354 40 82 00 48 */ bne .L_8024D45C
|
|
/* 8024D418 0024A358 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D41C 0024A35C 7F 64 DB 78 */ mr r4, r27
|
|
/* 8024D420 0024A360 4B FF 62 01 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024D424 0024A364 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8024D428 0024A368 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D42C 0024A36C 4B FF 65 89 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D430 0024A370 3B 9D 00 01 */ addi r28, r29, 1
|
|
/* 8024D434 0024A374 7F 64 DB 78 */ mr r4, r27
|
|
/* 8024D438 0024A378 7F 83 E2 14 */ add r28, r3, r28
|
|
/* 8024D43C 0024A37C 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D440 0024A380 7F 85 E3 78 */ mr r5, r28
|
|
/* 8024D444 0024A384 4B FF 5F F1 */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024D448 0024A388 80 99 00 28 */ lwz r4, 0x28(r25)
|
|
/* 8024D44C 0024A38C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D450 0024A390 7F 85 E3 78 */ mr r5, r28
|
|
/* 8024D454 0024A394 7C 84 D0 2E */ lwzx r4, r4, r26
|
|
/* 8024D458 0024A398 48 00 03 A5 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024D45C:
|
|
/* 8024D45C 0024A39C 3B 5A 00 0C */ addi r26, r26, 0xc
|
|
/* 8024D460 0024A3A0 3B 7B 00 01 */ addi r27, r27, 1
|
|
.L_8024D464:
|
|
/* 8024D464 0024A3A4 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D468 0024A3A8 4B FF 6B F9 */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D46C 0024A3AC 7C 1B 18 00 */ cmpw r27, r3
|
|
/* 8024D470 0024A3B0 41 80 FF 94 */ blt .L_8024D404
|
|
.L_8024D474:
|
|
/* 8024D474 0024A3B4 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024D478 0024A3B8 83 23 00 10 */ lwz r25, 0x10(r3)
|
|
/* 8024D47C 0024A3BC 28 19 00 00 */ cmplwi r25, 0
|
|
/* 8024D480 0024A3C0 41 82 01 30 */ beq .L_8024D5B0
|
|
/* 8024D484 0024A3C4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D488 0024A3C8 7F 24 CB 78 */ mr r4, r25
|
|
/* 8024D48C 0024A3CC 38 A0 00 00 */ li r5, 0
|
|
/* 8024D490 0024A3D0 48 00 03 6D */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
/* 8024D494 0024A3D4 3B 80 00 00 */ li r28, 0
|
|
/* 8024D498 0024A3D8 7F 9A E3 78 */ mr r26, r28
|
|
/* 8024D49C 0024A3DC 48 00 00 64 */ b .L_8024D500
|
|
.L_8024D4A0:
|
|
/* 8024D4A0 0024A3E0 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D4A4 0024A3E4 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D4A8 0024A3E8 4B FF 5F C1 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D4AC 0024A3EC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D4B0 0024A3F0 40 82 00 48 */ bne .L_8024D4F8
|
|
/* 8024D4B4 0024A3F4 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D4B8 0024A3F8 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D4BC 0024A3FC 4B FF 61 65 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024D4C0 0024A400 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8024D4C4 0024A404 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D4C8 0024A408 4B FF 64 ED */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D4CC 0024A40C 3B 7D 00 01 */ addi r27, r29, 1
|
|
/* 8024D4D0 0024A410 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D4D4 0024A414 7F 63 DA 14 */ add r27, r3, r27
|
|
/* 8024D4D8 0024A418 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D4DC 0024A41C 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024D4E0 0024A420 4B FF 5F 55 */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024D4E4 0024A424 80 99 00 28 */ lwz r4, 0x28(r25)
|
|
/* 8024D4E8 0024A428 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D4EC 0024A42C 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024D4F0 0024A430 7C 84 D0 2E */ lwzx r4, r4, r26
|
|
/* 8024D4F4 0024A434 48 00 03 09 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024D4F8:
|
|
/* 8024D4F8 0024A438 3B 5A 00 0C */ addi r26, r26, 0xc
|
|
/* 8024D4FC 0024A43C 3B 9C 00 01 */ addi r28, r28, 1
|
|
.L_8024D500:
|
|
/* 8024D500 0024A440 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D504 0024A444 4B FF 6B 5D */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D508 0024A448 7C 1C 18 00 */ cmpw r28, r3
|
|
/* 8024D50C 0024A44C 41 80 FF 94 */ blt .L_8024D4A0
|
|
/* 8024D510 0024A450 48 00 00 A0 */ b .L_8024D5B0
|
|
.L_8024D514:
|
|
/* 8024D514 0024A454 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024D518 0024A458 83 23 00 00 */ lwz r25, 0(r3)
|
|
/* 8024D51C 0024A45C 28 19 00 00 */ cmplwi r25, 0
|
|
/* 8024D520 0024A460 41 82 00 90 */ beq .L_8024D5B0
|
|
/* 8024D524 0024A464 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D528 0024A468 7F 24 CB 78 */ mr r4, r25
|
|
/* 8024D52C 0024A46C 38 A0 00 00 */ li r5, 0
|
|
/* 8024D530 0024A470 48 00 02 CD */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
/* 8024D534 0024A474 3B 80 00 00 */ li r28, 0
|
|
/* 8024D538 0024A478 7F 9A E3 78 */ mr r26, r28
|
|
/* 8024D53C 0024A47C 48 00 00 64 */ b .L_8024D5A0
|
|
.L_8024D540:
|
|
/* 8024D540 0024A480 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D544 0024A484 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D548 0024A488 4B FF 5F 21 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D54C 0024A48C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D550 0024A490 40 82 00 48 */ bne .L_8024D598
|
|
/* 8024D554 0024A494 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D558 0024A498 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D55C 0024A49C 4B FF 60 C5 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024D560 0024A4A0 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8024D564 0024A4A4 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D568 0024A4A8 4B FF 64 4D */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D56C 0024A4AC 3B 7D 00 01 */ addi r27, r29, 1
|
|
/* 8024D570 0024A4B0 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D574 0024A4B4 7F 63 DA 14 */ add r27, r3, r27
|
|
/* 8024D578 0024A4B8 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D57C 0024A4BC 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024D580 0024A4C0 4B FF 5E B5 */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024D584 0024A4C4 80 99 00 28 */ lwz r4, 0x28(r25)
|
|
/* 8024D588 0024A4C8 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D58C 0024A4CC 7F 65 DB 78 */ mr r5, r27
|
|
/* 8024D590 0024A4D0 7C 84 D0 2E */ lwzx r4, r4, r26
|
|
/* 8024D594 0024A4D4 48 00 02 69 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024D598:
|
|
/* 8024D598 0024A4D8 3B 5A 00 0C */ addi r26, r26, 0xc
|
|
/* 8024D59C 0024A4DC 3B 9C 00 01 */ addi r28, r28, 1
|
|
.L_8024D5A0:
|
|
/* 8024D5A0 0024A4E0 7F 23 CB 78 */ mr r3, r25
|
|
/* 8024D5A4 0024A4E4 4B FF 6A BD */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D5A8 0024A4E8 7C 1C 18 00 */ cmpw r28, r3
|
|
/* 8024D5AC 0024A4EC 41 80 FF 94 */ blt .L_8024D540
|
|
.L_8024D5B0:
|
|
/* 8024D5B0 0024A4F0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D5B4 0024A4F4 7F E4 FB 78 */ mr r4, r31
|
|
/* 8024D5B8 0024A4F8 38 A0 00 00 */ li r5, 0
|
|
/* 8024D5BC 0024A4FC 48 00 02 41 */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
/* 8024D5C0 0024A500 3B 80 00 00 */ li r28, 0
|
|
/* 8024D5C4 0024A504 7F 9A E3 78 */ mr r26, r28
|
|
/* 8024D5C8 0024A508 48 00 00 64 */ b .L_8024D62C
|
|
.L_8024D5CC:
|
|
/* 8024D5CC 0024A50C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D5D0 0024A510 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D5D4 0024A514 4B FF 5E 95 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D5D8 0024A518 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D5DC 0024A51C 40 82 00 48 */ bne .L_8024D624
|
|
/* 8024D5E0 0024A520 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D5E4 0024A524 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D5E8 0024A528 4B FF 60 39 */ bl getGateScore__Q34Game4Cave7MapNodeFi
|
|
/* 8024D5EC 0024A52C 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8024D5F0 0024A530 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D5F4 0024A534 4B FF 63 C1 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D5F8 0024A538 3B BD 00 01 */ addi r29, r29, 1
|
|
/* 8024D5FC 0024A53C 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D600 0024A540 7F A3 EA 14 */ add r29, r3, r29
|
|
/* 8024D604 0024A544 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D608 0024A548 7F A5 EB 78 */ mr r5, r29
|
|
/* 8024D60C 0024A54C 4B FF 5E 29 */ bl setDoorScore__Q34Game4Cave7MapNodeFii
|
|
/* 8024D610 0024A550 80 9F 00 28 */ lwz r4, 0x28(r31)
|
|
/* 8024D614 0024A554 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D618 0024A558 7F A5 EB 78 */ mr r5, r29
|
|
/* 8024D61C 0024A55C 7C 84 D0 2E */ lwzx r4, r4, r26
|
|
/* 8024D620 0024A560 48 00 01 DD */ bl setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
.L_8024D624:
|
|
/* 8024D624 0024A564 3B 5A 00 0C */ addi r26, r26, 0xc
|
|
/* 8024D628 0024A568 3B 9C 00 01 */ addi r28, r28, 1
|
|
.L_8024D62C:
|
|
/* 8024D62C 0024A56C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D630 0024A570 4B FF 6A 31 */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D634 0024A574 7C 1C 18 00 */ cmpw r28, r3
|
|
/* 8024D638 0024A578 41 80 FF 94 */ blt .L_8024D5CC
|
|
/* 8024D63C 0024A57C 80 7E 00 00 */ lwz r3, 0(r30)
|
|
/* 8024D640 0024A580 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D644 0024A584 83 A3 00 10 */ lwz r29, 0x10(r3)
|
|
/* 8024D648 0024A588 48 00 00 40 */ b .L_8024D688
|
|
.L_8024D64C:
|
|
/* 8024D64C 0024A58C 3B 80 00 00 */ li r28, 0
|
|
/* 8024D650 0024A590 48 00 00 24 */ b .L_8024D674
|
|
.L_8024D654:
|
|
/* 8024D654 0024A594 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D658 0024A598 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D65C 0024A59C 4B FF 5E 0D */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D660 0024A5A0 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D664 0024A5A4 40 82 00 0C */ bne .L_8024D670
|
|
/* 8024D668 0024A5A8 38 00 00 00 */ li r0, 0
|
|
/* 8024D66C 0024A5AC 48 00 00 28 */ b .L_8024D694
|
|
.L_8024D670:
|
|
/* 8024D670 0024A5B0 3B 9C 00 01 */ addi r28, r28, 1
|
|
.L_8024D674:
|
|
/* 8024D674 0024A5B4 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D678 0024A5B8 4B FF 69 E9 */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D67C 0024A5BC 7C 1C 18 00 */ cmpw r28, r3
|
|
/* 8024D680 0024A5C0 41 80 FF D4 */ blt .L_8024D654
|
|
/* 8024D684 0024A5C4 83 BD 00 04 */ lwz r29, 4(r29)
|
|
.L_8024D688:
|
|
/* 8024D688 0024A5C8 28 1D 00 00 */ cmplwi r29, 0
|
|
/* 8024D68C 0024A5CC 40 82 FF C0 */ bne .L_8024D64C
|
|
/* 8024D690 0024A5D0 38 00 00 01 */ li r0, 1
|
|
.L_8024D694:
|
|
/* 8024D694 0024A5D4 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
|
/* 8024D698 0024A5D8 40 82 00 7C */ bne .L_8024D714
|
|
/* 8024D69C 0024A5DC 3B 20 00 00 */ li r25, 0
|
|
.L_8024D6A0:
|
|
/* 8024D6A0 0024A5E0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D6A4 0024A5E4 4B FF F6 E1 */ bl setUnitAndDoorScore__Q34Game4Cave12RandMapScoreFv
|
|
/* 8024D6A8 0024A5E8 80 7E 00 00 */ lwz r3, 0(r30)
|
|
/* 8024D6AC 0024A5EC 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D6B0 0024A5F0 83 A3 00 10 */ lwz r29, 0x10(r3)
|
|
/* 8024D6B4 0024A5F4 48 00 00 40 */ b .L_8024D6F4
|
|
.L_8024D6B8:
|
|
/* 8024D6B8 0024A5F8 3B 80 00 00 */ li r28, 0
|
|
/* 8024D6BC 0024A5FC 48 00 00 24 */ b .L_8024D6E0
|
|
.L_8024D6C0:
|
|
/* 8024D6C0 0024A600 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D6C4 0024A604 7F 84 E3 78 */ mr r4, r28
|
|
/* 8024D6C8 0024A608 4B FF 5D A1 */ bl isDoorScoreSetDone__Q34Game4Cave7MapNodeFi
|
|
/* 8024D6CC 0024A60C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024D6D0 0024A610 40 82 00 0C */ bne .L_8024D6DC
|
|
/* 8024D6D4 0024A614 38 00 00 00 */ li r0, 0
|
|
/* 8024D6D8 0024A618 48 00 00 28 */ b .L_8024D700
|
|
.L_8024D6DC:
|
|
/* 8024D6DC 0024A61C 3B 9C 00 01 */ addi r28, r28, 1
|
|
.L_8024D6E0:
|
|
/* 8024D6E0 0024A620 7F A3 EB 78 */ mr r3, r29
|
|
/* 8024D6E4 0024A624 4B FF 69 7D */ bl getNumDoors__Q34Game4Cave7MapNodeFv
|
|
/* 8024D6E8 0024A628 7C 1C 18 00 */ cmpw r28, r3
|
|
/* 8024D6EC 0024A62C 41 80 FF D4 */ blt .L_8024D6C0
|
|
/* 8024D6F0 0024A630 83 BD 00 04 */ lwz r29, 4(r29)
|
|
.L_8024D6F4:
|
|
/* 8024D6F4 0024A634 28 1D 00 00 */ cmplwi r29, 0
|
|
/* 8024D6F8 0024A638 40 82 FF C0 */ bne .L_8024D6B8
|
|
/* 8024D6FC 0024A63C 38 00 00 01 */ li r0, 1
|
|
.L_8024D700:
|
|
/* 8024D700 0024A640 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
|
/* 8024D704 0024A644 40 82 00 10 */ bne .L_8024D714
|
|
/* 8024D708 0024A648 3B 39 00 01 */ addi r25, r25, 1
|
|
/* 8024D70C 0024A64C 2C 19 01 F4 */ cmpwi r25, 0x1f4
|
|
/* 8024D710 0024A650 41 80 FF 90 */ blt .L_8024D6A0
|
|
.L_8024D714:
|
|
/* 8024D714 0024A654 BB 21 00 14 */ lmw r25, 0x14(r1)
|
|
/* 8024D718 0024A658 80 01 00 34 */ lwz r0, 0x34(r1)
|
|
/* 8024D71C 0024A65C 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D720 0024A660 38 21 00 30 */ addi r1, r1, 0x30
|
|
/* 8024D724 0024A664 4E 80 00 20 */ blr
|
|
|
|
.global copyNodeScore__Q34Game4Cave12RandMapScoreFv
|
|
copyNodeScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024D728 0024A668 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024D72C 0024A66C 7C 08 02 A6 */ mflr r0
|
|
/* 8024D730 0024A670 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024D734 0024A674 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024D738 0024A678 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024D73C 0024A67C 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D740 0024A680 83 E3 00 10 */ lwz r31, 0x10(r3)
|
|
/* 8024D744 0024A684 48 00 00 10 */ b .L_8024D754
|
|
.L_8024D748:
|
|
/* 8024D748 0024A688 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D74C 0024A68C 4B FF 61 21 */ bl copyNodeScoreToVersusScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D750 0024A690 83 FF 00 04 */ lwz r31, 4(r31)
|
|
.L_8024D754:
|
|
/* 8024D754 0024A694 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8024D758 0024A698 40 82 FF F0 */ bne .L_8024D748
|
|
/* 8024D75C 0024A69C 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024D760 0024A6A0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024D764 0024A6A4 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D768 0024A6A8 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024D76C 0024A6AC 4E 80 00 20 */ blr
|
|
|
|
.global subNodeScore__Q34Game4Cave12RandMapScoreFv
|
|
subNodeScore__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024D770 0024A6B0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024D774 0024A6B4 7C 08 02 A6 */ mflr r0
|
|
/* 8024D778 0024A6B8 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024D77C 0024A6BC 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024D780 0024A6C0 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024D784 0024A6C4 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8024D788 0024A6C8 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024D78C 0024A6CC 80 63 00 28 */ lwz r3, 0x28(r3)
|
|
/* 8024D790 0024A6D0 83 E3 00 10 */ lwz r31, 0x10(r3)
|
|
/* 8024D794 0024A6D4 48 00 00 48 */ b .L_8024D7DC
|
|
.L_8024D798:
|
|
/* 8024D798 0024A6D8 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D79C 0024A6DC 4B FF 60 DD */ bl subNodeScoreToVersusScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D7A0 0024A6E0 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 8024D7A4 0024A6E4 80 03 00 0C */ lwz r0, 0xc(r3)
|
|
/* 8024D7A8 0024A6E8 7C 1F 00 40 */ cmplw r31, r0
|
|
/* 8024D7AC 0024A6EC 40 82 00 14 */ bne .L_8024D7C0
|
|
/* 8024D7B0 0024A6F0 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D7B4 0024A6F4 4B FF 62 09 */ bl getVersusScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D7B8 0024A6F8 90 7E 00 10 */ stw r3, 0x10(r30)
|
|
/* 8024D7BC 0024A6FC 48 00 00 1C */ b .L_8024D7D8
|
|
.L_8024D7C0:
|
|
/* 8024D7C0 0024A700 80 03 00 10 */ lwz r0, 0x10(r3)
|
|
/* 8024D7C4 0024A704 7C 1F 00 40 */ cmplw r31, r0
|
|
/* 8024D7C8 0024A708 40 82 00 10 */ bne .L_8024D7D8
|
|
/* 8024D7CC 0024A70C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8024D7D0 0024A710 4B FF 61 ED */ bl getVersusScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D7D4 0024A714 90 7E 00 0C */ stw r3, 0xc(r30)
|
|
.L_8024D7D8:
|
|
/* 8024D7D8 0024A718 83 FF 00 04 */ lwz r31, 4(r31)
|
|
.L_8024D7DC:
|
|
/* 8024D7DC 0024A71C 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8024D7E0 0024A720 40 82 FF B8 */ bne .L_8024D798
|
|
/* 8024D7E4 0024A724 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024D7E8 0024A728 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024D7EC 0024A72C 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024D7F0 0024A730 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D7F4 0024A734 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024D7F8 0024A738 4E 80 00 20 */ blr
|
|
|
|
.global setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei
|
|
setMapNodeScore__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodei:
|
|
/* 8024D7FC 0024A73C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024D800 0024A740 7C 08 02 A6 */ mflr r0
|
|
/* 8024D804 0024A744 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024D808 0024A748 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024D80C 0024A74C 7C BF 2B 78 */ mr r31, r5
|
|
/* 8024D810 0024A750 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024D814 0024A754 7C 9E 23 78 */ mr r30, r4
|
|
/* 8024D818 0024A758 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D81C 0024A75C 4B FF 61 91 */ bl getEnemyScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D820 0024A760 7F FF 1A 14 */ add r31, r31, r3
|
|
/* 8024D824 0024A764 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D828 0024A768 4B FF 61 8D */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D82C 0024A76C 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8024D830 0024A770 41 80 00 0C */ blt .L_8024D83C
|
|
/* 8024D834 0024A774 7C 03 F8 00 */ cmpw r3, r31
|
|
/* 8024D838 0024A778 40 81 00 10 */ ble .L_8024D848
|
|
.L_8024D83C:
|
|
/* 8024D83C 0024A77C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024D840 0024A780 7F E4 FB 78 */ mr r4, r31
|
|
/* 8024D844 0024A784 4B FF 60 21 */ bl setNodeScore__Q34Game4Cave7MapNodeFi
|
|
.L_8024D848:
|
|
/* 8024D848 0024A788 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024D84C 0024A78C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024D850 0024A790 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024D854 0024A794 7C 08 03 A6 */ mtlr r0
|
|
/* 8024D858 0024A798 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024D85C 0024A79C 4E 80 00 20 */ blr
|
|
|
|
.global setChallengeFixObjNormal__Q34Game4Cave12RandMapScoreFv
|
|
setChallengeFixObjNormal__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024D860 0024A7A0 94 21 E7 80 */ stwu r1, -0x1880(r1)
|
|
/* 8024D864 0024A7A4 7C 08 02 A6 */ mflr r0
|
|
/* 8024D868 0024A7A8 90 01 18 84 */ stw r0, 0x1884(r1)
|
|
/* 8024D86C 0024A7AC BE 01 18 40 */ stmw r16, 0x1840(r1)
|
|
/* 8024D870 0024A7B0 7C 71 1B 78 */ mr r17, r3
|
|
/* 8024D874 0024A7B4 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8024D878 0024A7B8 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8024D87C 0024A7BC 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D880 0024A7C0 40 82 03 88 */ bne .L_8024DC08
|
|
/* 8024D884 0024A7C4 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 8024D888 0024A7C8 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D88C 0024A7CC 41 82 00 08 */ beq .L_8024D894
|
|
/* 8024D890 0024A7D0 48 00 03 78 */ b .L_8024DC08
|
|
.L_8024D894:
|
|
/* 8024D894 0024A7D4 80 D1 00 00 */ lwz r6, 0(r17)
|
|
/* 8024D898 0024A7D8 80 A2 C4 B0 */ lwz r5, lbl_8051A810@sda21(r2)
|
|
/* 8024D89C 0024A7DC 88 06 00 00 */ lbz r0, 0(r6)
|
|
/* 8024D8A0 0024A7E0 80 82 C4 B4 */ lwz r4, lbl_8051A814@sda21(r2)
|
|
/* 8024D8A4 0024A7E4 A0 62 C4 B8 */ lhz r3, lbl_8051A818@sda21(r2)
|
|
/* 8024D8A8 0024A7E8 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D8AC 0024A7EC 90 A1 00 0C */ stw r5, 0xc(r1)
|
|
/* 8024D8B0 0024A7F0 83 E6 00 28 */ lwz r31, 0x28(r6)
|
|
/* 8024D8B4 0024A7F4 90 81 00 10 */ stw r4, 0x10(r1)
|
|
/* 8024D8B8 0024A7F8 B0 61 00 08 */ sth r3, 8(r1)
|
|
/* 8024D8BC 0024A7FC 41 82 00 10 */ beq .L_8024D8CC
|
|
/* 8024D8C0 0024A800 38 00 00 00 */ li r0, 0
|
|
/* 8024D8C4 0024A804 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8024D8C8 0024A808 48 00 00 18 */ b .L_8024D8E0
|
|
.L_8024D8CC:
|
|
/* 8024D8CC 0024A80C 88 06 00 01 */ lbz r0, 1(r6)
|
|
/* 8024D8D0 0024A810 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D8D4 0024A814 40 82 00 0C */ bne .L_8024D8E0
|
|
/* 8024D8D8 0024A818 38 00 00 00 */ li r0, 0
|
|
/* 8024D8DC 0024A81C 98 01 00 09 */ stb r0, 9(r1)
|
|
.L_8024D8E0:
|
|
/* 8024D8E0 0024A820 3B 41 00 08 */ addi r26, r1, 8
|
|
/* 8024D8E4 0024A824 3B 21 00 0C */ addi r25, r1, 0xc
|
|
/* 8024D8E8 0024A828 3B 00 00 00 */ li r24, 0
|
|
.L_8024D8EC:
|
|
/* 8024D8EC 0024A82C 88 1A 00 00 */ lbz r0, 0(r26)
|
|
/* 8024D8F0 0024A830 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D8F4 0024A834 41 82 03 00 */ beq .L_8024DBF4
|
|
/* 8024D8F8 0024A838 80 19 00 00 */ lwz r0, 0(r25)
|
|
/* 8024D8FC 0024A83C 80 71 00 04 */ lwz r3, 4(r17)
|
|
/* 8024D900 0024A840 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8024D904 0024A844 7C 03 00 2E */ lwzx r0, r3, r0
|
|
/* 8024D908 0024A848 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D90C 0024A84C 40 82 02 E8 */ bne .L_8024DBF4
|
|
/* 8024D910 0024A850 3C 60 80 48 */ lis r3, lbl_8048410C@ha
|
|
/* 8024D914 0024A854 3A 00 00 00 */ li r16, 0
|
|
/* 8024D918 0024A858 38 A3 41 0C */ addi r5, r3, lbl_8048410C@l
|
|
/* 8024D91C 0024A85C 92 01 10 20 */ stw r16, 0x1020(r1)
|
|
/* 8024D920 0024A860 80 85 00 00 */ lwz r4, 0(r5)
|
|
/* 8024D924 0024A864 3B 61 00 14 */ addi r27, r1, 0x14
|
|
/* 8024D928 0024A868 80 65 00 04 */ lwz r3, 4(r5)
|
|
/* 8024D92C 0024A86C 3A E0 00 00 */ li r23, 0
|
|
/* 8024D930 0024A870 80 05 00 08 */ lwz r0, 8(r5)
|
|
/* 8024D934 0024A874 3A C0 00 00 */ li r22, 0
|
|
/* 8024D938 0024A878 90 81 00 14 */ stw r4, 0x14(r1)
|
|
/* 8024D93C 0024A87C 3A A0 00 00 */ li r21, 0
|
|
/* 8024D940 0024A880 90 61 00 18 */ stw r3, 0x18(r1)
|
|
/* 8024D944 0024A884 90 01 00 1C */ stw r0, 0x1c(r1)
|
|
.L_8024D948:
|
|
/* 8024D948 0024A888 80 01 10 20 */ lwz r0, 0x1020(r1)
|
|
/* 8024D94C 0024A88C 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024D950 0024A890 41 82 00 0C */ beq .L_8024D95C
|
|
/* 8024D954 0024A894 2C 15 00 02 */ cmpwi r21, 2
|
|
/* 8024D958 0024A898 40 80 01 D4 */ bge .L_8024DB2C
|
|
.L_8024D95C:
|
|
/* 8024D95C 0024A89C 82 9F 00 10 */ lwz r20, 0x10(r31)
|
|
/* 8024D960 0024A8A0 48 00 01 C4 */ b .L_8024DB24
|
|
.L_8024D964:
|
|
/* 8024D964 0024A8A4 80 74 00 18 */ lwz r3, 0x18(r20)
|
|
/* 8024D968 0024A8A8 4B FF 52 11 */ bl getUnitKind__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D96C 0024A8AC 80 1B 00 00 */ lwz r0, 0(r27)
|
|
/* 8024D970 0024A8B0 7C 00 18 00 */ cmpw r0, r3
|
|
/* 8024D974 0024A8B4 40 82 01 AC */ bne .L_8024DB20
|
|
/* 8024D978 0024A8B8 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024D97C 0024A8BC 4B FF 60 39 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D980 0024A8C0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8024D984 0024A8C4 40 81 00 40 */ ble .L_8024D9C4
|
|
/* 8024D988 0024A8C8 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024D98C 0024A8CC 4B FF 60 29 */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024D990 0024A8D0 6C 63 80 00 */ xoris r3, r3, 0x8000
|
|
/* 8024D994 0024A8D4 3C 00 43 30 */ lis r0, 0x4330
|
|
/* 8024D998 0024A8D8 90 61 18 24 */ stw r3, 0x1824(r1)
|
|
/* 8024D99C 0024A8DC C8 42 C4 A0 */ lfd f2, lbl_8051A800@sda21(r2)
|
|
/* 8024D9A0 0024A8E0 90 01 18 20 */ stw r0, 0x1820(r1)
|
|
/* 8024D9A4 0024A8E4 C0 02 C4 BC */ lfs f0, lbl_8051A81C@sda21(r2)
|
|
/* 8024D9A8 0024A8E8 C8 21 18 20 */ lfd f1, 0x1820(r1)
|
|
/* 8024D9AC 0024A8EC EC 21 10 28 */ fsubs f1, f1, f2
|
|
/* 8024D9B0 0024A8F0 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8024D9B4 0024A8F4 40 81 00 14 */ ble .L_8024D9C8
|
|
/* 8024D9B8 0024A8F8 FC 00 08 34 */ frsqrte f0, f1
|
|
/* 8024D9BC 0024A8FC EC 20 00 72 */ fmuls f1, f0, f1
|
|
/* 8024D9C0 0024A900 48 00 00 08 */ b .L_8024D9C8
|
|
.L_8024D9C4:
|
|
/* 8024D9C4 0024A904 C0 22 C4 BC */ lfs f1, lbl_8051A81C@sda21(r2)
|
|
.L_8024D9C8:
|
|
/* 8024D9C8 0024A908 FC 00 08 1E */ fctiwz f0, f1
|
|
/* 8024D9CC 0024A90C 80 1B 00 00 */ lwz r0, 0(r27)
|
|
/* 8024D9D0 0024A910 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 8024D9D4 0024A914 D8 01 18 20 */ stfd f0, 0x1820(r1)
|
|
/* 8024D9D8 0024A918 80 61 18 24 */ lwz r3, 0x1824(r1)
|
|
/* 8024D9DC 0024A91C 3A 63 00 0A */ addi r19, r3, 0xa
|
|
/* 8024D9E0 0024A920 40 82 00 90 */ bne .L_8024DA70
|
|
/* 8024D9E4 0024A924 80 74 00 18 */ lwz r3, 0x18(r20)
|
|
/* 8024D9E8 0024A928 4B FF 51 D9 */ bl getBaseGen__Q34Game4Cave8UnitInfoFv
|
|
/* 8024D9EC 0024A92C 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8024D9F0 0024A930 41 82 01 30 */ beq .L_8024DB20
|
|
/* 8024D9F4 0024A934 3B C1 10 20 */ addi r30, r1, 0x1020
|
|
/* 8024D9F8 0024A938 3B A1 08 20 */ addi r29, r1, 0x820
|
|
/* 8024D9FC 0024A93C 3B 81 00 20 */ addi r28, r1, 0x20
|
|
/* 8024DA00 0024A940 82 43 00 10 */ lwz r18, 0x10(r3)
|
|
/* 8024DA04 0024A944 7F DE 82 14 */ add r30, r30, r16
|
|
/* 8024DA08 0024A948 7F BD 82 14 */ add r29, r29, r16
|
|
/* 8024DA0C 0024A94C 7F 9C 82 14 */ add r28, r28, r16
|
|
/* 8024DA10 0024A950 48 00 00 54 */ b .L_8024DA64
|
|
.L_8024DA14:
|
|
/* 8024DA14 0024A954 80 12 00 18 */ lwz r0, 0x18(r18)
|
|
/* 8024DA18 0024A958 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8024DA1C 0024A95C 40 82 00 44 */ bne .L_8024DA60
|
|
/* 8024DA20 0024A960 7E 23 8B 78 */ mr r3, r17
|
|
/* 8024DA24 0024A964 7E 84 A3 78 */ mr r4, r20
|
|
/* 8024DA28 0024A968 7E 45 93 78 */ mr r5, r18
|
|
/* 8024DA2C 0024A96C 48 00 05 79 */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DA30 0024A970 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DA34 0024A974 41 82 00 2C */ beq .L_8024DA60
|
|
/* 8024DA38 0024A978 92 7C 00 00 */ stw r19, 0(r28)
|
|
/* 8024DA3C 0024A97C 3A F7 00 01 */ addi r23, r23, 1
|
|
/* 8024DA40 0024A980 3A 10 00 04 */ addi r16, r16, 4
|
|
/* 8024DA44 0024A984 80 1C 00 00 */ lwz r0, 0(r28)
|
|
/* 8024DA48 0024A988 3B 9C 00 04 */ addi r28, r28, 4
|
|
/* 8024DA4C 0024A98C 92 9E 00 00 */ stw r20, 0(r30)
|
|
/* 8024DA50 0024A990 3B DE 00 04 */ addi r30, r30, 4
|
|
/* 8024DA54 0024A994 7E D6 02 14 */ add r22, r22, r0
|
|
/* 8024DA58 0024A998 92 5D 00 00 */ stw r18, 0(r29)
|
|
/* 8024DA5C 0024A99C 3B BD 00 04 */ addi r29, r29, 4
|
|
.L_8024DA60:
|
|
/* 8024DA60 0024A9A0 82 52 00 04 */ lwz r18, 4(r18)
|
|
.L_8024DA64:
|
|
/* 8024DA64 0024A9A4 28 12 00 00 */ cmplwi r18, 0
|
|
/* 8024DA68 0024A9A8 40 82 FF AC */ bne .L_8024DA14
|
|
/* 8024DA6C 0024A9AC 48 00 00 B4 */ b .L_8024DB20
|
|
.L_8024DA70:
|
|
/* 8024DA70 0024A9B0 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8024DA74 0024A9B4 40 82 00 68 */ bne .L_8024DADC
|
|
/* 8024DA78 0024A9B8 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024DA7C 0024A9BC 4B FF 5F 49 */ bl getUnitName__Q34Game4Cave7MapNodeFv
|
|
/* 8024DA80 0024A9C0 38 82 C4 C0 */ addi r4, r2, lbl_8051A820@sda21
|
|
/* 8024DA84 0024A9C4 38 A0 00 04 */ li r5, 4
|
|
/* 8024DA88 0024A9C8 4B E7 CB F9 */ bl strncmp
|
|
/* 8024DA8C 0024A9CC 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8024DA90 0024A9D0 40 82 00 90 */ bne .L_8024DB20
|
|
/* 8024DA94 0024A9D4 7E 23 8B 78 */ mr r3, r17
|
|
/* 8024DA98 0024A9D8 7E 84 A3 78 */ mr r4, r20
|
|
/* 8024DA9C 0024A9DC 38 A0 00 00 */ li r5, 0
|
|
/* 8024DAA0 0024A9E0 48 00 05 05 */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DAA4 0024A9E4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DAA8 0024A9E8 41 82 00 78 */ beq .L_8024DB20
|
|
/* 8024DAAC 0024A9EC 38 C1 00 20 */ addi r6, r1, 0x20
|
|
/* 8024DAB0 0024A9F0 38 A1 10 20 */ addi r5, r1, 0x1020
|
|
/* 8024DAB4 0024A9F4 7E 66 81 2E */ stwx r19, r6, r16
|
|
/* 8024DAB8 0024A9F8 38 61 08 20 */ addi r3, r1, 0x820
|
|
/* 8024DABC 0024A9FC 38 80 00 00 */ li r4, 0
|
|
/* 8024DAC0 0024AA00 3A F7 00 01 */ addi r23, r23, 1
|
|
/* 8024DAC4 0024AA04 7C 06 80 2E */ lwzx r0, r6, r16
|
|
/* 8024DAC8 0024AA08 7E 85 81 2E */ stwx r20, r5, r16
|
|
/* 8024DACC 0024AA0C 7E D6 02 14 */ add r22, r22, r0
|
|
/* 8024DAD0 0024AA10 7C 83 81 2E */ stwx r4, r3, r16
|
|
/* 8024DAD4 0024AA14 3A 10 00 04 */ addi r16, r16, 4
|
|
/* 8024DAD8 0024AA18 48 00 00 48 */ b .L_8024DB20
|
|
.L_8024DADC:
|
|
/* 8024DADC 0024AA1C 7E 23 8B 78 */ mr r3, r17
|
|
/* 8024DAE0 0024AA20 7E 84 A3 78 */ mr r4, r20
|
|
/* 8024DAE4 0024AA24 38 A0 00 00 */ li r5, 0
|
|
/* 8024DAE8 0024AA28 48 00 04 BD */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DAEC 0024AA2C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DAF0 0024AA30 41 82 00 30 */ beq .L_8024DB20
|
|
/* 8024DAF4 0024AA34 38 C1 00 20 */ addi r6, r1, 0x20
|
|
/* 8024DAF8 0024AA38 38 A1 10 20 */ addi r5, r1, 0x1020
|
|
/* 8024DAFC 0024AA3C 7E 66 81 2E */ stwx r19, r6, r16
|
|
/* 8024DB00 0024AA40 38 61 08 20 */ addi r3, r1, 0x820
|
|
/* 8024DB04 0024AA44 38 80 00 00 */ li r4, 0
|
|
/* 8024DB08 0024AA48 3A F7 00 01 */ addi r23, r23, 1
|
|
/* 8024DB0C 0024AA4C 7C 06 80 2E */ lwzx r0, r6, r16
|
|
/* 8024DB10 0024AA50 7E 85 81 2E */ stwx r20, r5, r16
|
|
/* 8024DB14 0024AA54 7E D6 02 14 */ add r22, r22, r0
|
|
/* 8024DB18 0024AA58 7C 83 81 2E */ stwx r4, r3, r16
|
|
/* 8024DB1C 0024AA5C 3A 10 00 04 */ addi r16, r16, 4
|
|
.L_8024DB20:
|
|
/* 8024DB20 0024AA60 82 94 00 04 */ lwz r20, 4(r20)
|
|
.L_8024DB24:
|
|
/* 8024DB24 0024AA64 28 14 00 00 */ cmplwi r20, 0
|
|
/* 8024DB28 0024AA68 40 82 FE 3C */ bne .L_8024D964
|
|
.L_8024DB2C:
|
|
/* 8024DB2C 0024AA6C 3A B5 00 01 */ addi r21, r21, 1
|
|
/* 8024DB30 0024AA70 3B 7B 00 04 */ addi r27, r27, 4
|
|
/* 8024DB34 0024AA74 2C 15 00 03 */ cmpwi r21, 3
|
|
/* 8024DB38 0024AA78 41 80 FE 10 */ blt .L_8024D948
|
|
/* 8024DB3C 0024AA7C 2C 16 00 00 */ cmpwi r22, 0
|
|
/* 8024DB40 0024AA80 41 82 00 B4 */ beq .L_8024DBF4
|
|
/* 8024DB44 0024AA84 4B E7 BA 5D */ bl rand
|
|
/* 8024DB48 0024AA88 3C 80 43 30 */ lis r4, 0x4330
|
|
/* 8024DB4C 0024AA8C 6C 60 80 00 */ xoris r0, r3, 0x8000
|
|
/* 8024DB50 0024AA90 90 01 18 24 */ stw r0, 0x1824(r1)
|
|
/* 8024DB54 0024AA94 6E C0 80 00 */ xoris r0, r22, 0x8000
|
|
/* 8024DB58 0024AA98 C8 42 C4 A0 */ lfd f2, lbl_8051A800@sda21(r2)
|
|
/* 8024DB5C 0024AA9C 38 A1 00 20 */ addi r5, r1, 0x20
|
|
/* 8024DB60 0024AAA0 90 81 18 20 */ stw r4, 0x1820(r1)
|
|
/* 8024DB64 0024AAA4 38 C0 00 00 */ li r6, 0
|
|
/* 8024DB68 0024AAA8 C0 02 C4 98 */ lfs f0, lbl_8051A7F8@sda21(r2)
|
|
/* 8024DB6C 0024AAAC 38 E0 00 00 */ li r7, 0
|
|
/* 8024DB70 0024AAB0 C8 21 18 20 */ lfd f1, 0x1820(r1)
|
|
/* 8024DB74 0024AAB4 90 01 18 2C */ stw r0, 0x182c(r1)
|
|
/* 8024DB78 0024AAB8 EC 21 10 28 */ fsubs f1, f1, f2
|
|
/* 8024DB7C 0024AABC 90 81 18 28 */ stw r4, 0x1828(r1)
|
|
/* 8024DB80 0024AAC0 EC 21 00 24 */ fdivs f1, f1, f0
|
|
/* 8024DB84 0024AAC4 C8 01 18 28 */ lfd f0, 0x1828(r1)
|
|
/* 8024DB88 0024AAC8 EC 00 10 28 */ fsubs f0, f0, f2
|
|
/* 8024DB8C 0024AACC EC 00 00 72 */ fmuls f0, f0, f1
|
|
/* 8024DB90 0024AAD0 FC 00 00 1E */ fctiwz f0, f0
|
|
/* 8024DB94 0024AAD4 D8 01 18 30 */ stfd f0, 0x1830(r1)
|
|
/* 8024DB98 0024AAD8 80 61 18 34 */ lwz r3, 0x1834(r1)
|
|
/* 8024DB9C 0024AADC 7E E9 03 A6 */ mtctr r23
|
|
/* 8024DBA0 0024AAE0 2C 17 00 00 */ cmpwi r23, 0
|
|
/* 8024DBA4 0024AAE4 40 81 00 50 */ ble .L_8024DBF4
|
|
.L_8024DBA8:
|
|
/* 8024DBA8 0024AAE8 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8024DBAC 0024AAEC 7C C6 02 14 */ add r6, r6, r0
|
|
/* 8024DBB0 0024AAF0 7C 06 18 00 */ cmpw r6, r3
|
|
/* 8024DBB4 0024AAF4 40 81 00 34 */ ble .L_8024DBE8
|
|
/* 8024DBB8 0024AAF8 80 19 00 00 */ lwz r0, 0(r25)
|
|
/* 8024DBBC 0024AAFC 54 E7 10 3A */ slwi r7, r7, 2
|
|
/* 8024DBC0 0024AB00 38 61 10 20 */ addi r3, r1, 0x1020
|
|
/* 8024DBC4 0024AB04 80 B1 00 04 */ lwz r5, 4(r17)
|
|
/* 8024DBC8 0024AB08 7C C3 38 2E */ lwzx r6, r3, r7
|
|
/* 8024DBCC 0024AB0C 54 04 10 3A */ slwi r4, r0, 2
|
|
/* 8024DBD0 0024AB10 38 61 08 20 */ addi r3, r1, 0x820
|
|
/* 8024DBD4 0024AB14 7C C5 21 2E */ stwx r6, r5, r4
|
|
/* 8024DBD8 0024AB18 7C 03 38 2E */ lwzx r0, r3, r7
|
|
/* 8024DBDC 0024AB1C 80 71 00 08 */ lwz r3, 8(r17)
|
|
/* 8024DBE0 0024AB20 7C 03 21 2E */ stwx r0, r3, r4
|
|
/* 8024DBE4 0024AB24 48 00 00 10 */ b .L_8024DBF4
|
|
.L_8024DBE8:
|
|
/* 8024DBE8 0024AB28 38 A5 00 04 */ addi r5, r5, 4
|
|
/* 8024DBEC 0024AB2C 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8024DBF0 0024AB30 42 00 FF B8 */ bdnz .L_8024DBA8
|
|
.L_8024DBF4:
|
|
/* 8024DBF4 0024AB34 3B 18 00 01 */ addi r24, r24, 1
|
|
/* 8024DBF8 0024AB38 3B 39 00 04 */ addi r25, r25, 4
|
|
/* 8024DBFC 0024AB3C 2C 18 00 02 */ cmpwi r24, 2
|
|
/* 8024DC00 0024AB40 3B 5A 00 01 */ addi r26, r26, 1
|
|
/* 8024DC04 0024AB44 41 80 FC E8 */ blt .L_8024D8EC
|
|
.L_8024DC08:
|
|
/* 8024DC08 0024AB48 BA 01 18 40 */ lmw r16, 0x1840(r1)
|
|
/* 8024DC0C 0024AB4C 80 01 18 84 */ lwz r0, 0x1884(r1)
|
|
/* 8024DC10 0024AB50 7C 08 03 A6 */ mtlr r0
|
|
/* 8024DC14 0024AB54 38 21 18 80 */ addi r1, r1, 0x1880
|
|
/* 8024DC18 0024AB58 4E 80 00 20 */ blr
|
|
|
|
.global setChallengeFixObjHard__Q34Game4Cave12RandMapScoreFv
|
|
setChallengeFixObjHard__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024DC1C 0024AB5C 94 21 EF 90 */ stwu r1, -0x1070(r1)
|
|
/* 8024DC20 0024AB60 7C 08 02 A6 */ mflr r0
|
|
/* 8024DC24 0024AB64 90 01 10 74 */ stw r0, 0x1074(r1)
|
|
/* 8024DC28 0024AB68 BE 41 10 38 */ stmw r18, 0x1038(r1)
|
|
/* 8024DC2C 0024AB6C 7C 74 1B 78 */ mr r20, r3
|
|
/* 8024DC30 0024AB70 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8024DC34 0024AB74 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8024DC38 0024AB78 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DC3C 0024AB7C 40 82 02 F0 */ bne .L_8024DF2C
|
|
/* 8024DC40 0024AB80 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 8024DC44 0024AB84 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DC48 0024AB88 41 82 00 08 */ beq .L_8024DC50
|
|
/* 8024DC4C 0024AB8C 48 00 02 E0 */ b .L_8024DF2C
|
|
.L_8024DC50:
|
|
/* 8024DC50 0024AB90 80 D4 00 00 */ lwz r6, 0(r20)
|
|
/* 8024DC54 0024AB94 80 A2 C4 C8 */ lwz r5, lbl_8051A828@sda21(r2)
|
|
/* 8024DC58 0024AB98 88 06 00 00 */ lbz r0, 0(r6)
|
|
/* 8024DC5C 0024AB9C 80 82 C4 CC */ lwz r4, lbl_8051A82C@sda21(r2)
|
|
/* 8024DC60 0024ABA0 A0 62 C4 D0 */ lhz r3, lbl_8051A830@sda21(r2)
|
|
/* 8024DC64 0024ABA4 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DC68 0024ABA8 90 A1 00 0C */ stw r5, 0xc(r1)
|
|
/* 8024DC6C 0024ABAC 83 E6 00 28 */ lwz r31, 0x28(r6)
|
|
/* 8024DC70 0024ABB0 90 81 00 10 */ stw r4, 0x10(r1)
|
|
/* 8024DC74 0024ABB4 B0 61 00 08 */ sth r3, 8(r1)
|
|
/* 8024DC78 0024ABB8 41 82 00 10 */ beq .L_8024DC88
|
|
/* 8024DC7C 0024ABBC 38 00 00 00 */ li r0, 0
|
|
/* 8024DC80 0024ABC0 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8024DC84 0024ABC4 48 00 00 18 */ b .L_8024DC9C
|
|
.L_8024DC88:
|
|
/* 8024DC88 0024ABC8 88 06 00 01 */ lbz r0, 1(r6)
|
|
/* 8024DC8C 0024ABCC 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DC90 0024ABD0 40 82 00 0C */ bne .L_8024DC9C
|
|
/* 8024DC94 0024ABD4 38 00 00 00 */ li r0, 0
|
|
/* 8024DC98 0024ABD8 98 01 00 09 */ stb r0, 9(r1)
|
|
.L_8024DC9C:
|
|
/* 8024DC9C 0024ABDC 3B A1 00 08 */ addi r29, r1, 8
|
|
/* 8024DCA0 0024ABE0 3B 81 00 0C */ addi r28, r1, 0xc
|
|
/* 8024DCA4 0024ABE4 3B 60 00 00 */ li r27, 0
|
|
.L_8024DCA8:
|
|
/* 8024DCA8 0024ABE8 88 1D 00 00 */ lbz r0, 0(r29)
|
|
/* 8024DCAC 0024ABEC 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DCB0 0024ABF0 41 82 02 68 */ beq .L_8024DF18
|
|
/* 8024DCB4 0024ABF4 80 1C 00 00 */ lwz r0, 0(r28)
|
|
/* 8024DCB8 0024ABF8 80 74 00 04 */ lwz r3, 4(r20)
|
|
/* 8024DCBC 0024ABFC 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8024DCC0 0024AC00 7C 03 00 2E */ lwzx r0, r3, r0
|
|
/* 8024DCC4 0024AC04 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DCC8 0024AC08 40 82 02 50 */ bne .L_8024DF18
|
|
/* 8024DCCC 0024AC0C 3C 60 80 48 */ lis r3, lbl_80484118@ha
|
|
/* 8024DCD0 0024AC10 38 00 00 00 */ li r0, 0
|
|
/* 8024DCD4 0024AC14 38 A3 41 18 */ addi r5, r3, lbl_80484118@l
|
|
/* 8024DCD8 0024AC18 90 01 08 20 */ stw r0, 0x820(r1)
|
|
/* 8024DCDC 0024AC1C 80 85 00 00 */ lwz r4, 0(r5)
|
|
/* 8024DCE0 0024AC20 3B C1 00 14 */ addi r30, r1, 0x14
|
|
/* 8024DCE4 0024AC24 80 65 00 04 */ lwz r3, 4(r5)
|
|
/* 8024DCE8 0024AC28 3B 40 00 00 */ li r26, 0
|
|
/* 8024DCEC 0024AC2C 80 05 00 08 */ lwz r0, 8(r5)
|
|
/* 8024DCF0 0024AC30 3B 20 FF FF */ li r25, -1
|
|
/* 8024DCF4 0024AC34 90 81 00 14 */ stw r4, 0x14(r1)
|
|
/* 8024DCF8 0024AC38 3B 00 00 00 */ li r24, 0
|
|
/* 8024DCFC 0024AC3C 90 61 00 18 */ stw r3, 0x18(r1)
|
|
/* 8024DD00 0024AC40 90 01 00 1C */ stw r0, 0x1c(r1)
|
|
.L_8024DD04:
|
|
/* 8024DD04 0024AC44 80 01 08 20 */ lwz r0, 0x820(r1)
|
|
/* 8024DD08 0024AC48 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8024DD0C 0024AC4C 41 82 00 0C */ beq .L_8024DD18
|
|
/* 8024DD10 0024AC50 2C 18 00 02 */ cmpwi r24, 2
|
|
/* 8024DD14 0024AC54 40 80 01 74 */ bge .L_8024DE88
|
|
.L_8024DD18:
|
|
/* 8024DD18 0024AC58 82 FF 00 10 */ lwz r23, 0x10(r31)
|
|
/* 8024DD1C 0024AC5C 48 00 01 64 */ b .L_8024DE80
|
|
.L_8024DD20:
|
|
/* 8024DD20 0024AC60 80 77 00 18 */ lwz r3, 0x18(r23)
|
|
/* 8024DD24 0024AC64 4B FF 4E 55 */ bl getUnitKind__Q34Game4Cave8UnitInfoFv
|
|
/* 8024DD28 0024AC68 80 1E 00 00 */ lwz r0, 0(r30)
|
|
/* 8024DD2C 0024AC6C 7C 00 18 00 */ cmpw r0, r3
|
|
/* 8024DD30 0024AC70 40 82 01 4C */ bne .L_8024DE7C
|
|
/* 8024DD34 0024AC74 7E E3 BB 78 */ mr r3, r23
|
|
/* 8024DD38 0024AC78 4B FF 5C 7D */ bl getNodeScore__Q34Game4Cave7MapNodeFv
|
|
/* 8024DD3C 0024AC7C 80 1E 00 00 */ lwz r0, 0(r30)
|
|
/* 8024DD40 0024AC80 7C 76 1B 78 */ mr r22, r3
|
|
/* 8024DD44 0024AC84 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 8024DD48 0024AC88 40 82 00 7C */ bne .L_8024DDC4
|
|
/* 8024DD4C 0024AC8C 80 77 00 18 */ lwz r3, 0x18(r23)
|
|
/* 8024DD50 0024AC90 4B FF 4E 71 */ bl getBaseGen__Q34Game4Cave8UnitInfoFv
|
|
/* 8024DD54 0024AC94 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8024DD58 0024AC98 41 82 01 24 */ beq .L_8024DE7C
|
|
/* 8024DD5C 0024AC9C 82 A3 00 10 */ lwz r21, 0x10(r3)
|
|
/* 8024DD60 0024ACA0 3A 41 08 20 */ addi r18, r1, 0x820
|
|
/* 8024DD64 0024ACA4 3A 61 00 20 */ addi r19, r1, 0x20
|
|
/* 8024DD68 0024ACA8 48 00 00 50 */ b .L_8024DDB8
|
|
.L_8024DD6C:
|
|
/* 8024DD6C 0024ACAC 80 15 00 18 */ lwz r0, 0x18(r21)
|
|
/* 8024DD70 0024ACB0 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8024DD74 0024ACB4 40 82 00 40 */ bne .L_8024DDB4
|
|
/* 8024DD78 0024ACB8 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024DD7C 0024ACBC 7E E4 BB 78 */ mr r4, r23
|
|
/* 8024DD80 0024ACC0 7E A5 AB 78 */ mr r5, r21
|
|
/* 8024DD84 0024ACC4 48 00 02 21 */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DD88 0024ACC8 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DD8C 0024ACCC 41 82 00 28 */ beq .L_8024DDB4
|
|
/* 8024DD90 0024ACD0 7C 16 C8 00 */ cmpw r22, r25
|
|
/* 8024DD94 0024ACD4 41 80 00 20 */ blt .L_8024DDB4
|
|
/* 8024DD98 0024ACD8 40 81 00 0C */ ble .L_8024DDA4
|
|
/* 8024DD9C 0024ACDC 3B 40 00 00 */ li r26, 0
|
|
/* 8024DDA0 0024ACE0 7E D9 B3 78 */ mr r25, r22
|
|
.L_8024DDA4:
|
|
/* 8024DDA4 0024ACE4 57 40 10 3A */ slwi r0, r26, 2
|
|
/* 8024DDA8 0024ACE8 3B 5A 00 01 */ addi r26, r26, 1
|
|
/* 8024DDAC 0024ACEC 7E F2 01 2E */ stwx r23, r18, r0
|
|
/* 8024DDB0 0024ACF0 7E B3 01 2E */ stwx r21, r19, r0
|
|
.L_8024DDB4:
|
|
/* 8024DDB4 0024ACF4 82 B5 00 04 */ lwz r21, 4(r21)
|
|
.L_8024DDB8:
|
|
/* 8024DDB8 0024ACF8 28 15 00 00 */ cmplwi r21, 0
|
|
/* 8024DDBC 0024ACFC 40 82 FF B0 */ bne .L_8024DD6C
|
|
/* 8024DDC0 0024AD00 48 00 00 BC */ b .L_8024DE7C
|
|
.L_8024DDC4:
|
|
/* 8024DDC4 0024AD04 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8024DDC8 0024AD08 40 82 00 6C */ bne .L_8024DE34
|
|
/* 8024DDCC 0024AD0C 7E E3 BB 78 */ mr r3, r23
|
|
/* 8024DDD0 0024AD10 4B FF 5B F5 */ bl getUnitName__Q34Game4Cave7MapNodeFv
|
|
/* 8024DDD4 0024AD14 38 82 C4 C0 */ addi r4, r2, lbl_8051A820@sda21
|
|
/* 8024DDD8 0024AD18 38 A0 00 04 */ li r5, 4
|
|
/* 8024DDDC 0024AD1C 4B E7 C8 A5 */ bl strncmp
|
|
/* 8024DDE0 0024AD20 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8024DDE4 0024AD24 40 82 00 98 */ bne .L_8024DE7C
|
|
/* 8024DDE8 0024AD28 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024DDEC 0024AD2C 7E E4 BB 78 */ mr r4, r23
|
|
/* 8024DDF0 0024AD30 38 A0 00 00 */ li r5, 0
|
|
/* 8024DDF4 0024AD34 48 00 01 B1 */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DDF8 0024AD38 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DDFC 0024AD3C 41 82 00 80 */ beq .L_8024DE7C
|
|
/* 8024DE00 0024AD40 7C 16 C8 00 */ cmpw r22, r25
|
|
/* 8024DE04 0024AD44 41 80 00 78 */ blt .L_8024DE7C
|
|
/* 8024DE08 0024AD48 40 81 00 0C */ ble .L_8024DE14
|
|
/* 8024DE0C 0024AD4C 3B 40 00 00 */ li r26, 0
|
|
/* 8024DE10 0024AD50 7E D9 B3 78 */ mr r25, r22
|
|
.L_8024DE14:
|
|
/* 8024DE14 0024AD54 57 45 10 3A */ slwi r5, r26, 2
|
|
/* 8024DE18 0024AD58 38 81 08 20 */ addi r4, r1, 0x820
|
|
/* 8024DE1C 0024AD5C 38 61 00 20 */ addi r3, r1, 0x20
|
|
/* 8024DE20 0024AD60 38 00 00 00 */ li r0, 0
|
|
/* 8024DE24 0024AD64 7E E4 29 2E */ stwx r23, r4, r5
|
|
/* 8024DE28 0024AD68 3B 5A 00 01 */ addi r26, r26, 1
|
|
/* 8024DE2C 0024AD6C 7C 03 29 2E */ stwx r0, r3, r5
|
|
/* 8024DE30 0024AD70 48 00 00 4C */ b .L_8024DE7C
|
|
.L_8024DE34:
|
|
/* 8024DE34 0024AD74 7E 83 A3 78 */ mr r3, r20
|
|
/* 8024DE38 0024AD78 7E E4 BB 78 */ mr r4, r23
|
|
/* 8024DE3C 0024AD7C 38 A0 00 00 */ li r5, 0
|
|
/* 8024DE40 0024AD80 48 00 01 65 */ bl isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
/* 8024DE44 0024AD84 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8024DE48 0024AD88 41 82 00 34 */ beq .L_8024DE7C
|
|
/* 8024DE4C 0024AD8C 7C 16 C8 00 */ cmpw r22, r25
|
|
/* 8024DE50 0024AD90 41 80 00 2C */ blt .L_8024DE7C
|
|
/* 8024DE54 0024AD94 40 81 00 0C */ ble .L_8024DE60
|
|
/* 8024DE58 0024AD98 3B 40 00 00 */ li r26, 0
|
|
/* 8024DE5C 0024AD9C 7E D9 B3 78 */ mr r25, r22
|
|
.L_8024DE60:
|
|
/* 8024DE60 0024ADA0 57 45 10 3A */ slwi r5, r26, 2
|
|
/* 8024DE64 0024ADA4 38 81 08 20 */ addi r4, r1, 0x820
|
|
/* 8024DE68 0024ADA8 38 61 00 20 */ addi r3, r1, 0x20
|
|
/* 8024DE6C 0024ADAC 38 00 00 00 */ li r0, 0
|
|
/* 8024DE70 0024ADB0 7E E4 29 2E */ stwx r23, r4, r5
|
|
/* 8024DE74 0024ADB4 3B 5A 00 01 */ addi r26, r26, 1
|
|
/* 8024DE78 0024ADB8 7C 03 29 2E */ stwx r0, r3, r5
|
|
.L_8024DE7C:
|
|
/* 8024DE7C 0024ADBC 82 F7 00 04 */ lwz r23, 4(r23)
|
|
.L_8024DE80:
|
|
/* 8024DE80 0024ADC0 28 17 00 00 */ cmplwi r23, 0
|
|
/* 8024DE84 0024ADC4 40 82 FE 9C */ bne .L_8024DD20
|
|
.L_8024DE88:
|
|
/* 8024DE88 0024ADC8 3B 18 00 01 */ addi r24, r24, 1
|
|
/* 8024DE8C 0024ADCC 3B DE 00 04 */ addi r30, r30, 4
|
|
/* 8024DE90 0024ADD0 2C 18 00 03 */ cmpwi r24, 3
|
|
/* 8024DE94 0024ADD4 41 80 FE 70 */ blt .L_8024DD04
|
|
/* 8024DE98 0024ADD8 2C 1A 00 00 */ cmpwi r26, 0
|
|
/* 8024DE9C 0024ADDC 41 82 00 7C */ beq .L_8024DF18
|
|
/* 8024DEA0 0024ADE0 4B E7 B7 01 */ bl rand
|
|
/* 8024DEA4 0024ADE4 3C E0 43 30 */ lis r7, 0x4330
|
|
/* 8024DEA8 0024ADE8 6C 60 80 00 */ xoris r0, r3, 0x8000
|
|
/* 8024DEAC 0024ADEC 90 01 10 24 */ stw r0, 0x1024(r1)
|
|
/* 8024DEB0 0024ADF0 6F 45 80 00 */ xoris r5, r26, 0x8000
|
|
/* 8024DEB4 0024ADF4 80 1C 00 00 */ lwz r0, 0(r28)
|
|
/* 8024DEB8 0024ADF8 38 C1 08 20 */ addi r6, r1, 0x820
|
|
/* 8024DEBC 0024ADFC 90 E1 10 20 */ stw r7, 0x1020(r1)
|
|
/* 8024DEC0 0024AE00 38 61 00 20 */ addi r3, r1, 0x20
|
|
/* 8024DEC4 0024AE04 C8 42 C4 A0 */ lfd f2, lbl_8051A800@sda21(r2)
|
|
/* 8024DEC8 0024AE08 54 04 10 3A */ slwi r4, r0, 2
|
|
/* 8024DECC 0024AE0C C8 21 10 20 */ lfd f1, 0x1020(r1)
|
|
/* 8024DED0 0024AE10 C0 02 C4 98 */ lfs f0, lbl_8051A7F8@sda21(r2)
|
|
/* 8024DED4 0024AE14 EC 21 10 28 */ fsubs f1, f1, f2
|
|
/* 8024DED8 0024AE18 90 A1 10 2C */ stw r5, 0x102c(r1)
|
|
/* 8024DEDC 0024AE1C 80 B4 00 04 */ lwz r5, 4(r20)
|
|
/* 8024DEE0 0024AE20 90 E1 10 28 */ stw r7, 0x1028(r1)
|
|
/* 8024DEE4 0024AE24 EC 21 00 24 */ fdivs f1, f1, f0
|
|
/* 8024DEE8 0024AE28 C8 01 10 28 */ lfd f0, 0x1028(r1)
|
|
/* 8024DEEC 0024AE2C EC 00 10 28 */ fsubs f0, f0, f2
|
|
/* 8024DEF0 0024AE30 EC 00 00 72 */ fmuls f0, f0, f1
|
|
/* 8024DEF4 0024AE34 FC 00 00 1E */ fctiwz f0, f0
|
|
/* 8024DEF8 0024AE38 D8 01 10 30 */ stfd f0, 0x1030(r1)
|
|
/* 8024DEFC 0024AE3C 80 01 10 34 */ lwz r0, 0x1034(r1)
|
|
/* 8024DF00 0024AE40 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8024DF04 0024AE44 7C C6 00 2E */ lwzx r6, r6, r0
|
|
/* 8024DF08 0024AE48 7C 03 00 2E */ lwzx r0, r3, r0
|
|
/* 8024DF0C 0024AE4C 7C C5 21 2E */ stwx r6, r5, r4
|
|
/* 8024DF10 0024AE50 80 74 00 08 */ lwz r3, 8(r20)
|
|
/* 8024DF14 0024AE54 7C 03 21 2E */ stwx r0, r3, r4
|
|
.L_8024DF18:
|
|
/* 8024DF18 0024AE58 3B 7B 00 01 */ addi r27, r27, 1
|
|
/* 8024DF1C 0024AE5C 3B 9C 00 04 */ addi r28, r28, 4
|
|
/* 8024DF20 0024AE60 2C 1B 00 02 */ cmpwi r27, 2
|
|
/* 8024DF24 0024AE64 3B BD 00 01 */ addi r29, r29, 1
|
|
/* 8024DF28 0024AE68 41 80 FD 80 */ blt .L_8024DCA8
|
|
.L_8024DF2C:
|
|
/* 8024DF2C 0024AE6C BA 41 10 38 */ lmw r18, 0x1038(r1)
|
|
/* 8024DF30 0024AE70 80 01 10 74 */ lwz r0, 0x1074(r1)
|
|
/* 8024DF34 0024AE74 7C 08 03 A6 */ mtlr r0
|
|
/* 8024DF38 0024AE78 38 21 10 70 */ addi r1, r1, 0x1070
|
|
/* 8024DF3C 0024AE7C 4E 80 00 20 */ blr
|
|
|
|
.global isGoalSetHard__Q34Game4Cave12RandMapScoreFv
|
|
isGoalSetHard__Q34Game4Cave12RandMapScoreFv:
|
|
/* 8024DF40 0024AE80 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8024DF44 0024AE84 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8024DF48 0024AE88 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 8024DF4C 0024AE8C 41 82 00 38 */ beq .L_8024DF84
|
|
/* 8024DF50 0024AE90 40 80 00 14 */ bge .L_8024DF64
|
|
/* 8024DF54 0024AE94 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8024DF58 0024AE98 41 82 00 1C */ beq .L_8024DF74
|
|
/* 8024DF5C 0024AE9C 40 80 00 20 */ bge .L_8024DF7C
|
|
/* 8024DF60 0024AEA0 48 00 00 3C */ b .L_8024DF9C
|
|
.L_8024DF64:
|
|
/* 8024DF64 0024AEA4 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8024DF68 0024AEA8 41 82 00 2C */ beq .L_8024DF94
|
|
/* 8024DF6C 0024AEAC 40 80 00 30 */ bge .L_8024DF9C
|
|
/* 8024DF70 0024AEB0 48 00 00 1C */ b .L_8024DF8C
|
|
.L_8024DF74:
|
|
/* 8024DF74 0024AEB4 38 60 00 00 */ li r3, 0
|
|
/* 8024DF78 0024AEB8 4E 80 00 20 */ blr
|
|
.L_8024DF7C:
|
|
/* 8024DF7C 0024AEBC 38 60 00 01 */ li r3, 1
|
|
/* 8024DF80 0024AEC0 4E 80 00 20 */ blr
|
|
.L_8024DF84:
|
|
/* 8024DF84 0024AEC4 38 60 00 00 */ li r3, 0
|
|
/* 8024DF88 0024AEC8 4E 80 00 20 */ blr
|
|
.L_8024DF8C:
|
|
/* 8024DF8C 0024AECC 38 60 00 01 */ li r3, 1
|
|
/* 8024DF90 0024AED0 4E 80 00 20 */ blr
|
|
.L_8024DF94:
|
|
/* 8024DF94 0024AED4 38 60 00 01 */ li r3, 1
|
|
/* 8024DF98 0024AED8 4E 80 00 20 */ blr
|
|
.L_8024DF9C:
|
|
/* 8024DF9C 0024AEDC 38 60 00 00 */ li r3, 0
|
|
/* 8024DFA0 0024AEE0 4E 80 00 20 */ blr
|
|
|
|
.global isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen
|
|
isFixObjSet__Q34Game4Cave12RandMapScoreFPQ34Game4Cave7MapNodePQ34Game4Cave7BaseGen:
|
|
/* 8024DFA4 0024AEE4 80 E3 00 04 */ lwz r7, 4(r3)
|
|
/* 8024DFA8 0024AEE8 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8024DFAC 0024AEEC 7C 04 00 40 */ cmplw r4, r0
|
|
/* 8024DFB0 0024AEF0 40 82 00 84 */ bne .L_8024E034
|
|
/* 8024DFB4 0024AEF4 28 05 00 00 */ cmplwi r5, 0
|
|
/* 8024DFB8 0024AEF8 41 82 00 7C */ beq .L_8024E034
|
|
/* 8024DFBC 0024AEFC 80 C3 00 08 */ lwz r6, 8(r3)
|
|
/* 8024DFC0 0024AF00 80 C6 00 00 */ lwz r6, 0(r6)
|
|
/* 8024DFC4 0024AF04 28 06 00 00 */ cmplwi r6, 0
|
|
/* 8024DFC8 0024AF08 41 82 00 6C */ beq .L_8024E034
|
|
/* 8024DFCC 0024AF0C C0 26 00 20 */ lfs f1, 0x20(r6)
|
|
/* 8024DFD0 0024AF10 C0 05 00 20 */ lfs f0, 0x20(r5)
|
|
/* 8024DFD4 0024AF14 C0 66 00 1C */ lfs f3, 0x1c(r6)
|
|
/* 8024DFD8 0024AF18 EC 81 00 28 */ fsubs f4, f1, f0
|
|
/* 8024DFDC 0024AF1C C0 45 00 1C */ lfs f2, 0x1c(r5)
|
|
/* 8024DFE0 0024AF20 C0 26 00 24 */ lfs f1, 0x24(r6)
|
|
/* 8024DFE4 0024AF24 C0 05 00 24 */ lfs f0, 0x24(r5)
|
|
/* 8024DFE8 0024AF28 EC 63 10 28 */ fsubs f3, f3, f2
|
|
/* 8024DFEC 0024AF2C EC 84 01 32 */ fmuls f4, f4, f4
|
|
/* 8024DFF0 0024AF30 EC 41 00 28 */ fsubs f2, f1, f0
|
|
/* 8024DFF4 0024AF34 C0 02 C4 BC */ lfs f0, lbl_8051A81C@sda21(r2)
|
|
/* 8024DFF8 0024AF38 EC 23 20 FA */ fmadds f1, f3, f3, f4
|
|
/* 8024DFFC 0024AF3C EC 42 00 B2 */ fmuls f2, f2, f2
|
|
/* 8024E000 0024AF40 EC 22 08 2A */ fadds f1, f2, f1
|
|
/* 8024E004 0024AF44 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8024E008 0024AF48 40 81 00 14 */ ble .L_8024E01C
|
|
/* 8024E00C 0024AF4C 40 81 00 14 */ ble .L_8024E020
|
|
/* 8024E010 0024AF50 FC 00 08 34 */ frsqrte f0, f1
|
|
/* 8024E014 0024AF54 EC 20 00 72 */ fmuls f1, f0, f1
|
|
/* 8024E018 0024AF58 48 00 00 08 */ b .L_8024E020
|
|
.L_8024E01C:
|
|
/* 8024E01C 0024AF5C FC 20 00 90 */ fmr f1, f0
|
|
.L_8024E020:
|
|
/* 8024E020 0024AF60 C0 02 C4 D4 */ lfs f0, lbl_8051A834@sda21(r2)
|
|
/* 8024E024 0024AF64 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8024E028 0024AF68 40 80 00 0C */ bge .L_8024E034
|
|
/* 8024E02C 0024AF6C 38 60 00 00 */ li r3, 0
|
|
/* 8024E030 0024AF70 4E 80 00 20 */ blr
|
|
.L_8024E034:
|
|
/* 8024E034 0024AF74 80 07 00 04 */ lwz r0, 4(r7)
|
|
/* 8024E038 0024AF78 7C 04 00 40 */ cmplw r4, r0
|
|
/* 8024E03C 0024AF7C 40 82 00 1C */ bne .L_8024E058
|
|
/* 8024E040 0024AF80 80 C3 00 08 */ lwz r6, 8(r3)
|
|
/* 8024E044 0024AF84 80 06 00 04 */ lwz r0, 4(r6)
|
|
/* 8024E048 0024AF88 7C 05 00 40 */ cmplw r5, r0
|
|
/* 8024E04C 0024AF8C 40 82 00 0C */ bne .L_8024E058
|
|
/* 8024E050 0024AF90 38 60 00 00 */ li r3, 0
|
|
/* 8024E054 0024AF94 4E 80 00 20 */ blr
|
|
.L_8024E058:
|
|
/* 8024E058 0024AF98 80 07 00 08 */ lwz r0, 8(r7)
|
|
/* 8024E05C 0024AF9C 7C 04 00 40 */ cmplw r4, r0
|
|
/* 8024E060 0024AFA0 40 82 00 1C */ bne .L_8024E07C
|
|
/* 8024E064 0024AFA4 80 C3 00 08 */ lwz r6, 8(r3)
|
|
/* 8024E068 0024AFA8 80 06 00 08 */ lwz r0, 8(r6)
|
|
/* 8024E06C 0024AFAC 7C 05 00 40 */ cmplw r5, r0
|
|
/* 8024E070 0024AFB0 40 82 00 0C */ bne .L_8024E07C
|
|
/* 8024E074 0024AFB4 38 60 00 00 */ li r3, 0
|
|
/* 8024E078 0024AFB8 4E 80 00 20 */ blr
|
|
.L_8024E07C:
|
|
/* 8024E07C 0024AFBC 80 07 00 0C */ lwz r0, 0xc(r7)
|
|
/* 8024E080 0024AFC0 7C 04 00 40 */ cmplw r4, r0
|
|
/* 8024E084 0024AFC4 40 82 00 1C */ bne .L_8024E0A0
|
|
/* 8024E088 0024AFC8 80 C3 00 08 */ lwz r6, 8(r3)
|
|
/* 8024E08C 0024AFCC 80 06 00 0C */ lwz r0, 0xc(r6)
|
|
/* 8024E090 0024AFD0 7C 05 00 40 */ cmplw r5, r0
|
|
/* 8024E094 0024AFD4 40 82 00 0C */ bne .L_8024E0A0
|
|
/* 8024E098 0024AFD8 38 60 00 00 */ li r3, 0
|
|
/* 8024E09C 0024AFDC 4E 80 00 20 */ blr
|
|
.L_8024E0A0:
|
|
/* 8024E0A0 0024AFE0 80 07 00 10 */ lwz r0, 0x10(r7)
|
|
/* 8024E0A4 0024AFE4 7C 04 00 40 */ cmplw r4, r0
|
|
/* 8024E0A8 0024AFE8 40 82 00 1C */ bne .L_8024E0C4
|
|
/* 8024E0AC 0024AFEC 80 C3 00 08 */ lwz r6, 8(r3)
|
|
/* 8024E0B0 0024AFF0 80 06 00 10 */ lwz r0, 0x10(r6)
|
|
/* 8024E0B4 0024AFF4 7C 05 00 40 */ cmplw r5, r0
|
|
/* 8024E0B8 0024AFF8 40 82 00 0C */ bne .L_8024E0C4
|
|
/* 8024E0BC 0024AFFC 38 60 00 00 */ li r3, 0
|
|
/* 8024E0C0 0024B000 4E 80 00 20 */ blr
|
|
.L_8024E0C4:
|
|
/* 8024E0C4 0024B004 38 60 00 01 */ li r3, 1
|
|
/* 8024E0C8 0024B008 4E 80 00 20 */ blr
|
|
|
|
.global __dt__Q34Game4Cave10FixObjNodeFv
|
|
__dt__Q34Game4Cave10FixObjNodeFv:
|
|
/* 8024E0CC 0024B00C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8024E0D0 0024B010 7C 08 02 A6 */ mflr r0
|
|
/* 8024E0D4 0024B014 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8024E0D8 0024B018 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8024E0DC 0024B01C 7C 9F 23 78 */ mr r31, r4
|
|
/* 8024E0E0 0024B020 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8024E0E4 0024B024 7C 7E 1B 79 */ or. r30, r3, r3
|
|
/* 8024E0E8 0024B028 41 82 00 38 */ beq .L_8024E120
|
|
/* 8024E0EC 0024B02C 3C 80 80 4C */ lis r4, __vt__Q34Game4Cave10FixObjNode@ha
|
|
/* 8024E0F0 0024B030 38 04 1B 18 */ addi r0, r4, __vt__Q34Game4Cave10FixObjNode@l
|
|
/* 8024E0F4 0024B034 90 1E 00 00 */ stw r0, 0(r30)
|
|
/* 8024E0F8 0024B038 41 82 00 18 */ beq .L_8024E110
|
|
/* 8024E0FC 0024B03C 3C A0 80 4C */ lis r5, __vt__Q24Game16ObjectLayoutNode@ha
|
|
/* 8024E100 0024B040 38 80 00 00 */ li r4, 0
|
|
/* 8024E104 0024B044 38 05 1A A8 */ addi r0, r5, __vt__Q24Game16ObjectLayoutNode@l
|
|
/* 8024E108 0024B048 90 1E 00 00 */ stw r0, 0(r30)
|
|
/* 8024E10C 0024B04C 48 1C 34 7D */ bl __dt__5CNodeFv
|
|
.L_8024E110:
|
|
/* 8024E110 0024B050 7F E0 07 35 */ extsh. r0, r31
|
|
/* 8024E114 0024B054 40 81 00 0C */ ble .L_8024E120
|
|
/* 8024E118 0024B058 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024E11C 0024B05C 4B DD 5F 99 */ bl __dl__FPv
|
|
.L_8024E120:
|
|
/* 8024E120 0024B060 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8024E124 0024B064 7F C3 F3 78 */ mr r3, r30
|
|
/* 8024E128 0024B068 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8024E12C 0024B06C 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8024E130 0024B070 7C 08 03 A6 */ mtlr r0
|
|
/* 8024E134 0024B074 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8024E138 0024B078 4E 80 00 20 */ blr
|
|
|
|
.global getObjectId__Q34Game4Cave10FixObjNodeFv
|
|
getObjectId__Q34Game4Cave10FixObjNodeFv:
|
|
/* 8024E13C 0024B07C 38 60 00 01 */ li r3, 1
|
|
/* 8024E140 0024B080 4E 80 00 20 */ blr
|
|
|
|
.global getObjectType__Q34Game4Cave10FixObjNodeFv
|
|
getObjectType__Q34Game4Cave10FixObjNodeFv:
|
|
/* 8024E144 0024B084 80 63 00 18 */ lwz r3, 0x18(r3)
|
|
/* 8024E148 0024B088 4E 80 00 20 */ blr
|
|
|
|
.global getBirthCount__Q34Game4Cave10FixObjNodeFv
|
|
getBirthCount__Q34Game4Cave10FixObjNodeFv:
|
|
/* 8024E14C 0024B08C 38 60 00 01 */ li r3, 1
|
|
/* 8024E150 0024B090 4E 80 00 20 */ blr
|
|
|
|
.global getDirection__Q34Game4Cave10FixObjNodeFv
|
|
getDirection__Q34Game4Cave10FixObjNodeFv:
|
|
/* 8024E154 0024B094 C0 23 00 1C */ lfs f1, 0x1c(r3)
|
|
/* 8024E158 0024B098 4E 80 00 20 */ blr
|
|
|
|
.global getBirthPosition__Q34Game4Cave10FixObjNodeFRfRf
|
|
getBirthPosition__Q34Game4Cave10FixObjNodeFRfRf:
|
|
/* 8024E15C 0024B09C C0 03 00 20 */ lfs f0, 0x20(r3)
|
|
/* 8024E160 0024B0A0 D0 04 00 00 */ stfs f0, 0(r4)
|
|
/* 8024E164 0024B0A4 C0 03 00 28 */ lfs f0, 0x28(r3)
|
|
/* 8024E168 0024B0A8 D0 05 00 00 */ stfs f0, 0(r5)
|
|
/* 8024E16C 0024B0AC 4E 80 00 20 */ blr
|