Files
dusklight/include/d/d_kankyo/asm/func_801AB93C.s
T
Erin Moon 59a9fda7cb d_kankyo, d_kankyo_*: autosplit (#44)
- d_kankyo
- d_kankyo_rain
- d_kankyo_wether
- d_kankyo_rain

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:54:59 -05:00

99 lines
4.9 KiB
ArmAsm

/* 801AB93C 001A887C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801AB940 001A8880 7C 08 02 A6 */ mflr r0
/* 801AB944 001A8884 90 01 00 24 */ stw r0, 0x24(r1)
/* 801AB948 001A8888 39 61 00 20 */ addi r11, r1, 0x20
/* 801AB94C 001A888C 48 1B 68 85 */ bl _savegpr_26
/* 801AB950 001A8890 7C 7D 1B 79 */ or. r29, r3, r3
/* 801AB954 001A8894 7C 9E 23 78 */ mr r30, r4
/* 801AB958 001A8898 3C 60 80 43 */ lis r3, lbl_8042CA54@ha
/* 801AB95C 001A889C 3B E3 CA 54 */ addi r31, r3, lbl_8042CA54@l
/* 801AB960 001A88A0 41 82 00 1C */ beq lbl_801AB97C
/* 801AB964 001A88A4 28 1E 00 00 */ cmplwi r30, 0
/* 801AB968 001A88A8 41 82 00 14 */ beq lbl_801AB97C
/* 801AB96C 001A88AC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 801AB970 001A88B0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 801AB974 001A88B4 37 83 0F 38 */ addic. r28, r3, 0xf38
/* 801AB978 001A88B8 40 82 00 0C */ bne lbl_801AB984
lbl_801AB97C:
/* 801AB97C 001A88BC 38 60 00 FF */ li r3, 0xff
/* 801AB980 001A88C0 48 00 01 0C */ b lbl_801ABA8C
lbl_801AB984:
/* 801AB984 001A88C4 7F 83 E3 78 */ mr r3, r28
/* 801AB988 001A88C8 7F A4 EB 78 */ mr r4, r29
/* 801AB98C 001A88CC 4B EC 94 C5 */ bl dBgS_NS_GetPolyAtt0
/* 801AB990 001A88D0 7C 7A 1B 78 */ mr r26, r3
/* 801AB994 001A88D4 3B 7C 3E C8 */ addi r27, r28, 0x3ec8
/* 801AB998 001A88D8 7F 63 DB 78 */ mr r3, r27
/* 801AB99C 001A88DC 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AB9A0 001A88E0 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AB9A4 001A88E4 38 84 01 7A */ addi r4, r4, 0x17a
/* 801AB9A8 001A88E8 48 1B CF ED */ bl strcmp
/* 801AB9AC 001A88EC 2C 03 00 00 */ cmpwi r3, 0
/* 801AB9B0 001A88F0 40 82 00 28 */ bne lbl_801AB9D8
/* 801AB9B4 001A88F4 3C 60 80 43 */ lis r3, lbl_8042CA54@ha
/* 801AB9B8 001A88F8 38 63 CA 54 */ addi r3, r3, lbl_8042CA54@l
/* 801AB9BC 001A88FC 88 03 12 FE */ lbz r0, 0x12fe(r3)
/* 801AB9C0 001A8900 28 00 00 04 */ cmplwi r0, 4
/* 801AB9C4 001A8904 40 82 00 14 */ bne lbl_801AB9D8
/* 801AB9C8 001A8908 2C 1A 00 04 */ cmpwi r26, 4
/* 801AB9CC 001A890C 40 82 00 50 */ bne lbl_801ABA1C
/* 801AB9D0 001A8910 3B 40 00 0D */ li r26, 0xd
/* 801AB9D4 001A8914 48 00 00 48 */ b lbl_801ABA1C
lbl_801AB9D8:
/* 801AB9D8 001A8918 7F 63 DB 78 */ mr r3, r27
/* 801AB9DC 001A891C 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AB9E0 001A8920 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AB9E4 001A8924 38 84 02 61 */ addi r4, r4, 0x261
/* 801AB9E8 001A8928 48 1B CF AD */ bl strcmp
/* 801AB9EC 001A892C 2C 03 00 00 */ cmpwi r3, 0
/* 801AB9F0 001A8930 40 82 00 2C */ bne lbl_801ABA1C
/* 801AB9F4 001A8934 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 801AB9F8 001A8938 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 801AB9FC 001A893C 38 63 09 58 */ addi r3, r3, 0x958
/* 801ABA00 001A8940 38 80 00 03 */ li r4, 3
/* 801ABA04 001A8944 4B E8 8F 31 */ bl isDungeonItem__12dSv_memBit_cCFi
/* 801ABA08 001A8948 2C 03 00 00 */ cmpwi r3, 0
/* 801ABA0C 001A894C 41 82 00 10 */ beq lbl_801ABA1C
/* 801ABA10 001A8950 2C 1A 00 0B */ cmpwi r26, 0xb
/* 801ABA14 001A8954 40 82 00 08 */ bne lbl_801ABA1C
/* 801ABA18 001A8958 3B 40 00 07 */ li r26, 7
lbl_801ABA1C:
/* 801ABA1C 001A895C 7F 83 E3 78 */ mr r3, r28
/* 801ABA20 001A8960 7F A4 EB 78 */ mr r4, r29
/* 801ABA24 001A8964 4B EC 94 7D */ bl dBgS_NS_GetPolyAtt1
/* 801ABA28 001A8968 80 9F 12 E8 */ lwz r4, 0x12e8(r31)
/* 801ABA2C 001A896C 28 04 00 00 */ cmplwi r4, 0
/* 801ABA30 001A8970 41 82 00 14 */ beq lbl_801ABA44
/* 801ABA34 001A8974 57 40 18 38 */ slwi r0, r26, 3
/* 801ABA38 001A8978 7C 00 1A 14 */ add r0, r0, r3
/* 801ABA3C 001A897C 7C 64 00 AE */ lbzx r3, r4, r0
/* 801ABA40 001A8980 48 00 00 0C */ b lbl_801ABA4C
lbl_801ABA44:
/* 801ABA44 001A8984 38 60 00 FF */ li r3, 0xff
/* 801ABA48 001A8988 48 00 00 44 */ b lbl_801ABA8C
lbl_801ABA4C:
/* 801ABA4C 001A898C 28 03 00 64 */ cmplwi r3, 0x64
/* 801ABA50 001A8990 41 80 00 0C */ blt lbl_801ABA5C
/* 801ABA54 001A8994 38 60 00 FF */ li r3, 0xff
/* 801ABA58 001A8998 48 00 00 34 */ b lbl_801ABA8C
lbl_801ABA5C:
/* 801ABA5C 001A899C 80 9F 12 F4 */ lwz r4, 0x12f4(r31)
/* 801ABA60 001A89A0 54 65 1D 78 */ rlwinm r5, r3, 3, 0x15, 0x1c
/* 801ABA64 001A89A4 7C 04 28 AE */ lbzx r0, r4, r5
/* 801ABA68 001A89A8 98 1E 00 00 */ stb r0, 0(r30)
/* 801ABA6C 001A89AC 80 1F 12 F4 */ lwz r0, 0x12f4(r31)
/* 801ABA70 001A89B0 7C 80 2A 14 */ add r4, r0, r5
/* 801ABA74 001A89B4 88 04 00 01 */ lbz r0, 1(r4)
/* 801ABA78 001A89B8 98 1E 00 01 */ stb r0, 1(r30)
/* 801ABA7C 001A89BC 80 1F 12 F4 */ lwz r0, 0x12f4(r31)
/* 801ABA80 001A89C0 7C 80 2A 14 */ add r4, r0, r5
/* 801ABA84 001A89C4 88 04 00 02 */ lbz r0, 2(r4)
/* 801ABA88 001A89C8 98 1E 00 02 */ stb r0, 2(r30)
lbl_801ABA8C:
/* 801ABA8C 001A89CC 39 61 00 20 */ addi r11, r1, 0x20
/* 801ABA90 001A89D0 48 1B 67 8D */ bl _restgpr_26
/* 801ABA94 001A89D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801ABA98 001A89D8 7C 08 03 A6 */ mtlr r0
/* 801ABA9C 001A89DC 38 21 00 20 */ addi r1, r1, 0x20
/* 801ABAA0 001A89E0 4E 80 00 20 */ blr