tp/asm/JKernel/JKRFileLoader.s

121 lines
5.3 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 802D45A0
.global fetchVolumeName__13JKRFileLoaderFPclPCc
fetchVolumeName__13JKRFileLoaderFPclPCc:
/* 802D44C4 002D1404 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D44C8 002D1408 7C 08 02 A6 */ mflr r0
/* 802D44CC 002D140C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D44D0 002D1410 39 61 00 20 */ addi r11, r1, 0x20
/* 802D44D4 002D1414 48 08 DD 09 */ bl _savegpr_29
/* 802D44D8 002D1418 7C 7D 1B 78 */ mr r29, r3
/* 802D44DC 002D141C 7C 9E 23 78 */ mr r30, r4
/* 802D44E0 002D1420 7C BF 2B 78 */ mr r31, r5
/* 802D44E4 002D1424 7F E3 FB 78 */ mr r3, r31
/* 802D44E8 002D1428 3C 80 80 3A */ lis r4, lbl_8039D150@ha
/* 802D44EC 002D142C 38 84 D1 50 */ addi r4, r4, lbl_8039D150@l
/* 802D44F0 002D1430 48 09 44 A5 */ bl strcmp
/* 802D44F4 002D1434 2C 03 00 00 */ cmpwi r3, 0
/* 802D44F8 002D1438 40 82 00 18 */ bne lbl_802D4510
/* 802D44FC 002D143C 7F A3 EB 78 */ mr r3, r29
/* 802D4500 002D1440 38 8D 83 40 */ addi r4, r13, lbl_804508C0-_SDA_BASE_
/* 802D4504 002D1444 48 09 46 29 */ bl strcpy
/* 802D4508 002D1448 38 6D 83 40 */ addi r3, r13, lbl_804508C0-_SDA_BASE_
/* 802D450C 002D144C 48 00 00 7C */ b lbl_802D4588
lbl_802D4510:
/* 802D4510 002D1450 3C 60 80 3D */ lis r3, lbl_803D2D18@ha
/* 802D4514 002D1454 38 63 2D 18 */ addi r3, r3, lbl_803D2D18@l
/* 802D4518 002D1458 3B FF 00 01 */ addi r31, r31, 1
/* 802D451C 002D145C 48 00 00 38 */ b lbl_802D4554
lbl_802D4520:
/* 802D4520 002D1460 2C 1E 00 01 */ cmpwi r30, 1
/* 802D4524 002D1464 40 81 00 2C */ ble lbl_802D4550
/* 802D4528 002D1468 7C 80 07 74 */ extsb r0, r4
/* 802D452C 002D146C 2C 00 FF FF */ cmpwi r0, -1
/* 802D4530 002D1470 40 82 00 0C */ bne lbl_802D453C
/* 802D4534 002D1474 38 00 FF FF */ li r0, -1
/* 802D4538 002D1478 48 00 00 0C */ b lbl_802D4544
lbl_802D453C:
/* 802D453C 002D147C 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802D4540 002D1480 7C 03 00 AE */ lbzx r0, r3, r0
lbl_802D4544:
/* 802D4544 002D1484 98 1D 00 00 */ stb r0, 0(r29)
/* 802D4548 002D1488 3B BD 00 01 */ addi r29, r29, 1
/* 802D454C 002D148C 3B DE FF FF */ addi r30, r30, -1
lbl_802D4550:
/* 802D4550 002D1490 3B FF 00 01 */ addi r31, r31, 1
lbl_802D4554:
/* 802D4554 002D1494 88 9F 00 00 */ lbz r4, 0(r31)
/* 802D4558 002D1498 7C 80 07 75 */ extsb. r0, r4
/* 802D455C 002D149C 41 82 00 10 */ beq lbl_802D456C
/* 802D4560 002D14A0 7C 80 07 74 */ extsb r0, r4
/* 802D4564 002D14A4 2C 00 00 2F */ cmpwi r0, 0x2f
/* 802D4568 002D14A8 40 82 FF B8 */ bne lbl_802D4520
lbl_802D456C:
/* 802D456C 002D14AC 38 00 00 00 */ li r0, 0
/* 802D4570 002D14B0 98 1D 00 00 */ stb r0, 0(r29)
/* 802D4574 002D14B4 88 1F 00 00 */ lbz r0, 0(r31)
/* 802D4578 002D14B8 7C 00 07 75 */ extsb. r0, r0
/* 802D457C 002D14BC 40 82 00 08 */ bne lbl_802D4584
/* 802D4580 002D14C0 3B ED 83 40 */ addi r31, r13, lbl_804508C0-_SDA_BASE_
lbl_802D4584:
/* 802D4584 002D14C4 7F E3 FB 78 */ mr r3, r31
lbl_802D4588:
/* 802D4588 002D14C8 39 61 00 20 */ addi r11, r1, 0x20
/* 802D458C 002D14CC 48 08 DC 9D */ bl _restgpr_29
/* 802D4590 002D14D0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D4594 002D14D4 7C 08 03 A6 */ mtlr r0
/* 802D4598 002D14D8 38 21 00 20 */ addi r1, r1, 0x20
/* 802D459C 002D14DC 4E 80 00 20 */ blr
.global __sinit_JKRFileLoader_cpp
__sinit_JKRFileLoader_cpp:
/* 802D45A0 002D14E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D45A4 002D14E4 7C 08 02 A6 */ mflr r0
/* 802D45A8 002D14E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D45AC 002D14EC 3C 60 80 43 */ lis r3, lbl_80434354@ha
/* 802D45B0 002D14F0 38 63 43 54 */ addi r3, r3, lbl_80434354@l
/* 802D45B4 002D14F4 48 00 79 61 */ bl initiate__10JSUPtrListFv
/* 802D45B8 002D14F8 3C 60 80 43 */ lis r3, lbl_80434354@ha
/* 802D45BC 002D14FC 38 63 43 54 */ addi r3, r3, lbl_80434354@l
.global JSUList_NS_dtor_X6_
/* 802D45C0 002D1500 3C 80 80 2D */ lis r4, JSUList_NS_dtor_X6_@ha
.global JSUList_NS_dtor_X6_
/* 802D45C4 002D1504 38 84 45 E4 */ addi r4, r4, JSUList_NS_dtor_X6_@l
/* 802D45C8 002D1508 3C A0 80 43 */ lis r5, lbl_80434348@ha
/* 802D45CC 002D150C 38 A5 43 48 */ addi r5, r5, lbl_80434348@l
/* 802D45D0 002D1510 48 08 D6 55 */ bl func_80361C24
/* 802D45D4 002D1514 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D45D8 002D1518 7C 08 03 A6 */ mtlr r0
/* 802D45DC 002D151C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D45E0 002D1520 4E 80 00 20 */ blr
.global JSUList_NS_dtor_X6_
JSUList_NS_dtor_X6_:
/* 802D45E4 002D1524 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D45E8 002D1528 7C 08 02 A6 */ mflr r0
/* 802D45EC 002D152C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D45F0 002D1530 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D45F4 002D1534 93 C1 00 08 */ stw r30, 8(r1)
/* 802D45F8 002D1538 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D45FC 002D153C 7C 9F 23 78 */ mr r31, r4
/* 802D4600 002D1540 41 82 00 1C */ beq lbl_802D461C
/* 802D4604 002D1544 38 80 00 00 */ li r4, 0
/* 802D4608 002D1548 48 00 78 A5 */ bl __dt__10JSUPtrListFv
/* 802D460C 002D154C 7F E0 07 35 */ extsh. r0, r31
/* 802D4610 002D1550 40 81 00 0C */ ble lbl_802D461C
/* 802D4614 002D1554 7F C3 F3 78 */ mr r3, r30
/* 802D4618 002D1558 4B FF A7 25 */ bl __dl__FPv
lbl_802D461C:
/* 802D461C 002D155C 7F C3 F3 78 */ mr r3, r30
/* 802D4620 002D1560 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D4624 002D1564 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D4628 002D1568 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D462C 002D156C 7C 08 03 A6 */ mtlr r0
/* 802D4630 002D1570 38 21 00 10 */ addi r1, r1, 0x10
/* 802D4634 002D1574 4E 80 00 20 */ blr