Files
tp/include/JSystem/JKernel/JKRDvdArchive/asm/func_802D8168.s
T
Jonathan Wase 86f892c3d3 JKernel (#20)
* JKRDvdArchive.s split

* JKRMemArchive.s split

* JKRAramArchive.s split

* JKRCompArchive.s split

* JKRDecomp.s split

* JKRDvdRipper.s split

* JKRAramBlock.s split

* JKRAramHeap.s split

* JKRAramPiece.s split

* JKRAramStream.s split

* removed unused .s files

* JKRDvdAramRipper.s split

* JKRAram.s split

* cleanup and making vtables easier to debug

* fixed merge errors

* fixed JKRFileLoader::fetchVolumeName

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-06 15:02:25 -05:00

76 lines
3.7 KiB
ArmAsm

/* fetchResource__13JKRDvdArchiveFPvUlPQ210JKRArchive12SDIFileEntryPUl __ct__13JKRDvdArchiveFlQ210JKRArchive15EMountDirection::fetchResource(void *, unsigned long, JKRArchive::SDIFileEntry *, unsigned long *) */
/* missing reference */
/* 802D8168 002D50A8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D816C 002D50AC 7C 08 02 A6 */ mflr r0
/* 802D8170 002D50B0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D8174 002D50B4 39 61 00 20 */ addi r11, r1, 0x20
/* 802D8178 002D50B8 48 08 A0 5D */ bl _savegpr_27
/* 802D817C 002D50BC 7C 69 1B 78 */ mr r9, r3
/* 802D8180 002D50C0 7C 9B 23 78 */ mr r27, r4
/* 802D8184 002D50C4 7C BC 2B 78 */ mr r28, r5
/* 802D8188 002D50C8 7C DD 33 78 */ mr r29, r6
/* 802D818C 002D50CC 7C FE 3B 78 */ mr r30, r7
/* 802D8190 002D50D0 80 A6 00 0C */ lwz r5, 0xc(r6)
/* 802D8194 002D50D4 7C BF 2B 78 */ mr r31, r5
/* 802D8198 002D50D8 80 06 00 04 */ lwz r0, 4(r6)
/* 802D819C 002D50DC 54 03 46 3E */ srwi r3, r0, 0x18
/* 802D81A0 002D50E0 54 00 47 7B */ rlwinm. r0, r0, 8, 0x1d, 0x1d
/* 802D81A4 002D50E4 40 82 00 0C */ bne lbl_802D81B0
/* 802D81A8 002D50E8 39 00 00 00 */ li r8, 0
/* 802D81AC 002D50EC 48 00 00 18 */ b lbl_802D81C4
lbl_802D81B0:
/* 802D81B0 002D50F0 54 60 06 31 */ rlwinm. r0, r3, 0, 0x18, 0x18
/* 802D81B4 002D50F4 41 82 00 0C */ beq lbl_802D81C0
/* 802D81B8 002D50F8 39 00 00 02 */ li r8, 2
/* 802D81BC 002D50FC 48 00 00 08 */ b lbl_802D81C4
lbl_802D81C0:
/* 802D81C0 002D5100 39 00 00 01 */ li r8, 1
lbl_802D81C4:
/* 802D81C4 002D5104 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 802D81C8 002D5108 28 00 00 00 */ cmplwi r0, 0
/* 802D81CC 002D510C 40 82 00 30 */ bne lbl_802D81FC
/* 802D81D0 002D5110 57 9C 00 34 */ rlwinm r28, r28, 0, 0, 0x1a
/* 802D81D4 002D5114 80 69 00 40 */ lwz r3, 0x40(r9)
/* 802D81D8 002D5118 80 89 00 64 */ lwz r4, 0x64(r9)
/* 802D81DC 002D511C 80 1D 00 08 */ lwz r0, 8(r29)
/* 802D81E0 002D5120 7C 84 02 14 */ add r4, r4, r0
/* 802D81E4 002D5124 7F 66 DB 78 */ mr r6, r27
/* 802D81E8 002D5128 7F 87 E3 78 */ mr r7, r28
/* 802D81EC 002D512C 81 29 00 5C */ lwz r9, 0x5c(r9)
/* 802D81F0 002D5130 48 00 00 7D */ bl fetchResource_subroutine__13JKRDvdArchiveFlUlUlPUcUlii
/* 802D81F4 002D5134 7C 7F 1B 78 */ mr r31, r3
/* 802D81F8 002D5138 48 00 00 4C */ b lbl_802D8244
lbl_802D81FC:
/* 802D81FC 002D513C 2C 08 00 02 */ cmpwi r8, 2
/* 802D8200 002D5140 40 82 00 28 */ bne lbl_802D8228
/* 802D8204 002D5144 7D 23 4B 78 */ mr r3, r9
/* 802D8208 002D5148 7F A4 EB 78 */ mr r4, r29
/* 802D820C 002D514C 81 89 00 00 */ lwz r12, 0(r9)
/* 802D8210 002D5150 81 8C 00 4C */ lwz r12, 0x4c(r12)
/* 802D8214 002D5154 7D 89 03 A6 */ mtctr r12
/* 802D8218 002D5158 4E 80 04 21 */ bctrl
/* 802D821C 002D515C 28 03 00 00 */ cmplwi r3, 0
/* 802D8220 002D5160 41 82 00 08 */ beq lbl_802D8228
/* 802D8224 002D5164 7C 7F 1B 78 */ mr r31, r3
lbl_802D8228:
/* 802D8228 002D5168 7C 1F E0 40 */ cmplw r31, r28
/* 802D822C 002D516C 40 81 00 08 */ ble lbl_802D8234
/* 802D8230 002D5170 7F 9F E3 78 */ mr r31, r28
lbl_802D8234:
/* 802D8234 002D5174 7F 63 DB 78 */ mr r3, r27
/* 802D8238 002D5178 80 9D 00 10 */ lwz r4, 0x10(r29)
/* 802D823C 002D517C 7F E5 FB 78 */ mr r5, r31
/* 802D8240 002D5180 4B FF 68 D9 */ bl copyMemory__7JKRHeapFPvPvUl
lbl_802D8244:
/* 802D8244 002D5184 28 1E 00 00 */ cmplwi r30, 0
/* 802D8248 002D5188 41 82 00 08 */ beq lbl_802D8250
/* 802D824C 002D518C 93 FE 00 00 */ stw r31, 0(r30)
lbl_802D8250:
/* 802D8250 002D5190 7F 63 DB 78 */ mr r3, r27
/* 802D8254 002D5194 39 61 00 20 */ addi r11, r1, 0x20
/* 802D8258 002D5198 48 08 9F C9 */ bl _restgpr_27
/* 802D825C 002D519C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D8260 002D51A0 7C 08 03 A6 */ mtlr r0
/* 802D8264 002D51A4 38 21 00 20 */ addi r1, r1, 0x20
/* 802D8268 002D51A8 4E 80 00 20 */ blr