Files
tp/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAE48.s
T
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

60 lines
2.9 KiB
ArmAsm

/* syncAram__16JKRDvdAramRipperFP12JKRADCommandi JKRDvdAramRipper::syncAram(JKRADCommand *, int) */
/* JKRDvdAramRipper_NS_syncAram */
/* 802DAE48 002D7D88 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802DAE4C 002D7D8C 7C 08 02 A6 */ mflr r0
/* 802DAE50 002D7D90 90 01 00 24 */ stw r0, 0x24(r1)
/* 802DAE54 002D7D94 39 61 00 20 */ addi r11, r1, 0x20
/* 802DAE58 002D7D98 48 08 73 85 */ bl _savegpr_29
/* 802DAE5C 002D7D9C 7C 7D 1B 78 */ mr r29, r3
/* 802DAE60 002D7DA0 7C 9E 23 78 */ mr r30, r4
/* 802DAE64 002D7DA4 83 E3 00 28 */ lwz r31, 0x28(r3)
/* 802DAE68 002D7DA8 38 7F 00 34 */ addi r3, r31, 0x34
/* 802DAE6C 002D7DAC 48 06 41 D5 */ bl OSLockMutex
/* 802DAE70 002D7DB0 80 7D 00 50 */ lwz r3, 0x50(r29)
/* 802DAE74 002D7DB4 28 03 00 00 */ cmplwi r3, 0
/* 802DAE78 002D7DB8 41 82 00 38 */ beq lbl_802DAEB0
/* 802DAE7C 002D7DBC 7F C4 F3 78 */ mr r4, r30
/* 802DAE80 002D7DC0 4B FF 91 21 */ bl sync__13JKRAramStreamFP20JKRAramStreamCommandi
/* 802DAE84 002D7DC4 30 03 FF FF */ addic r0, r3, -1
/* 802DAE88 002D7DC8 7C 00 01 10 */ subfe r0, r0, r0
/* 802DAE8C 002D7DCC 90 1D 00 48 */ stw r0, 0x48(r29)
/* 802DAE90 002D7DD0 2C 1E 00 00 */ cmpwi r30, 0
/* 802DAE94 002D7DD4 41 82 00 1C */ beq lbl_802DAEB0
/* 802DAE98 002D7DD8 28 03 00 00 */ cmplwi r3, 0
/* 802DAE9C 002D7DDC 40 82 00 14 */ bne lbl_802DAEB0
/* 802DAEA0 002D7DE0 38 7F 00 34 */ addi r3, r31, 0x34
/* 802DAEA4 002D7DE4 48 06 42 79 */ bl OSUnlockMutex
/* 802DAEA8 002D7DE8 38 60 00 00 */ li r3, 0
/* 802DAEAC 002D7DEC 48 00 00 58 */ b lbl_802DAF04
lbl_802DAEB0:
/* 802DAEB0 002D7DF0 3C 60 80 43 */ lis r3, lbl_804343B4@ha
/* 802DAEB4 002D7DF4 38 63 43 B4 */ addi r3, r3, lbl_804343B4@l
/* 802DAEB8 002D7DF8 7F A4 EB 78 */ mr r4, r29
/* 802DAEBC 002D7DFC 48 00 12 A1 */ bl remove__10JSUPtrListFP10JSUPtrLink
/* 802DAEC0 002D7E00 80 7D 00 50 */ lwz r3, 0x50(r29)
/* 802DAEC4 002D7E04 28 03 00 00 */ cmplwi r3, 0
/* 802DAEC8 002D7E08 41 82 00 08 */ beq lbl_802DAED0
/* 802DAECC 002D7E0C 4B FF 3E 71 */ bl __dl__FPv
lbl_802DAED0:
/* 802DAED0 002D7E10 80 7F 00 54 */ lwz r3, 0x54(r31)
/* 802DAED4 002D7E14 28 03 00 00 */ cmplwi r3, 0
/* 802DAED8 002D7E18 41 82 00 18 */ beq lbl_802DAEF0
/* 802DAEDC 002D7E1C 38 80 00 01 */ li r4, 1
/* 802DAEE0 002D7E20 81 83 00 00 */ lwz r12, 0(r3)
/* 802DAEE4 002D7E24 81 8C 00 08 */ lwz r12, 8(r12)
/* 802DAEE8 002D7E28 7D 89 03 A6 */ mtctr r12
/* 802DAEEC 002D7E2C 4E 80 04 21 */ bctrl
lbl_802DAEF0:
/* 802DAEF0 002D7E30 38 00 00 00 */ li r0, 0
/* 802DAEF4 002D7E34 90 1F 00 50 */ stw r0, 0x50(r31)
/* 802DAEF8 002D7E38 38 7F 00 34 */ addi r3, r31, 0x34
/* 802DAEFC 002D7E3C 48 06 42 21 */ bl OSUnlockMutex
/* 802DAF00 002D7E40 38 60 00 01 */ li r3, 1
lbl_802DAF04:
/* 802DAF04 002D7E44 39 61 00 20 */ addi r11, r1, 0x20
/* 802DAF08 002D7E48 48 08 73 21 */ bl _restgpr_29
/* 802DAF0C 002D7E4C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802DAF10 002D7E50 7C 08 03 A6 */ mtlr r0
/* 802DAF14 002D7E54 38 21 00 20 */ addi r1, r1, 0x20
/* 802DAF18 002D7E58 4E 80 00 20 */ blr