mirror of https://github.com/zeldaret/tp.git
150 lines
7.2 KiB
ArmAsm
150 lines
7.2 KiB
ArmAsm
/* 80164944 00161884 94 21 FF D0 */ stwu r1, -0x30(r1)
|
|
/* 80164948 00161888 7C 08 02 A6 */ mflr r0
|
|
/* 8016494C 0016188C 90 01 00 34 */ stw r0, 0x34(r1)
|
|
/* 80164950 00161890 39 61 00 30 */ addi r11, r1, 0x30
|
|
/* 80164954 00161894 48 1F D8 79 */ bl _savegpr_25
|
|
/* 80164958 00161898 7C 7C 1B 78 */ mr r28, r3
|
|
/* 8016495C 0016189C 7C 9D 23 78 */ mr r29, r4
|
|
/* 80164960 001618A0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
|
|
/* 80164964 001618A4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
|
|
/* 80164968 001618A8 3B 43 4E 20 */ addi r26, r3, 0x4e20
|
|
/* 8016496C 001618AC 2C 05 FF FF */ cmpwi r5, -1
|
|
/* 80164970 001618B0 40 82 00 38 */ bne lbl_801649A8
|
|
/* 80164974 001618B4 7F 43 D3 78 */ mr r3, r26
|
|
/* 80164978 001618B8 81 9A 00 00 */ lwz r12, 0(r26)
|
|
/* 8016497C 001618BC 81 8C 00 10 */ lwz r12, 0x10(r12)
|
|
/* 80164980 001618C0 7D 89 03 A6 */ mtctr r12
|
|
/* 80164984 001618C4 4E 80 04 21 */ bctrl
|
|
/* 80164988 001618C8 7C 79 1B 78 */ mr r25, r3
|
|
/* 8016498C 001618CC 7F 43 D3 78 */ mr r3, r26
|
|
/* 80164990 001618D0 81 9A 00 00 */ lwz r12, 0(r26)
|
|
/* 80164994 001618D4 81 8C 00 18 */ lwz r12, 0x18(r12)
|
|
/* 80164998 001618D8 7D 89 03 A6 */ mtctr r12
|
|
/* 8016499C 001618DC 4E 80 04 21 */ bctrl
|
|
/* 801649A0 001618E0 7C 7E 1B 78 */ mr r30, r3
|
|
/* 801649A4 001618E4 48 00 00 30 */ b lbl_801649D4
|
|
lbl_801649A8:
|
|
/* 801649A8 001618E8 7C BB 2B 78 */ mr r27, r5
|
|
/* 801649AC 001618EC 7F 63 DB 78 */ mr r3, r27
|
|
/* 801649B0 001618F0 4B EC 88 AD */ bl dComIfGp_getRoomCamera
|
|
/* 801649B4 001618F4 7C 79 1B 78 */ mr r25, r3
|
|
/* 801649B8 001618F8 7F 63 DB 78 */ mr r3, r27
|
|
/* 801649BC 001618FC 4B EC 88 F1 */ bl dComIfGp_getRoomArrow
|
|
/* 801649C0 00161900 7C 7E 1B 78 */ mr r30, r3
|
|
/* 801649C4 00161904 28 19 00 00 */ cmplwi r25, 0
|
|
/* 801649C8 00161908 40 82 00 0C */ bne lbl_801649D4
|
|
/* 801649CC 0016190C 38 60 00 FF */ li r3, 0xff
|
|
/* 801649D0 00161910 48 00 01 7C */ b lbl_80164B4C
|
|
lbl_801649D4:
|
|
/* 801649D4 00161914 2C 1D 00 00 */ cmpwi r29, 0
|
|
/* 801649D8 00161918 41 80 00 1C */ blt lbl_801649F4
|
|
/* 801649DC 0016191C 28 19 00 00 */ cmplwi r25, 0
|
|
/* 801649E0 00161920 41 82 00 14 */ beq lbl_801649F4
|
|
/* 801649E4 00161924 41 82 00 18 */ beq lbl_801649FC
|
|
/* 801649E8 00161928 80 19 00 00 */ lwz r0, 0(r25)
|
|
/* 801649EC 0016192C 7C 1D 00 00 */ cmpw r29, r0
|
|
/* 801649F0 00161930 41 80 00 0C */ blt lbl_801649FC
|
|
lbl_801649F4:
|
|
/* 801649F4 00161934 38 60 00 FF */ li r3, 0xff
|
|
/* 801649F8 00161938 48 00 01 54 */ b lbl_80164B4C
|
|
lbl_801649FC:
|
|
/* 801649FC 0016193C 3B E0 00 00 */ li r31, 0
|
|
/* 80164A00 00161940 3B 60 00 00 */ li r27, 0
|
|
/* 80164A04 00161944 1F 5D 00 18 */ mulli r26, r29, 0x18
|
|
/* 80164A08 00161948 48 00 00 28 */ b lbl_80164A30
|
|
lbl_80164A0C:
|
|
/* 80164A0C 0016194C 80 19 00 04 */ lwz r0, 4(r25)
|
|
/* 80164A10 00161950 7C 60 D2 14 */ add r3, r0, r26
|
|
/* 80164A14 00161954 80 1C 06 84 */ lwz r0, 0x684(r28)
|
|
/* 80164A18 00161958 7C 80 DA 14 */ add r4, r0, r27
|
|
/* 80164A1C 0016195C 48 20 3F 79 */ bl strcmp
|
|
/* 80164A20 00161960 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80164A24 00161964 41 82 00 18 */ beq lbl_80164A3C
|
|
/* 80164A28 00161968 3B FF 00 01 */ addi r31, r31, 1
|
|
/* 80164A2C 0016196C 3B 7B 00 44 */ addi r27, r27, 0x44
|
|
lbl_80164A30:
|
|
/* 80164A30 00161970 80 1C 06 88 */ lwz r0, 0x688(r28)
|
|
/* 80164A34 00161974 7C 1F 00 00 */ cmpw r31, r0
|
|
/* 80164A38 00161978 41 80 FF D4 */ blt lbl_80164A0C
|
|
lbl_80164A3C:
|
|
/* 80164A3C 0016197C 80 1C 06 88 */ lwz r0, 0x688(r28)
|
|
/* 80164A40 00161980 7C 1F 00 00 */ cmpw r31, r0
|
|
/* 80164A44 00161984 40 82 00 0C */ bne lbl_80164A50
|
|
/* 80164A48 00161988 38 60 00 FF */ li r3, 0xff
|
|
/* 80164A4C 0016198C 48 00 01 00 */ b lbl_80164B4C
|
|
lbl_80164A50:
|
|
/* 80164A50 00161990 80 19 00 04 */ lwz r0, 4(r25)
|
|
/* 80164A54 00161994 7C 80 D2 14 */ add r4, r0, r26
|
|
/* 80164A58 00161998 80 64 00 00 */ lwz r3, 0(r4)
|
|
/* 80164A5C 0016199C 80 04 00 04 */ lwz r0, 4(r4)
|
|
/* 80164A60 001619A0 90 7C 07 AC */ stw r3, 0x7ac(r28)
|
|
/* 80164A64 001619A4 90 1C 07 B0 */ stw r0, 0x7b0(r28)
|
|
/* 80164A68 001619A8 80 64 00 08 */ lwz r3, 8(r4)
|
|
/* 80164A6C 001619AC 80 04 00 0C */ lwz r0, 0xc(r4)
|
|
/* 80164A70 001619B0 90 7C 07 B4 */ stw r3, 0x7b4(r28)
|
|
/* 80164A74 001619B4 90 1C 07 B8 */ stw r0, 0x7b8(r28)
|
|
/* 80164A78 001619B8 88 04 00 10 */ lbz r0, 0x10(r4)
|
|
/* 80164A7C 001619BC 98 1C 07 BC */ stb r0, 0x7bc(r28)
|
|
/* 80164A80 001619C0 88 04 00 11 */ lbz r0, 0x11(r4)
|
|
/* 80164A84 001619C4 98 1C 07 BD */ stb r0, 0x7bd(r28)
|
|
/* 80164A88 001619C8 88 04 00 12 */ lbz r0, 0x12(r4)
|
|
/* 80164A8C 001619CC 98 1C 07 BE */ stb r0, 0x7be(r28)
|
|
/* 80164A90 001619D0 88 04 00 13 */ lbz r0, 0x13(r4)
|
|
/* 80164A94 001619D4 98 1C 07 BF */ stb r0, 0x7bf(r28)
|
|
/* 80164A98 001619D8 A0 04 00 14 */ lhz r0, 0x14(r4)
|
|
/* 80164A9C 001619DC B0 1C 07 C0 */ sth r0, 0x7c0(r28)
|
|
/* 80164AA0 001619E0 A0 04 00 16 */ lhz r0, 0x16(r4)
|
|
/* 80164AA4 001619E4 B0 1C 07 C2 */ sth r0, 0x7c2(r28)
|
|
/* 80164AA8 001619E8 93 BC 07 DC */ stw r29, 0x7dc(r28)
|
|
/* 80164AAC 001619EC A0 1C 07 C0 */ lhz r0, 0x7c0(r28)
|
|
/* 80164AB0 001619F0 54 00 97 BE */ rlwinm r0, r0, 0x12, 0x1e, 0x1f
|
|
/* 80164AB4 001619F4 98 1C 07 E6 */ stb r0, 0x7e6(r28)
|
|
/* 80164AB8 001619F8 A0 7C 07 C0 */ lhz r3, 0x7c0(r28)
|
|
/* 80164ABC 001619FC 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12
|
|
/* 80164AC0 00161A00 41 82 00 10 */ beq lbl_80164AD0
|
|
/* 80164AC4 00161A04 60 60 C0 00 */ ori r0, r3, 0xc000
|
|
/* 80164AC8 00161A08 B0 1C 07 C0 */ sth r0, 0x7c0(r28)
|
|
/* 80164ACC 00161A0C 48 00 00 0C */ b lbl_80164AD8
|
|
lbl_80164AD0:
|
|
/* 80164AD0 00161A10 54 60 04 BE */ clrlwi r0, r3, 0x12
|
|
/* 80164AD4 00161A14 B0 1C 07 C0 */ sth r0, 0x7c0(r28)
|
|
lbl_80164AD8:
|
|
/* 80164AD8 00161A18 88 1C 07 BC */ lbz r0, 0x7bc(r28)
|
|
/* 80164ADC 00161A1C 90 1C 07 D8 */ stw r0, 0x7d8(r28)
|
|
/* 80164AE0 00161A20 80 9C 07 D8 */ lwz r4, 0x7d8(r28)
|
|
/* 80164AE4 00161A24 2C 04 FF FF */ cmpwi r4, -1
|
|
/* 80164AE8 00161A28 41 82 00 58 */ beq lbl_80164B40
|
|
/* 80164AEC 00161A2C 80 1E 00 00 */ lwz r0, 0(r30)
|
|
/* 80164AF0 00161A30 7C 04 00 00 */ cmpw r4, r0
|
|
/* 80164AF4 00161A34 40 80 00 4C */ bge lbl_80164B40
|
|
/* 80164AF8 00161A38 80 7E 00 04 */ lwz r3, 4(r30)
|
|
/* 80164AFC 00161A3C 1C 04 00 14 */ mulli r0, r4, 0x14
|
|
/* 80164B00 00161A40 7C 63 02 14 */ add r3, r3, r0
|
|
/* 80164B04 00161A44 C0 03 00 00 */ lfs f0, 0(r3)
|
|
/* 80164B08 00161A48 D0 1C 07 C4 */ stfs f0, 0x7c4(r28)
|
|
/* 80164B0C 00161A4C C0 03 00 04 */ lfs f0, 4(r3)
|
|
/* 80164B10 00161A50 D0 1C 07 C8 */ stfs f0, 0x7c8(r28)
|
|
/* 80164B14 00161A54 C0 03 00 08 */ lfs f0, 8(r3)
|
|
/* 80164B18 00161A58 D0 1C 07 CC */ stfs f0, 0x7cc(r28)
|
|
/* 80164B1C 00161A5C A8 03 00 0C */ lha r0, 0xc(r3)
|
|
/* 80164B20 00161A60 B0 1C 07 D0 */ sth r0, 0x7d0(r28)
|
|
/* 80164B24 00161A64 A8 03 00 0E */ lha r0, 0xe(r3)
|
|
/* 80164B28 00161A68 B0 1C 07 D2 */ sth r0, 0x7d2(r28)
|
|
/* 80164B2C 00161A6C A8 03 00 10 */ lha r0, 0x10(r3)
|
|
/* 80164B30 00161A70 B0 1C 07 D4 */ sth r0, 0x7d4(r28)
|
|
/* 80164B34 00161A74 A8 03 00 12 */ lha r0, 0x12(r3)
|
|
/* 80164B38 00161A78 B0 1C 07 D6 */ sth r0, 0x7d6(r28)
|
|
/* 80164B3C 00161A7C 48 00 00 0C */ b lbl_80164B48
|
|
lbl_80164B40:
|
|
/* 80164B40 00161A80 38 00 00 FF */ li r0, 0xff
|
|
/* 80164B44 00161A84 90 1C 07 D8 */ stw r0, 0x7d8(r28)
|
|
lbl_80164B48:
|
|
/* 80164B48 00161A88 7F E3 FB 78 */ mr r3, r31
|
|
lbl_80164B4C:
|
|
/* 80164B4C 00161A8C 39 61 00 30 */ addi r11, r1, 0x30
|
|
/* 80164B50 00161A90 48 1F D6 C9 */ bl _restgpr_25
|
|
/* 80164B54 00161A94 80 01 00 34 */ lwz r0, 0x34(r1)
|
|
/* 80164B58 00161A98 7C 08 03 A6 */ mtlr r0
|
|
/* 80164B5C 00161A9C 38 21 00 30 */ addi r1, r1, 0x30
|
|
/* 80164B60 00161AA0 4E 80 00 20 */ blr
|