mirror of https://github.com/zeldaret/tp.git
934 lines
42 KiB
ArmAsm
934 lines
42 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 803484f0
|
|
|
|
|
|
.global __DVDFSInit
|
|
__DVDFSInit:
|
|
/* 803484F0 00345430 3C 60 80 00 */ lis r3, 0x80000038@ha
|
|
/* 803484F4 00345434 90 6D 91 D8 */ stw r3, lbl_80451758-_SDA_BASE_(r13)
|
|
/* 803484F8 00345438 80 03 00 38 */ lwz r0, 0x80000038@l(r3)
|
|
/* 803484FC 0034543C 90 0D 91 DC */ stw r0, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348500 00345440 80 6D 91 DC */ lwz r3, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348504 00345444 28 03 00 00 */ cmplwi r3, 0
|
|
/* 80348508 00345448 4D 82 00 20 */ beqlr
|
|
/* 8034850C 0034544C 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 80348510 00345450 90 0D 91 E4 */ stw r0, lbl_80451764-_SDA_BASE_(r13)
|
|
/* 80348514 00345454 80 0D 91 E4 */ lwz r0, lbl_80451764-_SDA_BASE_(r13)
|
|
/* 80348518 00345458 1C 00 00 0C */ mulli r0, r0, 0xc
|
|
/* 8034851C 0034545C 7C 03 02 14 */ add r0, r3, r0
|
|
/* 80348520 00345460 90 0D 91 E0 */ stw r0, lbl_80451760-_SDA_BASE_(r13)
|
|
/* 80348524 00345464 4E 80 00 20 */ blr
|
|
|
|
.global DVDConvertPathToEntrynum
|
|
DVDConvertPathToEntrynum:
|
|
/* 80348528 00345468 7C 08 02 A6 */ mflr r0
|
|
/* 8034852C 0034546C 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348530 00345470 94 21 FF B8 */ stwu r1, -0x48(r1)
|
|
/* 80348534 00345474 BE 81 00 18 */ stmw r20, 0x18(r1)
|
|
/* 80348538 00345478 7C 77 1B 78 */ mr r23, r3
|
|
/* 8034853C 0034547C 3C 60 80 3D */ lis r3, lbl_803D1380@ha
|
|
/* 80348540 00345480 3B 37 00 00 */ addi r25, r23, 0
|
|
/* 80348544 00345484 3B E3 13 80 */ addi r31, r3, lbl_803D1380@l
|
|
/* 80348548 00345488 83 4D 91 E8 */ lwz r26, lbl_80451768-_SDA_BASE_(r13)
|
|
lbl_8034854C:
|
|
/* 8034854C 0034548C 88 77 00 00 */ lbz r3, 0(r23)
|
|
/* 80348550 00345490 7C 60 07 75 */ extsb. r0, r3
|
|
/* 80348554 00345494 40 82 00 0C */ bne lbl_80348560
|
|
/* 80348558 00345498 7F 43 D3 78 */ mr r3, r26
|
|
/* 8034855C 0034549C 48 00 02 AC */ b lbl_80348808
|
|
lbl_80348560:
|
|
/* 80348560 003454A0 7C 60 07 74 */ extsb r0, r3
|
|
/* 80348564 003454A4 2C 00 00 2F */ cmpwi r0, 0x2f
|
|
/* 80348568 003454A8 40 82 00 10 */ bne lbl_80348578
|
|
/* 8034856C 003454AC 3B 40 00 00 */ li r26, 0
|
|
/* 80348570 003454B0 3A F7 00 01 */ addi r23, r23, 1
|
|
/* 80348574 003454B4 4B FF FF D8 */ b lbl_8034854C
|
|
lbl_80348578:
|
|
/* 80348578 003454B8 2C 00 00 2E */ cmpwi r0, 0x2e
|
|
/* 8034857C 003454BC 40 82 00 74 */ bne lbl_803485F0
|
|
/* 80348580 003454C0 88 77 00 01 */ lbz r3, 1(r23)
|
|
/* 80348584 003454C4 7C 60 07 74 */ extsb r0, r3
|
|
/* 80348588 003454C8 2C 00 00 2E */ cmpwi r0, 0x2e
|
|
/* 8034858C 003454CC 40 82 00 44 */ bne lbl_803485D0
|
|
/* 80348590 003454D0 88 77 00 02 */ lbz r3, 2(r23)
|
|
/* 80348594 003454D4 2C 03 00 2F */ cmpwi r3, 0x2f
|
|
/* 80348598 003454D8 40 82 00 1C */ bne lbl_803485B4
|
|
/* 8034859C 003454DC 1C 7A 00 0C */ mulli r3, r26, 0xc
|
|
/* 803485A0 003454E0 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803485A4 003454E4 38 03 00 04 */ addi r0, r3, 4
|
|
/* 803485A8 003454E8 7F 44 00 2E */ lwzx r26, r4, r0
|
|
/* 803485AC 003454EC 3A F7 00 03 */ addi r23, r23, 3
|
|
/* 803485B0 003454F0 4B FF FF 9C */ b lbl_8034854C
|
|
lbl_803485B4:
|
|
/* 803485B4 003454F4 7C 60 07 75 */ extsb. r0, r3
|
|
/* 803485B8 003454F8 40 82 00 38 */ bne lbl_803485F0
|
|
/* 803485BC 003454FC 1C 1A 00 0C */ mulli r0, r26, 0xc
|
|
/* 803485C0 00345500 80 6D 91 DC */ lwz r3, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803485C4 00345504 7C 63 02 14 */ add r3, r3, r0
|
|
/* 803485C8 00345508 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 803485CC 0034550C 48 00 02 3C */ b lbl_80348808
|
|
lbl_803485D0:
|
|
/* 803485D0 00345510 2C 00 00 2F */ cmpwi r0, 0x2f
|
|
/* 803485D4 00345514 40 82 00 0C */ bne lbl_803485E0
|
|
/* 803485D8 00345518 3A F7 00 02 */ addi r23, r23, 2
|
|
/* 803485DC 0034551C 4B FF FF 70 */ b lbl_8034854C
|
|
lbl_803485E0:
|
|
/* 803485E0 00345520 7C 60 07 75 */ extsb. r0, r3
|
|
/* 803485E4 00345524 40 82 00 0C */ bne lbl_803485F0
|
|
/* 803485E8 00345528 7F 43 D3 78 */ mr r3, r26
|
|
/* 803485EC 0034552C 48 00 02 1C */ b lbl_80348808
|
|
lbl_803485F0:
|
|
/* 803485F0 00345530 80 0D 91 EC */ lwz r0, lbl_8045176C-_SDA_BASE_(r13)
|
|
/* 803485F4 00345534 28 00 00 00 */ cmplwi r0, 0
|
|
/* 803485F8 00345538 40 82 00 AC */ bne lbl_803486A4
|
|
/* 803485FC 0034553C 3B 97 00 00 */ addi r28, r23, 0
|
|
/* 80348600 00345540 38 A0 00 00 */ li r5, 0
|
|
/* 80348604 00345544 38 80 00 00 */ li r4, 0
|
|
/* 80348608 00345548 48 00 00 48 */ b lbl_80348650
|
|
lbl_8034860C:
|
|
/* 8034860C 0034554C 7C 60 07 74 */ extsb r0, r3
|
|
/* 80348610 00345550 2C 00 00 2E */ cmpwi r0, 0x2e
|
|
/* 80348614 00345554 40 82 00 2C */ bne lbl_80348640
|
|
/* 80348618 00345558 7C 17 E0 50 */ subf r0, r23, r28
|
|
/* 8034861C 0034555C 2C 00 00 08 */ cmpwi r0, 8
|
|
/* 80348620 00345560 41 81 00 0C */ bgt lbl_8034862C
|
|
/* 80348624 00345564 2C 05 00 01 */ cmpwi r5, 1
|
|
/* 80348628 00345568 40 82 00 0C */ bne lbl_80348634
|
|
lbl_8034862C:
|
|
/* 8034862C 0034556C 38 80 00 01 */ li r4, 1
|
|
/* 80348630 00345570 48 00 00 38 */ b lbl_80348668
|
|
lbl_80348634:
|
|
/* 80348634 00345574 3B 1C 00 01 */ addi r24, r28, 1
|
|
/* 80348638 00345578 38 A0 00 01 */ li r5, 1
|
|
/* 8034863C 0034557C 48 00 00 10 */ b lbl_8034864C
|
|
lbl_80348640:
|
|
/* 80348640 00345580 2C 00 00 20 */ cmpwi r0, 0x20
|
|
/* 80348644 00345584 40 82 00 08 */ bne lbl_8034864C
|
|
/* 80348648 00345588 38 80 00 01 */ li r4, 1
|
|
lbl_8034864C:
|
|
/* 8034864C 0034558C 3B 9C 00 01 */ addi r28, r28, 1
|
|
lbl_80348650:
|
|
/* 80348650 00345590 88 7C 00 00 */ lbz r3, 0(r28)
|
|
/* 80348654 00345594 7C 60 07 75 */ extsb. r0, r3
|
|
/* 80348658 00345598 41 82 00 10 */ beq lbl_80348668
|
|
/* 8034865C 0034559C 7C 60 07 74 */ extsb r0, r3
|
|
/* 80348660 003455A0 2C 00 00 2F */ cmpwi r0, 0x2f
|
|
/* 80348664 003455A4 40 82 FF A8 */ bne lbl_8034860C
|
|
lbl_80348668:
|
|
/* 80348668 003455A8 2C 05 00 01 */ cmpwi r5, 1
|
|
/* 8034866C 003455AC 40 82 00 14 */ bne lbl_80348680
|
|
/* 80348670 003455B0 7C 18 E0 50 */ subf r0, r24, r28
|
|
/* 80348674 003455B4 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 80348678 003455B8 40 81 00 08 */ ble lbl_80348680
|
|
/* 8034867C 003455BC 38 80 00 01 */ li r4, 1
|
|
lbl_80348680:
|
|
/* 80348680 003455C0 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 80348684 003455C4 41 82 00 44 */ beq lbl_803486C8
|
|
/* 80348688 003455C8 38 BF 00 00 */ addi r5, r31, 0
|
|
/* 8034868C 003455CC 4C C6 31 82 */ crclr 6
|
|
/* 80348690 003455D0 38 D9 00 00 */ addi r6, r25, 0
|
|
/* 80348694 003455D4 38 6D 84 60 */ addi r3, r13, lbl_804509E0-_SDA_BASE_
|
|
/* 80348698 003455D8 38 80 01 83 */ li r4, 0x183
|
|
/* 8034869C 003455DC 4B CB E7 E1 */ bl OSPanic
|
|
/* 803486A0 003455E0 48 00 00 28 */ b lbl_803486C8
|
|
lbl_803486A4:
|
|
/* 803486A4 003455E4 7E FC BB 78 */ mr r28, r23
|
|
/* 803486A8 003455E8 48 00 00 08 */ b lbl_803486B0
|
|
lbl_803486AC:
|
|
/* 803486AC 003455EC 3B 9C 00 01 */ addi r28, r28, 1
|
|
lbl_803486B0:
|
|
/* 803486B0 003455F0 88 7C 00 00 */ lbz r3, 0(r28)
|
|
/* 803486B4 003455F4 7C 60 07 75 */ extsb. r0, r3
|
|
/* 803486B8 003455F8 41 82 00 10 */ beq lbl_803486C8
|
|
/* 803486BC 003455FC 7C 60 07 74 */ extsb r0, r3
|
|
/* 803486C0 00345600 2C 00 00 2F */ cmpwi r0, 0x2f
|
|
/* 803486C4 00345604 40 82 FF E8 */ bne lbl_803486AC
|
|
lbl_803486C8:
|
|
/* 803486C8 00345608 88 1C 00 00 */ lbz r0, 0(r28)
|
|
/* 803486CC 0034560C 7C 00 07 75 */ extsb. r0, r0
|
|
/* 803486D0 00345610 40 82 00 0C */ bne lbl_803486DC
|
|
/* 803486D4 00345614 3B C0 00 00 */ li r30, 0
|
|
/* 803486D8 00345618 48 00 00 08 */ b lbl_803486E0
|
|
lbl_803486DC:
|
|
/* 803486DC 0034561C 3B C0 00 01 */ li r30, 1
|
|
lbl_803486E0:
|
|
/* 803486E0 00345620 1F BA 00 0C */ mulli r29, r26, 0xc
|
|
/* 803486E4 00345624 7F 77 E0 50 */ subf r27, r23, r28
|
|
/* 803486E8 00345628 3B 5A 00 01 */ addi r26, r26, 1
|
|
/* 803486EC 0034562C 48 00 00 E4 */ b lbl_803487D0
|
|
lbl_803486F0:
|
|
/* 803486F0 00345630 1F 9A 00 0C */ mulli r28, r26, 0xc
|
|
/* 803486F4 00345634 7C 83 E0 2E */ lwzx r4, r3, r28
|
|
/* 803486F8 00345638 54 80 00 0F */ rlwinm. r0, r4, 0, 0, 7
|
|
/* 803486FC 0034563C 40 82 00 0C */ bne lbl_80348708
|
|
/* 80348700 00345640 38 00 00 00 */ li r0, 0
|
|
/* 80348704 00345644 48 00 00 08 */ b lbl_8034870C
|
|
lbl_80348708:
|
|
/* 80348708 00345648 38 00 00 01 */ li r0, 1
|
|
lbl_8034870C:
|
|
/* 8034870C 0034564C 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348710 00345650 40 82 00 0C */ bne lbl_8034871C
|
|
/* 80348714 00345654 2C 1E 00 01 */ cmpwi r30, 1
|
|
/* 80348718 00345658 41 82 00 80 */ beq lbl_80348798
|
|
lbl_8034871C:
|
|
/* 8034871C 0034565C 80 6D 91 E0 */ lwz r3, lbl_80451760-_SDA_BASE_(r13)
|
|
/* 80348720 00345660 54 80 02 3E */ clrlwi r0, r4, 8
|
|
/* 80348724 00345664 3A B7 00 00 */ addi r21, r23, 0
|
|
/* 80348728 00345668 7E 83 02 14 */ add r20, r3, r0
|
|
/* 8034872C 0034566C 48 00 00 38 */ b lbl_80348764
|
|
lbl_80348730:
|
|
/* 80348730 00345670 88 14 00 00 */ lbz r0, 0(r20)
|
|
/* 80348734 00345674 3A 94 00 01 */ addi r20, r20, 1
|
|
/* 80348738 00345678 7C 03 07 74 */ extsb r3, r0
|
|
/* 8034873C 0034567C 48 01 CD 35 */ bl func_80365470
|
|
/* 80348740 00345680 88 15 00 00 */ lbz r0, 0(r21)
|
|
/* 80348744 00345684 3A C3 00 00 */ addi r22, r3, 0
|
|
/* 80348748 00345688 3A B5 00 01 */ addi r21, r21, 1
|
|
/* 8034874C 0034568C 7C 03 07 74 */ extsb r3, r0
|
|
/* 80348750 00345690 48 01 CD 21 */ bl func_80365470
|
|
/* 80348754 00345694 7C 03 B0 00 */ cmpw r3, r22
|
|
/* 80348758 00345698 41 82 00 0C */ beq lbl_80348764
|
|
/* 8034875C 0034569C 38 00 00 00 */ li r0, 0
|
|
/* 80348760 003456A0 48 00 00 30 */ b lbl_80348790
|
|
lbl_80348764:
|
|
/* 80348764 003456A4 88 14 00 00 */ lbz r0, 0(r20)
|
|
/* 80348768 003456A8 7C 00 07 75 */ extsb. r0, r0
|
|
/* 8034876C 003456AC 40 82 FF C4 */ bne lbl_80348730
|
|
/* 80348770 003456B0 88 75 00 00 */ lbz r3, 0(r21)
|
|
/* 80348774 003456B4 2C 03 00 2F */ cmpwi r3, 0x2f
|
|
/* 80348778 003456B8 41 82 00 0C */ beq lbl_80348784
|
|
/* 8034877C 003456BC 7C 60 07 75 */ extsb. r0, r3
|
|
/* 80348780 003456C0 40 82 00 0C */ bne lbl_8034878C
|
|
lbl_80348784:
|
|
/* 80348784 003456C4 38 00 00 01 */ li r0, 1
|
|
/* 80348788 003456C8 48 00 00 08 */ b lbl_80348790
|
|
lbl_8034878C:
|
|
/* 8034878C 003456CC 38 00 00 00 */ li r0, 0
|
|
lbl_80348790:
|
|
/* 80348790 003456D0 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 80348794 003456D4 41 82 00 58 */ beq lbl_803487EC
|
|
lbl_80348798:
|
|
/* 80348798 003456D8 80 0D 91 DC */ lwz r0, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 8034879C 003456DC 7C 60 E2 14 */ add r3, r0, r28
|
|
/* 803487A0 003456E0 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 803487A4 003456E4 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 803487A8 003456E8 40 82 00 0C */ bne lbl_803487B4
|
|
/* 803487AC 003456EC 38 00 00 00 */ li r0, 0
|
|
/* 803487B0 003456F0 48 00 00 08 */ b lbl_803487B8
|
|
lbl_803487B4:
|
|
/* 803487B4 003456F4 38 00 00 01 */ li r0, 1
|
|
lbl_803487B8:
|
|
/* 803487B8 003456F8 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 803487BC 003456FC 41 82 00 0C */ beq lbl_803487C8
|
|
/* 803487C0 00345700 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 803487C4 00345704 48 00 00 08 */ b lbl_803487CC
|
|
lbl_803487C8:
|
|
/* 803487C8 00345708 38 1A 00 01 */ addi r0, r26, 1
|
|
lbl_803487CC:
|
|
/* 803487CC 0034570C 7C 1A 03 78 */ mr r26, r0
|
|
lbl_803487D0:
|
|
/* 803487D0 00345710 80 6D 91 DC */ lwz r3, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803487D4 00345714 38 03 00 08 */ addi r0, r3, 8
|
|
/* 803487D8 00345718 7C 1D 00 2E */ lwzx r0, r29, r0
|
|
/* 803487DC 0034571C 7C 1A 00 40 */ cmplw r26, r0
|
|
/* 803487E0 00345720 41 80 FF 10 */ blt lbl_803486F0
|
|
/* 803487E4 00345724 38 60 FF FF */ li r3, -1
|
|
/* 803487E8 00345728 48 00 00 20 */ b lbl_80348808
|
|
lbl_803487EC:
|
|
/* 803487EC 0034572C 2C 1E 00 00 */ cmpwi r30, 0
|
|
/* 803487F0 00345730 40 82 00 0C */ bne lbl_803487FC
|
|
/* 803487F4 00345734 7F 43 D3 78 */ mr r3, r26
|
|
/* 803487F8 00345738 48 00 00 10 */ b lbl_80348808
|
|
lbl_803487FC:
|
|
/* 803487FC 0034573C 7E FB BA 14 */ add r23, r27, r23
|
|
/* 80348800 00345740 3A F7 00 01 */ addi r23, r23, 1
|
|
/* 80348804 00345744 4B FF FD 48 */ b lbl_8034854C
|
|
lbl_80348808:
|
|
/* 80348808 00345748 BA 81 00 18 */ lmw r20, 0x18(r1)
|
|
/* 8034880C 0034574C 80 01 00 4C */ lwz r0, 0x4c(r1)
|
|
/* 80348810 00345750 38 21 00 48 */ addi r1, r1, 0x48
|
|
/* 80348814 00345754 7C 08 03 A6 */ mtlr r0
|
|
/* 80348818 00345758 4E 80 00 20 */ blr
|
|
|
|
.global DVDFastOpen
|
|
DVDFastOpen:
|
|
/* 8034881C 0034575C 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80348820 00345760 41 80 00 38 */ blt lbl_80348858
|
|
/* 80348824 00345764 80 0D 91 E4 */ lwz r0, lbl_80451764-_SDA_BASE_(r13)
|
|
/* 80348828 00345768 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034882C 0034576C 40 80 00 2C */ bge lbl_80348858
|
|
/* 80348830 00345770 1C C3 00 0C */ mulli r6, r3, 0xc
|
|
/* 80348834 00345774 80 6D 91 DC */ lwz r3, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348838 00345778 7C 03 30 2E */ lwzx r0, r3, r6
|
|
/* 8034883C 0034577C 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80348840 00345780 40 82 00 0C */ bne lbl_8034884C
|
|
/* 80348844 00345784 38 00 00 00 */ li r0, 0
|
|
/* 80348848 00345788 48 00 00 08 */ b lbl_80348850
|
|
lbl_8034884C:
|
|
/* 8034884C 0034578C 38 00 00 01 */ li r0, 1
|
|
lbl_80348850:
|
|
/* 80348850 00345790 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348854 00345794 41 82 00 0C */ beq lbl_80348860
|
|
lbl_80348858:
|
|
/* 80348858 00345798 38 60 00 00 */ li r3, 0
|
|
/* 8034885C 0034579C 4E 80 00 20 */ blr
|
|
lbl_80348860:
|
|
/* 80348860 003457A0 7C 63 32 14 */ add r3, r3, r6
|
|
/* 80348864 003457A4 80 A3 00 04 */ lwz r5, 4(r3)
|
|
/* 80348868 003457A8 38 00 00 00 */ li r0, 0
|
|
/* 8034886C 003457AC 38 60 00 01 */ li r3, 1
|
|
/* 80348870 003457B0 90 A4 00 30 */ stw r5, 0x30(r4)
|
|
/* 80348874 003457B4 80 AD 91 DC */ lwz r5, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348878 003457B8 7C A5 32 14 */ add r5, r5, r6
|
|
/* 8034887C 003457BC 80 A5 00 08 */ lwz r5, 8(r5)
|
|
/* 80348880 003457C0 90 A4 00 34 */ stw r5, 0x34(r4)
|
|
/* 80348884 003457C4 90 04 00 38 */ stw r0, 0x38(r4)
|
|
/* 80348888 003457C8 90 04 00 0C */ stw r0, 0xc(r4)
|
|
/* 8034888C 003457CC 4E 80 00 20 */ blr
|
|
|
|
.global DVDOpen
|
|
DVDOpen:
|
|
/* 80348890 003457D0 7C 08 02 A6 */ mflr r0
|
|
/* 80348894 003457D4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348898 003457D8 94 21 FF 68 */ stwu r1, -0x98(r1)
|
|
/* 8034889C 003457DC 93 E1 00 94 */ stw r31, 0x94(r1)
|
|
/* 803488A0 003457E0 3B E4 00 00 */ addi r31, r4, 0
|
|
/* 803488A4 003457E4 93 C1 00 90 */ stw r30, 0x90(r1)
|
|
/* 803488A8 003457E8 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 803488AC 003457EC 4B FF FC 7D */ bl DVDConvertPathToEntrynum
|
|
/* 803488B0 003457F0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 803488B4 003457F4 40 80 00 30 */ bge lbl_803488E4
|
|
/* 803488B8 003457F8 38 61 00 10 */ addi r3, r1, 0x10
|
|
/* 803488BC 003457FC 38 80 00 80 */ li r4, 0x80
|
|
/* 803488C0 00345800 48 00 03 71 */ bl DVDGetCurrentDir
|
|
/* 803488C4 00345804 3C 60 80 3D */ lis r3, lbl_803D1448@ha
|
|
/* 803488C8 00345808 4C C6 31 82 */ crclr 6
|
|
/* 803488CC 0034580C 38 63 14 48 */ addi r3, r3, lbl_803D1448@l
|
|
/* 803488D0 00345810 38 9E 00 00 */ addi r4, r30, 0
|
|
/* 803488D4 00345814 38 A1 00 10 */ addi r5, r1, 0x10
|
|
/* 803488D8 00345818 4B CB E1 E5 */ bl OSReport
|
|
/* 803488DC 0034581C 38 60 00 00 */ li r3, 0
|
|
/* 803488E0 00345820 48 00 00 60 */ b lbl_80348940
|
|
lbl_803488E4:
|
|
/* 803488E4 00345824 1C A3 00 0C */ mulli r5, r3, 0xc
|
|
/* 803488E8 00345828 80 6D 91 DC */ lwz r3, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803488EC 0034582C 7C 03 28 2E */ lwzx r0, r3, r5
|
|
/* 803488F0 00345830 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 803488F4 00345834 40 82 00 0C */ bne lbl_80348900
|
|
/* 803488F8 00345838 38 00 00 00 */ li r0, 0
|
|
/* 803488FC 0034583C 48 00 00 08 */ b lbl_80348904
|
|
lbl_80348900:
|
|
/* 80348900 00345840 38 00 00 01 */ li r0, 1
|
|
lbl_80348904:
|
|
/* 80348904 00345844 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348908 00345848 41 82 00 0C */ beq lbl_80348914
|
|
/* 8034890C 0034584C 38 60 00 00 */ li r3, 0
|
|
/* 80348910 00345850 48 00 00 30 */ b lbl_80348940
|
|
lbl_80348914:
|
|
/* 80348914 00345854 7C 63 2A 14 */ add r3, r3, r5
|
|
/* 80348918 00345858 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8034891C 0034585C 38 00 00 00 */ li r0, 0
|
|
/* 80348920 00345860 38 60 00 01 */ li r3, 1
|
|
/* 80348924 00345864 90 9F 00 30 */ stw r4, 0x30(r31)
|
|
/* 80348928 00345868 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 8034892C 0034586C 7C 84 2A 14 */ add r4, r4, r5
|
|
/* 80348930 00345870 80 84 00 08 */ lwz r4, 8(r4)
|
|
/* 80348934 00345874 90 9F 00 34 */ stw r4, 0x34(r31)
|
|
/* 80348938 00345878 90 1F 00 38 */ stw r0, 0x38(r31)
|
|
/* 8034893C 0034587C 90 1F 00 0C */ stw r0, 0xc(r31)
|
|
lbl_80348940:
|
|
/* 80348940 00345880 80 01 00 9C */ lwz r0, 0x9c(r1)
|
|
/* 80348944 00345884 83 E1 00 94 */ lwz r31, 0x94(r1)
|
|
/* 80348948 00345888 83 C1 00 90 */ lwz r30, 0x90(r1)
|
|
/* 8034894C 0034588C 38 21 00 98 */ addi r1, r1, 0x98
|
|
/* 80348950 00345890 7C 08 03 A6 */ mtlr r0
|
|
/* 80348954 00345894 4E 80 00 20 */ blr
|
|
|
|
.global DVDClose
|
|
DVDClose:
|
|
/* 80348958 00345898 7C 08 02 A6 */ mflr r0
|
|
/* 8034895C 0034589C 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348960 003458A0 94 21 FF F8 */ stwu r1, -8(r1)
|
|
/* 80348964 003458A4 48 00 2B ED */ bl DVDCancel
|
|
/* 80348968 003458A8 38 60 00 01 */ li r3, 1
|
|
/* 8034896C 003458AC 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 80348970 003458B0 38 21 00 08 */ addi r1, r1, 8
|
|
/* 80348974 003458B4 7C 08 03 A6 */ mtlr r0
|
|
/* 80348978 003458B8 4E 80 00 20 */ blr
|
|
|
|
.global entryToPath
|
|
entryToPath:
|
|
/* 8034897C 003458BC 7C 08 02 A6 */ mflr r0
|
|
/* 80348980 003458C0 28 03 00 00 */ cmplwi r3, 0
|
|
/* 80348984 003458C4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348988 003458C8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
|
/* 8034898C 003458CC 93 E1 00 2C */ stw r31, 0x2c(r1)
|
|
/* 80348990 003458D0 93 C1 00 28 */ stw r30, 0x28(r1)
|
|
/* 80348994 003458D4 3B C5 00 00 */ addi r30, r5, 0
|
|
/* 80348998 003458D8 93 A1 00 24 */ stw r29, 0x24(r1)
|
|
/* 8034899C 003458DC 3B A4 00 00 */ addi r29, r4, 0
|
|
/* 803489A0 003458E0 93 81 00 20 */ stw r28, 0x20(r1)
|
|
/* 803489A4 003458E4 40 82 00 0C */ bne lbl_803489B0
|
|
/* 803489A8 003458E8 38 60 00 00 */ li r3, 0
|
|
/* 803489AC 003458EC 48 00 01 10 */ b lbl_80348ABC
|
|
lbl_803489B0:
|
|
/* 803489B0 003458F0 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803489B4 003458F4 1C 63 00 0C */ mulli r3, r3, 0xc
|
|
/* 803489B8 003458F8 80 CD 91 E0 */ lwz r6, lbl_80451760-_SDA_BASE_(r13)
|
|
/* 803489BC 003458FC 38 A4 00 04 */ addi r5, r4, 4
|
|
/* 803489C0 00345900 7C 04 18 2E */ lwzx r0, r4, r3
|
|
/* 803489C4 00345904 7C 65 18 2E */ lwzx r3, r5, r3
|
|
/* 803489C8 00345908 54 00 02 3E */ clrlwi r0, r0, 8
|
|
/* 803489CC 0034590C 28 03 00 00 */ cmplwi r3, 0
|
|
/* 803489D0 00345910 7F E6 02 14 */ add r31, r6, r0
|
|
/* 803489D4 00345914 40 82 00 0C */ bne lbl_803489E0
|
|
/* 803489D8 00345918 38 60 00 00 */ li r3, 0
|
|
/* 803489DC 0034591C 48 00 00 80 */ b lbl_80348A5C
|
|
lbl_803489E0:
|
|
/* 803489E0 00345920 1C 63 00 0C */ mulli r3, r3, 0xc
|
|
/* 803489E4 00345924 7C 04 18 2E */ lwzx r0, r4, r3
|
|
/* 803489E8 00345928 7F A4 EB 78 */ mr r4, r29
|
|
/* 803489EC 0034592C 7C 65 18 2E */ lwzx r3, r5, r3
|
|
/* 803489F0 00345930 38 BE 00 00 */ addi r5, r30, 0
|
|
/* 803489F4 00345934 54 00 02 3E */ clrlwi r0, r0, 8
|
|
/* 803489F8 00345938 7F 86 02 14 */ add r28, r6, r0
|
|
/* 803489FC 0034593C 4B FF FF 81 */ bl entryToPath
|
|
/* 80348A00 00345940 7C 03 F0 40 */ cmplw r3, r30
|
|
/* 80348A04 00345944 40 82 00 08 */ bne lbl_80348A0C
|
|
/* 80348A08 00345948 48 00 00 54 */ b lbl_80348A5C
|
|
lbl_80348A0C:
|
|
/* 80348A0C 0034594C 38 03 00 00 */ addi r0, r3, 0
|
|
/* 80348A10 00345950 38 63 00 01 */ addi r3, r3, 1
|
|
/* 80348A14 00345954 38 80 00 2F */ li r4, 0x2f
|
|
/* 80348A18 00345958 7C C3 F0 50 */ subf r6, r3, r30
|
|
/* 80348A1C 0034595C 7C 9D 01 AE */ stbx r4, r29, r0
|
|
/* 80348A20 00345960 38 86 00 00 */ addi r4, r6, 0
|
|
/* 80348A24 00345964 7C BD 1A 14 */ add r5, r29, r3
|
|
/* 80348A28 00345968 48 00 00 18 */ b lbl_80348A40
|
|
lbl_80348A2C:
|
|
/* 80348A2C 0034596C 88 1C 00 00 */ lbz r0, 0(r28)
|
|
/* 80348A30 00345970 3B 9C 00 01 */ addi r28, r28, 1
|
|
/* 80348A34 00345974 38 84 FF FF */ addi r4, r4, -1
|
|
/* 80348A38 00345978 98 05 00 00 */ stb r0, 0(r5)
|
|
/* 80348A3C 0034597C 38 A5 00 01 */ addi r5, r5, 1
|
|
lbl_80348A40:
|
|
/* 80348A40 00345980 28 04 00 00 */ cmplwi r4, 0
|
|
/* 80348A44 00345984 41 82 00 10 */ beq lbl_80348A54
|
|
/* 80348A48 00345988 88 1C 00 00 */ lbz r0, 0(r28)
|
|
/* 80348A4C 0034598C 7C 00 07 75 */ extsb. r0, r0
|
|
/* 80348A50 00345990 40 82 FF DC */ bne lbl_80348A2C
|
|
lbl_80348A54:
|
|
/* 80348A54 00345994 7C 04 30 50 */ subf r0, r4, r6
|
|
/* 80348A58 00345998 7C 63 02 14 */ add r3, r3, r0
|
|
lbl_80348A5C:
|
|
/* 80348A5C 0034599C 7C 03 F0 40 */ cmplw r3, r30
|
|
/* 80348A60 003459A0 40 82 00 08 */ bne lbl_80348A68
|
|
/* 80348A64 003459A4 48 00 00 58 */ b lbl_80348ABC
|
|
lbl_80348A68:
|
|
/* 80348A68 003459A8 38 03 00 00 */ addi r0, r3, 0
|
|
/* 80348A6C 003459AC 38 63 00 01 */ addi r3, r3, 1
|
|
/* 80348A70 003459B0 38 80 00 2F */ li r4, 0x2f
|
|
/* 80348A74 003459B4 7C E3 F0 50 */ subf r7, r3, r30
|
|
/* 80348A78 003459B8 7C 9D 01 AE */ stbx r4, r29, r0
|
|
/* 80348A7C 003459BC 38 DF 00 00 */ addi r6, r31, 0
|
|
/* 80348A80 003459C0 38 87 00 00 */ addi r4, r7, 0
|
|
/* 80348A84 003459C4 7C BD 1A 14 */ add r5, r29, r3
|
|
/* 80348A88 003459C8 48 00 00 18 */ b lbl_80348AA0
|
|
lbl_80348A8C:
|
|
/* 80348A8C 003459CC 88 06 00 00 */ lbz r0, 0(r6)
|
|
/* 80348A90 003459D0 38 C6 00 01 */ addi r6, r6, 1
|
|
/* 80348A94 003459D4 38 84 FF FF */ addi r4, r4, -1
|
|
/* 80348A98 003459D8 98 05 00 00 */ stb r0, 0(r5)
|
|
/* 80348A9C 003459DC 38 A5 00 01 */ addi r5, r5, 1
|
|
lbl_80348AA0:
|
|
/* 80348AA0 003459E0 28 04 00 00 */ cmplwi r4, 0
|
|
/* 80348AA4 003459E4 41 82 00 10 */ beq lbl_80348AB4
|
|
/* 80348AA8 003459E8 88 06 00 00 */ lbz r0, 0(r6)
|
|
/* 80348AAC 003459EC 7C 00 07 75 */ extsb. r0, r0
|
|
/* 80348AB0 003459F0 40 82 FF DC */ bne lbl_80348A8C
|
|
lbl_80348AB4:
|
|
/* 80348AB4 003459F4 7C 04 38 50 */ subf r0, r4, r7
|
|
/* 80348AB8 003459F8 7C 63 02 14 */ add r3, r3, r0
|
|
lbl_80348ABC:
|
|
/* 80348ABC 003459FC 80 01 00 34 */ lwz r0, 0x34(r1)
|
|
/* 80348AC0 00345A00 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
|
/* 80348AC4 00345A04 83 C1 00 28 */ lwz r30, 0x28(r1)
|
|
/* 80348AC8 00345A08 83 A1 00 24 */ lwz r29, 0x24(r1)
|
|
/* 80348ACC 00345A0C 83 81 00 20 */ lwz r28, 0x20(r1)
|
|
/* 80348AD0 00345A10 38 21 00 30 */ addi r1, r1, 0x30
|
|
/* 80348AD4 00345A14 7C 08 03 A6 */ mtlr r0
|
|
/* 80348AD8 00345A18 4E 80 00 20 */ blr
|
|
|
|
.global DVDConvertEntrynumToPath
|
|
DVDConvertEntrynumToPath:
|
|
/* 80348ADC 00345A1C 7C 08 02 A6 */ mflr r0
|
|
/* 80348AE0 00345A20 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348AE4 00345A24 94 21 FF D8 */ stwu r1, -0x28(r1)
|
|
/* 80348AE8 00345A28 93 E1 00 24 */ stw r31, 0x24(r1)
|
|
/* 80348AEC 00345A2C 3B E5 00 00 */ addi r31, r5, 0
|
|
/* 80348AF0 00345A30 93 C1 00 20 */ stw r30, 0x20(r1)
|
|
/* 80348AF4 00345A34 3B C4 00 00 */ addi r30, r4, 0
|
|
/* 80348AF8 00345A38 93 A1 00 1C */ stw r29, 0x1c(r1)
|
|
/* 80348AFC 00345A3C 7C 7D 1B 79 */ or. r29, r3, r3
|
|
/* 80348B00 00345A40 93 81 00 18 */ stw r28, 0x18(r1)
|
|
/* 80348B04 00345A44 40 82 00 0C */ bne lbl_80348B10
|
|
/* 80348B08 00345A48 38 60 00 00 */ li r3, 0
|
|
/* 80348B0C 00345A4C 48 00 00 8C */ b lbl_80348B98
|
|
lbl_80348B10:
|
|
/* 80348B10 00345A50 1C 7D 00 0C */ mulli r3, r29, 0xc
|
|
/* 80348B14 00345A54 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348B18 00345A58 80 CD 91 E0 */ lwz r6, lbl_80451760-_SDA_BASE_(r13)
|
|
/* 80348B1C 00345A5C 7C 04 18 2E */ lwzx r0, r4, r3
|
|
/* 80348B20 00345A60 7C 64 1A 14 */ add r3, r4, r3
|
|
/* 80348B24 00345A64 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 80348B28 00345A68 38 9E 00 00 */ addi r4, r30, 0
|
|
/* 80348B2C 00345A6C 54 00 02 3E */ clrlwi r0, r0, 8
|
|
/* 80348B30 00345A70 38 BF 00 00 */ addi r5, r31, 0
|
|
/* 80348B34 00345A74 7F 86 02 14 */ add r28, r6, r0
|
|
/* 80348B38 00345A78 4B FF FE 45 */ bl entryToPath
|
|
/* 80348B3C 00345A7C 7C 03 F8 40 */ cmplw r3, r31
|
|
/* 80348B40 00345A80 40 82 00 08 */ bne lbl_80348B48
|
|
/* 80348B44 00345A84 48 00 00 54 */ b lbl_80348B98
|
|
lbl_80348B48:
|
|
/* 80348B48 00345A88 38 03 00 00 */ addi r0, r3, 0
|
|
/* 80348B4C 00345A8C 38 63 00 01 */ addi r3, r3, 1
|
|
/* 80348B50 00345A90 38 80 00 2F */ li r4, 0x2f
|
|
/* 80348B54 00345A94 7C C3 F8 50 */ subf r6, r3, r31
|
|
/* 80348B58 00345A98 7C 9E 01 AE */ stbx r4, r30, r0
|
|
/* 80348B5C 00345A9C 38 86 00 00 */ addi r4, r6, 0
|
|
/* 80348B60 00345AA0 7C BE 1A 14 */ add r5, r30, r3
|
|
/* 80348B64 00345AA4 48 00 00 18 */ b lbl_80348B7C
|
|
lbl_80348B68:
|
|
/* 80348B68 00345AA8 88 1C 00 00 */ lbz r0, 0(r28)
|
|
/* 80348B6C 00345AAC 3B 9C 00 01 */ addi r28, r28, 1
|
|
/* 80348B70 00345AB0 38 84 FF FF */ addi r4, r4, -1
|
|
/* 80348B74 00345AB4 98 05 00 00 */ stb r0, 0(r5)
|
|
/* 80348B78 00345AB8 38 A5 00 01 */ addi r5, r5, 1
|
|
lbl_80348B7C:
|
|
/* 80348B7C 00345ABC 28 04 00 00 */ cmplwi r4, 0
|
|
/* 80348B80 00345AC0 41 82 00 10 */ beq lbl_80348B90
|
|
/* 80348B84 00345AC4 88 1C 00 00 */ lbz r0, 0(r28)
|
|
/* 80348B88 00345AC8 7C 00 07 75 */ extsb. r0, r0
|
|
/* 80348B8C 00345ACC 40 82 FF DC */ bne lbl_80348B68
|
|
lbl_80348B90:
|
|
/* 80348B90 00345AD0 7C 04 30 50 */ subf r0, r4, r6
|
|
/* 80348B94 00345AD4 7C 63 02 14 */ add r3, r3, r0
|
|
lbl_80348B98:
|
|
/* 80348B98 00345AD8 7C 03 F8 40 */ cmplw r3, r31
|
|
/* 80348B9C 00345ADC 40 82 00 18 */ bne lbl_80348BB4
|
|
/* 80348BA0 00345AE0 7C 7E FA 14 */ add r3, r30, r31
|
|
/* 80348BA4 00345AE4 38 00 00 00 */ li r0, 0
|
|
/* 80348BA8 00345AE8 98 03 FF FF */ stb r0, -1(r3)
|
|
/* 80348BAC 00345AEC 38 60 00 00 */ li r3, 0
|
|
/* 80348BB0 00345AF0 48 00 00 60 */ b lbl_80348C10
|
|
lbl_80348BB4:
|
|
/* 80348BB4 00345AF4 1C 1D 00 0C */ mulli r0, r29, 0xc
|
|
/* 80348BB8 00345AF8 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348BBC 00345AFC 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 80348BC0 00345B00 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80348BC4 00345B04 40 82 00 0C */ bne lbl_80348BD0
|
|
/* 80348BC8 00345B08 38 00 00 00 */ li r0, 0
|
|
/* 80348BCC 00345B0C 48 00 00 08 */ b lbl_80348BD4
|
|
lbl_80348BD0:
|
|
/* 80348BD0 00345B10 38 00 00 01 */ li r0, 1
|
|
lbl_80348BD4:
|
|
/* 80348BD4 00345B14 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348BD8 00345B18 41 82 00 2C */ beq lbl_80348C04
|
|
/* 80348BDC 00345B1C 38 1F FF FF */ addi r0, r31, -1
|
|
/* 80348BE0 00345B20 7C 03 00 40 */ cmplw r3, r0
|
|
/* 80348BE4 00345B24 40 82 00 14 */ bne lbl_80348BF8
|
|
/* 80348BE8 00345B28 38 00 00 00 */ li r0, 0
|
|
/* 80348BEC 00345B2C 7C 1E 19 AE */ stbx r0, r30, r3
|
|
/* 80348BF0 00345B30 38 60 00 00 */ li r3, 0
|
|
/* 80348BF4 00345B34 48 00 00 1C */ b lbl_80348C10
|
|
lbl_80348BF8:
|
|
/* 80348BF8 00345B38 38 00 00 2F */ li r0, 0x2f
|
|
/* 80348BFC 00345B3C 7C 1E 19 AE */ stbx r0, r30, r3
|
|
/* 80348C00 00345B40 38 63 00 01 */ addi r3, r3, 1
|
|
lbl_80348C04:
|
|
/* 80348C04 00345B44 38 00 00 00 */ li r0, 0
|
|
/* 80348C08 00345B48 7C 1E 19 AE */ stbx r0, r30, r3
|
|
/* 80348C0C 00345B4C 38 60 00 01 */ li r3, 1
|
|
lbl_80348C10:
|
|
/* 80348C10 00345B50 80 01 00 2C */ lwz r0, 0x2c(r1)
|
|
/* 80348C14 00345B54 83 E1 00 24 */ lwz r31, 0x24(r1)
|
|
/* 80348C18 00345B58 83 C1 00 20 */ lwz r30, 0x20(r1)
|
|
/* 80348C1C 00345B5C 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
|
/* 80348C20 00345B60 83 81 00 18 */ lwz r28, 0x18(r1)
|
|
/* 80348C24 00345B64 38 21 00 28 */ addi r1, r1, 0x28
|
|
/* 80348C28 00345B68 7C 08 03 A6 */ mtlr r0
|
|
/* 80348C2C 00345B6C 4E 80 00 20 */ blr
|
|
|
|
.global DVDGetCurrentDir
|
|
DVDGetCurrentDir:
|
|
/* 80348C30 00345B70 7C 08 02 A6 */ mflr r0
|
|
/* 80348C34 00345B74 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348C38 00345B78 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 80348C3C 00345B7C 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 80348C40 00345B80 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 80348C44 00345B84 3B C4 00 00 */ addi r30, r4, 0
|
|
/* 80348C48 00345B88 38 BE 00 00 */ addi r5, r30, 0
|
|
/* 80348C4C 00345B8C 93 A1 00 14 */ stw r29, 0x14(r1)
|
|
/* 80348C50 00345B90 3B A3 00 00 */ addi r29, r3, 0
|
|
/* 80348C54 00345B94 38 9D 00 00 */ addi r4, r29, 0
|
|
/* 80348C58 00345B98 83 ED 91 E8 */ lwz r31, lbl_80451768-_SDA_BASE_(r13)
|
|
/* 80348C5C 00345B9C 38 7F 00 00 */ addi r3, r31, 0
|
|
/* 80348C60 00345BA0 4B FF FD 1D */ bl entryToPath
|
|
/* 80348C64 00345BA4 7C 03 F0 40 */ cmplw r3, r30
|
|
/* 80348C68 00345BA8 40 82 00 14 */ bne lbl_80348C7C
|
|
/* 80348C6C 00345BAC 38 00 00 00 */ li r0, 0
|
|
/* 80348C70 00345BB0 7C 7D F2 14 */ add r3, r29, r30
|
|
/* 80348C74 00345BB4 98 03 FF FF */ stb r0, -1(r3)
|
|
/* 80348C78 00345BB8 48 00 00 5C */ b lbl_80348CD4
|
|
lbl_80348C7C:
|
|
/* 80348C7C 00345BBC 1C 1F 00 0C */ mulli r0, r31, 0xc
|
|
/* 80348C80 00345BC0 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348C84 00345BC4 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 80348C88 00345BC8 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80348C8C 00345BCC 40 82 00 0C */ bne lbl_80348C98
|
|
/* 80348C90 00345BD0 38 00 00 00 */ li r0, 0
|
|
/* 80348C94 00345BD4 48 00 00 08 */ b lbl_80348C9C
|
|
lbl_80348C98:
|
|
/* 80348C98 00345BD8 38 00 00 01 */ li r0, 1
|
|
lbl_80348C9C:
|
|
/* 80348C9C 00345BDC 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348CA0 00345BE0 41 82 00 28 */ beq lbl_80348CC8
|
|
/* 80348CA4 00345BE4 38 1E FF FF */ addi r0, r30, -1
|
|
/* 80348CA8 00345BE8 7C 03 00 40 */ cmplw r3, r0
|
|
/* 80348CAC 00345BEC 40 82 00 10 */ bne lbl_80348CBC
|
|
/* 80348CB0 00345BF0 38 00 00 00 */ li r0, 0
|
|
/* 80348CB4 00345BF4 7C 1D 19 AE */ stbx r0, r29, r3
|
|
/* 80348CB8 00345BF8 48 00 00 1C */ b lbl_80348CD4
|
|
lbl_80348CBC:
|
|
/* 80348CBC 00345BFC 38 00 00 2F */ li r0, 0x2f
|
|
/* 80348CC0 00345C00 7C 1D 19 AE */ stbx r0, r29, r3
|
|
/* 80348CC4 00345C04 38 63 00 01 */ addi r3, r3, 1
|
|
lbl_80348CC8:
|
|
/* 80348CC8 00345C08 38 00 00 00 */ li r0, 0
|
|
/* 80348CCC 00345C0C 7C 1D 19 AE */ stbx r0, r29, r3
|
|
/* 80348CD0 00345C10 38 00 00 01 */ li r0, 1
|
|
lbl_80348CD4:
|
|
/* 80348CD4 00345C14 7C 03 03 78 */ mr r3, r0
|
|
/* 80348CD8 00345C18 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 80348CDC 00345C1C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 80348CE0 00345C20 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 80348CE4 00345C24 83 A1 00 14 */ lwz r29, 0x14(r1)
|
|
/* 80348CE8 00345C28 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 80348CEC 00345C2C 7C 08 03 A6 */ mtlr r0
|
|
/* 80348CF0 00345C30 4E 80 00 20 */ blr
|
|
|
|
.global DVDChangeDir
|
|
DVDChangeDir:
|
|
/* 80348CF4 00345C34 7C 08 02 A6 */ mflr r0
|
|
/* 80348CF8 00345C38 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348CFC 00345C3C 94 21 FF F8 */ stwu r1, -8(r1)
|
|
/* 80348D00 00345C40 4B FF F8 29 */ bl DVDConvertPathToEntrynum
|
|
/* 80348D04 00345C44 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80348D08 00345C48 41 80 00 2C */ blt lbl_80348D34
|
|
/* 80348D0C 00345C4C 1C 03 00 0C */ mulli r0, r3, 0xc
|
|
/* 80348D10 00345C50 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348D14 00345C54 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 80348D18 00345C58 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80348D1C 00345C5C 40 82 00 0C */ bne lbl_80348D28
|
|
/* 80348D20 00345C60 38 00 00 00 */ li r0, 0
|
|
/* 80348D24 00345C64 48 00 00 08 */ b lbl_80348D2C
|
|
lbl_80348D28:
|
|
/* 80348D28 00345C68 38 00 00 01 */ li r0, 1
|
|
lbl_80348D2C:
|
|
/* 80348D2C 00345C6C 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348D30 00345C70 40 82 00 0C */ bne lbl_80348D3C
|
|
lbl_80348D34:
|
|
/* 80348D34 00345C74 38 60 00 00 */ li r3, 0
|
|
/* 80348D38 00345C78 48 00 00 0C */ b lbl_80348D44
|
|
lbl_80348D3C:
|
|
/* 80348D3C 00345C7C 90 6D 91 E8 */ stw r3, lbl_80451768-_SDA_BASE_(r13)
|
|
/* 80348D40 00345C80 38 60 00 01 */ li r3, 1
|
|
lbl_80348D44:
|
|
/* 80348D44 00345C84 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 80348D48 00345C88 38 21 00 08 */ addi r1, r1, 8
|
|
/* 80348D4C 00345C8C 7C 08 03 A6 */ mtlr r0
|
|
/* 80348D50 00345C90 4E 80 00 20 */ blr
|
|
|
|
.global DVDReadAsyncPrio
|
|
DVDReadAsyncPrio:
|
|
/* 80348D54 00345C94 7C 08 02 A6 */ mflr r0
|
|
/* 80348D58 00345C98 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348D5C 00345C9C 94 21 FF C8 */ stwu r1, -0x38(r1)
|
|
/* 80348D60 00345CA0 BF 41 00 20 */ stmw r26, 0x20(r1)
|
|
/* 80348D64 00345CA4 7C DD 33 79 */ or. r29, r6, r6
|
|
/* 80348D68 00345CA8 3B 43 00 00 */ addi r26, r3, 0
|
|
/* 80348D6C 00345CAC 3B 64 00 00 */ addi r27, r4, 0
|
|
/* 80348D70 00345CB0 3B 85 00 00 */ addi r28, r5, 0
|
|
/* 80348D74 00345CB4 3B C7 00 00 */ addi r30, r7, 0
|
|
/* 80348D78 00345CB8 3B E8 00 00 */ addi r31, r8, 0
|
|
/* 80348D7C 00345CBC 41 80 00 10 */ blt lbl_80348D8C
|
|
/* 80348D80 00345CC0 80 1A 00 34 */ lwz r0, 0x34(r26)
|
|
/* 80348D84 00345CC4 7C 1D 00 40 */ cmplw r29, r0
|
|
/* 80348D88 00345CC8 40 81 00 1C */ ble lbl_80348DA4
|
|
lbl_80348D8C:
|
|
/* 80348D8C 00345CCC 3C 60 80 3D */ lis r3, lbl_803D1480@ha
|
|
/* 80348D90 00345CD0 4C C6 31 82 */ crclr 6
|
|
/* 80348D94 00345CD4 38 A3 14 80 */ addi r5, r3, lbl_803D1480@l
|
|
/* 80348D98 00345CD8 38 6D 84 60 */ addi r3, r13, lbl_804509E0-_SDA_BASE_
|
|
/* 80348D9C 00345CDC 38 80 02 EE */ li r4, 0x2ee
|
|
/* 80348DA0 00345CE0 4B CB E0 DD */ bl OSPanic
|
|
lbl_80348DA4:
|
|
/* 80348DA4 00345CE4 7C 9D E2 15 */ add. r4, r29, r28
|
|
/* 80348DA8 00345CE8 41 80 00 14 */ blt lbl_80348DBC
|
|
/* 80348DAC 00345CEC 80 7A 00 34 */ lwz r3, 0x34(r26)
|
|
/* 80348DB0 00345CF0 38 03 00 20 */ addi r0, r3, 0x20
|
|
/* 80348DB4 00345CF4 7C 04 00 40 */ cmplw r4, r0
|
|
/* 80348DB8 00345CF8 41 80 00 1C */ blt lbl_80348DD4
|
|
lbl_80348DBC:
|
|
/* 80348DBC 00345CFC 3C 60 80 3D */ lis r3, lbl_803D1480@ha
|
|
/* 80348DC0 00345D00 4C C6 31 82 */ crclr 6
|
|
/* 80348DC4 00345D04 38 A3 14 80 */ addi r5, r3, lbl_803D1480@l
|
|
/* 80348DC8 00345D08 38 6D 84 60 */ addi r3, r13, lbl_804509E0-_SDA_BASE_
|
|
/* 80348DCC 00345D0C 38 80 02 F4 */ li r4, 0x2f4
|
|
/* 80348DD0 00345D10 4B CB E0 AD */ bl OSPanic
|
|
lbl_80348DD4:
|
|
/* 80348DD4 00345D14 93 DA 00 38 */ stw r30, 0x38(r26)
|
|
.global cbForReadAsync
|
|
/* 80348DD8 00345D18 3C 60 80 35 */ lis r3, cbForReadAsync@ha
|
|
.global cbForReadAsync
|
|
/* 80348DDC 00345D1C 38 E3 8E 14 */ addi r7, r3, cbForReadAsync@l
|
|
/* 80348DE0 00345D20 80 1A 00 30 */ lwz r0, 0x30(r26)
|
|
/* 80348DE4 00345D24 38 7A 00 00 */ addi r3, r26, 0
|
|
/* 80348DE8 00345D28 38 9B 00 00 */ addi r4, r27, 0
|
|
/* 80348DEC 00345D2C 38 BC 00 00 */ addi r5, r28, 0
|
|
/* 80348DF0 00345D30 39 1F 00 00 */ addi r8, r31, 0
|
|
/* 80348DF4 00345D34 7C C0 EA 14 */ add r6, r0, r29
|
|
/* 80348DF8 00345D38 48 00 1F 35 */ bl DVDReadAbsAsyncPrio
|
|
/* 80348DFC 00345D3C BB 41 00 20 */ lmw r26, 0x20(r1)
|
|
/* 80348E00 00345D40 38 60 00 01 */ li r3, 1
|
|
/* 80348E04 00345D44 80 01 00 3C */ lwz r0, 0x3c(r1)
|
|
/* 80348E08 00345D48 38 21 00 38 */ addi r1, r1, 0x38
|
|
/* 80348E0C 00345D4C 7C 08 03 A6 */ mtlr r0
|
|
/* 80348E10 00345D50 4E 80 00 20 */ blr
|
|
.global cbForReadAsync
|
|
cbForReadAsync:
|
|
/* 80348E14 00345D54 7C 08 02 A6 */ mflr r0
|
|
/* 80348E18 00345D58 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348E1C 00345D5C 94 21 FF F8 */ stwu r1, -8(r1)
|
|
/* 80348E20 00345D60 81 84 00 38 */ lwz r12, 0x38(r4)
|
|
/* 80348E24 00345D64 28 0C 00 00 */ cmplwi r12, 0
|
|
/* 80348E28 00345D68 41 82 00 0C */ beq lbl_80348E34
|
|
/* 80348E2C 00345D6C 7D 88 03 A6 */ mtlr r12
|
|
/* 80348E30 00345D70 4E 80 00 21 */ blrl
|
|
lbl_80348E34:
|
|
/* 80348E34 00345D74 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 80348E38 00345D78 38 21 00 08 */ addi r1, r1, 8
|
|
/* 80348E3C 00345D7C 7C 08 03 A6 */ mtlr r0
|
|
/* 80348E40 00345D80 4E 80 00 20 */ blr
|
|
|
|
.global DVDReadPrio
|
|
DVDReadPrio:
|
|
/* 80348E44 00345D84 7C 08 02 A6 */ mflr r0
|
|
/* 80348E48 00345D88 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348E4C 00345D8C 94 21 FF C8 */ stwu r1, -0x38(r1)
|
|
/* 80348E50 00345D90 BF 61 00 24 */ stmw r27, 0x24(r1)
|
|
/* 80348E54 00345D94 7C DD 33 79 */ or. r29, r6, r6
|
|
/* 80348E58 00345D98 3B E3 00 00 */ addi r31, r3, 0
|
|
/* 80348E5C 00345D9C 3B 64 00 00 */ addi r27, r4, 0
|
|
/* 80348E60 00345DA0 3B 85 00 00 */ addi r28, r5, 0
|
|
/* 80348E64 00345DA4 3B C7 00 00 */ addi r30, r7, 0
|
|
/* 80348E68 00345DA8 41 80 00 10 */ blt lbl_80348E78
|
|
/* 80348E6C 00345DAC 80 1F 00 34 */ lwz r0, 0x34(r31)
|
|
/* 80348E70 00345DB0 7C 1D 00 40 */ cmplw r29, r0
|
|
/* 80348E74 00345DB4 40 81 00 1C */ ble lbl_80348E90
|
|
lbl_80348E78:
|
|
/* 80348E78 00345DB8 3C 60 80 3D */ lis r3, lbl_803D14B4@ha
|
|
/* 80348E7C 00345DBC 4C C6 31 82 */ crclr 6
|
|
/* 80348E80 00345DC0 38 A3 14 B4 */ addi r5, r3, lbl_803D14B4@l
|
|
/* 80348E84 00345DC4 38 6D 84 60 */ addi r3, r13, lbl_804509E0-_SDA_BASE_
|
|
/* 80348E88 00345DC8 38 80 03 34 */ li r4, 0x334
|
|
/* 80348E8C 00345DCC 4B CB DF F1 */ bl OSPanic
|
|
lbl_80348E90:
|
|
/* 80348E90 00345DD0 7C 9D E2 15 */ add. r4, r29, r28
|
|
/* 80348E94 00345DD4 41 80 00 14 */ blt lbl_80348EA8
|
|
/* 80348E98 00345DD8 80 7F 00 34 */ lwz r3, 0x34(r31)
|
|
/* 80348E9C 00345DDC 38 03 00 20 */ addi r0, r3, 0x20
|
|
/* 80348EA0 00345DE0 7C 04 00 40 */ cmplw r4, r0
|
|
/* 80348EA4 00345DE4 41 80 00 1C */ blt lbl_80348EC0
|
|
lbl_80348EA8:
|
|
/* 80348EA8 00345DE8 3C 60 80 3D */ lis r3, lbl_803D14B4@ha
|
|
/* 80348EAC 00345DEC 4C C6 31 82 */ crclr 6
|
|
/* 80348EB0 00345DF0 38 A3 14 B4 */ addi r5, r3, lbl_803D14B4@l
|
|
/* 80348EB4 00345DF4 38 6D 84 60 */ addi r3, r13, lbl_804509E0-_SDA_BASE_
|
|
/* 80348EB8 00345DF8 38 80 03 3A */ li r4, 0x33a
|
|
/* 80348EBC 00345DFC 4B CB DF C1 */ bl OSPanic
|
|
lbl_80348EC0:
|
|
/* 80348EC0 00345E00 80 1F 00 30 */ lwz r0, 0x30(r31)
|
|
.global cbForReadSync
|
|
/* 80348EC4 00345E04 3C 80 80 35 */ lis r4, cbForReadSync@ha
|
|
.global cbForReadSync
|
|
/* 80348EC8 00345E08 38 E4 8F 5C */ addi r7, r4, cbForReadSync@l
|
|
/* 80348ECC 00345E0C 38 7F 00 00 */ addi r3, r31, 0
|
|
/* 80348ED0 00345E10 38 9B 00 00 */ addi r4, r27, 0
|
|
/* 80348ED4 00345E14 38 BC 00 00 */ addi r5, r28, 0
|
|
/* 80348ED8 00345E18 39 1E 00 00 */ addi r8, r30, 0
|
|
/* 80348EDC 00345E1C 7C C0 EA 14 */ add r6, r0, r29
|
|
/* 80348EE0 00345E20 48 00 1E 4D */ bl DVDReadAbsAsyncPrio
|
|
/* 80348EE4 00345E24 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80348EE8 00345E28 40 82 00 0C */ bne lbl_80348EF4
|
|
/* 80348EEC 00345E2C 38 60 FF FF */ li r3, -1
|
|
/* 80348EF0 00345E30 48 00 00 58 */ b lbl_80348F48
|
|
lbl_80348EF4:
|
|
/* 80348EF4 00345E34 4B FF 48 01 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 80348EF8 00345E38 7C 7E 1B 78 */ mr r30, r3
|
|
lbl_80348EFC:
|
|
/* 80348EFC 00345E3C 80 1F 00 0C */ lwz r0, 0xc(r31)
|
|
/* 80348F00 00345E40 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348F04 00345E44 40 82 00 0C */ bne lbl_80348F10
|
|
/* 80348F08 00345E48 83 FF 00 20 */ lwz r31, 0x20(r31)
|
|
/* 80348F0C 00345E4C 48 00 00 30 */ b lbl_80348F3C
|
|
lbl_80348F10:
|
|
/* 80348F10 00345E50 2C 00 FF FF */ cmpwi r0, -1
|
|
/* 80348F14 00345E54 40 82 00 0C */ bne lbl_80348F20
|
|
/* 80348F18 00345E58 3B E0 FF FF */ li r31, -1
|
|
/* 80348F1C 00345E5C 48 00 00 20 */ b lbl_80348F3C
|
|
lbl_80348F20:
|
|
/* 80348F20 00345E60 2C 00 00 0A */ cmpwi r0, 0xa
|
|
/* 80348F24 00345E64 40 82 00 0C */ bne lbl_80348F30
|
|
/* 80348F28 00345E68 3B E0 FF FD */ li r31, -3
|
|
/* 80348F2C 00345E6C 48 00 00 10 */ b lbl_80348F3C
|
|
lbl_80348F30:
|
|
/* 80348F30 00345E70 38 6D 91 F0 */ addi r3, r13, lbl_80451770-_SDA_BASE_
|
|
/* 80348F34 00345E74 4B FF 8C 79 */ bl OSSleepThread
|
|
/* 80348F38 00345E78 4B FF FF C4 */ b lbl_80348EFC
|
|
lbl_80348F3C:
|
|
/* 80348F3C 00345E7C 7F C3 F3 78 */ mr r3, r30
|
|
/* 80348F40 00345E80 4B FF 47 DD */ bl OSRestoreInterrupts
|
|
/* 80348F44 00345E84 7F E3 FB 78 */ mr r3, r31
|
|
lbl_80348F48:
|
|
/* 80348F48 00345E88 BB 61 00 24 */ lmw r27, 0x24(r1)
|
|
/* 80348F4C 00345E8C 80 01 00 3C */ lwz r0, 0x3c(r1)
|
|
/* 80348F50 00345E90 38 21 00 38 */ addi r1, r1, 0x38
|
|
/* 80348F54 00345E94 7C 08 03 A6 */ mtlr r0
|
|
/* 80348F58 00345E98 4E 80 00 20 */ blr
|
|
.global cbForReadSync
|
|
cbForReadSync:
|
|
/* 80348F5C 00345E9C 7C 08 02 A6 */ mflr r0
|
|
/* 80348F60 00345EA0 38 6D 91 F0 */ addi r3, r13, lbl_80451770-_SDA_BASE_
|
|
/* 80348F64 00345EA4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348F68 00345EA8 94 21 FF F8 */ stwu r1, -8(r1)
|
|
/* 80348F6C 00345EAC 4B FF 8D 2D */ bl OSWakeupThread
|
|
/* 80348F70 00345EB0 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 80348F74 00345EB4 38 21 00 08 */ addi r1, r1, 8
|
|
/* 80348F78 00345EB8 7C 08 03 A6 */ mtlr r0
|
|
/* 80348F7C 00345EBC 4E 80 00 20 */ blr
|
|
|
|
.global DVDOpenDir
|
|
DVDOpenDir:
|
|
/* 80348F80 00345EC0 7C 08 02 A6 */ mflr r0
|
|
/* 80348F84 00345EC4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 80348F88 00345EC8 94 21 FF 68 */ stwu r1, -0x98(r1)
|
|
/* 80348F8C 00345ECC 93 E1 00 94 */ stw r31, 0x94(r1)
|
|
/* 80348F90 00345ED0 3B E4 00 00 */ addi r31, r4, 0
|
|
/* 80348F94 00345ED4 93 C1 00 90 */ stw r30, 0x90(r1)
|
|
/* 80348F98 00345ED8 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 80348F9C 00345EDC 4B FF F5 8D */ bl DVDConvertPathToEntrynum
|
|
/* 80348FA0 00345EE0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80348FA4 00345EE4 40 80 00 34 */ bge lbl_80348FD8
|
|
/* 80348FA8 00345EE8 80 6D 91 E8 */ lwz r3, lbl_80451768-_SDA_BASE_(r13)
|
|
/* 80348FAC 00345EEC 38 81 00 10 */ addi r4, r1, 0x10
|
|
/* 80348FB0 00345EF0 38 A0 00 80 */ li r5, 0x80
|
|
/* 80348FB4 00345EF4 4B FF FB 29 */ bl DVDConvertEntrynumToPath
|
|
/* 80348FB8 00345EF8 3C 60 80 3D */ lis r3, lbl_803D14E4@ha
|
|
/* 80348FBC 00345EFC 4C C6 31 82 */ crclr 6
|
|
/* 80348FC0 00345F00 38 63 14 E4 */ addi r3, r3, lbl_803D14E4@l
|
|
/* 80348FC4 00345F04 38 9E 00 00 */ addi r4, r30, 0
|
|
/* 80348FC8 00345F08 38 A1 00 10 */ addi r5, r1, 0x10
|
|
/* 80348FCC 00345F0C 4B CB DA F1 */ bl OSReport
|
|
/* 80348FD0 00345F10 38 60 00 00 */ li r3, 0
|
|
/* 80348FD4 00345F14 48 00 00 54 */ b lbl_80349028
|
|
lbl_80348FD8:
|
|
/* 80348FD8 00345F18 1C A3 00 0C */ mulli r5, r3, 0xc
|
|
/* 80348FDC 00345F1C 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80348FE0 00345F20 7C 04 28 2E */ lwzx r0, r4, r5
|
|
/* 80348FE4 00345F24 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80348FE8 00345F28 40 82 00 0C */ bne lbl_80348FF4
|
|
/* 80348FEC 00345F2C 38 00 00 00 */ li r0, 0
|
|
/* 80348FF0 00345F30 48 00 00 08 */ b lbl_80348FF8
|
|
lbl_80348FF4:
|
|
/* 80348FF4 00345F34 38 00 00 01 */ li r0, 1
|
|
lbl_80348FF8:
|
|
/* 80348FF8 00345F38 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 80348FFC 00345F3C 40 82 00 0C */ bne lbl_80349008
|
|
/* 80349000 00345F40 38 60 00 00 */ li r3, 0
|
|
/* 80349004 00345F44 48 00 00 24 */ b lbl_80349028
|
|
lbl_80349008:
|
|
/* 80349008 00345F48 90 7F 00 00 */ stw r3, 0(r31)
|
|
/* 8034900C 00345F4C 38 03 00 01 */ addi r0, r3, 1
|
|
/* 80349010 00345F50 38 60 00 01 */ li r3, 1
|
|
/* 80349014 00345F54 90 1F 00 04 */ stw r0, 4(r31)
|
|
/* 80349018 00345F58 80 0D 91 DC */ lwz r0, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 8034901C 00345F5C 7C 80 2A 14 */ add r4, r0, r5
|
|
/* 80349020 00345F60 80 04 00 08 */ lwz r0, 8(r4)
|
|
/* 80349024 00345F64 90 1F 00 08 */ stw r0, 8(r31)
|
|
lbl_80349028:
|
|
/* 80349028 00345F68 80 01 00 9C */ lwz r0, 0x9c(r1)
|
|
/* 8034902C 00345F6C 83 E1 00 94 */ lwz r31, 0x94(r1)
|
|
/* 80349030 00345F70 83 C1 00 90 */ lwz r30, 0x90(r1)
|
|
/* 80349034 00345F74 38 21 00 98 */ addi r1, r1, 0x98
|
|
/* 80349038 00345F78 7C 08 03 A6 */ mtlr r0
|
|
/* 8034903C 00345F7C 4E 80 00 20 */ blr
|
|
|
|
.global DVDReadDir
|
|
DVDReadDir:
|
|
/* 80349040 00345F80 80 E3 00 04 */ lwz r7, 4(r3)
|
|
/* 80349044 00345F84 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 80349048 00345F88 7C 07 00 40 */ cmplw r7, r0
|
|
/* 8034904C 00345F8C 40 81 00 10 */ ble lbl_8034905C
|
|
/* 80349050 00345F90 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 80349054 00345F94 7C 00 38 40 */ cmplw r0, r7
|
|
/* 80349058 00345F98 41 81 00 0C */ bgt lbl_80349064
|
|
lbl_8034905C:
|
|
/* 8034905C 00345F9C 38 60 00 00 */ li r3, 0
|
|
/* 80349060 00345FA0 4E 80 00 20 */ blr
|
|
lbl_80349064:
|
|
/* 80349064 00345FA4 90 E4 00 00 */ stw r7, 0(r4)
|
|
/* 80349068 00345FA8 1D 07 00 0C */ mulli r8, r7, 0xc
|
|
/* 8034906C 00345FAC 80 AD 91 DC */ lwz r5, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80349070 00345FB0 7C 05 40 2E */ lwzx r0, r5, r8
|
|
/* 80349074 00345FB4 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 80349078 00345FB8 40 82 00 0C */ bne lbl_80349084
|
|
/* 8034907C 00345FBC 38 00 00 00 */ li r0, 0
|
|
/* 80349080 00345FC0 48 00 00 08 */ b lbl_80349088
|
|
lbl_80349084:
|
|
/* 80349084 00345FC4 38 00 00 01 */ li r0, 1
|
|
lbl_80349088:
|
|
/* 80349088 00345FC8 90 04 00 04 */ stw r0, 4(r4)
|
|
/* 8034908C 00345FCC 80 AD 91 DC */ lwz r5, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 80349090 00345FD0 80 CD 91 E0 */ lwz r6, lbl_80451760-_SDA_BASE_(r13)
|
|
/* 80349094 00345FD4 7C 05 40 2E */ lwzx r0, r5, r8
|
|
/* 80349098 00345FD8 54 00 02 3E */ clrlwi r0, r0, 8
|
|
/* 8034909C 00345FDC 7C 06 02 14 */ add r0, r6, r0
|
|
/* 803490A0 00345FE0 90 04 00 08 */ stw r0, 8(r4)
|
|
/* 803490A4 00345FE4 80 8D 91 DC */ lwz r4, lbl_8045175C-_SDA_BASE_(r13)
|
|
/* 803490A8 00345FE8 7C 04 40 2E */ lwzx r0, r4, r8
|
|
/* 803490AC 00345FEC 54 00 00 0F */ rlwinm. r0, r0, 0, 0, 7
|
|
/* 803490B0 00345FF0 40 82 00 0C */ bne lbl_803490BC
|
|
/* 803490B4 00345FF4 38 00 00 00 */ li r0, 0
|
|
/* 803490B8 00345FF8 48 00 00 08 */ b lbl_803490C0
|
|
lbl_803490BC:
|
|
/* 803490BC 00345FFC 38 00 00 01 */ li r0, 1
|
|
lbl_803490C0:
|
|
/* 803490C0 00346000 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 803490C4 00346004 41 82 00 10 */ beq lbl_803490D4
|
|
/* 803490C8 00346008 7C 84 42 14 */ add r4, r4, r8
|
|
/* 803490CC 0034600C 80 04 00 08 */ lwz r0, 8(r4)
|
|
/* 803490D0 00346010 48 00 00 08 */ b lbl_803490D8
|
|
lbl_803490D4:
|
|
/* 803490D4 00346014 38 07 00 01 */ addi r0, r7, 1
|
|
lbl_803490D8:
|
|
/* 803490D8 00346018 90 03 00 04 */ stw r0, 4(r3)
|
|
/* 803490DC 0034601C 38 60 00 01 */ li r3, 1
|
|
/* 803490E0 00346020 4E 80 00 20 */ blr
|
|
|
|
.global DVDCloseDir
|
|
DVDCloseDir:
|
|
/* 803490E4 00346024 38 60 00 01 */ li r3, 1
|
|
/* 803490E8 00346028 4E 80 00 20 */ blr
|