prime/asm/Dolphin/dvd/dvd.s

3484 lines
162 KiB
ArmAsm

.include "macros.inc"
.section .sdata
.balign 8
.global lbl_805A8A98
lbl_805A8A98:
# ROM: 0x3F6438
.4byte 0x803EFF80
.global lbl_805A8A9C
lbl_805A8A9C:
# ROM: 0x3F643C
.4byte 0x00000001
.global lbl_805A8AA0
lbl_805A8AA0:
# ROM: 0x3F6440
.4byte 0x80371BA0
.global lbl_805A8AA4
lbl_805A8AA4:
# ROM: 0x3F6444
.asciz "dvd.c"
.balign 4
.global lbl_805A8AAC
lbl_805A8AAC:
# ROM: 0x3F644C
.4byte 0xFFFFFFFF
.section .bss
.balign 8
.global lbl_80540B60
lbl_80540B60:
.skip 0x20
.global lbl_80540B80
lbl_80540B80:
.skip 0x20
.global lbl_80540BA0
lbl_80540BA0:
.skip 0x58
.section .sbss
.balign 8
lbl_805A97C8:
.skip 0x8
lbl_805A97D0:
.skip 0x4
lbl_805A97D4:
.skip 0x4
lbl_805A97D8:
.skip 0x4
lbl_805A97DC:
.skip 0x4
lbl_805A97E0:
.skip 0x4
lbl_805A97E4:
.skip 0x4
lbl_805A97E8:
.skip 0x4
lbl_805A97EC:
.skip 0x4
lbl_805A97F0:
.skip 0x4
lbl_805A97F4:
.skip 0x4
lbl_805A97F8:
.skip 0x4
lbl_805A97FC:
.skip 0x4
lbl_805A9800:
.skip 0x4
lbl_805A9804:
.skip 0x4
lbl_805A9808:
.skip 0x4
lbl_805A980C:
.skip 0x4
lbl_805A9810:
.skip 0x4
lbl_805A9814:
.skip 0x4
lbl_805A9818:
.skip 0x8
.section .data
.balign 8
.global lbl_803EFFC8
lbl_803EFFC8:
# ROM: 0x3ECFC8
.asciz "load fst\n"
.balign 4
.global lbl_803EFFD4
lbl_803EFFD4:
# ROM: 0x3ECFD4
.4byte 0x44564443
.4byte 0x68616E67
.4byte 0x65446973
.4byte 0x6B28293A
.4byte 0x20465354
.4byte 0x20696E20
.4byte 0x74686520
.4byte 0x6E657720
.4byte 0x64697363
.4byte 0x20697320
.4byte 0x746F6F20
.4byte 0x6269672E
.global lbl_803F0004
lbl_803F0004:
# ROM: 0x3ED004
.4byte 0x20202000
.global lbl_803F0008
lbl_803F0008:
# ROM: 0x3ED008
.4byte 0x803731D8
.4byte 0x80372F4C
.4byte 0x80372FEC
.4byte 0x80373010
.4byte 0x80372F4C
.4byte 0x80372F20
.4byte 0x80373030
.4byte 0x80373094
.4byte 0x803730C0
.4byte 0x803730F4
.4byte 0x80373118
.4byte 0x8037313C
.4byte 0x80373160
.4byte 0x80373184
.4byte 0x803731AC
.4byte 0x80373020
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.asciz "DVDChangeDiskAsync(): You can't specify NULL to company name. \n"
.balign 4
.global lbl_803F0098
lbl_803F0098:
# ROM: 0x3ED098
.4byte 0x8037425C
.4byte 0x8037425C
.4byte 0x8037427C
.4byte 0x803742C0
.4byte 0x8037430C
.4byte 0x80374388
.4byte 0x80374388
.4byte 0x80374388
.4byte 0x80374388
.4byte 0x80374454
.4byte 0x80374454
.4byte 0x8037425C
.4byte 0x80374388
.global lbl_803F00CC
lbl_803F00CC:
# ROM: 0x3ED0CC
.4byte 0x80374750
.4byte 0x80374758
.4byte 0x80374748
.4byte 0x80374748
.4byte 0x80374750
.4byte 0x80374750
.4byte 0x80374750
.4byte 0x80374750
.4byte 0x80374750
.4byte 0x80374758
.4byte 0x80374748
.4byte 0x80374748
.4byte 0x80374750
.section .text, "ax"
.global DVDInit
DVDInit:
/* 80371BA4 0036EB04 7C 08 02 A6 */ mflr r0
/* 80371BA8 0036EB08 90 01 00 04 */ stw r0, 4(r1)
/* 80371BAC 0036EB0C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371BB0 0036EB10 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80371BB4 0036EB14 80 0D AC 54 */ lwz r0, lbl_805A9814@sda21(r13)
/* 80371BB8 0036EB18 2C 00 00 00 */ cmpwi r0, 0
/* 80371BBC 0036EB1C 40 82 00 A0 */ bne lbl_80371C5C
/* 80371BC0 0036EB20 80 6D 9E D8 */ lwz r3, lbl_805A8A98@sda21(r13)
/* 80371BC4 0036EB24 48 00 C4 75 */ bl OSRegisterVersion
/* 80371BC8 0036EB28 3B E0 00 01 */ li r31, 1
/* 80371BCC 0036EB2C 93 ED AC 54 */ stw r31, lbl_805A9814@sda21(r13)
/* 80371BD0 0036EB30 4B FF F7 15 */ bl __DVDFSInit
/* 80371BD4 0036EB34 48 00 2C E5 */ bl __DVDClearWaitingQueue
/* 80371BD8 0036EB38 4B FF E8 CD */ bl __DVDInitWA
/* 80371BDC 0036EB3C 3C 00 80 00 */ lis r0, 0x8000
/* 80371BE0 0036EB40 3C 60 80 37 */ lis r3, __DVDInterruptHandler@ha
/* 80371BE4 0036EB44 90 0D AC 18 */ stw r0, lbl_805A97D8@sda21(r13)
/* 80371BE8 0036EB48 38 83 04 E4 */ addi r4, r3, __DVDInterruptHandler@l
/* 80371BEC 0036EB4C 90 0D AC 14 */ stw r0, lbl_805A97D4@sda21(r13)
/* 80371BF0 0036EB50 38 60 00 15 */ li r3, 0x15
/* 80371BF4 0036EB54 48 00 FA B9 */ bl __OSSetInterruptHandler
/* 80371BF8 0036EB58 38 60 04 00 */ li r3, 0x400
/* 80371BFC 0036EB5C 48 00 FE B5 */ bl __OSUnmaskInterrupts
/* 80371C00 0036EB60 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 80371C04 0036EB64 48 01 29 C1 */ bl OSInitThreadQueue
/* 80371C08 0036EB68 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 80371C0C 0036EB6C 38 00 00 2A */ li r0, 0x2a
/* 80371C10 0036EB70 90 03 60 00 */ stw r0, 0xCC006000@l(r3)
/* 80371C14 0036EB74 38 00 00 00 */ li r0, 0
/* 80371C18 0036EB78 90 03 60 04 */ stw r0, 0x6004(r3)
/* 80371C1C 0036EB7C 80 6D AC 18 */ lwz r3, lbl_805A97D8@sda21(r13)
/* 80371C20 0036EB80 38 63 00 20 */ addi r3, r3, 0x20
/* 80371C24 0036EB84 80 63 00 00 */ lwz r3, 0(r3)
/* 80371C28 0036EB88 3C 03 1A E0 */ addis r0, r3, 0x1ae0
/* 80371C2C 0036EB8C 28 00 7C 22 */ cmplwi r0, 0x7c22
/* 80371C30 0036EB90 40 82 00 1C */ bne lbl_80371C4C
/* 80371C34 0036EB94 3C 60 80 3F */ lis r3, lbl_803EFFC8@ha
/* 80371C38 0036EB98 4C C6 31 82 */ crclr 6
/* 80371C3C 0036EB9C 38 63 FF C8 */ addi r3, r3, lbl_803EFFC8@l
/* 80371C40 0036EBA0 48 00 DD 6D */ bl OSReport
/* 80371C44 0036EBA4 48 00 33 01 */ bl __fstLoad
/* 80371C48 0036EBA8 48 00 00 14 */ b lbl_80371C5C
lbl_80371C4C:
/* 80371C4C 0036EBAC 3C 03 F2 EB */ addis r0, r3, 0xf2eb
/* 80371C50 0036EBB0 28 00 EA 5E */ cmplwi r0, 0xea5e
/* 80371C54 0036EBB4 41 82 00 08 */ beq lbl_80371C5C
/* 80371C58 0036EBB8 93 ED AC 50 */ stw r31, lbl_805A9810@sda21(r13)
lbl_80371C5C:
/* 80371C5C 0036EBBC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371C60 0036EBC0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80371C64 0036EBC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80371C68 0036EBC8 7C 08 03 A6 */ mtlr r0
/* 80371C6C 0036EBCC 4E 80 00 20 */ blr
.global stateReadingFST
stateReadingFST:
/* 80371C70 0036EBD0 7C 08 02 A6 */ mflr r0
/* 80371C74 0036EBD4 3C 60 80 37 */ lis r3, stateReadingFST@ha
/* 80371C78 0036EBD8 90 01 00 04 */ stw r0, 4(r1)
/* 80371C7C 0036EBDC 38 03 1C 70 */ addi r0, r3, stateReadingFST@l
/* 80371C80 0036EBE0 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80371C84 0036EBE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371C88 0036EBE8 38 63 0B 60 */ addi r3, r3, lbl_80540B60@l
/* 80371C8C 0036EBEC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80371C90 0036EBF0 3B E3 00 08 */ addi r31, r3, 8
/* 80371C94 0036EBF4 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 80371C98 0036EBF8 80 8D AC 18 */ lwz r4, lbl_805A97D8@sda21(r13)
/* 80371C9C 0036EBFC 80 1F 00 00 */ lwz r0, 0(r31)
/* 80371CA0 0036EC00 80 64 00 3C */ lwz r3, 0x3c(r4)
/* 80371CA4 0036EC04 7C 03 00 40 */ cmplw r3, r0
/* 80371CA8 0036EC08 40 80 00 1C */ bge lbl_80371CC4
/* 80371CAC 0036EC0C 3C 60 80 3F */ lis r3, lbl_803EFFD4@ha
/* 80371CB0 0036EC10 4C C6 31 82 */ crclr 6
/* 80371CB4 0036EC14 38 A3 FF D4 */ addi r5, r3, lbl_803EFFD4@l
/* 80371CB8 0036EC18 38 6D 9E E4 */ addi r3, r13, lbl_805A8AA4@sda21
/* 80371CBC 0036EC1C 38 80 02 76 */ li r4, 0x276
/* 80371CC0 0036EC20 48 00 DD 6D */ bl OSPanic
lbl_80371CC4:
/* 80371CC4 0036EC24 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80371CC8 0036EC28 80 DF 00 00 */ lwz r6, 0(r31)
/* 80371CCC 0036EC2C 38 A3 0B 60 */ addi r5, r3, lbl_80540B60@l
/* 80371CD0 0036EC30 80 ED AC 18 */ lwz r7, lbl_805A97D8@sda21(r13)
/* 80371CD4 0036EC34 3C 80 80 37 */ lis r4, cbForReadingFST@ha
/* 80371CD8 0036EC38 80 A5 00 04 */ lwz r5, 4(r5)
/* 80371CDC 0036EC3C 38 06 00 1F */ addi r0, r6, 0x1f
/* 80371CE0 0036EC40 80 67 00 38 */ lwz r3, 0x38(r7)
/* 80371CE4 0036EC44 38 C4 1D 04 */ addi r6, r4, cbForReadingFST@l
/* 80371CE8 0036EC48 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a
/* 80371CEC 0036EC4C 4B FF ED 5D */ bl DVDLowRead
/* 80371CF0 0036EC50 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371CF4 0036EC54 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80371CF8 0036EC58 38 21 00 10 */ addi r1, r1, 0x10
/* 80371CFC 0036EC5C 7C 08 03 A6 */ mtlr r0
/* 80371D00 0036EC60 4E 80 00 20 */ blr
.global cbForReadingFST
cbForReadingFST:
/* 80371D04 0036EC64 7C 08 02 A6 */ mflr r0
/* 80371D08 0036EC68 28 03 00 10 */ cmplwi r3, 0x10
/* 80371D0C 0036EC6C 90 01 00 04 */ stw r0, 4(r1)
/* 80371D10 0036EC70 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80371D14 0036EC74 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80371D18 0036EC78 40 82 00 18 */ bne lbl_80371D30
/* 80371D1C 0036EC7C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80371D20 0036EC80 38 00 FF FF */ li r0, -1
/* 80371D24 0036EC84 90 03 00 0C */ stw r0, 0xc(r3)
/* 80371D28 0036EC88 48 00 01 15 */ bl stateTimeout
/* 80371D2C 0036EC8C 48 00 00 50 */ b lbl_80371D7C
lbl_80371D30:
/* 80371D30 0036EC90 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80371D34 0036EC94 41 82 00 44 */ beq lbl_80371D78
/* 80371D38 0036EC98 3B E0 00 00 */ li r31, 0
/* 80371D3C 0036EC9C 93 ED AC 44 */ stw r31, lbl_805A9804@sda21(r13)
/* 80371D40 0036ECA0 4B FF F5 A5 */ bl __DVDFSInit
/* 80371D44 0036ECA4 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 80371D48 0036ECA8 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80371D4C 0036ECAC 38 03 0B A0 */ addi r0, r3, lbl_80540BA0@l
/* 80371D50 0036ECB0 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80371D54 0036ECB4 93 E4 00 0C */ stw r31, 0xc(r4)
/* 80371D58 0036ECB8 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80371D5C 0036ECBC 28 0C 00 00 */ cmplwi r12, 0
/* 80371D60 0036ECC0 41 82 00 10 */ beq lbl_80371D70
/* 80371D64 0036ECC4 7D 88 03 A6 */ mtlr r12
/* 80371D68 0036ECC8 38 60 00 00 */ li r3, 0
/* 80371D6C 0036ECCC 4E 80 00 21 */ blrl
lbl_80371D70:
/* 80371D70 0036ECD0 48 00 0E 95 */ bl stateReady
/* 80371D74 0036ECD4 48 00 00 08 */ b lbl_80371D7C
lbl_80371D78:
/* 80371D78 0036ECD8 48 00 00 F9 */ bl stateGettingError
lbl_80371D7C:
/* 80371D7C 0036ECDC 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80371D80 0036ECE0 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80371D84 0036ECE4 38 21 00 18 */ addi r1, r1, 0x18
/* 80371D88 0036ECE8 7C 08 03 A6 */ mtlr r0
/* 80371D8C 0036ECEC 4E 80 00 20 */ blr
.global cbForStateError
cbForStateError:
/* 80371D90 0036ECF0 7C 08 02 A6 */ mflr r0
/* 80371D94 0036ECF4 28 03 00 10 */ cmplwi r3, 0x10
/* 80371D98 0036ECF8 90 01 00 04 */ stw r0, 4(r1)
/* 80371D9C 0036ECFC 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80371DA0 0036ED00 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80371DA4 0036ED04 40 82 00 18 */ bne lbl_80371DBC
/* 80371DA8 0036ED08 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80371DAC 0036ED0C 38 00 FF FF */ li r0, -1
/* 80371DB0 0036ED10 90 03 00 0C */ stw r0, 0xc(r3)
/* 80371DB4 0036ED14 48 00 00 89 */ bl stateTimeout
/* 80371DB8 0036ED18 48 00 00 70 */ b lbl_80371E28
lbl_80371DBC:
/* 80371DBC 0036ED1C 48 00 30 81 */ bl __DVDPrintFatalMessage
/* 80371DC0 0036ED20 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 80371DC4 0036ED24 83 ED AC 10 */ lwz r31, lbl_805A97D0@sda21(r13)
/* 80371DC8 0036ED28 38 03 0B A0 */ addi r0, r3, lbl_80540BA0@l
/* 80371DCC 0036ED2C 38 60 00 01 */ li r3, 1
/* 80371DD0 0036ED30 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80371DD4 0036ED34 90 6D AC 28 */ stw r3, lbl_805A97E8@sda21(r13)
/* 80371DD8 0036ED38 81 9F 00 28 */ lwz r12, 0x28(r31)
/* 80371DDC 0036ED3C 28 0C 00 00 */ cmplwi r12, 0
/* 80371DE0 0036ED40 41 82 00 14 */ beq lbl_80371DF4
/* 80371DE4 0036ED44 7D 88 03 A6 */ mtlr r12
/* 80371DE8 0036ED48 38 9F 00 00 */ addi r4, r31, 0
/* 80371DEC 0036ED4C 38 60 FF FF */ li r3, -1
/* 80371DF0 0036ED50 4E 80 00 21 */ blrl
lbl_80371DF4:
/* 80371DF4 0036ED54 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 80371DF8 0036ED58 28 00 00 00 */ cmplwi r0, 0
/* 80371DFC 0036ED5C 41 82 00 28 */ beq lbl_80371E24
/* 80371E00 0036ED60 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 80371E04 0036ED64 38 00 00 00 */ li r0, 0
/* 80371E08 0036ED68 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 80371E0C 0036ED6C 28 0C 00 00 */ cmplwi r12, 0
/* 80371E10 0036ED70 41 82 00 14 */ beq lbl_80371E24
/* 80371E14 0036ED74 7D 88 03 A6 */ mtlr r12
/* 80371E18 0036ED78 38 9F 00 00 */ addi r4, r31, 0
/* 80371E1C 0036ED7C 38 60 00 00 */ li r3, 0
/* 80371E20 0036ED80 4E 80 00 21 */ blrl
lbl_80371E24:
/* 80371E24 0036ED84 48 00 0D E1 */ bl stateReady
lbl_80371E28:
/* 80371E28 0036ED88 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80371E2C 0036ED8C 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80371E30 0036ED90 38 21 00 18 */ addi r1, r1, 0x18
/* 80371E34 0036ED94 7C 08 03 A6 */ mtlr r0
/* 80371E38 0036ED98 4E 80 00 20 */ blr
.global stateTimeout
stateTimeout:
/* 80371E3C 0036ED9C 7C 08 02 A6 */ mflr r0
/* 80371E40 0036EDA0 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80371E44 0036EDA4 90 01 00 04 */ stw r0, 4(r1)
/* 80371E48 0036EDA8 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80371E4C 0036EDAC 94 21 FF F8 */ stwu r1, -8(r1)
/* 80371E50 0036EDB0 48 00 2D 7D */ bl __DVDStoreErrorCode
/* 80371E54 0036EDB4 48 00 22 6D */ bl DVDReset
/* 80371E58 0036EDB8 38 60 00 00 */ li r3, 0
/* 80371E5C 0036EDBC 4B FF FF 35 */ bl cbForStateError
/* 80371E60 0036EDC0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80371E64 0036EDC4 38 21 00 08 */ addi r1, r1, 8
/* 80371E68 0036EDC8 7C 08 03 A6 */ mtlr r0
/* 80371E6C 0036EDCC 4E 80 00 20 */ blr
.global stateGettingError
stateGettingError:
/* 80371E70 0036EDD0 7C 08 02 A6 */ mflr r0
/* 80371E74 0036EDD4 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 80371E78 0036EDD8 90 01 00 04 */ stw r0, 4(r1)
/* 80371E7C 0036EDDC 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 80371E80 0036EDE0 94 21 FF F8 */ stwu r1, -8(r1)
/* 80371E84 0036EDE4 4B FF F0 4D */ bl DVDLowRequestError
/* 80371E88 0036EDE8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80371E8C 0036EDEC 38 21 00 08 */ addi r1, r1, 8
/* 80371E90 0036EDF0 7C 08 03 A6 */ mtlr r0
/* 80371E94 0036EDF4 4E 80 00 20 */ blr
.global CategorizeError
CategorizeError:
/* 80371E98 0036EDF8 3C 03 FF FE */ addis r0, r3, 0xfffe
/* 80371E9C 0036EDFC 28 00 04 00 */ cmplwi r0, 0x400
/* 80371EA0 0036EE00 40 82 00 10 */ bne lbl_80371EB0
/* 80371EA4 0036EE04 90 6D AC 40 */ stw r3, lbl_805A9800@sda21(r13)
/* 80371EA8 0036EE08 38 60 00 01 */ li r3, 1
/* 80371EAC 0036EE0C 4E 80 00 20 */ blr
lbl_80371EB0:
/* 80371EB0 0036EE10 54 64 02 3E */ clrlwi r4, r3, 8
/* 80371EB4 0036EE14 3C 04 FF FA */ addis r0, r4, 0xfffa
/* 80371EB8 0036EE18 28 00 28 00 */ cmplwi r0, 0x2800
/* 80371EBC 0036EE1C 41 82 00 1C */ beq lbl_80371ED8
/* 80371EC0 0036EE20 3C 04 FF FE */ addis r0, r4, 0xfffe
/* 80371EC4 0036EE24 28 00 3A 00 */ cmplwi r0, 0x3a00
/* 80371EC8 0036EE28 41 82 00 10 */ beq lbl_80371ED8
/* 80371ECC 0036EE2C 3C 04 FF F5 */ addis r0, r4, 0xfff5
/* 80371ED0 0036EE30 28 00 5A 01 */ cmplwi r0, 0x5a01
/* 80371ED4 0036EE34 40 82 00 0C */ bne lbl_80371EE0
lbl_80371ED8:
/* 80371ED8 0036EE38 38 60 00 00 */ li r3, 0
/* 80371EDC 0036EE3C 4E 80 00 20 */ blr
lbl_80371EE0:
/* 80371EE0 0036EE40 80 6D AC 44 */ lwz r3, lbl_805A9804@sda21(r13)
/* 80371EE4 0036EE44 38 03 00 01 */ addi r0, r3, 1
/* 80371EE8 0036EE48 90 0D AC 44 */ stw r0, lbl_805A9804@sda21(r13)
/* 80371EEC 0036EE4C 80 0D AC 44 */ lwz r0, lbl_805A9804@sda21(r13)
/* 80371EF0 0036EE50 2C 00 00 02 */ cmpwi r0, 2
/* 80371EF4 0036EE54 40 82 00 28 */ bne lbl_80371F1C
/* 80371EF8 0036EE58 80 0D AC 40 */ lwz r0, lbl_805A9800@sda21(r13)
/* 80371EFC 0036EE5C 7C 04 00 40 */ cmplw r4, r0
/* 80371F00 0036EE60 40 82 00 10 */ bne lbl_80371F10
/* 80371F04 0036EE64 90 8D AC 40 */ stw r4, lbl_805A9800@sda21(r13)
/* 80371F08 0036EE68 38 60 00 01 */ li r3, 1
/* 80371F0C 0036EE6C 4E 80 00 20 */ blr
lbl_80371F10:
/* 80371F10 0036EE70 90 8D AC 40 */ stw r4, lbl_805A9800@sda21(r13)
/* 80371F14 0036EE74 38 60 00 02 */ li r3, 2
/* 80371F18 0036EE78 4E 80 00 20 */ blr
lbl_80371F1C:
/* 80371F1C 0036EE7C 3C 04 FF FD */ addis r0, r4, 0xfffd
/* 80371F20 0036EE80 90 8D AC 40 */ stw r4, lbl_805A9800@sda21(r13)
/* 80371F24 0036EE84 28 00 11 00 */ cmplwi r0, 0x1100
/* 80371F28 0036EE88 41 82 00 14 */ beq lbl_80371F3C
/* 80371F2C 0036EE8C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80371F30 0036EE90 80 03 00 08 */ lwz r0, 8(r3)
/* 80371F34 0036EE94 28 00 00 05 */ cmplwi r0, 5
/* 80371F38 0036EE98 40 82 00 0C */ bne lbl_80371F44
lbl_80371F3C:
/* 80371F3C 0036EE9C 38 60 00 02 */ li r3, 2
/* 80371F40 0036EEA0 4E 80 00 20 */ blr
lbl_80371F44:
/* 80371F44 0036EEA4 38 60 00 03 */ li r3, 3
/* 80371F48 0036EEA8 4E 80 00 20 */ blr
.global cbForStateGettingError
cbForStateGettingError:
/* 80371F4C 0036EEAC 7C 08 02 A6 */ mflr r0
/* 80371F50 0036EEB0 28 03 00 10 */ cmplwi r3, 0x10
/* 80371F54 0036EEB4 90 01 00 04 */ stw r0, 4(r1)
/* 80371F58 0036EEB8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80371F5C 0036EEBC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80371F60 0036EEC0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80371F64 0036EEC4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80371F68 0036EEC8 93 81 00 10 */ stw r28, 0x10(r1)
/* 80371F6C 0036EECC 40 82 00 2C */ bne lbl_80371F98
/* 80371F70 0036EED0 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80371F74 0036EED4 38 00 FF FF */ li r0, -1
/* 80371F78 0036EED8 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80371F7C 0036EEDC 90 04 00 0C */ stw r0, 0xc(r4)
/* 80371F80 0036EEE0 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80371F84 0036EEE4 48 00 2C 49 */ bl __DVDStoreErrorCode
/* 80371F88 0036EEE8 48 00 21 39 */ bl DVDReset
/* 80371F8C 0036EEEC 38 60 00 00 */ li r3, 0
/* 80371F90 0036EEF0 4B FF FE 01 */ bl cbForStateError
/* 80371F94 0036EEF4 48 00 02 2C */ b lbl_803721C0
lbl_80371F98:
/* 80371F98 0036EEF8 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80371F9C 0036EEFC 41 82 00 2C */ beq lbl_80371FC8
/* 80371FA0 0036EF00 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80371FA4 0036EF04 38 00 FF FF */ li r0, -1
/* 80371FA8 0036EF08 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 80371FAC 0036EF0C 90 04 00 0C */ stw r0, 0xc(r4)
/* 80371FB0 0036EF10 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80371FB4 0036EF14 48 00 2C 19 */ bl __DVDStoreErrorCode
/* 80371FB8 0036EF18 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 80371FBC 0036EF1C 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 80371FC0 0036EF20 4B FF EE 85 */ bl DVDLowStopMotor
/* 80371FC4 0036EF24 48 00 01 FC */ b lbl_803721C0
lbl_80371FC8:
/* 80371FC8 0036EF28 3C 60 CC 00 */ lis r3, 0xCC006020@ha
/* 80371FCC 0036EF2C 83 A3 60 20 */ lwz r29, 0xCC006020@l(r3)
/* 80371FD0 0036EF30 38 7D 00 00 */ addi r3, r29, 0
/* 80371FD4 0036EF34 57 BC 00 0E */ rlwinm r28, r29, 0, 0, 7
/* 80371FD8 0036EF38 4B FF FE C1 */ bl CategorizeError
/* 80371FDC 0036EF3C 3B E3 00 00 */ addi r31, r3, 0
/* 80371FE0 0036EF40 28 1F 00 01 */ cmplwi r31, 1
/* 80371FE4 0036EF44 40 82 00 28 */ bne lbl_8037200C
/* 80371FE8 0036EF48 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80371FEC 0036EF4C 38 00 FF FF */ li r0, -1
/* 80371FF0 0036EF50 38 7D 00 00 */ addi r3, r29, 0
/* 80371FF4 0036EF54 90 04 00 0C */ stw r0, 0xc(r4)
/* 80371FF8 0036EF58 48 00 2B D5 */ bl __DVDStoreErrorCode
/* 80371FFC 0036EF5C 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 80372000 0036EF60 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 80372004 0036EF64 4B FF EE 41 */ bl DVDLowStopMotor
/* 80372008 0036EF68 48 00 01 B8 */ b lbl_803721C0
lbl_8037200C:
/* 8037200C 0036EF6C 38 1F FF FE */ addi r0, r31, -2
/* 80372010 0036EF70 28 00 00 01 */ cmplwi r0, 1
/* 80372014 0036EF74 41 81 00 0C */ bgt lbl_80372020
/* 80372018 0036EF78 38 80 00 00 */ li r4, 0
/* 8037201C 0036EF7C 48 00 00 44 */ b lbl_80372060
lbl_80372020:
/* 80372020 0036EF80 3C 1C FF 00 */ addis r0, r28, 0xff00
/* 80372024 0036EF84 28 00 00 00 */ cmplwi r0, 0
/* 80372028 0036EF88 40 82 00 0C */ bne lbl_80372034
/* 8037202C 0036EF8C 38 80 00 04 */ li r4, 4
/* 80372030 0036EF90 48 00 00 30 */ b lbl_80372060
lbl_80372034:
/* 80372034 0036EF94 3C 1C FE 00 */ addis r0, r28, 0xfe00
/* 80372038 0036EF98 28 00 00 00 */ cmplwi r0, 0
/* 8037203C 0036EF9C 40 82 00 0C */ bne lbl_80372048
/* 80372040 0036EFA0 38 80 00 06 */ li r4, 6
/* 80372044 0036EFA4 48 00 00 1C */ b lbl_80372060
lbl_80372048:
/* 80372048 0036EFA8 3C 1C FD 00 */ addis r0, r28, 0xfd00
/* 8037204C 0036EFAC 28 00 00 00 */ cmplwi r0, 0
/* 80372050 0036EFB0 40 82 00 0C */ bne lbl_8037205C
/* 80372054 0036EFB4 38 80 00 03 */ li r4, 3
/* 80372058 0036EFB8 48 00 00 08 */ b lbl_80372060
lbl_8037205C:
/* 8037205C 0036EFBC 38 80 00 05 */ li r4, 5
lbl_80372060:
/* 80372060 0036EFC0 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 80372064 0036EFC4 28 00 00 00 */ cmplwi r0, 0
/* 80372068 0036EFC8 41 82 00 6C */ beq lbl_803720D4
/* 8037206C 0036EFCC 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 80372070 0036EFD0 90 8D AC 38 */ stw r4, lbl_805A97F8@sda21(r13)
/* 80372074 0036EFD4 38 00 00 00 */ li r0, 0
/* 80372078 0036EFD8 83 CD AC 10 */ lwz r30, lbl_805A97D0@sda21(r13)
/* 8037207C 0036EFDC 38 63 0B A0 */ addi r3, r3, lbl_80540BA0@l
/* 80372080 0036EFE0 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 80372084 0036EFE4 38 00 00 0A */ li r0, 0xa
/* 80372088 0036EFE8 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 8037208C 0036EFEC 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80372090 0036EFF0 81 9E 00 28 */ lwz r12, 0x28(r30)
/* 80372094 0036EFF4 28 0C 00 00 */ cmplwi r12, 0
/* 80372098 0036EFF8 41 82 00 14 */ beq lbl_803720AC
/* 8037209C 0036EFFC 7D 88 03 A6 */ mtlr r12
/* 803720A0 0036F000 38 9E 00 00 */ addi r4, r30, 0
/* 803720A4 0036F004 38 60 FF FD */ li r3, -3
/* 803720A8 0036F008 4E 80 00 21 */ blrl
lbl_803720AC:
/* 803720AC 0036F00C 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 803720B0 0036F010 28 0C 00 00 */ cmplwi r12, 0
/* 803720B4 0036F014 41 82 00 14 */ beq lbl_803720C8
/* 803720B8 0036F018 7D 88 03 A6 */ mtlr r12
/* 803720BC 0036F01C 38 9E 00 00 */ addi r4, r30, 0
/* 803720C0 0036F020 38 60 00 00 */ li r3, 0
/* 803720C4 0036F024 4E 80 00 21 */ blrl
lbl_803720C8:
/* 803720C8 0036F028 48 00 0B 3D */ bl stateReady
/* 803720CC 0036F02C 38 00 00 01 */ li r0, 1
/* 803720D0 0036F030 48 00 00 08 */ b lbl_803720D8
lbl_803720D4:
/* 803720D4 0036F034 38 00 00 00 */ li r0, 0
lbl_803720D8:
/* 803720D8 0036F038 2C 00 00 00 */ cmpwi r0, 0
/* 803720DC 0036F03C 40 82 00 E4 */ bne lbl_803721C0
/* 803720E0 0036F040 28 1F 00 02 */ cmplwi r31, 2
/* 803720E4 0036F044 40 82 00 14 */ bne lbl_803720F8
/* 803720E8 0036F048 7F A3 EB 78 */ mr r3, r29
/* 803720EC 0036F04C 48 00 2A E1 */ bl __DVDStoreErrorCode
/* 803720F0 0036F050 48 00 01 F1 */ bl stateGotToRetry
/* 803720F4 0036F054 48 00 00 CC */ b lbl_803721C0
lbl_803720F8:
/* 803720F8 0036F058 28 1F 00 03 */ cmplwi r31, 3
/* 803720FC 0036F05C 40 82 00 40 */ bne lbl_8037213C
/* 80372100 0036F060 57 A3 02 3E */ clrlwi r3, r29, 8
/* 80372104 0036F064 3C 03 FF FD */ addis r0, r3, 0xfffd
/* 80372108 0036F068 28 00 11 00 */ cmplwi r0, 0x1100
/* 8037210C 0036F06C 40 82 00 1C */ bne lbl_80372128
/* 80372110 0036F070 80 AD AC 10 */ lwz r5, lbl_805A97D0@sda21(r13)
/* 80372114 0036F074 3C 60 80 37 */ lis r3, cbForUnrecoveredError@ha
/* 80372118 0036F078 38 83 21 E0 */ addi r4, r3, cbForUnrecoveredError@l
/* 8037211C 0036F07C 80 65 00 10 */ lwz r3, 0x10(r5)
/* 80372120 0036F080 4B FF EB C1 */ bl DVDLowSeek
/* 80372124 0036F084 48 00 00 9C */ b lbl_803721C0
lbl_80372128:
/* 80372128 0036F088 81 8D AC 58 */ lwz r12, lbl_805A9818@sda21(r13)
/* 8037212C 0036F08C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372130 0036F090 7D 88 03 A6 */ mtlr r12
/* 80372134 0036F094 4E 80 00 21 */ blrl
/* 80372138 0036F098 48 00 00 88 */ b lbl_803721C0
lbl_8037213C:
/* 8037213C 0036F09C 3C 1C FF 00 */ addis r0, r28, 0xff00
/* 80372140 0036F0A0 28 00 00 00 */ cmplwi r0, 0
/* 80372144 0036F0A4 40 82 00 18 */ bne lbl_8037215C
/* 80372148 0036F0A8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 8037214C 0036F0AC 38 00 00 05 */ li r0, 5
/* 80372150 0036F0B0 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372154 0036F0B4 48 00 09 A5 */ bl stateMotorStopped
/* 80372158 0036F0B8 48 00 00 68 */ b lbl_803721C0
lbl_8037215C:
/* 8037215C 0036F0BC 3C 1C FE 00 */ addis r0, r28, 0xfe00
/* 80372160 0036F0C0 28 00 00 00 */ cmplwi r0, 0
/* 80372164 0036F0C4 40 82 00 18 */ bne lbl_8037217C
/* 80372168 0036F0C8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 8037216C 0036F0CC 38 00 00 03 */ li r0, 3
/* 80372170 0036F0D0 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372174 0036F0D4 48 00 08 19 */ bl stateCoverClosed
/* 80372178 0036F0D8 48 00 00 48 */ b lbl_803721C0
lbl_8037217C:
/* 8037217C 0036F0DC 3C 1C FD 00 */ addis r0, r28, 0xfd00
/* 80372180 0036F0E0 28 00 00 00 */ cmplwi r0, 0
/* 80372184 0036F0E4 40 82 00 18 */ bne lbl_8037219C
/* 80372188 0036F0E8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 8037218C 0036F0EC 38 00 00 04 */ li r0, 4
/* 80372190 0036F0F0 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372194 0036F0F4 48 00 09 65 */ bl stateMotorStopped
/* 80372198 0036F0F8 48 00 00 28 */ b lbl_803721C0
lbl_8037219C:
/* 8037219C 0036F0FC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803721A0 0036F100 38 00 FF FF */ li r0, -1
/* 803721A4 0036F104 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 803721A8 0036F108 90 04 00 0C */ stw r0, 0xc(r4)
/* 803721AC 0036F10C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 803721B0 0036F110 48 00 2A 1D */ bl __DVDStoreErrorCode
/* 803721B4 0036F114 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 803721B8 0036F118 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 803721BC 0036F11C 4B FF EC 89 */ bl DVDLowStopMotor
lbl_803721C0:
/* 803721C0 0036F120 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803721C4 0036F124 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803721C8 0036F128 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803721CC 0036F12C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803721D0 0036F130 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803721D4 0036F134 38 21 00 20 */ addi r1, r1, 0x20
/* 803721D8 0036F138 7C 08 03 A6 */ mtlr r0
/* 803721DC 0036F13C 4E 80 00 20 */ blr
.global cbForUnrecoveredError
cbForUnrecoveredError:
/* 803721E0 0036F140 7C 08 02 A6 */ mflr r0
/* 803721E4 0036F144 28 03 00 10 */ cmplwi r3, 0x10
/* 803721E8 0036F148 90 01 00 04 */ stw r0, 4(r1)
/* 803721EC 0036F14C 94 21 FF F8 */ stwu r1, -8(r1)
/* 803721F0 0036F150 40 82 00 2C */ bne lbl_8037221C
/* 803721F4 0036F154 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803721F8 0036F158 38 00 FF FF */ li r0, -1
/* 803721FC 0036F15C 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80372200 0036F160 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372204 0036F164 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372208 0036F168 48 00 29 C5 */ bl __DVDStoreErrorCode
/* 8037220C 0036F16C 48 00 1E B5 */ bl DVDReset
/* 80372210 0036F170 38 60 00 00 */ li r3, 0
/* 80372214 0036F174 4B FF FB 7D */ bl cbForStateError
/* 80372218 0036F178 48 00 00 20 */ b lbl_80372238
lbl_8037221C:
/* 8037221C 0036F17C 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80372220 0036F180 41 82 00 0C */ beq lbl_8037222C
/* 80372224 0036F184 48 00 00 BD */ bl stateGotToRetry
/* 80372228 0036F188 48 00 00 10 */ b lbl_80372238
lbl_8037222C:
/* 8037222C 0036F18C 3C 60 80 37 */ lis r3, cbForUnrecoveredErrorRetry@ha
/* 80372230 0036F190 38 63 22 48 */ addi r3, r3, cbForUnrecoveredErrorRetry@l
/* 80372234 0036F194 4B FF EC 9D */ bl DVDLowRequestError
lbl_80372238:
/* 80372238 0036F198 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8037223C 0036F19C 38 21 00 08 */ addi r1, r1, 8
/* 80372240 0036F1A0 7C 08 03 A6 */ mtlr r0
/* 80372244 0036F1A4 4E 80 00 20 */ blr
.global cbForUnrecoveredErrorRetry
cbForUnrecoveredErrorRetry:
/* 80372248 0036F1A8 7C 08 02 A6 */ mflr r0
/* 8037224C 0036F1AC 28 03 00 10 */ cmplwi r3, 0x10
/* 80372250 0036F1B0 90 01 00 04 */ stw r0, 4(r1)
/* 80372254 0036F1B4 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372258 0036F1B8 40 82 00 2C */ bne lbl_80372284
/* 8037225C 0036F1BC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372260 0036F1C0 38 00 FF FF */ li r0, -1
/* 80372264 0036F1C4 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80372268 0036F1C8 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037226C 0036F1CC 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372270 0036F1D0 48 00 29 5D */ bl __DVDStoreErrorCode
/* 80372274 0036F1D4 48 00 1E 4D */ bl DVDReset
/* 80372278 0036F1D8 38 60 00 00 */ li r3, 0
/* 8037227C 0036F1DC 4B FF FB 15 */ bl cbForStateError
/* 80372280 0036F1E0 48 00 00 50 */ b lbl_803722D0
lbl_80372284:
/* 80372284 0036F1E4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80372288 0036F1E8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 8037228C 0036F1EC 38 80 FF FF */ li r4, -1
/* 80372290 0036F1F0 90 83 00 0C */ stw r4, 0xc(r3)
/* 80372294 0036F1F4 41 82 00 20 */ beq lbl_803722B4
/* 80372298 0036F1F8 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 8037229C 0036F1FC 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 803722A0 0036F200 48 00 29 2D */ bl __DVDStoreErrorCode
/* 803722A4 0036F204 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 803722A8 0036F208 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 803722AC 0036F20C 4B FF EB 99 */ bl DVDLowStopMotor
/* 803722B0 0036F210 48 00 00 20 */ b lbl_803722D0
lbl_803722B4:
/* 803722B4 0036F214 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 803722B8 0036F218 38 63 60 00 */ addi r3, r3, 0xCC006000@l
/* 803722BC 0036F21C 80 63 00 20 */ lwz r3, 0x20(r3)
/* 803722C0 0036F220 48 00 29 0D */ bl __DVDStoreErrorCode
/* 803722C4 0036F224 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 803722C8 0036F228 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 803722CC 0036F22C 4B FF EB 79 */ bl DVDLowStopMotor
lbl_803722D0:
/* 803722D0 0036F230 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803722D4 0036F234 38 21 00 08 */ addi r1, r1, 8
/* 803722D8 0036F238 7C 08 03 A6 */ mtlr r0
/* 803722DC 0036F23C 4E 80 00 20 */ blr
.global stateGotToRetry
stateGotToRetry:
/* 803722E0 0036F240 7C 08 02 A6 */ mflr r0
/* 803722E4 0036F244 3C 60 80 37 */ lis r3, cbForStateGoToRetry@ha
/* 803722E8 0036F248 90 01 00 04 */ stw r0, 4(r1)
/* 803722EC 0036F24C 38 63 23 08 */ addi r3, r3, cbForStateGoToRetry@l
/* 803722F0 0036F250 94 21 FF F8 */ stwu r1, -8(r1)
/* 803722F4 0036F254 4B FF EB 51 */ bl DVDLowStopMotor
/* 803722F8 0036F258 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803722FC 0036F25C 38 21 00 08 */ addi r1, r1, 8
/* 80372300 0036F260 7C 08 03 A6 */ mtlr r0
/* 80372304 0036F264 4E 80 00 20 */ blr
.global cbForStateGoToRetry
cbForStateGoToRetry:
/* 80372308 0036F268 7C 08 02 A6 */ mflr r0
/* 8037230C 0036F26C 28 03 00 10 */ cmplwi r3, 0x10
/* 80372310 0036F270 90 01 00 04 */ stw r0, 4(r1)
/* 80372314 0036F274 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80372318 0036F278 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8037231C 0036F27C 40 82 00 2C */ bne lbl_80372348
/* 80372320 0036F280 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372324 0036F284 38 00 FF FF */ li r0, -1
/* 80372328 0036F288 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 8037232C 0036F28C 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372330 0036F290 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372334 0036F294 48 00 28 99 */ bl __DVDStoreErrorCode
/* 80372338 0036F298 48 00 1D 89 */ bl DVDReset
/* 8037233C 0036F29C 38 60 00 00 */ li r3, 0
/* 80372340 0036F2A0 4B FF FA 51 */ bl cbForStateError
/* 80372344 0036F2A4 48 00 01 08 */ b lbl_8037244C
lbl_80372348:
/* 80372348 0036F2A8 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 8037234C 0036F2AC 41 82 00 2C */ beq lbl_80372378
/* 80372350 0036F2B0 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372354 0036F2B4 38 00 FF FF */ li r0, -1
/* 80372358 0036F2B8 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 8037235C 0036F2BC 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372360 0036F2C0 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80372364 0036F2C4 48 00 28 69 */ bl __DVDStoreErrorCode
/* 80372368 0036F2C8 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 8037236C 0036F2CC 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 80372370 0036F2D0 4B FF EA D5 */ bl DVDLowStopMotor
/* 80372374 0036F2D4 48 00 00 D8 */ b lbl_8037244C
lbl_80372378:
/* 80372378 0036F2D8 38 00 00 00 */ li r0, 0
/* 8037237C 0036F2DC 90 0D AC 44 */ stw r0, lbl_805A9804@sda21(r13)
/* 80372380 0036F2E0 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80372384 0036F2E4 28 00 00 04 */ cmplwi r0, 4
/* 80372388 0036F2E8 41 82 00 28 */ beq lbl_803723B0
/* 8037238C 0036F2EC 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80372390 0036F2F0 28 00 00 05 */ cmplwi r0, 5
/* 80372394 0036F2F4 41 82 00 1C */ beq lbl_803723B0
/* 80372398 0036F2F8 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 8037239C 0036F2FC 28 00 00 0D */ cmplwi r0, 0xd
/* 803723A0 0036F300 41 82 00 10 */ beq lbl_803723B0
/* 803723A4 0036F304 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 803723A8 0036F308 28 00 00 0F */ cmplwi r0, 0xf
/* 803723AC 0036F30C 40 82 00 0C */ bne lbl_803723B8
lbl_803723B0:
/* 803723B0 0036F310 38 00 00 01 */ li r0, 1
/* 803723B4 0036F314 90 0D AC 48 */ stw r0, lbl_805A9808@sda21(r13)
lbl_803723B8:
/* 803723B8 0036F318 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 803723BC 0036F31C 28 00 00 00 */ cmplwi r0, 0
/* 803723C0 0036F320 41 82 00 70 */ beq lbl_80372430
/* 803723C4 0036F324 38 00 00 02 */ li r0, 2
/* 803723C8 0036F328 83 ED AC 10 */ lwz r31, lbl_805A97D0@sda21(r13)
/* 803723CC 0036F32C 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 803723D0 0036F330 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
/* 803723D4 0036F334 38 03 0B A0 */ addi r0, r3, lbl_80540BA0@l
/* 803723D8 0036F338 38 60 00 00 */ li r3, 0
/* 803723DC 0036F33C 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 803723E0 0036F340 38 00 00 0A */ li r0, 0xa
/* 803723E4 0036F344 90 6D AC 30 */ stw r3, lbl_805A97F0@sda21(r13)
/* 803723E8 0036F348 90 1F 00 0C */ stw r0, 0xc(r31)
/* 803723EC 0036F34C 81 9F 00 28 */ lwz r12, 0x28(r31)
/* 803723F0 0036F350 28 0C 00 00 */ cmplwi r12, 0
/* 803723F4 0036F354 41 82 00 14 */ beq lbl_80372408
/* 803723F8 0036F358 7D 88 03 A6 */ mtlr r12
/* 803723FC 0036F35C 38 9F 00 00 */ addi r4, r31, 0
/* 80372400 0036F360 38 60 FF FD */ li r3, -3
/* 80372404 0036F364 4E 80 00 21 */ blrl
lbl_80372408:
/* 80372408 0036F368 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 8037240C 0036F36C 28 0C 00 00 */ cmplwi r12, 0
/* 80372410 0036F370 41 82 00 14 */ beq lbl_80372424
/* 80372414 0036F374 7D 88 03 A6 */ mtlr r12
/* 80372418 0036F378 38 9F 00 00 */ addi r4, r31, 0
/* 8037241C 0036F37C 38 60 00 00 */ li r3, 0
/* 80372420 0036F380 4E 80 00 21 */ blrl
lbl_80372424:
/* 80372424 0036F384 48 00 07 E1 */ bl stateReady
/* 80372428 0036F388 38 00 00 01 */ li r0, 1
/* 8037242C 0036F38C 48 00 00 08 */ b lbl_80372434
lbl_80372430:
/* 80372430 0036F390 38 00 00 00 */ li r0, 0
lbl_80372434:
/* 80372434 0036F394 2C 00 00 00 */ cmpwi r0, 0
/* 80372438 0036F398 40 82 00 14 */ bne lbl_8037244C
/* 8037243C 0036F39C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372440 0036F3A0 38 00 00 0B */ li r0, 0xb
/* 80372444 0036F3A4 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372448 0036F3A8 48 00 06 B1 */ bl stateMotorStopped
lbl_8037244C:
/* 8037244C 0036F3AC 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80372450 0036F3B0 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80372454 0036F3B4 38 21 00 18 */ addi r1, r1, 0x18
/* 80372458 0036F3B8 7C 08 03 A6 */ mtlr r0
/* 8037245C 0036F3BC 4E 80 00 20 */ blr
.global stateCheckID
stateCheckID:
/* 80372460 0036F3C0 7C 08 02 A6 */ mflr r0
/* 80372464 0036F3C4 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80372468 0036F3C8 90 01 00 04 */ stw r0, 4(r1)
/* 8037246C 0036F3CC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372470 0036F3D0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372474 0036F3D4 3B E3 0B 60 */ addi r31, r3, lbl_80540B60@l
/* 80372478 0036F3D8 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 8037247C 0036F3DC 2C 00 00 03 */ cmpwi r0, 3
/* 80372480 0036F3E0 41 82 00 08 */ beq lbl_80372488
/* 80372484 0036F3E4 48 00 00 6C */ b lbl_803724F0
lbl_80372488:
/* 80372488 0036F3E8 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 8037248C 0036F3EC 38 7F 00 20 */ addi r3, r31, 0x20
/* 80372490 0036F3F0 80 84 00 24 */ lwz r4, 0x24(r4)
/* 80372494 0036F3F4 48 00 27 B5 */ bl DVDCompareDiskID
/* 80372498 0036F3F8 2C 03 00 00 */ cmpwi r3, 0
/* 8037249C 0036F3FC 41 82 00 44 */ beq lbl_803724E0
/* 803724A0 0036F400 80 6D AC 14 */ lwz r3, lbl_805A97D4@sda21(r13)
/* 803724A4 0036F404 38 9F 00 20 */ addi r4, r31, 0x20
/* 803724A8 0036F408 38 A0 00 20 */ li r5, 0x20
/* 803724AC 0036F40C 4B C9 0F E5 */ bl memcpy
/* 803724B0 0036F410 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803724B4 0036F414 38 00 00 01 */ li r0, 1
/* 803724B8 0036F418 38 7F 00 00 */ addi r3, r31, 0
/* 803724BC 0036F41C 90 04 00 0C */ stw r0, 0xc(r4)
/* 803724C0 0036F420 38 80 00 20 */ li r4, 0x20
/* 803724C4 0036F424 48 00 C5 C1 */ bl DCInvalidateRange
/* 803724C8 0036F428 3C 80 80 37 */ lis r4, stateCheckID2a@ha
/* 803724CC 0036F42C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 803724D0 0036F430 38 04 25 74 */ addi r0, r4, stateCheckID2a@l
/* 803724D4 0036F434 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 803724D8 0036F438 48 00 00 9D */ bl stateCheckID2a
/* 803724DC 0036F43C 48 00 00 50 */ b lbl_8037252C
lbl_803724E0:
/* 803724E0 0036F440 3C 60 80 37 */ lis r3, cbForStateCheckID1@ha
/* 803724E4 0036F444 38 63 26 54 */ addi r3, r3, cbForStateCheckID1@l
/* 803724E8 0036F448 4B FF E9 5D */ bl DVDLowStopMotor
/* 803724EC 0036F44C 48 00 00 40 */ b lbl_8037252C
lbl_803724F0:
/* 803724F0 0036F450 80 8D AC 14 */ lwz r4, lbl_805A97D4@sda21(r13)
/* 803724F4 0036F454 38 7F 00 20 */ addi r3, r31, 0x20
/* 803724F8 0036F458 38 A0 00 20 */ li r5, 0x20
/* 803724FC 0036F45C 48 01 B3 81 */ bl memcmp
/* 80372500 0036F460 2C 03 00 00 */ cmpwi r3, 0
/* 80372504 0036F464 41 82 00 14 */ beq lbl_80372518
/* 80372508 0036F468 3C 60 80 37 */ lis r3, cbForStateCheckID1@ha
/* 8037250C 0036F46C 38 63 26 54 */ addi r3, r3, cbForStateCheckID1@l
/* 80372510 0036F470 4B FF E9 35 */ bl DVDLowStopMotor
/* 80372514 0036F474 48 00 00 18 */ b lbl_8037252C
lbl_80372518:
/* 80372518 0036F478 3C 80 80 37 */ lis r4, stateCheckID3@ha
/* 8037251C 0036F47C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372520 0036F480 38 04 25 40 */ addi r0, r4, stateCheckID3@l
/* 80372524 0036F484 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 80372528 0036F488 48 00 00 19 */ bl stateCheckID3
lbl_8037252C:
/* 8037252C 0036F48C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372530 0036F490 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372534 0036F494 38 21 00 10 */ addi r1, r1, 0x10
/* 80372538 0036F498 7C 08 03 A6 */ mtlr r0
/* 8037253C 0036F49C 4E 80 00 20 */ blr
.global stateCheckID3
stateCheckID3:
/* 80372540 0036F4A0 7C 08 02 A6 */ mflr r0
/* 80372544 0036F4A4 3C 60 80 37 */ lis r3, cbForStateCheckID3@ha
/* 80372548 0036F4A8 90 01 00 04 */ stw r0, 4(r1)
/* 8037254C 0036F4AC 38 A3 28 4C */ addi r5, r3, cbForStateCheckID3@l
/* 80372550 0036F4B0 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372554 0036F4B4 80 8D AC 14 */ lwz r4, lbl_805A97D4@sda21(r13)
/* 80372558 0036F4B8 88 64 00 08 */ lbz r3, 8(r4)
/* 8037255C 0036F4BC 38 80 00 0A */ li r4, 0xa
/* 80372560 0036F4C0 4B FF EB BD */ bl DVDLowAudioBufferConfig
/* 80372564 0036F4C4 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372568 0036F4C8 38 21 00 08 */ addi r1, r1, 8
/* 8037256C 0036F4CC 7C 08 03 A6 */ mtlr r0
/* 80372570 0036F4D0 4E 80 00 20 */ blr
.global stateCheckID2a
stateCheckID2a:
/* 80372574 0036F4D4 7C 08 02 A6 */ mflr r0
/* 80372578 0036F4D8 3C 60 80 37 */ lis r3, cbForStateCheckID2a@ha
/* 8037257C 0036F4DC 90 01 00 04 */ stw r0, 4(r1)
/* 80372580 0036F4E0 38 A3 25 A8 */ addi r5, r3, cbForStateCheckID2a@l
/* 80372584 0036F4E4 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372588 0036F4E8 80 8D AC 14 */ lwz r4, lbl_805A97D4@sda21(r13)
/* 8037258C 0036F4EC 88 64 00 08 */ lbz r3, 8(r4)
/* 80372590 0036F4F0 38 80 00 0A */ li r4, 0xa
/* 80372594 0036F4F4 4B FF EB 89 */ bl DVDLowAudioBufferConfig
/* 80372598 0036F4F8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8037259C 0036F4FC 38 21 00 08 */ addi r1, r1, 8
/* 803725A0 0036F500 7C 08 03 A6 */ mtlr r0
/* 803725A4 0036F504 4E 80 00 20 */ blr
.global cbForStateCheckID2a
cbForStateCheckID2a:
/* 803725A8 0036F508 7C 08 02 A6 */ mflr r0
/* 803725AC 0036F50C 28 03 00 10 */ cmplwi r3, 0x10
/* 803725B0 0036F510 90 01 00 04 */ stw r0, 4(r1)
/* 803725B4 0036F514 94 21 FF F8 */ stwu r1, -8(r1)
/* 803725B8 0036F518 40 82 00 2C */ bne lbl_803725E4
/* 803725BC 0036F51C 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803725C0 0036F520 38 00 FF FF */ li r0, -1
/* 803725C4 0036F524 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 803725C8 0036F528 90 04 00 0C */ stw r0, 0xc(r4)
/* 803725CC 0036F52C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 803725D0 0036F530 48 00 25 FD */ bl __DVDStoreErrorCode
/* 803725D4 0036F534 48 00 1A ED */ bl DVDReset
/* 803725D8 0036F538 38 60 00 00 */ li r3, 0
/* 803725DC 0036F53C 4B FF F7 B5 */ bl cbForStateError
/* 803725E0 0036F540 48 00 00 2C */ b lbl_8037260C
lbl_803725E4:
/* 803725E4 0036F544 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 803725E8 0036F548 41 82 00 18 */ beq lbl_80372600
/* 803725EC 0036F54C 38 00 00 00 */ li r0, 0
/* 803725F0 0036F550 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 803725F4 0036F554 90 0D AC 44 */ stw r0, lbl_805A9804@sda21(r13)
/* 803725F8 0036F558 48 00 00 25 */ bl stateCheckID2
/* 803725FC 0036F55C 48 00 00 10 */ b lbl_8037260C
lbl_80372600:
/* 80372600 0036F560 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 80372604 0036F564 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 80372608 0036F568 4B FF E8 C9 */ bl DVDLowRequestError
lbl_8037260C:
/* 8037260C 0036F56C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372610 0036F570 38 21 00 08 */ addi r1, r1, 8
/* 80372614 0036F574 7C 08 03 A6 */ mtlr r0
/* 80372618 0036F578 4E 80 00 20 */ blr
.global stateCheckID2
stateCheckID2:
/* 8037261C 0036F57C 7C 08 02 A6 */ mflr r0
/* 80372620 0036F580 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80372624 0036F584 90 01 00 04 */ stw r0, 4(r1)
/* 80372628 0036F588 3C 80 80 37 */ lis r4, cbForStateCheckID2@ha
/* 8037262C 0036F58C 38 C4 27 68 */ addi r6, r4, cbForStateCheckID2@l
/* 80372630 0036F590 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372634 0036F594 38 63 0B 60 */ addi r3, r3, lbl_80540B60@l
/* 80372638 0036F598 38 80 00 20 */ li r4, 0x20
/* 8037263C 0036F59C 38 A0 04 20 */ li r5, 0x420
/* 80372640 0036F5A0 4B FF E4 09 */ bl DVDLowRead
/* 80372644 0036F5A4 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372648 0036F5A8 38 21 00 08 */ addi r1, r1, 8
/* 8037264C 0036F5AC 7C 08 03 A6 */ mtlr r0
/* 80372650 0036F5B0 4E 80 00 20 */ blr
.global cbForStateCheckID1
cbForStateCheckID1:
/* 80372654 0036F5B4 7C 08 02 A6 */ mflr r0
/* 80372658 0036F5B8 28 03 00 10 */ cmplwi r3, 0x10
/* 8037265C 0036F5BC 90 01 00 04 */ stw r0, 4(r1)
/* 80372660 0036F5C0 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80372664 0036F5C4 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80372668 0036F5C8 40 82 00 2C */ bne lbl_80372694
/* 8037266C 0036F5CC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372670 0036F5D0 38 00 FF FF */ li r0, -1
/* 80372674 0036F5D4 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80372678 0036F5D8 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037267C 0036F5DC 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372680 0036F5E0 48 00 25 4D */ bl __DVDStoreErrorCode
/* 80372684 0036F5E4 48 00 1A 3D */ bl DVDReset
/* 80372688 0036F5E8 38 60 00 00 */ li r3, 0
/* 8037268C 0036F5EC 4B FF F7 05 */ bl cbForStateError
/* 80372690 0036F5F0 48 00 00 C4 */ b lbl_80372754
lbl_80372694:
/* 80372694 0036F5F4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80372698 0036F5F8 41 82 00 2C */ beq lbl_803726C4
/* 8037269C 0036F5FC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803726A0 0036F600 38 00 FF FF */ li r0, -1
/* 803726A4 0036F604 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 803726A8 0036F608 90 04 00 0C */ stw r0, 0xc(r4)
/* 803726AC 0036F60C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 803726B0 0036F610 48 00 25 1D */ bl __DVDStoreErrorCode
/* 803726B4 0036F614 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 803726B8 0036F618 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 803726BC 0036F61C 4B FF E7 89 */ bl DVDLowStopMotor
/* 803726C0 0036F620 48 00 00 94 */ b lbl_80372754
lbl_803726C4:
/* 803726C4 0036F624 38 80 00 00 */ li r4, 0
/* 803726C8 0036F628 90 8D AC 44 */ stw r4, lbl_805A9804@sda21(r13)
/* 803726CC 0036F62C 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 803726D0 0036F630 28 00 00 00 */ cmplwi r0, 0
/* 803726D4 0036F634 41 82 00 68 */ beq lbl_8037273C
/* 803726D8 0036F638 38 00 00 01 */ li r0, 1
/* 803726DC 0036F63C 83 ED AC 10 */ lwz r31, lbl_805A97D0@sda21(r13)
/* 803726E0 0036F640 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
/* 803726E4 0036F644 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 803726E8 0036F648 38 63 0B A0 */ addi r3, r3, lbl_80540BA0@l
/* 803726EC 0036F64C 90 8D AC 30 */ stw r4, lbl_805A97F0@sda21(r13)
/* 803726F0 0036F650 38 00 00 0A */ li r0, 0xa
/* 803726F4 0036F654 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803726F8 0036F658 90 1F 00 0C */ stw r0, 0xc(r31)
/* 803726FC 0036F65C 81 9F 00 28 */ lwz r12, 0x28(r31)
/* 80372700 0036F660 28 0C 00 00 */ cmplwi r12, 0
/* 80372704 0036F664 41 82 00 14 */ beq lbl_80372718
/* 80372708 0036F668 7D 88 03 A6 */ mtlr r12
/* 8037270C 0036F66C 38 9F 00 00 */ addi r4, r31, 0
/* 80372710 0036F670 38 60 FF FD */ li r3, -3
/* 80372714 0036F674 4E 80 00 21 */ blrl
lbl_80372718:
/* 80372718 0036F678 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 8037271C 0036F67C 28 0C 00 00 */ cmplwi r12, 0
/* 80372720 0036F680 41 82 00 14 */ beq lbl_80372734
/* 80372724 0036F684 7D 88 03 A6 */ mtlr r12
/* 80372728 0036F688 38 9F 00 00 */ addi r4, r31, 0
/* 8037272C 0036F68C 38 60 00 00 */ li r3, 0
/* 80372730 0036F690 4E 80 00 21 */ blrl
lbl_80372734:
/* 80372734 0036F694 48 00 04 D1 */ bl stateReady
/* 80372738 0036F698 38 80 00 01 */ li r4, 1
lbl_8037273C:
/* 8037273C 0036F69C 2C 04 00 00 */ cmpwi r4, 0
/* 80372740 0036F6A0 40 82 00 14 */ bne lbl_80372754
/* 80372744 0036F6A4 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372748 0036F6A8 38 00 00 06 */ li r0, 6
/* 8037274C 0036F6AC 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372750 0036F6B0 48 00 03 A9 */ bl stateMotorStopped
lbl_80372754:
/* 80372754 0036F6B4 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80372758 0036F6B8 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8037275C 0036F6BC 38 21 00 18 */ addi r1, r1, 0x18
/* 80372760 0036F6C0 7C 08 03 A6 */ mtlr r0
/* 80372764 0036F6C4 4E 80 00 20 */ blr
.global cbForStateCheckID2
cbForStateCheckID2:
/* 80372768 0036F6C8 7C 08 02 A6 */ mflr r0
/* 8037276C 0036F6CC 28 03 00 10 */ cmplwi r3, 0x10
/* 80372770 0036F6D0 90 01 00 04 */ stw r0, 4(r1)
/* 80372774 0036F6D4 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80372778 0036F6D8 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8037277C 0036F6DC 40 82 00 2C */ bne lbl_803727A8
/* 80372780 0036F6E0 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372784 0036F6E4 38 00 FF FF */ li r0, -1
/* 80372788 0036F6E8 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 8037278C 0036F6EC 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372790 0036F6F0 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372794 0036F6F4 48 00 24 39 */ bl __DVDStoreErrorCode
/* 80372798 0036F6F8 48 00 19 29 */ bl DVDReset
/* 8037279C 0036F6FC 38 60 00 00 */ li r3, 0
/* 803727A0 0036F700 4B FF F5 F1 */ bl cbForStateError
/* 803727A4 0036F704 48 00 00 94 */ b lbl_80372838
lbl_803727A8:
/* 803727A8 0036F708 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 803727AC 0036F70C 41 82 00 80 */ beq lbl_8037282C
/* 803727B0 0036F710 3C 60 80 37 */ lis r3, stateReadingFST@ha
/* 803727B4 0036F714 80 8D AC 18 */ lwz r4, lbl_805A97D8@sda21(r13)
/* 803727B8 0036F718 38 03 1C 70 */ addi r0, r3, stateReadingFST@l
/* 803727BC 0036F71C 38 A0 00 00 */ li r5, 0
/* 803727C0 0036F720 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 803727C4 0036F724 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 803727C8 0036F728 90 AD AC 44 */ stw r5, lbl_805A9804@sda21(r13)
/* 803727CC 0036F72C 38 63 0B 60 */ addi r3, r3, lbl_80540B60@l
/* 803727D0 0036F730 3B E3 00 08 */ addi r31, r3, 8
/* 803727D4 0036F734 80 64 00 3C */ lwz r3, 0x3c(r4)
/* 803727D8 0036F738 80 1F 00 00 */ lwz r0, 0(r31)
/* 803727DC 0036F73C 7C 03 00 40 */ cmplw r3, r0
/* 803727E0 0036F740 40 80 00 1C */ bge lbl_803727FC
/* 803727E4 0036F744 3C 60 80 3F */ lis r3, lbl_803EFFD4@ha
/* 803727E8 0036F748 4C C6 31 82 */ crclr 6
/* 803727EC 0036F74C 38 A3 FF D4 */ addi r5, r3, lbl_803EFFD4@l
/* 803727F0 0036F750 38 6D 9E E4 */ addi r3, r13, lbl_805A8AA4@sda21
/* 803727F4 0036F754 38 80 02 76 */ li r4, 0x276
/* 803727F8 0036F758 48 00 D2 35 */ bl OSPanic
lbl_803727FC:
/* 803727FC 0036F75C 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80372800 0036F760 80 DF 00 00 */ lwz r6, 0(r31)
/* 80372804 0036F764 38 A3 0B 60 */ addi r5, r3, lbl_80540B60@l
/* 80372808 0036F768 80 ED AC 18 */ lwz r7, lbl_805A97D8@sda21(r13)
/* 8037280C 0036F76C 3C 80 80 37 */ lis r4, cbForReadingFST@ha
/* 80372810 0036F770 80 A5 00 04 */ lwz r5, 4(r5)
/* 80372814 0036F774 38 06 00 1F */ addi r0, r6, 0x1f
/* 80372818 0036F778 80 67 00 38 */ lwz r3, 0x38(r7)
/* 8037281C 0036F77C 38 C4 1D 04 */ addi r6, r4, cbForReadingFST@l
/* 80372820 0036F780 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a
/* 80372824 0036F784 4B FF E2 25 */ bl DVDLowRead
/* 80372828 0036F788 48 00 00 10 */ b lbl_80372838
lbl_8037282C:
/* 8037282C 0036F78C 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 80372830 0036F790 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 80372834 0036F794 4B FF E6 9D */ bl DVDLowRequestError
lbl_80372838:
/* 80372838 0036F798 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8037283C 0036F79C 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80372840 0036F7A0 38 21 00 18 */ addi r1, r1, 0x18
/* 80372844 0036F7A4 7C 08 03 A6 */ mtlr r0
/* 80372848 0036F7A8 4E 80 00 20 */ blr
.global cbForStateCheckID3
cbForStateCheckID3:
/* 8037284C 0036F7AC 7C 08 02 A6 */ mflr r0
/* 80372850 0036F7B0 28 03 00 10 */ cmplwi r3, 0x10
/* 80372854 0036F7B4 90 01 00 04 */ stw r0, 4(r1)
/* 80372858 0036F7B8 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 8037285C 0036F7BC 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80372860 0036F7C0 40 82 00 2C */ bne lbl_8037288C
/* 80372864 0036F7C4 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372868 0036F7C8 38 00 FF FF */ li r0, -1
/* 8037286C 0036F7CC 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80372870 0036F7D0 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372874 0036F7D4 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372878 0036F7D8 48 00 23 55 */ bl __DVDStoreErrorCode
/* 8037287C 0036F7DC 48 00 18 45 */ bl DVDReset
/* 80372880 0036F7E0 38 60 00 00 */ li r3, 0
/* 80372884 0036F7E4 4B FF F5 0D */ bl cbForStateError
/* 80372888 0036F7E8 48 00 00 AC */ b lbl_80372934
lbl_8037288C:
/* 8037288C 0036F7EC 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80372890 0036F7F0 41 82 00 98 */ beq lbl_80372928
/* 80372894 0036F7F4 38 80 00 00 */ li r4, 0
/* 80372898 0036F7F8 90 8D AC 44 */ stw r4, lbl_805A9804@sda21(r13)
/* 8037289C 0036F7FC 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 803728A0 0036F800 28 00 00 00 */ cmplwi r0, 0
/* 803728A4 0036F804 41 82 00 64 */ beq lbl_80372908
/* 803728A8 0036F808 90 8D AC 38 */ stw r4, lbl_805A97F8@sda21(r13)
/* 803728AC 0036F80C 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 803728B0 0036F810 83 ED AC 10 */ lwz r31, lbl_805A97D0@sda21(r13)
/* 803728B4 0036F814 38 63 0B A0 */ addi r3, r3, lbl_80540BA0@l
/* 803728B8 0036F818 90 8D AC 30 */ stw r4, lbl_805A97F0@sda21(r13)
/* 803728BC 0036F81C 38 00 00 0A */ li r0, 0xa
/* 803728C0 0036F820 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803728C4 0036F824 90 1F 00 0C */ stw r0, 0xc(r31)
/* 803728C8 0036F828 81 9F 00 28 */ lwz r12, 0x28(r31)
/* 803728CC 0036F82C 28 0C 00 00 */ cmplwi r12, 0
/* 803728D0 0036F830 41 82 00 14 */ beq lbl_803728E4
/* 803728D4 0036F834 7D 88 03 A6 */ mtlr r12
/* 803728D8 0036F838 38 9F 00 00 */ addi r4, r31, 0
/* 803728DC 0036F83C 38 60 FF FD */ li r3, -3
/* 803728E0 0036F840 4E 80 00 21 */ blrl
lbl_803728E4:
/* 803728E4 0036F844 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 803728E8 0036F848 28 0C 00 00 */ cmplwi r12, 0
/* 803728EC 0036F84C 41 82 00 14 */ beq lbl_80372900
/* 803728F0 0036F850 7D 88 03 A6 */ mtlr r12
/* 803728F4 0036F854 38 9F 00 00 */ addi r4, r31, 0
/* 803728F8 0036F858 38 60 00 00 */ li r3, 0
/* 803728FC 0036F85C 4E 80 00 21 */ blrl
lbl_80372900:
/* 80372900 0036F860 48 00 03 05 */ bl stateReady
/* 80372904 0036F864 38 80 00 01 */ li r4, 1
lbl_80372908:
/* 80372908 0036F868 2C 04 00 00 */ cmpwi r4, 0
/* 8037290C 0036F86C 40 82 00 28 */ bne lbl_80372934
/* 80372910 0036F870 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372914 0036F874 38 00 00 01 */ li r0, 1
/* 80372918 0036F878 90 03 00 0C */ stw r0, 0xc(r3)
/* 8037291C 0036F87C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372920 0036F880 48 00 05 C1 */ bl stateBusy
/* 80372924 0036F884 48 00 00 10 */ b lbl_80372934
lbl_80372928:
/* 80372928 0036F888 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 8037292C 0036F88C 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 80372930 0036F890 4B FF E5 A1 */ bl DVDLowRequestError
lbl_80372934:
/* 80372934 0036F894 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80372938 0036F898 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8037293C 0036F89C 38 21 00 18 */ addi r1, r1, 0x18
/* 80372940 0036F8A0 7C 08 03 A6 */ mtlr r0
/* 80372944 0036F8A4 4E 80 00 20 */ blr
.global AlarmHandler_0
AlarmHandler_0:
/* 80372948 0036F8A8 7C 08 02 A6 */ mflr r0
/* 8037294C 0036F8AC 90 01 00 04 */ stw r0, 4(r1)
/* 80372950 0036F8B0 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372954 0036F8B4 48 00 17 6D */ bl DVDReset
/* 80372958 0036F8B8 3C 60 80 54 */ lis r3, lbl_80540B80@ha
/* 8037295C 0036F8BC 38 63 0B 80 */ addi r3, r3, lbl_80540B80@l
/* 80372960 0036F8C0 38 80 00 20 */ li r4, 0x20
/* 80372964 0036F8C4 48 00 C1 21 */ bl DCInvalidateRange
/* 80372968 0036F8C8 3C 80 80 37 */ lis r4, stateCoverClosed_CMD@ha
/* 8037296C 0036F8CC 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372970 0036F8D0 38 04 2A 58 */ addi r0, r4, stateCoverClosed_CMD@l
/* 80372974 0036F8D4 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 80372978 0036F8D8 48 00 00 E1 */ bl stateCoverClosed_CMD
/* 8037297C 0036F8DC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372980 0036F8E0 38 21 00 08 */ addi r1, r1, 8
/* 80372984 0036F8E4 7C 08 03 A6 */ mtlr r0
/* 80372988 0036F8E8 4E 80 00 20 */ blr
.global stateCoverClosed
stateCoverClosed:
/* 8037298C 0036F8EC 7C 08 02 A6 */ mflr r0
/* 80372990 0036F8F0 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80372994 0036F8F4 90 01 00 04 */ stw r0, 4(r1)
/* 80372998 0036F8F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8037299C 0036F8FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803729A0 0036F900 3B E3 0B 60 */ addi r31, r3, lbl_80540B60@l
/* 803729A4 0036F904 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 803729A8 0036F908 2C 00 00 0D */ cmpwi r0, 0xd
/* 803729AC 0036F90C 41 82 00 28 */ beq lbl_803729D4
/* 803729B0 0036F910 40 80 00 18 */ bge lbl_803729C8
/* 803729B4 0036F914 2C 00 00 06 */ cmpwi r0, 6
/* 803729B8 0036F918 40 80 00 4C */ bge lbl_80372A04
/* 803729BC 0036F91C 2C 00 00 04 */ cmpwi r0, 4
/* 803729C0 0036F920 40 80 00 14 */ bge lbl_803729D4
/* 803729C4 0036F924 48 00 00 40 */ b lbl_80372A04
lbl_803729C8:
/* 803729C8 0036F928 2C 00 00 0F */ cmpwi r0, 0xf
/* 803729CC 0036F92C 41 82 00 08 */ beq lbl_803729D4
/* 803729D0 0036F930 48 00 00 34 */ b lbl_80372A04
lbl_803729D4:
/* 803729D4 0036F934 48 00 1E E5 */ bl __DVDClearWaitingQueue
/* 803729D8 0036F938 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803729DC 0036F93C 38 1F 00 40 */ addi r0, r31, 0x40
/* 803729E0 0036F940 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 803729E4 0036F944 81 84 00 28 */ lwz r12, 0x28(r4)
/* 803729E8 0036F948 28 0C 00 00 */ cmplwi r12, 0
/* 803729EC 0036F94C 41 82 00 10 */ beq lbl_803729FC
/* 803729F0 0036F950 7D 88 03 A6 */ mtlr r12
/* 803729F4 0036F954 38 60 FF FC */ li r3, -4
/* 803729F8 0036F958 4E 80 00 21 */ blrl
lbl_803729FC:
/* 803729FC 0036F95C 48 00 02 09 */ bl stateReady
/* 80372A00 0036F960 48 00 00 44 */ b lbl_80372A44
lbl_80372A04:
/* 80372A04 0036F964 48 00 16 BD */ bl DVDReset
/* 80372A08 0036F968 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372A0C 0036F96C 48 00 B6 A5 */ bl OSCreateAlarm
/* 80372A10 0036F970 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 80372A14 0036F974 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
/* 80372A18 0036F978 3C 80 10 62 */ lis r4, 0x10624DD3@ha
/* 80372A1C 0036F97C 3C 60 80 37 */ lis r3, AlarmHandler_0@ha
/* 80372A20 0036F980 54 00 F0 BE */ srwi r0, r0, 2
/* 80372A24 0036F984 38 84 4D D3 */ addi r4, r4, 0x10624DD3@l
/* 80372A28 0036F988 7C 04 00 16 */ mulhwu r0, r4, r0
/* 80372A2C 0036F98C 54 00 D1 BE */ srwi r0, r0, 6
/* 80372A30 0036F990 1C C0 04 7E */ mulli r6, r0, 0x47e
/* 80372A34 0036F994 38 E3 29 48 */ addi r7, r3, AlarmHandler_0@l
/* 80372A38 0036F998 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372A3C 0036F99C 38 A0 00 00 */ li r5, 0
/* 80372A40 0036F9A0 48 00 B8 D1 */ bl OSSetAlarm
lbl_80372A44:
/* 80372A44 0036F9A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372A48 0036F9A8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372A4C 0036F9AC 38 21 00 10 */ addi r1, r1, 0x10
/* 80372A50 0036F9B0 7C 08 03 A6 */ mtlr r0
/* 80372A54 0036F9B4 4E 80 00 20 */ blr
.global stateCoverClosed_CMD
stateCoverClosed_CMD:
/* 80372A58 0036F9B8 7C 08 02 A6 */ mflr r0
/* 80372A5C 0036F9BC 3C 60 80 54 */ lis r3, lbl_80540B80@ha
/* 80372A60 0036F9C0 90 01 00 04 */ stw r0, 4(r1)
/* 80372A64 0036F9C4 3C 80 80 37 */ lis r4, cbForStateCoverClosed@ha
/* 80372A68 0036F9C8 38 63 0B 80 */ addi r3, r3, lbl_80540B80@l
/* 80372A6C 0036F9CC 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372A70 0036F9D0 38 84 2A 88 */ addi r4, r4, cbForStateCoverClosed@l
/* 80372A74 0036F9D4 4B FF E3 2D */ bl DVDLowReadDiskID
/* 80372A78 0036F9D8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372A7C 0036F9DC 38 21 00 08 */ addi r1, r1, 8
/* 80372A80 0036F9E0 7C 08 03 A6 */ mtlr r0
/* 80372A84 0036F9E4 4E 80 00 20 */ blr
.global cbForStateCoverClosed
cbForStateCoverClosed:
/* 80372A88 0036F9E8 7C 08 02 A6 */ mflr r0
/* 80372A8C 0036F9EC 28 03 00 10 */ cmplwi r3, 0x10
/* 80372A90 0036F9F0 90 01 00 04 */ stw r0, 4(r1)
/* 80372A94 0036F9F4 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372A98 0036F9F8 40 82 00 2C */ bne lbl_80372AC4
/* 80372A9C 0036F9FC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372AA0 0036FA00 38 00 FF FF */ li r0, -1
/* 80372AA4 0036FA04 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80372AA8 0036FA08 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372AAC 0036FA0C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80372AB0 0036FA10 48 00 21 1D */ bl __DVDStoreErrorCode
/* 80372AB4 0036FA14 48 00 16 0D */ bl DVDReset
/* 80372AB8 0036FA18 38 60 00 00 */ li r3, 0
/* 80372ABC 0036FA1C 4B FF F2 D5 */ bl cbForStateError
/* 80372AC0 0036FA20 48 00 00 28 */ b lbl_80372AE8
lbl_80372AC4:
/* 80372AC4 0036FA24 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80372AC8 0036FA28 41 82 00 14 */ beq lbl_80372ADC
/* 80372ACC 0036FA2C 38 00 00 00 */ li r0, 0
/* 80372AD0 0036FA30 90 0D AC 44 */ stw r0, lbl_805A9804@sda21(r13)
/* 80372AD4 0036FA34 4B FF F9 8D */ bl stateCheckID
/* 80372AD8 0036FA38 48 00 00 10 */ b lbl_80372AE8
lbl_80372ADC:
/* 80372ADC 0036FA3C 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 80372AE0 0036FA40 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 80372AE4 0036FA44 4B FF E3 ED */ bl DVDLowRequestError
lbl_80372AE8:
/* 80372AE8 0036FA48 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372AEC 0036FA4C 38 21 00 08 */ addi r1, r1, 8
/* 80372AF0 0036FA50 7C 08 03 A6 */ mtlr r0
/* 80372AF4 0036FA54 4E 80 00 20 */ blr
.global stateMotorStopped
stateMotorStopped:
/* 80372AF8 0036FA58 7C 08 02 A6 */ mflr r0
/* 80372AFC 0036FA5C 3C 60 80 37 */ lis r3, cbForStateMotorStopped@ha
/* 80372B00 0036FA60 90 01 00 04 */ stw r0, 4(r1)
/* 80372B04 0036FA64 38 63 2B 20 */ addi r3, r3, cbForStateMotorStopped@l
/* 80372B08 0036FA68 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372B0C 0036FA6C 4B FF E2 69 */ bl DVDLowWaitCoverClose
/* 80372B10 0036FA70 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80372B14 0036FA74 38 21 00 08 */ addi r1, r1, 8
/* 80372B18 0036FA78 7C 08 03 A6 */ mtlr r0
/* 80372B1C 0036FA7C 4E 80 00 20 */ blr
.global cbForStateMotorStopped
cbForStateMotorStopped:
/* 80372B20 0036FA80 7C 08 02 A6 */ mflr r0
/* 80372B24 0036FA84 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80372B28 0036FA88 90 01 00 04 */ stw r0, 4(r1)
/* 80372B2C 0036FA8C 38 00 00 00 */ li r0, 0
/* 80372B30 0036FA90 3C 80 80 54 */ lis r4, lbl_80540B60@ha
/* 80372B34 0036FA94 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80372B38 0036FA98 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80372B3C 0036FA9C 3B E4 0B 60 */ addi r31, r4, lbl_80540B60@l
/* 80372B40 0036FAA0 90 03 60 04 */ stw r0, 0xCC006004@l(r3)
/* 80372B44 0036FAA4 38 00 00 03 */ li r0, 3
/* 80372B48 0036FAA8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372B4C 0036FAAC 90 03 00 0C */ stw r0, 0xc(r3)
/* 80372B50 0036FAB0 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80372B54 0036FAB4 2C 00 00 0D */ cmpwi r0, 0xd
/* 80372B58 0036FAB8 41 82 00 28 */ beq lbl_80372B80
/* 80372B5C 0036FABC 40 80 00 18 */ bge lbl_80372B74
/* 80372B60 0036FAC0 2C 00 00 06 */ cmpwi r0, 6
/* 80372B64 0036FAC4 40 80 00 4C */ bge lbl_80372BB0
/* 80372B68 0036FAC8 2C 00 00 04 */ cmpwi r0, 4
/* 80372B6C 0036FACC 40 80 00 14 */ bge lbl_80372B80
/* 80372B70 0036FAD0 48 00 00 40 */ b lbl_80372BB0
lbl_80372B74:
/* 80372B74 0036FAD4 2C 00 00 0F */ cmpwi r0, 0xf
/* 80372B78 0036FAD8 41 82 00 08 */ beq lbl_80372B80
/* 80372B7C 0036FADC 48 00 00 34 */ b lbl_80372BB0
lbl_80372B80:
/* 80372B80 0036FAE0 48 00 1D 39 */ bl __DVDClearWaitingQueue
/* 80372B84 0036FAE4 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372B88 0036FAE8 38 1F 00 40 */ addi r0, r31, 0x40
/* 80372B8C 0036FAEC 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372B90 0036FAF0 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80372B94 0036FAF4 28 0C 00 00 */ cmplwi r12, 0
/* 80372B98 0036FAF8 41 82 00 10 */ beq lbl_80372BA8
/* 80372B9C 0036FAFC 7D 88 03 A6 */ mtlr r12
/* 80372BA0 0036FB00 38 60 FF FC */ li r3, -4
/* 80372BA4 0036FB04 4E 80 00 21 */ blrl
lbl_80372BA8:
/* 80372BA8 0036FB08 48 00 00 5D */ bl stateReady
/* 80372BAC 0036FB0C 48 00 00 44 */ b lbl_80372BF0
lbl_80372BB0:
/* 80372BB0 0036FB10 48 00 15 11 */ bl DVDReset
/* 80372BB4 0036FB14 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372BB8 0036FB18 48 00 B4 F9 */ bl OSCreateAlarm
/* 80372BBC 0036FB1C 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 80372BC0 0036FB20 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
/* 80372BC4 0036FB24 3C 80 10 62 */ lis r4, 0x10624DD3@ha
/* 80372BC8 0036FB28 3C 60 80 37 */ lis r3, AlarmHandler_0@ha
/* 80372BCC 0036FB2C 54 00 F0 BE */ srwi r0, r0, 2
/* 80372BD0 0036FB30 38 84 4D D3 */ addi r4, r4, 0x10624DD3@l
/* 80372BD4 0036FB34 7C 04 00 16 */ mulhwu r0, r4, r0
/* 80372BD8 0036FB38 54 00 D1 BE */ srwi r0, r0, 6
/* 80372BDC 0036FB3C 1C C0 04 7E */ mulli r6, r0, 0x47e
/* 80372BE0 0036FB40 38 E3 29 48 */ addi r7, r3, AlarmHandler_0@l
/* 80372BE4 0036FB44 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372BE8 0036FB48 38 A0 00 00 */ li r5, 0
/* 80372BEC 0036FB4C 48 00 B7 25 */ bl OSSetAlarm
lbl_80372BF0:
/* 80372BF0 0036FB50 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80372BF4 0036FB54 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80372BF8 0036FB58 38 21 00 18 */ addi r1, r1, 0x18
/* 80372BFC 0036FB5C 7C 08 03 A6 */ mtlr r0
/* 80372C00 0036FB60 4E 80 00 20 */ blr
.global stateReady
stateReady:
/* 80372C04 0036FB64 7C 08 02 A6 */ mflr r0
/* 80372C08 0036FB68 3C 60 80 54 */ lis r3, lbl_80540B60@ha
/* 80372C0C 0036FB6C 90 01 00 04 */ stw r0, 4(r1)
/* 80372C10 0036FB70 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372C14 0036FB74 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372C18 0036FB78 3B E3 0B 60 */ addi r31, r3, lbl_80540B60@l
/* 80372C1C 0036FB7C 48 00 1D DD */ bl __DVDCheckWaitingQueue
/* 80372C20 0036FB80 2C 03 00 00 */ cmpwi r3, 0
/* 80372C24 0036FB84 40 82 00 10 */ bne lbl_80372C34
/* 80372C28 0036FB88 38 00 00 00 */ li r0, 0
/* 80372C2C 0036FB8C 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372C30 0036FB90 48 00 02 9C */ b lbl_80372ECC
lbl_80372C34:
/* 80372C34 0036FB94 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80372C38 0036FB98 2C 00 00 00 */ cmpwi r0, 0
/* 80372C3C 0036FB9C 41 82 00 18 */ beq lbl_80372C54
/* 80372C40 0036FBA0 38 60 00 01 */ li r3, 1
/* 80372C44 0036FBA4 38 00 00 00 */ li r0, 0
/* 80372C48 0036FBA8 90 6D AC 20 */ stw r3, lbl_805A97E0@sda21(r13)
/* 80372C4C 0036FBAC 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372C50 0036FBB0 48 00 02 7C */ b lbl_80372ECC
lbl_80372C54:
/* 80372C54 0036FBB4 48 00 1D 05 */ bl __DVDPopWaitingQueue
/* 80372C58 0036FBB8 80 0D AC 28 */ lwz r0, lbl_805A97E8@sda21(r13)
/* 80372C5C 0036FBBC 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 80372C60 0036FBC0 2C 00 00 00 */ cmpwi r0, 0
/* 80372C64 0036FBC4 41 82 00 3C */ beq lbl_80372CA0
/* 80372C68 0036FBC8 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372C6C 0036FBCC 38 80 FF FF */ li r4, -1
/* 80372C70 0036FBD0 38 1F 00 40 */ addi r0, r31, 0x40
/* 80372C74 0036FBD4 90 83 00 0C */ stw r4, 0xc(r3)
/* 80372C78 0036FBD8 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372C7C 0036FBDC 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372C80 0036FBE0 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80372C84 0036FBE4 28 0C 00 00 */ cmplwi r12, 0
/* 80372C88 0036FBE8 41 82 00 10 */ beq lbl_80372C98
/* 80372C8C 0036FBEC 7D 88 03 A6 */ mtlr r12
/* 80372C90 0036FBF0 38 60 FF FF */ li r3, -1
/* 80372C94 0036FBF4 4E 80 00 21 */ blrl
lbl_80372C98:
/* 80372C98 0036FBF8 4B FF FF 6D */ bl stateReady
/* 80372C9C 0036FBFC 48 00 02 30 */ b lbl_80372ECC
lbl_80372CA0:
/* 80372CA0 0036FC00 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372CA4 0036FC04 80 04 00 08 */ lwz r0, 8(r4)
/* 80372CA8 0036FC08 90 0D AC 2C */ stw r0, lbl_805A97EC@sda21(r13)
/* 80372CAC 0036FC0C 80 0D AC 38 */ lwz r0, lbl_805A97F8@sda21(r13)
/* 80372CB0 0036FC10 28 00 00 00 */ cmplwi r0, 0
/* 80372CB4 0036FC14 41 82 02 08 */ beq lbl_80372EBC
/* 80372CB8 0036FC18 80 0D AC 38 */ lwz r0, lbl_805A97F8@sda21(r13)
/* 80372CBC 0036FC1C 2C 00 00 04 */ cmpwi r0, 4
/* 80372CC0 0036FC20 41 82 01 10 */ beq lbl_80372DD0
/* 80372CC4 0036FC24 40 80 00 1C */ bge lbl_80372CE0
/* 80372CC8 0036FC28 2C 00 00 02 */ cmpwi r0, 2
/* 80372CCC 0036FC2C 41 82 00 D4 */ beq lbl_80372DA0
/* 80372CD0 0036FC30 40 80 00 E8 */ bge lbl_80372DB8
/* 80372CD4 0036FC34 2C 00 00 01 */ cmpwi r0, 1
/* 80372CD8 0036FC38 40 80 00 1C */ bge lbl_80372CF4
/* 80372CDC 0036FC3C 48 00 01 D4 */ b lbl_80372EB0
lbl_80372CE0:
/* 80372CE0 0036FC40 2C 00 00 08 */ cmpwi r0, 8
/* 80372CE4 0036FC44 40 80 01 CC */ bge lbl_80372EB0
/* 80372CE8 0036FC48 2C 00 00 06 */ cmpwi r0, 6
/* 80372CEC 0036FC4C 40 80 00 FC */ bge lbl_80372DE8
/* 80372CF0 0036FC50 48 00 01 A4 */ b lbl_80372E94
lbl_80372CF4:
/* 80372CF4 0036FC54 38 00 00 01 */ li r0, 1
/* 80372CF8 0036FC58 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372CFC 0036FC5C 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80372D00 0036FC60 2C 00 00 0D */ cmpwi r0, 0xd
/* 80372D04 0036FC64 41 82 00 28 */ beq lbl_80372D2C
/* 80372D08 0036FC68 40 80 00 18 */ bge lbl_80372D20
/* 80372D0C 0036FC6C 2C 00 00 06 */ cmpwi r0, 6
/* 80372D10 0036FC70 40 80 00 4C */ bge lbl_80372D5C
/* 80372D14 0036FC74 2C 00 00 04 */ cmpwi r0, 4
/* 80372D18 0036FC78 40 80 00 14 */ bge lbl_80372D2C
/* 80372D1C 0036FC7C 48 00 00 40 */ b lbl_80372D5C
lbl_80372D20:
/* 80372D20 0036FC80 2C 00 00 0F */ cmpwi r0, 0xf
/* 80372D24 0036FC84 41 82 00 08 */ beq lbl_80372D2C
/* 80372D28 0036FC88 48 00 00 34 */ b lbl_80372D5C
lbl_80372D2C:
/* 80372D2C 0036FC8C 48 00 1B 8D */ bl __DVDClearWaitingQueue
/* 80372D30 0036FC90 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372D34 0036FC94 38 1F 00 40 */ addi r0, r31, 0x40
/* 80372D38 0036FC98 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372D3C 0036FC9C 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80372D40 0036FCA0 28 0C 00 00 */ cmplwi r12, 0
/* 80372D44 0036FCA4 41 82 00 10 */ beq lbl_80372D54
/* 80372D48 0036FCA8 7D 88 03 A6 */ mtlr r12
/* 80372D4C 0036FCAC 38 60 FF FC */ li r3, -4
/* 80372D50 0036FCB0 4E 80 00 21 */ blrl
lbl_80372D54:
/* 80372D54 0036FCB4 4B FF FE B1 */ bl stateReady
/* 80372D58 0036FCB8 48 00 01 58 */ b lbl_80372EB0
lbl_80372D5C:
/* 80372D5C 0036FCBC 48 00 13 65 */ bl DVDReset
/* 80372D60 0036FCC0 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372D64 0036FCC4 48 00 B3 4D */ bl OSCreateAlarm
/* 80372D68 0036FCC8 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 80372D6C 0036FCCC 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
/* 80372D70 0036FCD0 3C 80 10 62 */ lis r4, 0x10624DD3@ha
/* 80372D74 0036FCD4 3C 60 80 37 */ lis r3, AlarmHandler_0@ha
/* 80372D78 0036FCD8 54 00 F0 BE */ srwi r0, r0, 2
/* 80372D7C 0036FCDC 38 84 4D D3 */ addi r4, r4, 0x10624DD3@l
/* 80372D80 0036FCE0 7C 04 00 16 */ mulhwu r0, r4, r0
/* 80372D84 0036FCE4 54 00 D1 BE */ srwi r0, r0, 6
/* 80372D88 0036FCE8 1C C0 04 7E */ mulli r6, r0, 0x47e
/* 80372D8C 0036FCEC 38 E3 29 48 */ addi r7, r3, AlarmHandler_0@l
/* 80372D90 0036FCF0 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372D94 0036FCF4 38 A0 00 00 */ li r5, 0
/* 80372D98 0036FCF8 48 00 B5 79 */ bl OSSetAlarm
/* 80372D9C 0036FCFC 48 00 01 14 */ b lbl_80372EB0
lbl_80372DA0:
/* 80372DA0 0036FD00 38 00 00 0B */ li r0, 0xb
/* 80372DA4 0036FD04 3C 60 80 37 */ lis r3, cbForStateMotorStopped@ha
/* 80372DA8 0036FD08 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372DAC 0036FD0C 38 63 2B 20 */ addi r3, r3, cbForStateMotorStopped@l
/* 80372DB0 0036FD10 4B FF DF C5 */ bl DVDLowWaitCoverClose
/* 80372DB4 0036FD14 48 00 00 FC */ b lbl_80372EB0
lbl_80372DB8:
/* 80372DB8 0036FD18 38 00 00 04 */ li r0, 4
/* 80372DBC 0036FD1C 3C 60 80 37 */ lis r3, cbForStateMotorStopped@ha
/* 80372DC0 0036FD20 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372DC4 0036FD24 38 63 2B 20 */ addi r3, r3, cbForStateMotorStopped@l
/* 80372DC8 0036FD28 4B FF DF AD */ bl DVDLowWaitCoverClose
/* 80372DCC 0036FD2C 48 00 00 E4 */ b lbl_80372EB0
lbl_80372DD0:
/* 80372DD0 0036FD30 38 00 00 05 */ li r0, 5
/* 80372DD4 0036FD34 3C 60 80 37 */ lis r3, cbForStateMotorStopped@ha
/* 80372DD8 0036FD38 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372DDC 0036FD3C 38 63 2B 20 */ addi r3, r3, cbForStateMotorStopped@l
/* 80372DE0 0036FD40 4B FF DF 95 */ bl DVDLowWaitCoverClose
/* 80372DE4 0036FD44 48 00 00 CC */ b lbl_80372EB0
lbl_80372DE8:
/* 80372DE8 0036FD48 38 00 00 03 */ li r0, 3
/* 80372DEC 0036FD4C 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372DF0 0036FD50 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80372DF4 0036FD54 2C 00 00 0D */ cmpwi r0, 0xd
/* 80372DF8 0036FD58 41 82 00 28 */ beq lbl_80372E20
/* 80372DFC 0036FD5C 40 80 00 18 */ bge lbl_80372E14
/* 80372E00 0036FD60 2C 00 00 06 */ cmpwi r0, 6
/* 80372E04 0036FD64 40 80 00 4C */ bge lbl_80372E50
/* 80372E08 0036FD68 2C 00 00 04 */ cmpwi r0, 4
/* 80372E0C 0036FD6C 40 80 00 14 */ bge lbl_80372E20
/* 80372E10 0036FD70 48 00 00 40 */ b lbl_80372E50
lbl_80372E14:
/* 80372E14 0036FD74 2C 00 00 0F */ cmpwi r0, 0xf
/* 80372E18 0036FD78 41 82 00 08 */ beq lbl_80372E20
/* 80372E1C 0036FD7C 48 00 00 34 */ b lbl_80372E50
lbl_80372E20:
/* 80372E20 0036FD80 48 00 1A 99 */ bl __DVDClearWaitingQueue
/* 80372E24 0036FD84 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372E28 0036FD88 38 1F 00 40 */ addi r0, r31, 0x40
/* 80372E2C 0036FD8C 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372E30 0036FD90 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80372E34 0036FD94 28 0C 00 00 */ cmplwi r12, 0
/* 80372E38 0036FD98 41 82 00 10 */ beq lbl_80372E48
/* 80372E3C 0036FD9C 7D 88 03 A6 */ mtlr r12
/* 80372E40 0036FDA0 38 60 FF FC */ li r3, -4
/* 80372E44 0036FDA4 4E 80 00 21 */ blrl
lbl_80372E48:
/* 80372E48 0036FDA8 4B FF FD BD */ bl stateReady
/* 80372E4C 0036FDAC 48 00 00 64 */ b lbl_80372EB0
lbl_80372E50:
/* 80372E50 0036FDB0 48 00 12 71 */ bl DVDReset
/* 80372E54 0036FDB4 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372E58 0036FDB8 48 00 B2 59 */ bl OSCreateAlarm
/* 80372E5C 0036FDBC 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 80372E60 0036FDC0 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
/* 80372E64 0036FDC4 3C 80 10 62 */ lis r4, 0x10624DD3@ha
/* 80372E68 0036FDC8 3C 60 80 37 */ lis r3, AlarmHandler_0@ha
/* 80372E6C 0036FDCC 54 00 F0 BE */ srwi r0, r0, 2
/* 80372E70 0036FDD0 38 84 4D D3 */ addi r4, r4, 0x10624DD3@l
/* 80372E74 0036FDD4 7C 04 00 16 */ mulhwu r0, r4, r0
/* 80372E78 0036FDD8 54 00 D1 BE */ srwi r0, r0, 6
/* 80372E7C 0036FDDC 1C C0 04 7E */ mulli r6, r0, 0x47e
/* 80372E80 0036FDE0 38 E3 29 48 */ addi r7, r3, AlarmHandler_0@l
/* 80372E84 0036FDE4 38 7F 00 70 */ addi r3, r31, 0x70
/* 80372E88 0036FDE8 38 A0 00 00 */ li r5, 0
/* 80372E8C 0036FDEC 48 00 B4 85 */ bl OSSetAlarm
/* 80372E90 0036FDF0 48 00 00 20 */ b lbl_80372EB0
lbl_80372E94:
/* 80372E94 0036FDF4 38 00 FF FF */ li r0, -1
/* 80372E98 0036FDF8 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372E9C 0036FDFC 80 6D AC 3C */ lwz r3, lbl_805A97FC@sda21(r13)
/* 80372EA0 0036FE00 48 00 1D 2D */ bl __DVDStoreErrorCode
/* 80372EA4 0036FE04 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 80372EA8 0036FE08 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 80372EAC 0036FE0C 4B FF DF 99 */ bl DVDLowStopMotor
lbl_80372EB0:
/* 80372EB0 0036FE10 38 00 00 00 */ li r0, 0
/* 80372EB4 0036FE14 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
/* 80372EB8 0036FE18 48 00 00 14 */ b lbl_80372ECC
lbl_80372EBC:
/* 80372EBC 0036FE1C 38 00 00 01 */ li r0, 1
/* 80372EC0 0036FE20 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372EC4 0036FE24 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80372EC8 0036FE28 48 00 00 19 */ bl stateBusy
lbl_80372ECC:
/* 80372ECC 0036FE2C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372ED0 0036FE30 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372ED4 0036FE34 38 21 00 10 */ addi r1, r1, 0x10
/* 80372ED8 0036FE38 7C 08 03 A6 */ mtlr r0
/* 80372EDC 0036FE3C 4E 80 00 20 */ blr
.global stateBusy
stateBusy:
/* 80372EE0 0036FE40 7C 08 02 A6 */ mflr r0
/* 80372EE4 0036FE44 3C 80 80 37 */ lis r4, stateBusy@ha
/* 80372EE8 0036FE48 90 01 00 04 */ stw r0, 4(r1)
/* 80372EEC 0036FE4C 38 04 2E E0 */ addi r0, r4, stateBusy@l
/* 80372EF0 0036FE50 7C 67 1B 78 */ mr r7, r3
/* 80372EF4 0036FE54 94 21 FF F8 */ stwu r1, -8(r1)
/* 80372EF8 0036FE58 90 0D AC 58 */ stw r0, lbl_805A9818@sda21(r13)
/* 80372EFC 0036FE5C 80 03 00 08 */ lwz r0, 8(r3)
/* 80372F00 0036FE60 28 00 00 0F */ cmplwi r0, 0xf
/* 80372F04 0036FE64 41 81 02 D4 */ bgt lbl_803731D8
/* 80372F08 0036FE68 3C 60 80 3F */ lis r3, lbl_803F0008@ha
/* 80372F0C 0036FE6C 38 63 00 08 */ addi r3, r3, lbl_803F0008@l
/* 80372F10 0036FE70 54 00 10 3A */ slwi r0, r0, 2
/* 80372F14 0036FE74 7C 03 00 2E */ lwzx r0, r3, r0
/* 80372F18 0036FE78 7C 09 03 A6 */ mtctr r0
/* 80372F1C 0036FE7C 4E 80 04 20 */ bctr
/* 80372F20 0036FE80 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80372F24 0036FE84 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 80372F28 0036FE88 38 A3 60 00 */ addi r5, r3, 0x6000
/* 80372F2C 0036FE8C 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80372F30 0036FE90 90 05 00 04 */ stw r0, 4(r5)
/* 80372F34 0036FE94 38 00 00 20 */ li r0, 0x20
/* 80372F38 0036FE98 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80372F3C 0036FE9C 90 07 00 1C */ stw r0, 0x1c(r7)
/* 80372F40 0036FEA0 80 67 00 18 */ lwz r3, 0x18(r7)
/* 80372F44 0036FEA4 4B FF DE 5D */ bl DVDLowReadDiskID
/* 80372F48 0036FEA8 48 00 02 A8 */ b lbl_803731F0
/* 80372F4C 0036FEAC 80 07 00 14 */ lwz r0, 0x14(r7)
/* 80372F50 0036FEB0 28 00 00 00 */ cmplwi r0, 0
/* 80372F54 0036FEB4 40 82 00 3C */ bne lbl_80372F90
/* 80372F58 0036FEB8 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 80372F5C 0036FEBC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80372F60 0036FEC0 38 03 0B A0 */ addi r0, r3, lbl_80540BA0@l
/* 80372F64 0036FEC4 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80372F68 0036FEC8 38 00 00 00 */ li r0, 0
/* 80372F6C 0036FECC 90 04 00 0C */ stw r0, 0xc(r4)
/* 80372F70 0036FED0 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80372F74 0036FED4 28 0C 00 00 */ cmplwi r12, 0
/* 80372F78 0036FED8 41 82 00 10 */ beq lbl_80372F88
/* 80372F7C 0036FEDC 7D 88 03 A6 */ mtlr r12
/* 80372F80 0036FEE0 38 60 00 00 */ li r3, 0
/* 80372F84 0036FEE4 4E 80 00 21 */ blrl
lbl_80372F88:
/* 80372F88 0036FEE8 4B FF FC 7D */ bl stateReady
/* 80372F8C 0036FEEC 48 00 02 64 */ b lbl_803731F0
lbl_80372F90:
/* 80372F90 0036FEF0 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 80372F94 0036FEF4 38 63 60 00 */ addi r3, r3, 0xCC006000@l
/* 80372F98 0036FEF8 80 03 00 04 */ lwz r0, 4(r3)
/* 80372F9C 0036FEFC 3C 80 00 08 */ lis r4, 8
/* 80372FA0 0036FF00 90 03 00 04 */ stw r0, 4(r3)
/* 80372FA4 0036FF04 80 67 00 20 */ lwz r3, 0x20(r7)
/* 80372FA8 0036FF08 80 07 00 14 */ lwz r0, 0x14(r7)
/* 80372FAC 0036FF0C 7C 03 00 50 */ subf r0, r3, r0
/* 80372FB0 0036FF10 7C 00 20 40 */ cmplw r0, r4
/* 80372FB4 0036FF14 40 81 00 08 */ ble lbl_80372FBC
/* 80372FB8 0036FF18 48 00 00 08 */ b lbl_80372FC0
lbl_80372FBC:
/* 80372FBC 0036FF1C 7C 04 03 78 */ mr r4, r0
lbl_80372FC0:
/* 80372FC0 0036FF20 90 87 00 1C */ stw r4, 0x1c(r7)
/* 80372FC4 0036FF24 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80372FC8 0036FF28 38 C3 32 00 */ addi r6, r3, cbForStateBusy@l
/* 80372FCC 0036FF2C 80 A7 00 20 */ lwz r5, 0x20(r7)
/* 80372FD0 0036FF30 80 67 00 18 */ lwz r3, 0x18(r7)
/* 80372FD4 0036FF34 80 07 00 10 */ lwz r0, 0x10(r7)
/* 80372FD8 0036FF38 7C 63 2A 14 */ add r3, r3, r5
/* 80372FDC 0036FF3C 80 87 00 1C */ lwz r4, 0x1c(r7)
/* 80372FE0 0036FF40 7C A0 2A 14 */ add r5, r0, r5
/* 80372FE4 0036FF44 4B FF DA 65 */ bl DVDLowRead
/* 80372FE8 0036FF48 48 00 02 08 */ b lbl_803731F0
/* 80372FEC 0036FF4C 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80372FF0 0036FF50 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 80372FF4 0036FF54 38 A3 60 00 */ addi r5, r3, 0x6000
/* 80372FF8 0036FF58 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80372FFC 0036FF5C 90 05 00 04 */ stw r0, 4(r5)
/* 80373000 0036FF60 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80373004 0036FF64 80 67 00 10 */ lwz r3, 0x10(r7)
/* 80373008 0036FF68 4B FF DC D9 */ bl DVDLowSeek
/* 8037300C 0036FF6C 48 00 01 E4 */ b lbl_803731F0
/* 80373010 0036FF70 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373014 0036FF74 38 63 32 00 */ addi r3, r3, cbForStateBusy@l
/* 80373018 0036FF78 4B FF DE 2D */ bl DVDLowStopMotor
/* 8037301C 0036FF7C 48 00 01 D4 */ b lbl_803731F0
/* 80373020 0036FF80 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373024 0036FF84 38 63 32 00 */ addi r3, r3, cbForStateBusy@l
/* 80373028 0036FF88 4B FF DE 1D */ bl DVDLowStopMotor
/* 8037302C 0036FF8C 48 00 01 C4 */ b lbl_803731F0
/* 80373030 0036FF90 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 80373034 0036FF94 38 63 60 00 */ addi r3, r3, 0xCC006000@l
/* 80373038 0036FF98 80 03 00 04 */ lwz r0, 4(r3)
/* 8037303C 0036FF9C 90 03 00 04 */ stw r0, 4(r3)
/* 80373040 0036FFA0 80 0D AC 24 */ lwz r0, lbl_805A97E4@sda21(r13)
/* 80373044 0036FFA4 2C 00 00 00 */ cmpwi r0, 0
/* 80373048 0036FFA8 41 82 00 24 */ beq lbl_8037306C
/* 8037304C 0036FFAC 80 AD AC 10 */ lwz r5, lbl_805A97D0@sda21(r13)
/* 80373050 0036FFB0 38 00 00 00 */ li r0, 0
/* 80373054 0036FFB4 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373058 0036FFB8 90 05 00 1C */ stw r0, 0x1c(r5)
/* 8037305C 0036FFBC 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80373060 0036FFC0 38 60 00 00 */ li r3, 0
/* 80373064 0036FFC4 4B FF E0 2D */ bl DVDLowRequestAudioStatus
/* 80373068 0036FFC8 48 00 01 88 */ b lbl_803731F0
lbl_8037306C:
/* 8037306C 0036FFCC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80373070 0036FFD0 38 00 00 01 */ li r0, 1
/* 80373074 0036FFD4 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373078 0036FFD8 90 04 00 1C */ stw r0, 0x1c(r4)
/* 8037307C 0036FFDC 38 C3 32 00 */ addi r6, r3, cbForStateBusy@l
/* 80373080 0036FFE0 38 60 00 00 */ li r3, 0
/* 80373084 0036FFE4 80 87 00 14 */ lwz r4, 0x14(r7)
/* 80373088 0036FFE8 80 A7 00 10 */ lwz r5, 0x10(r7)
/* 8037308C 0036FFEC 4B FF DF 6D */ bl DVDLowAudioStream
/* 80373090 0036FFF0 48 00 01 60 */ b lbl_803731F0
/* 80373094 0036FFF4 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80373098 0036FFF8 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 8037309C 0036FFFC 38 83 60 00 */ addi r4, r3, 0x6000
/* 803730A0 00370000 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 803730A4 00370004 90 04 00 04 */ stw r0, 4(r4)
/* 803730A8 00370008 38 C3 32 00 */ addi r6, r3, cbForStateBusy@l
/* 803730AC 0037000C 3C 60 00 01 */ lis r3, 1
/* 803730B0 00370010 38 80 00 00 */ li r4, 0
/* 803730B4 00370014 38 A0 00 00 */ li r5, 0
/* 803730B8 00370018 4B FF DF 41 */ bl DVDLowAudioStream
/* 803730BC 0037001C 48 00 01 34 */ b lbl_803731F0
/* 803730C0 00370020 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 803730C4 00370024 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 803730C8 00370028 38 83 60 00 */ addi r4, r3, 0x6000
/* 803730CC 0037002C 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 803730D0 00370030 90 04 00 04 */ stw r0, 4(r4)
/* 803730D4 00370034 38 00 00 01 */ li r0, 1
/* 803730D8 00370038 38 C3 32 00 */ addi r6, r3, cbForStateBusy@l
/* 803730DC 0037003C 90 0D AC 24 */ stw r0, lbl_805A97E4@sda21(r13)
/* 803730E0 00370040 38 60 00 00 */ li r3, 0
/* 803730E4 00370044 38 80 00 00 */ li r4, 0
/* 803730E8 00370048 38 A0 00 00 */ li r5, 0
/* 803730EC 0037004C 4B FF DF 0D */ bl DVDLowAudioStream
/* 803730F0 00370050 48 00 01 00 */ b lbl_803731F0
/* 803730F4 00370054 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 803730F8 00370058 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 803730FC 0037005C 38 A3 60 00 */ addi r5, r3, 0x6000
/* 80373100 00370060 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373104 00370064 90 05 00 04 */ stw r0, 4(r5)
/* 80373108 00370068 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 8037310C 0037006C 38 60 00 00 */ li r3, 0
/* 80373110 00370070 4B FF DF 81 */ bl DVDLowRequestAudioStatus
/* 80373114 00370074 48 00 00 DC */ b lbl_803731F0
/* 80373118 00370078 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 8037311C 0037007C 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 80373120 00370080 38 A3 60 00 */ addi r5, r3, 0x6000
/* 80373124 00370084 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373128 00370088 90 05 00 04 */ stw r0, 4(r5)
/* 8037312C 0037008C 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80373130 00370090 3C 60 00 01 */ lis r3, 1
/* 80373134 00370094 4B FF DF 5D */ bl DVDLowRequestAudioStatus
/* 80373138 00370098 48 00 00 B8 */ b lbl_803731F0
/* 8037313C 0037009C 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80373140 003700A0 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 80373144 003700A4 38 A3 60 00 */ addi r5, r3, 0x6000
/* 80373148 003700A8 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 8037314C 003700AC 90 05 00 04 */ stw r0, 4(r5)
/* 80373150 003700B0 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80373154 003700B4 3C 60 00 02 */ lis r3, 2
/* 80373158 003700B8 4B FF DF 39 */ bl DVDLowRequestAudioStatus
/* 8037315C 003700BC 48 00 00 94 */ b lbl_803731F0
/* 80373160 003700C0 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80373164 003700C4 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 80373168 003700C8 38 A3 60 00 */ addi r5, r3, 0x6000
/* 8037316C 003700CC 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373170 003700D0 90 05 00 04 */ stw r0, 4(r5)
/* 80373174 003700D4 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 80373178 003700D8 3C 60 00 03 */ lis r3, 3
/* 8037317C 003700DC 4B FF DF 15 */ bl DVDLowRequestAudioStatus
/* 80373180 003700E0 48 00 00 70 */ b lbl_803731F0
/* 80373184 003700E4 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 80373188 003700E8 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 8037318C 003700EC 38 83 60 00 */ addi r4, r3, 0x6000
/* 80373190 003700F0 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 80373194 003700F4 90 04 00 04 */ stw r0, 4(r4)
/* 80373198 003700F8 38 A3 32 00 */ addi r5, r3, cbForStateBusy@l
/* 8037319C 003700FC 80 67 00 10 */ lwz r3, 0x10(r7)
/* 803731A0 00370100 80 87 00 14 */ lwz r4, 0x14(r7)
/* 803731A4 00370104 4B FF DF 79 */ bl DVDLowAudioBufferConfig
/* 803731A8 00370108 48 00 00 48 */ b lbl_803731F0
/* 803731AC 0037010C 3C 60 CC 00 */ lis r3, 0xCC006004@ha
/* 803731B0 00370110 80 03 60 04 */ lwz r0, 0xCC006004@l(r3)
/* 803731B4 00370114 38 A3 60 00 */ addi r5, r3, 0x6000
/* 803731B8 00370118 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 803731BC 0037011C 90 05 00 04 */ stw r0, 4(r5)
/* 803731C0 00370120 38 00 00 20 */ li r0, 0x20
/* 803731C4 00370124 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 803731C8 00370128 90 07 00 1C */ stw r0, 0x1c(r7)
/* 803731CC 0037012C 80 67 00 18 */ lwz r3, 0x18(r7)
/* 803731D0 00370130 4B FF DD 8D */ bl DVDLowInquiry
/* 803731D4 00370134 48 00 00 1C */ b lbl_803731F0
lbl_803731D8:
/* 803731D8 00370138 81 8D 9E E0 */ lwz r12, lbl_805A8AA0@sda21(r13)
/* 803731DC 0037013C 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 803731E0 00370140 38 83 32 00 */ addi r4, r3, cbForStateBusy@l
/* 803731E4 00370144 7D 88 03 A6 */ mtlr r12
/* 803731E8 00370148 38 67 00 00 */ addi r3, r7, 0
/* 803731EC 0037014C 4E 80 00 21 */ blrl
lbl_803731F0:
/* 803731F0 00370150 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803731F4 00370154 38 21 00 08 */ addi r1, r1, 8
/* 803731F8 00370158 7C 08 03 A6 */ mtlr r0
/* 803731FC 0037015C 4E 80 00 20 */ blr
.global cbForStateBusy
cbForStateBusy:
/* 80373200 00370160 7C 08 02 A6 */ mflr r0
/* 80373204 00370164 28 03 00 10 */ cmplwi r3, 0x10
/* 80373208 00370168 90 01 00 04 */ stw r0, 4(r1)
/* 8037320C 0037016C 3C 80 80 54 */ lis r4, lbl_80540B60@ha
/* 80373210 00370170 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80373214 00370174 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80373218 00370178 3B E4 0B 60 */ addi r31, r4, lbl_80540B60@l
/* 8037321C 0037017C 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80373220 00370180 40 82 00 2C */ bne lbl_8037324C
/* 80373224 00370184 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80373228 00370188 38 00 FF FF */ li r0, -1
/* 8037322C 0037018C 3C 60 01 23 */ lis r3, 0x01234568@ha
/* 80373230 00370190 90 04 00 0C */ stw r0, 0xc(r4)
/* 80373234 00370194 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80373238 00370198 48 00 19 95 */ bl __DVDStoreErrorCode
/* 8037323C 0037019C 48 00 0E 85 */ bl DVDReset
/* 80373240 003701A0 38 60 00 00 */ li r3, 0
/* 80373244 003701A4 4B FF EB 4D */ bl cbForStateError
/* 80373248 003701A8 48 00 05 D8 */ b lbl_80373820
lbl_8037324C:
/* 8037324C 003701AC 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80373250 003701B0 28 00 00 03 */ cmplwi r0, 3
/* 80373254 003701B4 41 82 00 10 */ beq lbl_80373264
/* 80373258 003701B8 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 8037325C 003701BC 28 00 00 0F */ cmplwi r0, 0xf
/* 80373260 003701C0 40 82 00 EC */ bne lbl_8037334C
lbl_80373264:
/* 80373264 003701C4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80373268 003701C8 41 82 00 2C */ beq lbl_80373294
/* 8037326C 003701CC 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80373270 003701D0 38 00 FF FF */ li r0, -1
/* 80373274 003701D4 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 80373278 003701D8 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037327C 003701DC 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80373280 003701E0 48 00 19 4D */ bl __DVDStoreErrorCode
/* 80373284 003701E4 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 80373288 003701E8 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 8037328C 003701EC 4B FF DB B9 */ bl DVDLowStopMotor
/* 80373290 003701F0 48 00 05 90 */ b lbl_80373820
lbl_80373294:
/* 80373294 003701F4 38 00 00 00 */ li r0, 0
/* 80373298 003701F8 90 0D AC 44 */ stw r0, lbl_805A9804@sda21(r13)
/* 8037329C 003701FC 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 803732A0 00370200 28 00 00 0F */ cmplwi r0, 0xf
/* 803732A4 00370204 40 82 00 0C */ bne lbl_803732B0
/* 803732A8 00370208 38 00 00 01 */ li r0, 1
/* 803732AC 0037020C 90 0D AC 48 */ stw r0, lbl_805A9808@sda21(r13)
lbl_803732B0:
/* 803732B0 00370210 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 803732B4 00370214 28 00 00 00 */ cmplwi r0, 0
/* 803732B8 00370218 41 82 00 6C */ beq lbl_80373324
/* 803732BC 0037021C 38 00 00 07 */ li r0, 7
/* 803732C0 00370220 83 CD AC 10 */ lwz r30, lbl_805A97D0@sda21(r13)
/* 803732C4 00370224 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
/* 803732C8 00370228 38 7F 00 40 */ addi r3, r31, 0x40
/* 803732CC 0037022C 38 00 00 00 */ li r0, 0
/* 803732D0 00370230 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 803732D4 00370234 38 00 00 0A */ li r0, 0xa
/* 803732D8 00370238 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803732DC 0037023C 90 1E 00 0C */ stw r0, 0xc(r30)
/* 803732E0 00370240 81 9E 00 28 */ lwz r12, 0x28(r30)
/* 803732E4 00370244 28 0C 00 00 */ cmplwi r12, 0
/* 803732E8 00370248 41 82 00 14 */ beq lbl_803732FC
/* 803732EC 0037024C 7D 88 03 A6 */ mtlr r12
/* 803732F0 00370250 38 9E 00 00 */ addi r4, r30, 0
/* 803732F4 00370254 38 60 FF FD */ li r3, -3
/* 803732F8 00370258 4E 80 00 21 */ blrl
lbl_803732FC:
/* 803732FC 0037025C 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 80373300 00370260 28 0C 00 00 */ cmplwi r12, 0
/* 80373304 00370264 41 82 00 14 */ beq lbl_80373318
/* 80373308 00370268 7D 88 03 A6 */ mtlr r12
/* 8037330C 0037026C 38 9E 00 00 */ addi r4, r30, 0
/* 80373310 00370270 38 60 00 00 */ li r3, 0
/* 80373314 00370274 4E 80 00 21 */ blrl
lbl_80373318:
/* 80373318 00370278 4B FF F8 ED */ bl stateReady
/* 8037331C 0037027C 38 00 00 01 */ li r0, 1
/* 80373320 00370280 48 00 00 08 */ b lbl_80373328
lbl_80373324:
/* 80373324 00370284 38 00 00 00 */ li r0, 0
lbl_80373328:
/* 80373328 00370288 2C 00 00 00 */ cmpwi r0, 0
/* 8037332C 0037028C 40 82 04 F4 */ bne lbl_80373820
/* 80373330 00370290 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80373334 00370294 38 00 00 07 */ li r0, 7
/* 80373338 00370298 3C 60 80 37 */ lis r3, cbForStateMotorStopped@ha
/* 8037333C 0037029C 90 04 00 0C */ stw r0, 0xc(r4)
/* 80373340 003702A0 38 63 2B 20 */ addi r3, r3, cbForStateMotorStopped@l
/* 80373344 003702A4 4B FF DA 31 */ bl DVDLowWaitCoverClose
/* 80373348 003702A8 48 00 04 D8 */ b lbl_80373820
lbl_8037334C:
/* 8037334C 003702AC 80 8D AC 2C */ lwz r4, lbl_805A97EC@sda21(r13)
/* 80373350 003702B0 28 04 00 01 */ cmplwi r4, 1
/* 80373354 003702B4 41 82 00 18 */ beq lbl_8037336C
/* 80373358 003702B8 38 04 FF FC */ addi r0, r4, -4
/* 8037335C 003702BC 28 00 00 01 */ cmplwi r0, 1
/* 80373360 003702C0 40 81 00 0C */ ble lbl_8037336C
/* 80373364 003702C4 28 04 00 0E */ cmplwi r4, 0xe
/* 80373368 003702C8 40 82 00 0C */ bne lbl_80373374
lbl_8037336C:
/* 8037336C 003702CC 38 00 00 01 */ li r0, 1
/* 80373370 003702D0 48 00 00 1C */ b lbl_8037338C
lbl_80373374:
/* 80373374 003702D4 80 0D 9E EC */ lwz r0, lbl_805A8AAC@sda21(r13)
/* 80373378 003702D8 7C 04 00 40 */ cmplw r4, r0
/* 8037337C 003702DC 40 82 00 0C */ bne lbl_80373388
/* 80373380 003702E0 38 00 00 01 */ li r0, 1
/* 80373384 003702E4 48 00 00 08 */ b lbl_8037338C
lbl_80373388:
/* 80373388 003702E8 38 00 00 00 */ li r0, 0
lbl_8037338C:
/* 8037338C 003702EC 2C 00 00 00 */ cmpwi r0, 0
/* 80373390 003702F0 41 82 00 28 */ beq lbl_803733B8
/* 80373394 003702F4 80 CD AC 10 */ lwz r6, lbl_805A97D0@sda21(r13)
/* 80373398 003702F8 3C 80 CC 00 */ lis r4, 0xCC006000@ha
/* 8037339C 003702FC 38 84 60 00 */ addi r4, r4, 0xCC006000@l
/* 803733A0 00370300 80 84 00 18 */ lwz r4, 0x18(r4)
/* 803733A4 00370304 80 06 00 1C */ lwz r0, 0x1c(r6)
/* 803733A8 00370308 80 A6 00 20 */ lwz r5, 0x20(r6)
/* 803733AC 0037030C 7C 04 00 50 */ subf r0, r4, r0
/* 803733B0 00370310 7C 05 02 14 */ add r0, r5, r0
/* 803733B4 00370314 90 06 00 20 */ stw r0, 0x20(r6)
lbl_803733B8:
/* 803733B8 00370318 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 803733BC 0037031C 41 82 00 60 */ beq lbl_8037341C
/* 803733C0 00370320 83 CD AC 10 */ lwz r30, lbl_805A97D0@sda21(r13)
/* 803733C4 00370324 38 7F 00 40 */ addi r3, r31, 0x40
/* 803733C8 00370328 38 00 00 00 */ li r0, 0
/* 803733CC 0037032C 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 803733D0 00370330 38 00 00 0A */ li r0, 0xa
/* 803733D4 00370334 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803733D8 00370338 90 1E 00 0C */ stw r0, 0xc(r30)
/* 803733DC 0037033C 81 9E 00 28 */ lwz r12, 0x28(r30)
/* 803733E0 00370340 28 0C 00 00 */ cmplwi r12, 0
/* 803733E4 00370344 41 82 00 14 */ beq lbl_803733F8
/* 803733E8 00370348 7D 88 03 A6 */ mtlr r12
/* 803733EC 0037034C 38 9E 00 00 */ addi r4, r30, 0
/* 803733F0 00370350 38 60 FF FD */ li r3, -3
/* 803733F4 00370354 4E 80 00 21 */ blrl
lbl_803733F8:
/* 803733F8 00370358 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 803733FC 0037035C 28 0C 00 00 */ cmplwi r12, 0
/* 80373400 00370360 41 82 00 14 */ beq lbl_80373414
/* 80373404 00370364 7D 88 03 A6 */ mtlr r12
/* 80373408 00370368 38 9E 00 00 */ addi r4, r30, 0
/* 8037340C 0037036C 38 60 00 00 */ li r3, 0
/* 80373410 00370370 4E 80 00 21 */ blrl
lbl_80373414:
/* 80373414 00370374 4B FF F7 F1 */ bl stateReady
/* 80373418 00370378 48 00 04 08 */ b lbl_80373820
lbl_8037341C:
/* 8037341C 0037037C 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80373420 00370380 41 82 02 D0 */ beq lbl_803736F0
/* 80373424 00370384 38 80 00 00 */ li r4, 0
/* 80373428 00370388 90 8D AC 44 */ stw r4, lbl_805A9804@sda21(r13)
/* 8037342C 0037038C 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 80373430 00370390 28 00 00 00 */ cmplwi r0, 0
/* 80373434 00370394 41 82 00 60 */ beq lbl_80373494
/* 80373438 00370398 90 8D AC 38 */ stw r4, lbl_805A97F8@sda21(r13)
/* 8037343C 0037039C 38 7F 00 40 */ addi r3, r31, 0x40
/* 80373440 003703A0 83 CD AC 10 */ lwz r30, lbl_805A97D0@sda21(r13)
/* 80373444 003703A4 38 00 00 0A */ li r0, 0xa
/* 80373448 003703A8 90 8D AC 30 */ stw r4, lbl_805A97F0@sda21(r13)
/* 8037344C 003703AC 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 80373450 003703B0 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80373454 003703B4 81 9E 00 28 */ lwz r12, 0x28(r30)
/* 80373458 003703B8 28 0C 00 00 */ cmplwi r12, 0
/* 8037345C 003703BC 41 82 00 14 */ beq lbl_80373470
/* 80373460 003703C0 7D 88 03 A6 */ mtlr r12
/* 80373464 003703C4 38 9E 00 00 */ addi r4, r30, 0
/* 80373468 003703C8 38 60 FF FD */ li r3, -3
/* 8037346C 003703CC 4E 80 00 21 */ blrl
lbl_80373470:
/* 80373470 003703D0 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 80373474 003703D4 28 0C 00 00 */ cmplwi r12, 0
/* 80373478 003703D8 41 82 00 14 */ beq lbl_8037348C
/* 8037347C 003703DC 7D 88 03 A6 */ mtlr r12
/* 80373480 003703E0 38 9E 00 00 */ addi r4, r30, 0
/* 80373484 003703E4 38 60 00 00 */ li r3, 0
/* 80373488 003703E8 4E 80 00 21 */ blrl
lbl_8037348C:
/* 8037348C 003703EC 4B FF F7 79 */ bl stateReady
/* 80373490 003703F0 38 80 00 01 */ li r4, 1
lbl_80373494:
/* 80373494 003703F4 2C 04 00 00 */ cmpwi r4, 0
/* 80373498 003703F8 40 82 03 88 */ bne lbl_80373820
/* 8037349C 003703FC 80 6D AC 2C */ lwz r3, lbl_805A97EC@sda21(r13)
/* 803734A0 00370400 28 03 00 01 */ cmplwi r3, 1
/* 803734A4 00370404 41 82 00 18 */ beq lbl_803734BC
/* 803734A8 00370408 38 03 FF FC */ addi r0, r3, -4
/* 803734AC 0037040C 28 00 00 01 */ cmplwi r0, 1
/* 803734B0 00370410 40 81 00 0C */ ble lbl_803734BC
/* 803734B4 00370414 28 03 00 0E */ cmplwi r3, 0xe
/* 803734B8 00370418 40 82 00 0C */ bne lbl_803734C4
lbl_803734BC:
/* 803734BC 0037041C 38 00 00 01 */ li r0, 1
/* 803734C0 00370420 48 00 00 1C */ b lbl_803734DC
lbl_803734C4:
/* 803734C4 00370424 80 0D 9E EC */ lwz r0, lbl_805A8AAC@sda21(r13)
/* 803734C8 00370428 7C 03 00 40 */ cmplw r3, r0
/* 803734CC 0037042C 40 82 00 0C */ bne lbl_803734D8
/* 803734D0 00370430 38 00 00 01 */ li r0, 1
/* 803734D4 00370434 48 00 00 08 */ b lbl_803734DC
lbl_803734D8:
/* 803734D8 00370438 38 00 00 00 */ li r0, 0
lbl_803734DC:
/* 803734DC 0037043C 2C 00 00 00 */ cmpwi r0, 0
/* 803734E0 00370440 41 82 00 54 */ beq lbl_80373534
/* 803734E4 00370444 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 803734E8 00370448 80 83 00 20 */ lwz r4, 0x20(r3)
/* 803734EC 0037044C 80 03 00 14 */ lwz r0, 0x14(r3)
/* 803734F0 00370450 7C 04 00 40 */ cmplw r4, r0
/* 803734F4 00370454 41 82 00 0C */ beq lbl_80373500
/* 803734F8 00370458 4B FF F9 E9 */ bl stateBusy
/* 803734FC 0037045C 48 00 03 24 */ b lbl_80373820
lbl_80373500:
/* 80373500 00370460 38 1F 00 40 */ addi r0, r31, 0x40
/* 80373504 00370464 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80373508 00370468 38 00 00 00 */ li r0, 0
/* 8037350C 0037046C 38 83 00 00 */ addi r4, r3, 0
/* 80373510 00370470 90 03 00 0C */ stw r0, 0xc(r3)
/* 80373514 00370474 81 83 00 28 */ lwz r12, 0x28(r3)
/* 80373518 00370478 28 0C 00 00 */ cmplwi r12, 0
/* 8037351C 0037047C 41 82 00 10 */ beq lbl_8037352C
/* 80373520 00370480 80 64 00 20 */ lwz r3, 0x20(r4)
/* 80373524 00370484 7D 88 03 A6 */ mtlr r12
/* 80373528 00370488 4E 80 00 21 */ blrl
lbl_8037352C:
/* 8037352C 0037048C 4B FF F6 D9 */ bl stateReady
/* 80373530 00370490 48 00 02 F0 */ b lbl_80373820
lbl_80373534:
/* 80373534 00370494 80 8D AC 2C */ lwz r4, lbl_805A97EC@sda21(r13)
/* 80373538 00370498 38 04 FF F7 */ addi r0, r4, -9
/* 8037353C 0037049C 28 00 00 03 */ cmplwi r0, 3
/* 80373540 003704A0 41 81 00 0C */ bgt lbl_8037354C
/* 80373544 003704A4 38 00 00 01 */ li r0, 1
/* 80373548 003704A8 48 00 00 48 */ b lbl_80373590
lbl_8037354C:
/* 8037354C 003704AC 3C 60 80 3F */ lis r3, 0x803f
/* 80373550 003704B0 84 03 00 48 */ lwzu r0, 0x48(r3)
/* 80373554 003704B4 7C 04 00 40 */ cmplw r4, r0
/* 80373558 003704B8 40 82 00 0C */ bne lbl_80373564
/* 8037355C 003704BC 38 00 00 01 */ li r0, 1
/* 80373560 003704C0 48 00 00 30 */ b lbl_80373590
lbl_80373564:
/* 80373564 003704C4 84 03 00 04 */ lwzu r0, 4(r3)
/* 80373568 003704C8 7C 04 00 40 */ cmplw r4, r0
/* 8037356C 003704CC 40 82 00 0C */ bne lbl_80373578
/* 80373570 003704D0 38 00 00 01 */ li r0, 1
/* 80373574 003704D4 48 00 00 1C */ b lbl_80373590
lbl_80373578:
/* 80373578 003704D8 80 03 00 04 */ lwz r0, 4(r3)
/* 8037357C 003704DC 7C 04 00 40 */ cmplw r4, r0
/* 80373580 003704E0 40 82 00 0C */ bne lbl_8037358C
/* 80373584 003704E4 38 00 00 01 */ li r0, 1
/* 80373588 003704E8 48 00 00 08 */ b lbl_80373590
lbl_8037358C:
/* 8037358C 003704EC 38 00 00 00 */ li r0, 0
lbl_80373590:
/* 80373590 003704F0 2C 00 00 00 */ cmpwi r0, 0
/* 80373594 003704F4 41 82 00 68 */ beq lbl_803735FC
/* 80373598 003704F8 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 8037359C 003704FC 28 00 00 0B */ cmplwi r0, 0xb
/* 803735A0 00370500 41 82 00 10 */ beq lbl_803735B0
/* 803735A4 00370504 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 803735A8 00370508 28 00 00 0A */ cmplwi r0, 0xa
/* 803735AC 0037050C 40 82 00 14 */ bne lbl_803735C0
lbl_803735B0:
/* 803735B0 00370510 3C 60 CC 00 */ lis r3, 0xCC006020@ha
/* 803735B4 00370514 80 03 60 20 */ lwz r0, 0xCC006020@l(r3)
/* 803735B8 00370518 54 03 10 3A */ slwi r3, r0, 2
/* 803735BC 0037051C 48 00 00 10 */ b lbl_803735CC
lbl_803735C0:
/* 803735C0 00370520 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 803735C4 00370524 38 63 60 00 */ addi r3, r3, 0xCC006000@l
/* 803735C8 00370528 80 63 00 20 */ lwz r3, 0x20(r3)
lbl_803735CC:
/* 803735CC 0037052C 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803735D0 00370530 38 BF 00 40 */ addi r5, r31, 0x40
/* 803735D4 00370534 38 00 00 00 */ li r0, 0
/* 803735D8 00370538 90 AD AC 10 */ stw r5, lbl_805A97D0@sda21(r13)
/* 803735DC 0037053C 90 04 00 0C */ stw r0, 0xc(r4)
/* 803735E0 00370540 81 84 00 28 */ lwz r12, 0x28(r4)
/* 803735E4 00370544 28 0C 00 00 */ cmplwi r12, 0
/* 803735E8 00370548 41 82 00 0C */ beq lbl_803735F4
/* 803735EC 0037054C 7D 88 03 A6 */ mtlr r12
/* 803735F0 00370550 4E 80 00 21 */ blrl
lbl_803735F4:
/* 803735F4 00370554 4B FF F6 11 */ bl stateReady
/* 803735F8 00370558 48 00 02 28 */ b lbl_80373820
lbl_803735FC:
/* 803735FC 0037055C 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80373600 00370560 28 00 00 06 */ cmplwi r0, 6
/* 80373604 00370564 40 82 00 B8 */ bne lbl_803736BC
/* 80373608 00370568 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 8037360C 0037056C 38 A4 00 1C */ addi r5, r4, 0x1c
/* 80373610 00370570 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 80373614 00370574 28 00 00 00 */ cmplwi r0, 0
/* 80373618 00370578 40 82 00 74 */ bne lbl_8037368C
/* 8037361C 0037057C 3C 60 CC 00 */ lis r3, 0xCC006020@ha
/* 80373620 00370580 80 03 60 20 */ lwz r0, 0xCC006020@l(r3)
/* 80373624 00370584 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80373628 00370588 41 82 00 34 */ beq lbl_8037365C
/* 8037362C 0037058C 38 1F 00 40 */ addi r0, r31, 0x40
/* 80373630 00370590 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80373634 00370594 38 00 00 09 */ li r0, 9
/* 80373638 00370598 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037363C 0037059C 81 84 00 28 */ lwz r12, 0x28(r4)
/* 80373640 003705A0 28 0C 00 00 */ cmplwi r12, 0
/* 80373644 003705A4 41 82 00 10 */ beq lbl_80373654
/* 80373648 003705A8 7D 88 03 A6 */ mtlr r12
/* 8037364C 003705AC 38 60 FF FE */ li r3, -2
/* 80373650 003705B0 4E 80 00 21 */ blrl
lbl_80373654:
/* 80373654 003705B4 4B FF F5 B1 */ bl stateReady
/* 80373658 003705B8 48 00 01 C8 */ b lbl_80373820
lbl_8037365C:
/* 8037365C 003705BC 38 00 00 00 */ li r0, 0
/* 80373660 003705C0 90 0D AC 24 */ stw r0, lbl_805A97E4@sda21(r13)
/* 80373664 003705C4 38 00 00 01 */ li r0, 1
/* 80373668 003705C8 3C 60 80 37 */ lis r3, cbForStateBusy@ha
/* 8037366C 003705CC 90 05 00 00 */ stw r0, 0(r5)
/* 80373670 003705D0 38 C3 32 00 */ addi r6, r3, cbForStateBusy@l
/* 80373674 003705D4 38 60 00 00 */ li r3, 0
/* 80373678 003705D8 80 AD AC 10 */ lwz r5, lbl_805A97D0@sda21(r13)
/* 8037367C 003705DC 80 85 00 14 */ lwz r4, 0x14(r5)
/* 80373680 003705E0 80 A5 00 10 */ lwz r5, 0x10(r5)
/* 80373684 003705E4 4B FF D9 75 */ bl DVDLowAudioStream
/* 80373688 003705E8 48 00 01 98 */ b lbl_80373820
lbl_8037368C:
/* 8037368C 003705EC 38 1F 00 40 */ addi r0, r31, 0x40
/* 80373690 003705F0 90 0D AC 10 */ stw r0, lbl_805A97D0@sda21(r13)
/* 80373694 003705F4 38 00 00 00 */ li r0, 0
/* 80373698 003705F8 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037369C 003705FC 81 84 00 28 */ lwz r12, 0x28(r4)
/* 803736A0 00370600 28 0C 00 00 */ cmplwi r12, 0
/* 803736A4 00370604 41 82 00 10 */ beq lbl_803736B4
/* 803736A8 00370608 7D 88 03 A6 */ mtlr r12
/* 803736AC 0037060C 38 60 00 00 */ li r3, 0
/* 803736B0 00370610 4E 80 00 21 */ blrl
lbl_803736B4:
/* 803736B4 00370614 4B FF F5 51 */ bl stateReady
/* 803736B8 00370618 48 00 01 68 */ b lbl_80373820
lbl_803736BC:
/* 803736BC 0037061C 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803736C0 00370620 38 7F 00 40 */ addi r3, r31, 0x40
/* 803736C4 00370624 38 00 00 00 */ li r0, 0
/* 803736C8 00370628 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803736CC 0037062C 90 04 00 0C */ stw r0, 0xc(r4)
/* 803736D0 00370630 81 84 00 28 */ lwz r12, 0x28(r4)
/* 803736D4 00370634 28 0C 00 00 */ cmplwi r12, 0
/* 803736D8 00370638 41 82 00 10 */ beq lbl_803736E8
/* 803736DC 0037063C 7D 88 03 A6 */ mtlr r12
/* 803736E0 00370640 38 60 00 00 */ li r3, 0
/* 803736E4 00370644 4E 80 00 21 */ blrl
lbl_803736E8:
/* 803736E8 00370648 4B FF F5 1D */ bl stateReady
/* 803736EC 0037064C 48 00 01 34 */ b lbl_80373820
lbl_803736F0:
/* 803736F0 00370650 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 803736F4 00370654 28 00 00 0E */ cmplwi r0, 0xe
/* 803736F8 00370658 40 82 00 2C */ bne lbl_80373724
/* 803736FC 0037065C 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 80373700 00370660 38 00 FF FF */ li r0, -1
/* 80373704 00370664 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 80373708 00370668 90 04 00 0C */ stw r0, 0xc(r4)
/* 8037370C 0037066C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80373710 00370670 48 00 14 BD */ bl __DVDStoreErrorCode
/* 80373714 00370674 3C 60 80 37 */ lis r3, cbForStateError@ha
/* 80373718 00370678 38 63 1D 90 */ addi r3, r3, cbForStateError@l
/* 8037371C 0037067C 4B FF D7 29 */ bl DVDLowStopMotor
/* 80373720 00370680 48 00 01 00 */ b lbl_80373820
lbl_80373724:
/* 80373724 00370684 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80373728 00370688 28 00 00 01 */ cmplwi r0, 1
/* 8037372C 0037068C 41 82 00 28 */ beq lbl_80373754
/* 80373730 00370690 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80373734 00370694 28 00 00 04 */ cmplwi r0, 4
/* 80373738 00370698 41 82 00 1C */ beq lbl_80373754
/* 8037373C 0037069C 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 80373740 003706A0 28 00 00 05 */ cmplwi r0, 5
/* 80373744 003706A4 41 82 00 10 */ beq lbl_80373754
/* 80373748 003706A8 80 0D AC 2C */ lwz r0, lbl_805A97EC@sda21(r13)
/* 8037374C 003706AC 28 00 00 0E */ cmplwi r0, 0xe
/* 80373750 003706B0 40 82 00 C4 */ bne lbl_80373814
lbl_80373754:
/* 80373754 003706B4 83 CD AC 10 */ lwz r30, lbl_805A97D0@sda21(r13)
/* 80373758 003706B8 80 7E 00 20 */ lwz r3, 0x20(r30)
/* 8037375C 003706BC 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80373760 003706C0 7C 03 00 40 */ cmplw r3, r0
/* 80373764 003706C4 40 82 00 B0 */ bne lbl_80373814
/* 80373768 003706C8 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 8037376C 003706CC 28 00 00 00 */ cmplwi r0, 0
/* 80373770 003706D0 41 82 00 64 */ beq lbl_803737D4
/* 80373774 003706D4 38 80 00 00 */ li r4, 0
/* 80373778 003706D8 90 8D AC 38 */ stw r4, lbl_805A97F8@sda21(r13)
/* 8037377C 003706DC 38 7F 00 40 */ addi r3, r31, 0x40
/* 80373780 003706E0 38 00 00 0A */ li r0, 0xa
/* 80373784 003706E4 90 8D AC 30 */ stw r4, lbl_805A97F0@sda21(r13)
/* 80373788 003706E8 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 8037378C 003706EC 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80373790 003706F0 81 9E 00 28 */ lwz r12, 0x28(r30)
/* 80373794 003706F4 28 0C 00 00 */ cmplwi r12, 0
/* 80373798 003706F8 41 82 00 14 */ beq lbl_803737AC
/* 8037379C 003706FC 7D 88 03 A6 */ mtlr r12
/* 803737A0 00370700 38 9E 00 00 */ addi r4, r30, 0
/* 803737A4 00370704 38 60 FF FD */ li r3, -3
/* 803737A8 00370708 4E 80 00 21 */ blrl
lbl_803737AC:
/* 803737AC 0037070C 81 8D AC 34 */ lwz r12, lbl_805A97F4@sda21(r13)
/* 803737B0 00370710 28 0C 00 00 */ cmplwi r12, 0
/* 803737B4 00370714 41 82 00 14 */ beq lbl_803737C8
/* 803737B8 00370718 7D 88 03 A6 */ mtlr r12
/* 803737BC 0037071C 38 9E 00 00 */ addi r4, r30, 0
/* 803737C0 00370720 38 60 00 00 */ li r3, 0
/* 803737C4 00370724 4E 80 00 21 */ blrl
lbl_803737C8:
/* 803737C8 00370728 4B FF F4 3D */ bl stateReady
/* 803737CC 0037072C 38 00 00 01 */ li r0, 1
/* 803737D0 00370730 48 00 00 08 */ b lbl_803737D8
lbl_803737D4:
/* 803737D4 00370734 38 00 00 00 */ li r0, 0
lbl_803737D8:
/* 803737D8 00370738 2C 00 00 00 */ cmpwi r0, 0
/* 803737DC 0037073C 40 82 00 44 */ bne lbl_80373820
/* 803737E0 00370740 80 8D AC 10 */ lwz r4, lbl_805A97D0@sda21(r13)
/* 803737E4 00370744 38 7F 00 40 */ addi r3, r31, 0x40
/* 803737E8 00370748 38 00 00 00 */ li r0, 0
/* 803737EC 0037074C 90 6D AC 10 */ stw r3, lbl_805A97D0@sda21(r13)
/* 803737F0 00370750 90 04 00 0C */ stw r0, 0xc(r4)
/* 803737F4 00370754 81 84 00 28 */ lwz r12, 0x28(r4)
/* 803737F8 00370758 28 0C 00 00 */ cmplwi r12, 0
/* 803737FC 0037075C 41 82 00 10 */ beq lbl_8037380C
/* 80373800 00370760 80 64 00 20 */ lwz r3, 0x20(r4)
/* 80373804 00370764 7D 88 03 A6 */ mtlr r12
/* 80373808 00370768 4E 80 00 21 */ blrl
lbl_8037380C:
/* 8037380C 0037076C 4B FF F3 F9 */ bl stateReady
/* 80373810 00370770 48 00 00 10 */ b lbl_80373820
lbl_80373814:
/* 80373814 00370774 3C 60 80 37 */ lis r3, cbForStateGettingError@ha
/* 80373818 00370778 38 63 1F 4C */ addi r3, r3, cbForStateGettingError@l
/* 8037381C 0037077C 4B FF D6 B5 */ bl DVDLowRequestError
lbl_80373820:
/* 80373820 00370780 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80373824 00370784 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80373828 00370788 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 8037382C 0037078C 38 21 00 18 */ addi r1, r1, 0x18
/* 80373830 00370790 7C 08 03 A6 */ mtlr r0
/* 80373834 00370794 4E 80 00 20 */ blr
.global sub_80373838
sub_80373838:
/* 80373838 00370798 7C 08 02 A6 */ mflr r0
/* 8037383C 0037079C 90 01 00 04 */ stw r0, 4(r1)
/* 80373840 003707A0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373844 003707A4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373848 003707A8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8037384C 003707AC 3B C4 00 00 */ addi r30, r4, 0
/* 80373850 003707B0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80373854 003707B4 3B A3 00 00 */ addi r29, r3, 0
/* 80373858 003707B8 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 8037385C 003707BC 2C 00 00 00 */ cmpwi r0, 0
/* 80373860 003707C0 41 82 00 30 */ beq lbl_80373890
/* 80373864 003707C4 80 7E 00 08 */ lwz r3, 8(r30)
/* 80373868 003707C8 28 03 00 01 */ cmplwi r3, 1
/* 8037386C 003707CC 41 82 00 18 */ beq lbl_80373884
/* 80373870 003707D0 38 03 FF FC */ addi r0, r3, -4
/* 80373874 003707D4 28 00 00 01 */ cmplwi r0, 1
/* 80373878 003707D8 40 81 00 0C */ ble lbl_80373884
/* 8037387C 003707DC 28 03 00 0E */ cmplwi r3, 0xe
/* 80373880 003707E0 40 82 00 10 */ bne lbl_80373890
lbl_80373884:
/* 80373884 003707E4 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 80373888 003707E8 80 9E 00 14 */ lwz r4, 0x14(r30)
/* 8037388C 003707EC 48 00 B1 F9 */ bl DCInvalidateRange
lbl_80373890:
/* 80373890 003707F0 48 00 DD D1 */ bl OSDisableInterrupts
/* 80373894 003707F4 38 00 00 02 */ li r0, 2
/* 80373898 003707F8 90 1E 00 0C */ stw r0, 0xc(r30)
/* 8037389C 003707FC 3B E3 00 00 */ addi r31, r3, 0
/* 803738A0 00370800 38 7D 00 00 */ addi r3, r29, 0
/* 803738A4 00370804 38 9E 00 00 */ addi r4, r30, 0
/* 803738A8 00370808 48 00 10 49 */ bl __DVDPushWaitingQueue
/* 803738AC 0037080C 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 803738B0 00370810 3B C3 00 00 */ addi r30, r3, 0
/* 803738B4 00370814 28 00 00 00 */ cmplwi r0, 0
/* 803738B8 00370818 40 82 00 14 */ bne lbl_803738CC
/* 803738BC 0037081C 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 803738C0 00370820 2C 00 00 00 */ cmpwi r0, 0
/* 803738C4 00370824 40 82 00 08 */ bne lbl_803738CC
/* 803738C8 00370828 4B FF F3 3D */ bl stateReady
lbl_803738CC:
/* 803738CC 0037082C 7F E3 FB 78 */ mr r3, r31
/* 803738D0 00370830 48 00 DD B9 */ bl OSRestoreInterrupts
/* 803738D4 00370834 7F C3 F3 78 */ mr r3, r30
/* 803738D8 00370838 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803738DC 0037083C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803738E0 00370840 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803738E4 00370844 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803738E8 00370848 38 21 00 20 */ addi r1, r1, 0x20
/* 803738EC 0037084C 7C 08 03 A6 */ mtlr r0
/* 803738F0 00370850 4E 80 00 20 */ blr
.global DVDReadAbsAsyncPrio
DVDReadAbsAsyncPrio:
/* 803738F4 00370854 7C 08 02 A6 */ mflr r0
/* 803738F8 00370858 90 01 00 04 */ stw r0, 4(r1)
/* 803738FC 0037085C 38 00 00 01 */ li r0, 1
/* 80373900 00370860 94 21 FF C8 */ stwu r1, -0x38(r1)
/* 80373904 00370864 93 E1 00 34 */ stw r31, 0x34(r1)
/* 80373908 00370868 3B E8 00 00 */ addi r31, r8, 0
/* 8037390C 0037086C 93 C1 00 30 */ stw r30, 0x30(r1)
/* 80373910 00370870 93 A1 00 2C */ stw r29, 0x2c(r1)
/* 80373914 00370874 3B A3 00 00 */ addi r29, r3, 0
/* 80373918 00370878 90 03 00 08 */ stw r0, 8(r3)
/* 8037391C 0037087C 38 00 00 00 */ li r0, 0
/* 80373920 00370880 90 83 00 18 */ stw r4, 0x18(r3)
/* 80373924 00370884 90 A3 00 14 */ stw r5, 0x14(r3)
/* 80373928 00370888 90 C3 00 10 */ stw r6, 0x10(r3)
/* 8037392C 0037088C 90 03 00 20 */ stw r0, 0x20(r3)
/* 80373930 00370890 90 E3 00 28 */ stw r7, 0x28(r3)
/* 80373934 00370894 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373938 00370898 2C 00 00 00 */ cmpwi r0, 0
/* 8037393C 0037089C 41 82 00 30 */ beq lbl_8037396C
/* 80373940 003708A0 80 7D 00 08 */ lwz r3, 8(r29)
/* 80373944 003708A4 28 03 00 01 */ cmplwi r3, 1
/* 80373948 003708A8 41 82 00 18 */ beq lbl_80373960
/* 8037394C 003708AC 38 03 FF FC */ addi r0, r3, -4
/* 80373950 003708B0 28 00 00 01 */ cmplwi r0, 1
/* 80373954 003708B4 40 81 00 0C */ ble lbl_80373960
/* 80373958 003708B8 28 03 00 0E */ cmplwi r3, 0xe
/* 8037395C 003708BC 40 82 00 10 */ bne lbl_8037396C
lbl_80373960:
/* 80373960 003708C0 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 80373964 003708C4 80 9D 00 14 */ lwz r4, 0x14(r29)
/* 80373968 003708C8 48 00 B1 1D */ bl DCInvalidateRange
lbl_8037396C:
/* 8037396C 003708CC 48 00 DC F5 */ bl OSDisableInterrupts
/* 80373970 003708D0 38 00 00 02 */ li r0, 2
/* 80373974 003708D4 90 1D 00 0C */ stw r0, 0xc(r29)
/* 80373978 003708D8 3B C3 00 00 */ addi r30, r3, 0
/* 8037397C 003708DC 38 7F 00 00 */ addi r3, r31, 0
/* 80373980 003708E0 38 9D 00 00 */ addi r4, r29, 0
/* 80373984 003708E4 48 00 0F 6D */ bl __DVDPushWaitingQueue
/* 80373988 003708E8 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 8037398C 003708EC 3B E3 00 00 */ addi r31, r3, 0
/* 80373990 003708F0 28 00 00 00 */ cmplwi r0, 0
/* 80373994 003708F4 40 82 00 14 */ bne lbl_803739A8
/* 80373998 003708F8 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 8037399C 003708FC 2C 00 00 00 */ cmpwi r0, 0
/* 803739A0 00370900 40 82 00 08 */ bne lbl_803739A8
/* 803739A4 00370904 4B FF F2 61 */ bl stateReady
lbl_803739A8:
/* 803739A8 00370908 7F C3 F3 78 */ mr r3, r30
/* 803739AC 0037090C 48 00 DC DD */ bl OSRestoreInterrupts
/* 803739B0 00370910 7F E3 FB 78 */ mr r3, r31
/* 803739B4 00370914 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 803739B8 00370918 83 E1 00 34 */ lwz r31, 0x34(r1)
/* 803739BC 0037091C 83 C1 00 30 */ lwz r30, 0x30(r1)
/* 803739C0 00370920 83 A1 00 2C */ lwz r29, 0x2c(r1)
/* 803739C4 00370924 38 21 00 38 */ addi r1, r1, 0x38
/* 803739C8 00370928 7C 08 03 A6 */ mtlr r0
/* 803739CC 0037092C 4E 80 00 20 */ blr
.global DVDReadAbsAsyncForBS
DVDReadAbsAsyncForBS:
/* 803739D0 00370930 7C 08 02 A6 */ mflr r0
/* 803739D4 00370934 90 01 00 04 */ stw r0, 4(r1)
/* 803739D8 00370938 38 00 00 04 */ li r0, 4
/* 803739DC 0037093C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 803739E0 00370940 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 803739E4 00370944 3B E3 00 00 */ addi r31, r3, 0
/* 803739E8 00370948 93 C1 00 28 */ stw r30, 0x28(r1)
/* 803739EC 0037094C 90 03 00 08 */ stw r0, 8(r3)
/* 803739F0 00370950 38 00 00 00 */ li r0, 0
/* 803739F4 00370954 90 83 00 18 */ stw r4, 0x18(r3)
/* 803739F8 00370958 90 A3 00 14 */ stw r5, 0x14(r3)
/* 803739FC 0037095C 90 C3 00 10 */ stw r6, 0x10(r3)
/* 80373A00 00370960 90 03 00 20 */ stw r0, 0x20(r3)
/* 80373A04 00370964 90 E3 00 28 */ stw r7, 0x28(r3)
/* 80373A08 00370968 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373A0C 0037096C 2C 00 00 00 */ cmpwi r0, 0
/* 80373A10 00370970 41 82 00 30 */ beq lbl_80373A40
/* 80373A14 00370974 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373A18 00370978 28 03 00 01 */ cmplwi r3, 1
/* 80373A1C 0037097C 41 82 00 18 */ beq lbl_80373A34
/* 80373A20 00370980 38 03 FF FC */ addi r0, r3, -4
/* 80373A24 00370984 28 00 00 01 */ cmplwi r0, 1
/* 80373A28 00370988 40 81 00 0C */ ble lbl_80373A34
/* 80373A2C 0037098C 28 03 00 0E */ cmplwi r3, 0xe
/* 80373A30 00370990 40 82 00 10 */ bne lbl_80373A40
lbl_80373A34:
/* 80373A34 00370994 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373A38 00370998 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373A3C 0037099C 48 00 B0 49 */ bl DCInvalidateRange
lbl_80373A40:
/* 80373A40 003709A0 48 00 DC 21 */ bl OSDisableInterrupts
/* 80373A44 003709A4 38 00 00 02 */ li r0, 2
/* 80373A48 003709A8 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373A4C 003709AC 3B C3 00 00 */ addi r30, r3, 0
/* 80373A50 003709B0 38 9F 00 00 */ addi r4, r31, 0
/* 80373A54 003709B4 38 60 00 02 */ li r3, 2
/* 80373A58 003709B8 48 00 0E 99 */ bl __DVDPushWaitingQueue
/* 80373A5C 003709BC 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373A60 003709C0 3B E3 00 00 */ addi r31, r3, 0
/* 80373A64 003709C4 28 00 00 00 */ cmplwi r0, 0
/* 80373A68 003709C8 40 82 00 14 */ bne lbl_80373A7C
/* 80373A6C 003709CC 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373A70 003709D0 2C 00 00 00 */ cmpwi r0, 0
/* 80373A74 003709D4 40 82 00 08 */ bne lbl_80373A7C
/* 80373A78 003709D8 4B FF F1 8D */ bl stateReady
lbl_80373A7C:
/* 80373A7C 003709DC 7F C3 F3 78 */ mr r3, r30
/* 80373A80 003709E0 48 00 DC 09 */ bl OSRestoreInterrupts
/* 80373A84 003709E4 7F E3 FB 78 */ mr r3, r31
/* 80373A88 003709E8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80373A8C 003709EC 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80373A90 003709F0 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80373A94 003709F4 38 21 00 30 */ addi r1, r1, 0x30
/* 80373A98 003709F8 7C 08 03 A6 */ mtlr r0
/* 80373A9C 003709FC 4E 80 00 20 */ blr
.global DVDReadDiskID
DVDReadDiskID:
/* 80373AA0 00370A00 7C 08 02 A6 */ mflr r0
/* 80373AA4 00370A04 90 01 00 04 */ stw r0, 4(r1)
/* 80373AA8 00370A08 38 00 00 05 */ li r0, 5
/* 80373AAC 00370A0C 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80373AB0 00370A10 93 E1 00 24 */ stw r31, 0x24(r1)
/* 80373AB4 00370A14 3B E3 00 00 */ addi r31, r3, 0
/* 80373AB8 00370A18 93 C1 00 20 */ stw r30, 0x20(r1)
/* 80373ABC 00370A1C 90 03 00 08 */ stw r0, 8(r3)
/* 80373AC0 00370A20 38 60 00 20 */ li r3, 0x20
/* 80373AC4 00370A24 38 00 00 00 */ li r0, 0
/* 80373AC8 00370A28 90 9F 00 18 */ stw r4, 0x18(r31)
/* 80373ACC 00370A2C 90 7F 00 14 */ stw r3, 0x14(r31)
/* 80373AD0 00370A30 90 1F 00 10 */ stw r0, 0x10(r31)
/* 80373AD4 00370A34 90 1F 00 20 */ stw r0, 0x20(r31)
/* 80373AD8 00370A38 90 BF 00 28 */ stw r5, 0x28(r31)
/* 80373ADC 00370A3C 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373AE0 00370A40 2C 00 00 00 */ cmpwi r0, 0
/* 80373AE4 00370A44 41 82 00 30 */ beq lbl_80373B14
/* 80373AE8 00370A48 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373AEC 00370A4C 28 03 00 01 */ cmplwi r3, 1
/* 80373AF0 00370A50 41 82 00 18 */ beq lbl_80373B08
/* 80373AF4 00370A54 38 03 FF FC */ addi r0, r3, -4
/* 80373AF8 00370A58 28 00 00 01 */ cmplwi r0, 1
/* 80373AFC 00370A5C 40 81 00 0C */ ble lbl_80373B08
/* 80373B00 00370A60 28 03 00 0E */ cmplwi r3, 0xe
/* 80373B04 00370A64 40 82 00 10 */ bne lbl_80373B14
lbl_80373B08:
/* 80373B08 00370A68 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373B0C 00370A6C 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373B10 00370A70 48 00 AF 75 */ bl DCInvalidateRange
lbl_80373B14:
/* 80373B14 00370A74 48 00 DB 4D */ bl OSDisableInterrupts
/* 80373B18 00370A78 38 00 00 02 */ li r0, 2
/* 80373B1C 00370A7C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373B20 00370A80 3B C3 00 00 */ addi r30, r3, 0
/* 80373B24 00370A84 38 9F 00 00 */ addi r4, r31, 0
/* 80373B28 00370A88 38 60 00 02 */ li r3, 2
/* 80373B2C 00370A8C 48 00 0D C5 */ bl __DVDPushWaitingQueue
/* 80373B30 00370A90 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373B34 00370A94 3B E3 00 00 */ addi r31, r3, 0
/* 80373B38 00370A98 28 00 00 00 */ cmplwi r0, 0
/* 80373B3C 00370A9C 40 82 00 14 */ bne lbl_80373B50
/* 80373B40 00370AA0 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373B44 00370AA4 2C 00 00 00 */ cmpwi r0, 0
/* 80373B48 00370AA8 40 82 00 08 */ bne lbl_80373B50
/* 80373B4C 00370AAC 4B FF F0 B9 */ bl stateReady
lbl_80373B50:
/* 80373B50 00370AB0 7F C3 F3 78 */ mr r3, r30
/* 80373B54 00370AB4 48 00 DB 35 */ bl OSRestoreInterrupts
/* 80373B58 00370AB8 7F E3 FB 78 */ mr r3, r31
/* 80373B5C 00370ABC 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80373B60 00370AC0 83 E1 00 24 */ lwz r31, 0x24(r1)
/* 80373B64 00370AC4 83 C1 00 20 */ lwz r30, 0x20(r1)
/* 80373B68 00370AC8 38 21 00 28 */ addi r1, r1, 0x28
/* 80373B6C 00370ACC 7C 08 03 A6 */ mtlr r0
/* 80373B70 00370AD0 4E 80 00 20 */ blr
.global sub_80373b74
sub_80373b74:
/* 80373B74 00370AD4 7C 08 02 A6 */ mflr r0
/* 80373B78 00370AD8 90 01 00 04 */ stw r0, 4(r1)
/* 80373B7C 00370ADC 38 00 00 06 */ li r0, 6
/* 80373B80 00370AE0 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80373B84 00370AE4 93 E1 00 24 */ stw r31, 0x24(r1)
/* 80373B88 00370AE8 3B E3 00 00 */ addi r31, r3, 0
/* 80373B8C 00370AEC 93 C1 00 20 */ stw r30, 0x20(r1)
/* 80373B90 00370AF0 90 03 00 08 */ stw r0, 8(r3)
/* 80373B94 00370AF4 90 83 00 14 */ stw r4, 0x14(r3)
/* 80373B98 00370AF8 90 A3 00 10 */ stw r5, 0x10(r3)
/* 80373B9C 00370AFC 90 C3 00 28 */ stw r6, 0x28(r3)
/* 80373BA0 00370B00 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373BA4 00370B04 2C 00 00 00 */ cmpwi r0, 0
/* 80373BA8 00370B08 41 82 00 30 */ beq lbl_80373BD8
/* 80373BAC 00370B0C 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373BB0 00370B10 28 03 00 01 */ cmplwi r3, 1
/* 80373BB4 00370B14 41 82 00 18 */ beq lbl_80373BCC
/* 80373BB8 00370B18 38 03 FF FC */ addi r0, r3, -4
/* 80373BBC 00370B1C 28 00 00 01 */ cmplwi r0, 1
/* 80373BC0 00370B20 40 81 00 0C */ ble lbl_80373BCC
/* 80373BC4 00370B24 28 03 00 0E */ cmplwi r3, 0xe
/* 80373BC8 00370B28 40 82 00 10 */ bne lbl_80373BD8
lbl_80373BCC:
/* 80373BCC 00370B2C 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373BD0 00370B30 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373BD4 00370B34 48 00 AE B1 */ bl DCInvalidateRange
lbl_80373BD8:
/* 80373BD8 00370B38 48 00 DA 89 */ bl OSDisableInterrupts
/* 80373BDC 00370B3C 38 00 00 02 */ li r0, 2
/* 80373BE0 00370B40 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373BE4 00370B44 3B C3 00 00 */ addi r30, r3, 0
/* 80373BE8 00370B48 38 9F 00 00 */ addi r4, r31, 0
/* 80373BEC 00370B4C 38 60 00 01 */ li r3, 1
/* 80373BF0 00370B50 48 00 0D 01 */ bl __DVDPushWaitingQueue
/* 80373BF4 00370B54 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373BF8 00370B58 3B E3 00 00 */ addi r31, r3, 0
/* 80373BFC 00370B5C 28 00 00 00 */ cmplwi r0, 0
/* 80373C00 00370B60 40 82 00 14 */ bne lbl_80373C14
/* 80373C04 00370B64 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373C08 00370B68 2C 00 00 00 */ cmpwi r0, 0
/* 80373C0C 00370B6C 40 82 00 08 */ bne lbl_80373C14
/* 80373C10 00370B70 4B FF EF F5 */ bl stateReady
lbl_80373C14:
/* 80373C14 00370B74 7F C3 F3 78 */ mr r3, r30
/* 80373C18 00370B78 48 00 DA 71 */ bl OSRestoreInterrupts
/* 80373C1C 00370B7C 7F E3 FB 78 */ mr r3, r31
/* 80373C20 00370B80 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80373C24 00370B84 83 E1 00 24 */ lwz r31, 0x24(r1)
/* 80373C28 00370B88 83 C1 00 20 */ lwz r30, 0x20(r1)
/* 80373C2C 00370B8C 38 21 00 28 */ addi r1, r1, 0x28
/* 80373C30 00370B90 7C 08 03 A6 */ mtlr r0
/* 80373C34 00370B94 4E 80 00 20 */ blr
.global DVDCancelStreamAsync
DVDCancelStreamAsync:
/* 80373C38 00370B98 7C 08 02 A6 */ mflr r0
/* 80373C3C 00370B9C 90 01 00 04 */ stw r0, 4(r1)
/* 80373C40 00370BA0 38 00 00 07 */ li r0, 7
/* 80373C44 00370BA4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373C48 00370BA8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373C4C 00370BAC 3B E3 00 00 */ addi r31, r3, 0
/* 80373C50 00370BB0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373C54 00370BB4 90 03 00 08 */ stw r0, 8(r3)
/* 80373C58 00370BB8 90 83 00 28 */ stw r4, 0x28(r3)
/* 80373C5C 00370BBC 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373C60 00370BC0 2C 00 00 00 */ cmpwi r0, 0
/* 80373C64 00370BC4 41 82 00 30 */ beq lbl_80373C94
/* 80373C68 00370BC8 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373C6C 00370BCC 28 03 00 01 */ cmplwi r3, 1
/* 80373C70 00370BD0 41 82 00 18 */ beq lbl_80373C88
/* 80373C74 00370BD4 38 03 FF FC */ addi r0, r3, -4
/* 80373C78 00370BD8 28 00 00 01 */ cmplwi r0, 1
/* 80373C7C 00370BDC 40 81 00 0C */ ble lbl_80373C88
/* 80373C80 00370BE0 28 03 00 0E */ cmplwi r3, 0xe
/* 80373C84 00370BE4 40 82 00 10 */ bne lbl_80373C94
lbl_80373C88:
/* 80373C88 00370BE8 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373C8C 00370BEC 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373C90 00370BF0 48 00 AD F5 */ bl DCInvalidateRange
lbl_80373C94:
/* 80373C94 00370BF4 48 00 D9 CD */ bl OSDisableInterrupts
/* 80373C98 00370BF8 38 00 00 02 */ li r0, 2
/* 80373C9C 00370BFC 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373CA0 00370C00 3B C3 00 00 */ addi r30, r3, 0
/* 80373CA4 00370C04 38 9F 00 00 */ addi r4, r31, 0
/* 80373CA8 00370C08 38 60 00 01 */ li r3, 1
/* 80373CAC 00370C0C 48 00 0C 45 */ bl __DVDPushWaitingQueue
/* 80373CB0 00370C10 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373CB4 00370C14 3B E3 00 00 */ addi r31, r3, 0
/* 80373CB8 00370C18 28 00 00 00 */ cmplwi r0, 0
/* 80373CBC 00370C1C 40 82 00 14 */ bne lbl_80373CD0
/* 80373CC0 00370C20 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373CC4 00370C24 2C 00 00 00 */ cmpwi r0, 0
/* 80373CC8 00370C28 40 82 00 08 */ bne lbl_80373CD0
/* 80373CCC 00370C2C 4B FF EF 39 */ bl stateReady
lbl_80373CD0:
/* 80373CD0 00370C30 7F C3 F3 78 */ mr r3, r30
/* 80373CD4 00370C34 48 00 D9 B5 */ bl OSRestoreInterrupts
/* 80373CD8 00370C38 7F E3 FB 78 */ mr r3, r31
/* 80373CDC 00370C3C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373CE0 00370C40 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373CE4 00370C44 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373CE8 00370C48 38 21 00 20 */ addi r1, r1, 0x20
/* 80373CEC 00370C4C 7C 08 03 A6 */ mtlr r0
/* 80373CF0 00370C50 4E 80 00 20 */ blr
.global sub_80373cf4
sub_80373cf4:
/* 80373CF4 00370C54 7C 08 02 A6 */ mflr r0
/* 80373CF8 00370C58 90 01 00 04 */ stw r0, 4(r1)
/* 80373CFC 00370C5C 38 00 00 07 */ li r0, 7
/* 80373D00 00370C60 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373D04 00370C64 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373D08 00370C68 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373D0C 00370C6C 3B C3 00 00 */ addi r30, r3, 0
/* 80373D10 00370C70 3C 60 80 37 */ lis r3, sub_80373d94@ha
/* 80373D14 00370C74 90 1E 00 08 */ stw r0, 8(r30)
/* 80373D18 00370C78 38 03 3D 94 */ addi r0, r3, sub_80373d94@l
/* 80373D1C 00370C7C 38 9E 00 00 */ addi r4, r30, 0
/* 80373D20 00370C80 90 1E 00 28 */ stw r0, 0x28(r30)
/* 80373D24 00370C84 38 60 00 01 */ li r3, 1
/* 80373D28 00370C88 4B FF FB 11 */ bl sub_80373838
/* 80373D2C 00370C8C 2C 03 00 00 */ cmpwi r3, 0
/* 80373D30 00370C90 40 82 00 0C */ bne lbl_80373D3C
/* 80373D34 00370C94 38 60 FF FF */ li r3, -1
/* 80373D38 00370C98 48 00 00 44 */ b lbl_80373D7C
lbl_80373D3C:
/* 80373D3C 00370C9C 48 00 D9 25 */ bl OSDisableInterrupts
/* 80373D40 00370CA0 7C 7F 1B 78 */ mr r31, r3
lbl_80373D44:
/* 80373D44 00370CA4 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80373D48 00370CA8 38 03 00 01 */ addi r0, r3, 1
/* 80373D4C 00370CAC 28 00 00 01 */ cmplwi r0, 1
/* 80373D50 00370CB0 40 81 00 0C */ ble lbl_80373D5C
/* 80373D54 00370CB4 2C 03 00 0A */ cmpwi r3, 0xa
/* 80373D58 00370CB8 40 82 00 0C */ bne lbl_80373D64
lbl_80373D5C:
/* 80373D5C 00370CBC 83 DE 00 20 */ lwz r30, 0x20(r30)
/* 80373D60 00370CC0 48 00 00 10 */ b lbl_80373D70
lbl_80373D64:
/* 80373D64 00370CC4 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 80373D68 00370CC8 48 01 13 A5 */ bl OSSleepThread
/* 80373D6C 00370CCC 4B FF FF D8 */ b lbl_80373D44
lbl_80373D70:
/* 80373D70 00370CD0 7F E3 FB 78 */ mr r3, r31
/* 80373D74 00370CD4 48 00 D9 15 */ bl OSRestoreInterrupts
/* 80373D78 00370CD8 7F C3 F3 78 */ mr r3, r30
lbl_80373D7C:
/* 80373D7C 00370CDC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373D80 00370CE0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373D84 00370CE4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373D88 00370CE8 38 21 00 20 */ addi r1, r1, 0x20
/* 80373D8C 00370CEC 7C 08 03 A6 */ mtlr r0
/* 80373D90 00370CF0 4E 80 00 20 */ blr
.global sub_80373d94
sub_80373d94:
/* 80373D94 00370CF4 7C 08 02 A6 */ mflr r0
/* 80373D98 00370CF8 90 01 00 04 */ stw r0, 4(r1)
/* 80373D9C 00370CFC 94 21 FF F8 */ stwu r1, -8(r1)
/* 80373DA0 00370D00 90 64 00 20 */ stw r3, 0x20(r4)
/* 80373DA4 00370D04 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 80373DA8 00370D08 48 01 14 51 */ bl OSWakeupThread
/* 80373DAC 00370D0C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80373DB0 00370D10 38 21 00 08 */ addi r1, r1, 8
/* 80373DB4 00370D14 7C 08 03 A6 */ mtlr r0
/* 80373DB8 00370D18 4E 80 00 20 */ blr
.global sub_80373dbc
sub_80373dbc:
/* 80373DBC 00370D1C 7C 08 02 A6 */ mflr r0
/* 80373DC0 00370D20 90 01 00 04 */ stw r0, 4(r1)
/* 80373DC4 00370D24 38 00 00 08 */ li r0, 8
/* 80373DC8 00370D28 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373DCC 00370D2C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373DD0 00370D30 3B E3 00 00 */ addi r31, r3, 0
/* 80373DD4 00370D34 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373DD8 00370D38 90 03 00 08 */ stw r0, 8(r3)
/* 80373DDC 00370D3C 90 83 00 28 */ stw r4, 0x28(r3)
/* 80373DE0 00370D40 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373DE4 00370D44 2C 00 00 00 */ cmpwi r0, 0
/* 80373DE8 00370D48 41 82 00 30 */ beq lbl_80373E18
/* 80373DEC 00370D4C 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373DF0 00370D50 28 03 00 01 */ cmplwi r3, 1
/* 80373DF4 00370D54 41 82 00 18 */ beq lbl_80373E0C
/* 80373DF8 00370D58 38 03 FF FC */ addi r0, r3, -4
/* 80373DFC 00370D5C 28 00 00 01 */ cmplwi r0, 1
/* 80373E00 00370D60 40 81 00 0C */ ble lbl_80373E0C
/* 80373E04 00370D64 28 03 00 0E */ cmplwi r3, 0xe
/* 80373E08 00370D68 40 82 00 10 */ bne lbl_80373E18
lbl_80373E0C:
/* 80373E0C 00370D6C 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373E10 00370D70 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373E14 00370D74 48 00 AC 71 */ bl DCInvalidateRange
lbl_80373E18:
/* 80373E18 00370D78 48 00 D8 49 */ bl OSDisableInterrupts
/* 80373E1C 00370D7C 38 00 00 02 */ li r0, 2
/* 80373E20 00370D80 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373E24 00370D84 3B C3 00 00 */ addi r30, r3, 0
/* 80373E28 00370D88 38 9F 00 00 */ addi r4, r31, 0
/* 80373E2C 00370D8C 38 60 00 01 */ li r3, 1
/* 80373E30 00370D90 48 00 0A C1 */ bl __DVDPushWaitingQueue
/* 80373E34 00370D94 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373E38 00370D98 3B E3 00 00 */ addi r31, r3, 0
/* 80373E3C 00370D9C 28 00 00 00 */ cmplwi r0, 0
/* 80373E40 00370DA0 40 82 00 14 */ bne lbl_80373E54
/* 80373E44 00370DA4 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373E48 00370DA8 2C 00 00 00 */ cmpwi r0, 0
/* 80373E4C 00370DAC 40 82 00 08 */ bne lbl_80373E54
/* 80373E50 00370DB0 4B FF ED B5 */ bl stateReady
lbl_80373E54:
/* 80373E54 00370DB4 7F C3 F3 78 */ mr r3, r30
/* 80373E58 00370DB8 48 00 D8 31 */ bl OSRestoreInterrupts
/* 80373E5C 00370DBC 7F E3 FB 78 */ mr r3, r31
/* 80373E60 00370DC0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373E64 00370DC4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373E68 00370DC8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373E6C 00370DCC 38 21 00 20 */ addi r1, r1, 0x20
/* 80373E70 00370DD0 7C 08 03 A6 */ mtlr r0
/* 80373E74 00370DD4 4E 80 00 20 */ blr
.global sub_80373e78
sub_80373e78:
/* 80373E78 00370DD8 7C 08 02 A6 */ mflr r0
/* 80373E7C 00370DDC 90 01 00 04 */ stw r0, 4(r1)
/* 80373E80 00370DE0 38 00 00 09 */ li r0, 9
/* 80373E84 00370DE4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373E88 00370DE8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373E8C 00370DEC 3B E3 00 00 */ addi r31, r3, 0
/* 80373E90 00370DF0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373E94 00370DF4 90 03 00 08 */ stw r0, 8(r3)
/* 80373E98 00370DF8 90 83 00 28 */ stw r4, 0x28(r3)
/* 80373E9C 00370DFC 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373EA0 00370E00 2C 00 00 00 */ cmpwi r0, 0
/* 80373EA4 00370E04 41 82 00 30 */ beq lbl_80373ED4
/* 80373EA8 00370E08 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373EAC 00370E0C 28 03 00 01 */ cmplwi r3, 1
/* 80373EB0 00370E10 41 82 00 18 */ beq lbl_80373EC8
/* 80373EB4 00370E14 38 03 FF FC */ addi r0, r3, -4
/* 80373EB8 00370E18 28 00 00 01 */ cmplwi r0, 1
/* 80373EBC 00370E1C 40 81 00 0C */ ble lbl_80373EC8
/* 80373EC0 00370E20 28 03 00 0E */ cmplwi r3, 0xe
/* 80373EC4 00370E24 40 82 00 10 */ bne lbl_80373ED4
lbl_80373EC8:
/* 80373EC8 00370E28 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373ECC 00370E2C 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373ED0 00370E30 48 00 AB B5 */ bl DCInvalidateRange
lbl_80373ED4:
/* 80373ED4 00370E34 48 00 D7 8D */ bl OSDisableInterrupts
/* 80373ED8 00370E38 38 00 00 02 */ li r0, 2
/* 80373EDC 00370E3C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373EE0 00370E40 3B C3 00 00 */ addi r30, r3, 0
/* 80373EE4 00370E44 38 9F 00 00 */ addi r4, r31, 0
/* 80373EE8 00370E48 38 60 00 01 */ li r3, 1
/* 80373EEC 00370E4C 48 00 0A 05 */ bl __DVDPushWaitingQueue
/* 80373EF0 00370E50 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373EF4 00370E54 3B E3 00 00 */ addi r31, r3, 0
/* 80373EF8 00370E58 28 00 00 00 */ cmplwi r0, 0
/* 80373EFC 00370E5C 40 82 00 14 */ bne lbl_80373F10
/* 80373F00 00370E60 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373F04 00370E64 2C 00 00 00 */ cmpwi r0, 0
/* 80373F08 00370E68 40 82 00 08 */ bne lbl_80373F10
/* 80373F0C 00370E6C 4B FF EC F9 */ bl stateReady
lbl_80373F10:
/* 80373F10 00370E70 7F C3 F3 78 */ mr r3, r30
/* 80373F14 00370E74 48 00 D7 75 */ bl OSRestoreInterrupts
/* 80373F18 00370E78 7F E3 FB 78 */ mr r3, r31
/* 80373F1C 00370E7C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373F20 00370E80 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373F24 00370E84 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373F28 00370E88 38 21 00 20 */ addi r1, r1, 0x20
/* 80373F2C 00370E8C 7C 08 03 A6 */ mtlr r0
/* 80373F30 00370E90 4E 80 00 20 */ blr
.global sub_80373f34
sub_80373f34:
/* 80373F34 00370E94 7C 08 02 A6 */ mflr r0
/* 80373F38 00370E98 90 01 00 04 */ stw r0, 4(r1)
/* 80373F3C 00370E9C 38 00 00 0A */ li r0, 0xa
/* 80373F40 00370EA0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80373F44 00370EA4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373F48 00370EA8 3B E3 00 00 */ addi r31, r3, 0
/* 80373F4C 00370EAC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373F50 00370EB0 90 03 00 08 */ stw r0, 8(r3)
/* 80373F54 00370EB4 90 83 00 28 */ stw r4, 0x28(r3)
/* 80373F58 00370EB8 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80373F5C 00370EBC 2C 00 00 00 */ cmpwi r0, 0
/* 80373F60 00370EC0 41 82 00 30 */ beq lbl_80373F90
/* 80373F64 00370EC4 80 7F 00 08 */ lwz r3, 8(r31)
/* 80373F68 00370EC8 28 03 00 01 */ cmplwi r3, 1
/* 80373F6C 00370ECC 41 82 00 18 */ beq lbl_80373F84
/* 80373F70 00370ED0 38 03 FF FC */ addi r0, r3, -4
/* 80373F74 00370ED4 28 00 00 01 */ cmplwi r0, 1
/* 80373F78 00370ED8 40 81 00 0C */ ble lbl_80373F84
/* 80373F7C 00370EDC 28 03 00 0E */ cmplwi r3, 0xe
/* 80373F80 00370EE0 40 82 00 10 */ bne lbl_80373F90
lbl_80373F84:
/* 80373F84 00370EE4 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80373F88 00370EE8 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 80373F8C 00370EEC 48 00 AA F9 */ bl DCInvalidateRange
lbl_80373F90:
/* 80373F90 00370EF0 48 00 D6 D1 */ bl OSDisableInterrupts
/* 80373F94 00370EF4 38 00 00 02 */ li r0, 2
/* 80373F98 00370EF8 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80373F9C 00370EFC 3B C3 00 00 */ addi r30, r3, 0
/* 80373FA0 00370F00 38 9F 00 00 */ addi r4, r31, 0
/* 80373FA4 00370F04 38 60 00 01 */ li r3, 1
/* 80373FA8 00370F08 48 00 09 49 */ bl __DVDPushWaitingQueue
/* 80373FAC 00370F0C 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80373FB0 00370F10 3B E3 00 00 */ addi r31, r3, 0
/* 80373FB4 00370F14 28 00 00 00 */ cmplwi r0, 0
/* 80373FB8 00370F18 40 82 00 14 */ bne lbl_80373FCC
/* 80373FBC 00370F1C 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80373FC0 00370F20 2C 00 00 00 */ cmpwi r0, 0
/* 80373FC4 00370F24 40 82 00 08 */ bne lbl_80373FCC
/* 80373FC8 00370F28 4B FF EC 3D */ bl stateReady
lbl_80373FCC:
/* 80373FCC 00370F2C 7F C3 F3 78 */ mr r3, r30
/* 80373FD0 00370F30 48 00 D6 B9 */ bl OSRestoreInterrupts
/* 80373FD4 00370F34 7F E3 FB 78 */ mr r3, r31
/* 80373FD8 00370F38 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373FDC 00370F3C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373FE0 00370F40 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373FE4 00370F44 38 21 00 20 */ addi r1, r1, 0x20
/* 80373FE8 00370F48 7C 08 03 A6 */ mtlr r0
/* 80373FEC 00370F4C 4E 80 00 20 */ blr
.global DVDInquiryAsync
DVDInquiryAsync:
/* 80373FF0 00370F50 7C 08 02 A6 */ mflr r0
/* 80373FF4 00370F54 90 01 00 04 */ stw r0, 4(r1)
/* 80373FF8 00370F58 38 00 00 0E */ li r0, 0xe
/* 80373FFC 00370F5C 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80374000 00370F60 93 E1 00 24 */ stw r31, 0x24(r1)
/* 80374004 00370F64 3B E3 00 00 */ addi r31, r3, 0
/* 80374008 00370F68 93 C1 00 20 */ stw r30, 0x20(r1)
/* 8037400C 00370F6C 90 03 00 08 */ stw r0, 8(r3)
/* 80374010 00370F70 38 60 00 20 */ li r3, 0x20
/* 80374014 00370F74 38 00 00 00 */ li r0, 0
/* 80374018 00370F78 90 9F 00 18 */ stw r4, 0x18(r31)
/* 8037401C 00370F7C 90 7F 00 14 */ stw r3, 0x14(r31)
/* 80374020 00370F80 90 1F 00 20 */ stw r0, 0x20(r31)
/* 80374024 00370F84 90 BF 00 28 */ stw r5, 0x28(r31)
/* 80374028 00370F88 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 8037402C 00370F8C 2C 00 00 00 */ cmpwi r0, 0
/* 80374030 00370F90 41 82 00 30 */ beq lbl_80374060
/* 80374034 00370F94 80 7F 00 08 */ lwz r3, 8(r31)
/* 80374038 00370F98 28 03 00 01 */ cmplwi r3, 1
/* 8037403C 00370F9C 41 82 00 18 */ beq lbl_80374054
/* 80374040 00370FA0 38 03 FF FC */ addi r0, r3, -4
/* 80374044 00370FA4 28 00 00 01 */ cmplwi r0, 1
/* 80374048 00370FA8 40 81 00 0C */ ble lbl_80374054
/* 8037404C 00370FAC 28 03 00 0E */ cmplwi r3, 0xe
/* 80374050 00370FB0 40 82 00 10 */ bne lbl_80374060
lbl_80374054:
/* 80374054 00370FB4 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80374058 00370FB8 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 8037405C 00370FBC 48 00 AA 29 */ bl DCInvalidateRange
lbl_80374060:
/* 80374060 00370FC0 48 00 D6 01 */ bl OSDisableInterrupts
/* 80374064 00370FC4 38 00 00 02 */ li r0, 2
/* 80374068 00370FC8 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8037406C 00370FCC 3B C3 00 00 */ addi r30, r3, 0
/* 80374070 00370FD0 38 9F 00 00 */ addi r4, r31, 0
/* 80374074 00370FD4 38 60 00 02 */ li r3, 2
/* 80374078 00370FD8 48 00 08 79 */ bl __DVDPushWaitingQueue
/* 8037407C 00370FDC 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80374080 00370FE0 3B E3 00 00 */ addi r31, r3, 0
/* 80374084 00370FE4 28 00 00 00 */ cmplwi r0, 0
/* 80374088 00370FE8 40 82 00 14 */ bne lbl_8037409C
/* 8037408C 00370FEC 80 0D AC 1C */ lwz r0, lbl_805A97DC@sda21(r13)
/* 80374090 00370FF0 2C 00 00 00 */ cmpwi r0, 0
/* 80374094 00370FF4 40 82 00 08 */ bne lbl_8037409C
/* 80374098 00370FF8 4B FF EB 6D */ bl stateReady
lbl_8037409C:
/* 8037409C 00370FFC 7F C3 F3 78 */ mr r3, r30
/* 803740A0 00371000 48 00 D5 E9 */ bl OSRestoreInterrupts
/* 803740A4 00371004 7F E3 FB 78 */ mr r3, r31
/* 803740A8 00371008 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 803740AC 0037100C 83 E1 00 24 */ lwz r31, 0x24(r1)
/* 803740B0 00371010 83 C1 00 20 */ lwz r30, 0x20(r1)
/* 803740B4 00371014 38 21 00 28 */ addi r1, r1, 0x28
/* 803740B8 00371018 7C 08 03 A6 */ mtlr r0
/* 803740BC 0037101C 4E 80 00 20 */ blr
.global DVDReset
DVDReset:
/* 803740C0 00371020 7C 08 02 A6 */ mflr r0
/* 803740C4 00371024 90 01 00 04 */ stw r0, 4(r1)
/* 803740C8 00371028 94 21 FF F8 */ stwu r1, -8(r1)
/* 803740CC 0037102C 4B FF D0 ED */ bl DVDLowReset
/* 803740D0 00371030 3C 60 CC 00 */ lis r3, 0xCC006000@ha
/* 803740D4 00371034 38 00 00 2A */ li r0, 0x2a
/* 803740D8 00371038 90 03 60 00 */ stw r0, 0xCC006000@l(r3)
/* 803740DC 0037103C 38 83 60 00 */ addi r4, r3, 0x6000
/* 803740E0 00371040 38 00 00 00 */ li r0, 0
/* 803740E4 00371044 80 63 60 04 */ lwz r3, 0x6004(r3)
/* 803740E8 00371048 90 64 00 04 */ stw r3, 4(r4)
/* 803740EC 0037104C 90 0D AC 48 */ stw r0, lbl_805A9808@sda21(r13)
/* 803740F0 00371050 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
/* 803740F4 00371054 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803740F8 00371058 38 21 00 08 */ addi r1, r1, 8
/* 803740FC 0037105C 7C 08 03 A6 */ mtlr r0
/* 80374100 00371060 4E 80 00 20 */ blr
.global DVDGetCommandBlockStatus
DVDGetCommandBlockStatus:
/* 80374104 00371064 7C 08 02 A6 */ mflr r0
/* 80374108 00371068 90 01 00 04 */ stw r0, 4(r1)
/* 8037410C 0037106C 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80374110 00371070 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80374114 00371074 7C 7F 1B 78 */ mr r31, r3
/* 80374118 00371078 48 00 D5 49 */ bl OSDisableInterrupts
/* 8037411C 0037107C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80374120 00371080 2C 00 00 03 */ cmpwi r0, 3
/* 80374124 00371084 40 82 00 0C */ bne lbl_80374130
/* 80374128 00371088 3B E0 00 01 */ li r31, 1
/* 8037412C 0037108C 48 00 00 08 */ b lbl_80374134
lbl_80374130:
/* 80374130 00371090 7C 1F 03 78 */ mr r31, r0
lbl_80374134:
/* 80374134 00371094 48 00 D5 55 */ bl OSRestoreInterrupts
/* 80374138 00371098 7F E3 FB 78 */ mr r3, r31
/* 8037413C 0037109C 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80374140 003710A0 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80374144 003710A4 38 21 00 18 */ addi r1, r1, 0x18
/* 80374148 003710A8 7C 08 03 A6 */ mtlr r0
/* 8037414C 003710AC 4E 80 00 20 */ blr
.global DVDGetDriveStatus
DVDGetDriveStatus:
/* 80374150 003710B0 7C 08 02 A6 */ mflr r0
/* 80374154 003710B4 90 01 00 04 */ stw r0, 4(r1)
/* 80374158 003710B8 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 8037415C 003710BC 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80374160 003710C0 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80374164 003710C4 48 00 D4 FD */ bl OSDisableInterrupts
/* 80374168 003710C8 80 0D AC 28 */ lwz r0, lbl_805A97E8@sda21(r13)
/* 8037416C 003710CC 3B C3 00 00 */ addi r30, r3, 0
/* 80374170 003710D0 2C 00 00 00 */ cmpwi r0, 0
/* 80374174 003710D4 41 82 00 0C */ beq lbl_80374180
/* 80374178 003710D8 3B E0 FF FF */ li r31, -1
/* 8037417C 003710DC 48 00 00 5C */ b lbl_803741D8
lbl_80374180:
/* 80374180 003710E0 80 0D AC 20 */ lwz r0, lbl_805A97E0@sda21(r13)
/* 80374184 003710E4 2C 00 00 00 */ cmpwi r0, 0
/* 80374188 003710E8 41 82 00 0C */ beq lbl_80374194
/* 8037418C 003710EC 3B E0 00 08 */ li r31, 8
/* 80374190 003710F0 48 00 00 48 */ b lbl_803741D8
lbl_80374194:
/* 80374194 003710F4 83 ED AC 10 */ lwz r31, lbl_805A97D0@sda21(r13)
/* 80374198 003710F8 28 1F 00 00 */ cmplwi r31, 0
/* 8037419C 003710FC 40 82 00 0C */ bne lbl_803741A8
/* 803741A0 00371100 3B E0 00 00 */ li r31, 0
/* 803741A4 00371104 48 00 00 34 */ b lbl_803741D8
lbl_803741A8:
/* 803741A8 00371108 3C 60 80 54 */ lis r3, lbl_80540BA0@ha
/* 803741AC 0037110C 38 03 0B A0 */ addi r0, r3, lbl_80540BA0@l
/* 803741B0 00371110 7C 1F 00 40 */ cmplw r31, r0
/* 803741B4 00371114 40 82 00 0C */ bne lbl_803741C0
/* 803741B8 00371118 3B E0 00 00 */ li r31, 0
/* 803741BC 0037111C 48 00 00 1C */ b lbl_803741D8
lbl_803741C0:
/* 803741C0 00371120 48 00 D4 A1 */ bl OSDisableInterrupts
/* 803741C4 00371124 83 FF 00 0C */ lwz r31, 0xc(r31)
/* 803741C8 00371128 2C 1F 00 03 */ cmpwi r31, 3
/* 803741CC 0037112C 40 82 00 08 */ bne lbl_803741D4
/* 803741D0 00371130 3B E0 00 01 */ li r31, 1
lbl_803741D4:
/* 803741D4 00371134 48 00 D4 B5 */ bl OSRestoreInterrupts
lbl_803741D8:
/* 803741D8 00371138 7F C3 F3 78 */ mr r3, r30
/* 803741DC 0037113C 48 00 D4 AD */ bl OSRestoreInterrupts
/* 803741E0 00371140 7F E3 FB 78 */ mr r3, r31
/* 803741E4 00371144 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803741E8 00371148 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803741EC 0037114C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803741F0 00371150 38 21 00 18 */ addi r1, r1, 0x18
/* 803741F4 00371154 7C 08 03 A6 */ mtlr r0
/* 803741F8 00371158 4E 80 00 20 */ blr
.global DVDSetAutoInvalidation
DVDSetAutoInvalidation:
/* 803741FC 0037115C 80 0D 9E DC */ lwz r0, lbl_805A8A9C@sda21(r13)
/* 80374200 00371160 90 6D 9E DC */ stw r3, lbl_805A8A9C@sda21(r13)
/* 80374204 00371164 7C 03 03 78 */ mr r3, r0
/* 80374208 00371168 4E 80 00 20 */ blr
.global DVDCancelAsync
DVDCancelAsync:
/* 8037420C 0037116C 7C 08 02 A6 */ mflr r0
/* 80374210 00371170 90 01 00 04 */ stw r0, 4(r1)
/* 80374214 00371174 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80374218 00371178 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8037421C 0037117C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80374220 00371180 3B C4 00 00 */ addi r30, r4, 0
/* 80374224 00371184 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80374228 00371188 3B A3 00 00 */ addi r29, r3, 0
/* 8037422C 0037118C 48 00 D4 35 */ bl OSDisableInterrupts
/* 80374230 00371190 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 80374234 00371194 3B E3 00 00 */ addi r31, r3, 0
/* 80374238 00371198 38 04 00 01 */ addi r0, r4, 1
/* 8037423C 0037119C 28 00 00 0C */ cmplwi r0, 0xc
/* 80374240 003711A0 41 81 02 14 */ bgt lbl_80374454
/* 80374244 003711A4 3C 60 80 3F */ lis r3, lbl_803F0098@ha
/* 80374248 003711A8 38 63 00 98 */ addi r3, r3, lbl_803F0098@l
/* 8037424C 003711AC 54 00 10 3A */ slwi r0, r0, 2
/* 80374250 003711B0 7C 03 00 2E */ lwzx r0, r3, r0
/* 80374254 003711B4 7C 09 03 A6 */ mtctr r0
/* 80374258 003711B8 4E 80 04 20 */ bctr
/* 8037425C 003711BC 28 1E 00 00 */ cmplwi r30, 0
/* 80374260 003711C0 41 82 01 F4 */ beq lbl_80374454
/* 80374264 003711C4 39 9E 00 00 */ addi r12, r30, 0
/* 80374268 003711C8 7D 88 03 A6 */ mtlr r12
/* 8037426C 003711CC 38 9D 00 00 */ addi r4, r29, 0
/* 80374270 003711D0 38 60 00 00 */ li r3, 0
/* 80374274 003711D4 4E 80 00 21 */ blrl
/* 80374278 003711D8 48 00 01 DC */ b lbl_80374454
/* 8037427C 003711DC 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 80374280 003711E0 28 00 00 00 */ cmplwi r0, 0
/* 80374284 003711E4 41 82 00 14 */ beq lbl_80374298
/* 80374288 003711E8 7F E3 FB 78 */ mr r3, r31
/* 8037428C 003711EC 48 00 D3 FD */ bl OSRestoreInterrupts
/* 80374290 003711F0 38 60 00 00 */ li r3, 0
/* 80374294 003711F4 48 00 01 CC */ b lbl_80374460
lbl_80374298:
/* 80374298 003711F8 38 00 00 01 */ li r0, 1
/* 8037429C 003711FC 93 CD AC 34 */ stw r30, lbl_805A97F4@sda21(r13)
/* 803742A0 00371200 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 803742A4 00371204 80 1D 00 08 */ lwz r0, 8(r29)
/* 803742A8 00371208 28 00 00 04 */ cmplwi r0, 4
/* 803742AC 0037120C 41 82 00 0C */ beq lbl_803742B8
/* 803742B0 00371210 28 00 00 01 */ cmplwi r0, 1
/* 803742B4 00371214 40 82 01 A0 */ bne lbl_80374454
lbl_803742B8:
/* 803742B8 00371218 4B FF CF BD */ bl DVDLowBreak
/* 803742BC 0037121C 48 00 01 98 */ b lbl_80374454
/* 803742C0 00371220 7F A3 EB 78 */ mr r3, r29
/* 803742C4 00371224 48 00 07 8D */ bl __DVDDequeueWaitingQueue
/* 803742C8 00371228 38 00 00 0A */ li r0, 0xa
/* 803742CC 0037122C 90 1D 00 0C */ stw r0, 0xc(r29)
/* 803742D0 00371230 81 9D 00 28 */ lwz r12, 0x28(r29)
/* 803742D4 00371234 28 0C 00 00 */ cmplwi r12, 0
/* 803742D8 00371238 41 82 00 14 */ beq lbl_803742EC
/* 803742DC 0037123C 7D 88 03 A6 */ mtlr r12
/* 803742E0 00371240 38 9D 00 00 */ addi r4, r29, 0
/* 803742E4 00371244 38 60 FF FD */ li r3, -3
/* 803742E8 00371248 4E 80 00 21 */ blrl
lbl_803742EC:
/* 803742EC 0037124C 28 1E 00 00 */ cmplwi r30, 0
/* 803742F0 00371250 41 82 01 64 */ beq lbl_80374454
/* 803742F4 00371254 39 9E 00 00 */ addi r12, r30, 0
/* 803742F8 00371258 7D 88 03 A6 */ mtlr r12
/* 803742FC 0037125C 38 9D 00 00 */ addi r4, r29, 0
/* 80374300 00371260 38 60 00 00 */ li r3, 0
/* 80374304 00371264 4E 80 00 21 */ blrl
/* 80374308 00371268 48 00 01 4C */ b lbl_80374454
/* 8037430C 0037126C 80 1D 00 08 */ lwz r0, 8(r29)
/* 80374310 00371270 2C 00 00 0D */ cmpwi r0, 0xd
/* 80374314 00371274 41 82 00 28 */ beq lbl_8037433C
/* 80374318 00371278 40 80 00 18 */ bge lbl_80374330
/* 8037431C 0037127C 2C 00 00 06 */ cmpwi r0, 6
/* 80374320 00371280 40 80 00 3C */ bge lbl_8037435C
/* 80374324 00371284 2C 00 00 04 */ cmpwi r0, 4
/* 80374328 00371288 40 80 00 14 */ bge lbl_8037433C
/* 8037432C 0037128C 48 00 00 30 */ b lbl_8037435C
lbl_80374330:
/* 80374330 00371290 2C 00 00 0F */ cmpwi r0, 0xf
/* 80374334 00371294 41 82 00 08 */ beq lbl_8037433C
/* 80374338 00371298 48 00 00 24 */ b lbl_8037435C
lbl_8037433C:
/* 8037433C 0037129C 28 1E 00 00 */ cmplwi r30, 0
/* 80374340 003712A0 41 82 01 14 */ beq lbl_80374454
/* 80374344 003712A4 39 9E 00 00 */ addi r12, r30, 0
/* 80374348 003712A8 7D 88 03 A6 */ mtlr r12
/* 8037434C 003712AC 38 9D 00 00 */ addi r4, r29, 0
/* 80374350 003712B0 38 60 00 00 */ li r3, 0
/* 80374354 003712B4 4E 80 00 21 */ blrl
/* 80374358 003712B8 48 00 00 FC */ b lbl_80374454
lbl_8037435C:
/* 8037435C 003712BC 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 80374360 003712C0 28 00 00 00 */ cmplwi r0, 0
/* 80374364 003712C4 41 82 00 14 */ beq lbl_80374378
/* 80374368 003712C8 7F E3 FB 78 */ mr r3, r31
/* 8037436C 003712CC 48 00 D3 1D */ bl OSRestoreInterrupts
/* 80374370 003712D0 38 60 00 00 */ li r3, 0
/* 80374374 003712D4 48 00 00 EC */ b lbl_80374460
lbl_80374378:
/* 80374378 003712D8 38 00 00 01 */ li r0, 1
/* 8037437C 003712DC 93 CD AC 34 */ stw r30, lbl_805A97F4@sda21(r13)
/* 80374380 003712E0 90 0D AC 30 */ stw r0, lbl_805A97F0@sda21(r13)
/* 80374384 003712E4 48 00 00 D0 */ b lbl_80374454
/* 80374388 003712E8 4B FF CF 01 */ bl DVDLowClearCallback
/* 8037438C 003712EC 3C 80 80 37 */ lis r4, cbForStateMotorStopped@ha
/* 80374390 003712F0 38 04 2B 20 */ addi r0, r4, cbForStateMotorStopped@l
/* 80374394 003712F4 7C 03 00 40 */ cmplw r3, r0
/* 80374398 003712F8 41 82 00 14 */ beq lbl_803743AC
/* 8037439C 003712FC 7F E3 FB 78 */ mr r3, r31
/* 803743A0 00371300 48 00 D2 E9 */ bl OSRestoreInterrupts
/* 803743A4 00371304 38 60 00 00 */ li r3, 0
/* 803743A8 00371308 48 00 00 B8 */ b lbl_80374460
lbl_803743AC:
/* 803743AC 0037130C 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803743B0 00371310 2C 00 00 04 */ cmpwi r0, 4
/* 803743B4 00371314 40 82 00 0C */ bne lbl_803743C0
/* 803743B8 00371318 38 00 00 03 */ li r0, 3
/* 803743BC 0037131C 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
lbl_803743C0:
/* 803743C0 00371320 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803743C4 00371324 2C 00 00 05 */ cmpwi r0, 5
/* 803743C8 00371328 40 82 00 0C */ bne lbl_803743D4
/* 803743CC 0037132C 38 00 00 04 */ li r0, 4
/* 803743D0 00371330 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
lbl_803743D4:
/* 803743D4 00371334 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803743D8 00371338 2C 00 00 06 */ cmpwi r0, 6
/* 803743DC 0037133C 40 82 00 0C */ bne lbl_803743E8
/* 803743E0 00371340 38 00 00 01 */ li r0, 1
/* 803743E4 00371344 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
lbl_803743E8:
/* 803743E8 00371348 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803743EC 0037134C 2C 00 00 0B */ cmpwi r0, 0xb
/* 803743F0 00371350 40 82 00 0C */ bne lbl_803743FC
/* 803743F4 00371354 38 00 00 02 */ li r0, 2
/* 803743F8 00371358 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
lbl_803743FC:
/* 803743FC 0037135C 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80374400 00371360 2C 00 00 07 */ cmpwi r0, 7
/* 80374404 00371364 40 82 00 0C */ bne lbl_80374410
/* 80374408 00371368 38 00 00 07 */ li r0, 7
/* 8037440C 0037136C 90 0D AC 38 */ stw r0, lbl_805A97F8@sda21(r13)
lbl_80374410:
/* 80374410 00371370 38 00 00 0A */ li r0, 0xa
/* 80374414 00371374 90 1D 00 0C */ stw r0, 0xc(r29)
/* 80374418 00371378 81 9D 00 28 */ lwz r12, 0x28(r29)
/* 8037441C 0037137C 28 0C 00 00 */ cmplwi r12, 0
/* 80374420 00371380 41 82 00 14 */ beq lbl_80374434
/* 80374424 00371384 7D 88 03 A6 */ mtlr r12
/* 80374428 00371388 38 9D 00 00 */ addi r4, r29, 0
/* 8037442C 0037138C 38 60 FF FD */ li r3, -3
/* 80374430 00371390 4E 80 00 21 */ blrl
lbl_80374434:
/* 80374434 00371394 28 1E 00 00 */ cmplwi r30, 0
/* 80374438 00371398 41 82 00 18 */ beq lbl_80374450
/* 8037443C 0037139C 39 9E 00 00 */ addi r12, r30, 0
/* 80374440 003713A0 7D 88 03 A6 */ mtlr r12
/* 80374444 003713A4 38 9D 00 00 */ addi r4, r29, 0
/* 80374448 003713A8 38 60 00 00 */ li r3, 0
/* 8037444C 003713AC 4E 80 00 21 */ blrl
lbl_80374450:
/* 80374450 003713B0 4B FF E7 B5 */ bl stateReady
lbl_80374454:
/* 80374454 003713B4 7F E3 FB 78 */ mr r3, r31
/* 80374458 003713B8 48 00 D2 31 */ bl OSRestoreInterrupts
/* 8037445C 003713BC 38 60 00 01 */ li r3, 1
lbl_80374460:
/* 80374460 003713C0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80374464 003713C4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80374468 003713C8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8037446C 003713CC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80374470 003713D0 38 21 00 20 */ addi r1, r1, 0x20
/* 80374474 003713D4 7C 08 03 A6 */ mtlr r0
/* 80374478 003713D8 4E 80 00 20 */ blr
.global DVDCancel
DVDCancel:
/* 8037447C 003713DC 7C 08 02 A6 */ mflr r0
/* 80374480 003713E0 3C 80 80 37 */ lis r4, cbForCancelSync@ha
/* 80374484 003713E4 90 01 00 04 */ stw r0, 4(r1)
/* 80374488 003713E8 38 84 45 28 */ addi r4, r4, cbForCancelSync@l
/* 8037448C 003713EC 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80374490 003713F0 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80374494 003713F4 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80374498 003713F8 3B C3 00 00 */ addi r30, r3, 0
/* 8037449C 003713FC 4B FF FD 71 */ bl DVDCancelAsync
/* 803744A0 00371400 2C 03 00 00 */ cmpwi r3, 0
/* 803744A4 00371404 40 82 00 0C */ bne lbl_803744B0
/* 803744A8 00371408 38 60 FF FF */ li r3, -1
/* 803744AC 0037140C 48 00 00 64 */ b lbl_80374510
lbl_803744B0:
/* 803744B0 00371410 48 00 D1 B1 */ bl OSDisableInterrupts
/* 803744B4 00371414 7C 7F 1B 78 */ mr r31, r3
lbl_803744B8:
/* 803744B8 00371418 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 803744BC 0037141C 38 03 00 01 */ addi r0, r3, 1
/* 803744C0 00371420 28 00 00 01 */ cmplwi r0, 1
/* 803744C4 00371424 40 81 00 40 */ ble lbl_80374504
/* 803744C8 00371428 2C 03 00 0A */ cmpwi r3, 0xa
/* 803744CC 0037142C 41 82 00 38 */ beq lbl_80374504
/* 803744D0 00371430 2C 03 00 03 */ cmpwi r3, 3
/* 803744D4 00371434 40 82 00 24 */ bne lbl_803744F8
/* 803744D8 00371438 80 7E 00 08 */ lwz r3, 8(r30)
/* 803744DC 0037143C 38 03 FF FC */ addi r0, r3, -4
/* 803744E0 00371440 28 00 00 01 */ cmplwi r0, 1
/* 803744E4 00371444 40 81 00 20 */ ble lbl_80374504
/* 803744E8 00371448 28 03 00 0D */ cmplwi r3, 0xd
/* 803744EC 0037144C 41 82 00 18 */ beq lbl_80374504
/* 803744F0 00371450 28 03 00 0F */ cmplwi r3, 0xf
/* 803744F4 00371454 41 82 00 10 */ beq lbl_80374504
lbl_803744F8:
/* 803744F8 00371458 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 803744FC 0037145C 48 01 0C 11 */ bl OSSleepThread
/* 80374500 00371460 4B FF FF B8 */ b lbl_803744B8
lbl_80374504:
/* 80374504 00371464 7F E3 FB 78 */ mr r3, r31
/* 80374508 00371468 48 00 D1 81 */ bl OSRestoreInterrupts
/* 8037450C 0037146C 38 60 00 00 */ li r3, 0
lbl_80374510:
/* 80374510 00371470 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80374514 00371474 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80374518 00371478 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 8037451C 0037147C 38 21 00 18 */ addi r1, r1, 0x18
/* 80374520 00371480 7C 08 03 A6 */ mtlr r0
/* 80374524 00371484 4E 80 00 20 */ blr
.global cbForCancelSync
cbForCancelSync:
/* 80374528 00371488 7C 08 02 A6 */ mflr r0
/* 8037452C 0037148C 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 80374530 00371490 90 01 00 04 */ stw r0, 4(r1)
/* 80374534 00371494 94 21 FF F8 */ stwu r1, -8(r1)
/* 80374538 00371498 48 01 0C C1 */ bl OSWakeupThread
/* 8037453C 0037149C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80374540 003714A0 38 21 00 08 */ addi r1, r1, 8
/* 80374544 003714A4 7C 08 03 A6 */ mtlr r0
/* 80374548 003714A8 4E 80 00 20 */ blr
.global sub_8037454c
sub_8037454c:
/* 8037454C 003714AC 7C 08 02 A6 */ mflr r0
/* 80374550 003714B0 90 01 00 04 */ stw r0, 4(r1)
/* 80374554 003714B4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80374558 003714B8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8037455C 003714BC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80374560 003714C0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80374564 003714C4 93 81 00 10 */ stw r28, 0x10(r1)
/* 80374568 003714C8 48 00 D0 F9 */ bl OSDisableInterrupts
/* 8037456C 003714CC 38 00 00 00 */ li r0, 0
/* 80374570 003714D0 90 0D AC 4C */ stw r0, lbl_805A980C@sda21(r13)
/* 80374574 003714D4 7C 7F 1B 78 */ mr r31, r3
/* 80374578 003714D8 48 00 D0 E9 */ bl OSDisableInterrupts
/* 8037457C 003714DC 7C 7D 1B 78 */ mr r29, r3
/* 80374580 003714E0 48 00 D0 E1 */ bl OSDisableInterrupts
/* 80374584 003714E4 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 80374588 003714E8 38 80 00 01 */ li r4, 1
/* 8037458C 003714EC 90 8D AC 1C */ stw r4, lbl_805A97DC@sda21(r13)
/* 80374590 003714F0 28 00 00 00 */ cmplwi r0, 0
/* 80374594 003714F4 40 82 00 08 */ bne lbl_8037459C
/* 80374598 003714F8 90 8D AC 20 */ stw r4, lbl_805A97E0@sda21(r13)
lbl_8037459C:
/* 8037459C 003714FC 48 00 D0 ED */ bl OSRestoreInterrupts
/* 803745A0 00371500 48 00 00 0C */ b lbl_803745AC
lbl_803745A4:
/* 803745A4 00371504 38 80 00 00 */ li r4, 0
/* 803745A8 00371508 4B FF FC 65 */ bl DVDCancelAsync
lbl_803745AC:
/* 803745AC 0037150C 48 00 03 AD */ bl __DVDPopWaitingQueue
/* 803745B0 00371510 28 03 00 00 */ cmplwi r3, 0
/* 803745B4 00371514 40 82 FF F0 */ bne lbl_803745A4
/* 803745B8 00371518 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 803745BC 0037151C 28 03 00 00 */ cmplwi r3, 0
/* 803745C0 00371520 41 82 00 18 */ beq lbl_803745D8
/* 803745C4 00371524 3C 80 80 37 */ lis r4, sub_80374684@ha
/* 803745C8 00371528 38 84 46 84 */ addi r4, r4, sub_80374684@l
/* 803745CC 0037152C 4B FF FC 41 */ bl DVDCancelAsync
/* 803745D0 00371530 7C 7E 1B 78 */ mr r30, r3
/* 803745D4 00371534 48 00 00 20 */ b lbl_803745F4
lbl_803745D8:
/* 803745D8 00371538 3C 60 80 37 */ lis r3, 0x8037
/* 803745DC 0037153C 34 03 46 84 */ addic. r0, r3, 0x4684
/* 803745E0 00371540 3B C0 00 01 */ li r30, 1
/* 803745E4 00371544 41 82 00 10 */ beq lbl_803745F4
/* 803745E8 00371548 38 60 00 00 */ li r3, 0
/* 803745EC 0037154C 38 80 00 00 */ li r4, 0
/* 803745F0 00371550 48 00 00 95 */ bl sub_80374684
lbl_803745F4:
/* 803745F4 00371554 48 00 D0 6D */ bl OSDisableInterrupts
/* 803745F8 00371558 38 80 00 00 */ li r4, 0
/* 803745FC 0037155C 90 8D AC 1C */ stw r4, lbl_805A97DC@sda21(r13)
/* 80374600 00371560 7C 7C 1B 78 */ mr r28, r3
/* 80374604 00371564 80 0D AC 20 */ lwz r0, lbl_805A97E0@sda21(r13)
/* 80374608 00371568 2C 00 00 00 */ cmpwi r0, 0
/* 8037460C 0037156C 41 82 00 0C */ beq lbl_80374618
/* 80374610 00371570 90 8D AC 20 */ stw r4, lbl_805A97E0@sda21(r13)
/* 80374614 00371574 4B FF E5 F1 */ bl stateReady
lbl_80374618:
/* 80374618 00371578 7F 83 E3 78 */ mr r3, r28
/* 8037461C 0037157C 48 00 D0 6D */ bl OSRestoreInterrupts
/* 80374620 00371580 7F A3 EB 78 */ mr r3, r29
/* 80374624 00371584 48 00 D0 65 */ bl OSRestoreInterrupts
/* 80374628 00371588 2C 1E 00 00 */ cmpwi r30, 0
/* 8037462C 0037158C 40 82 00 14 */ bne lbl_80374640
/* 80374630 00371590 7F E3 FB 78 */ mr r3, r31
/* 80374634 00371594 48 00 D0 55 */ bl OSRestoreInterrupts
/* 80374638 00371598 38 60 FF FF */ li r3, -1
/* 8037463C 0037159C 48 00 00 28 */ b lbl_80374664
lbl_80374640:
/* 80374640 003715A0 80 0D AC 4C */ lwz r0, lbl_805A980C@sda21(r13)
/* 80374644 003715A4 2C 00 00 00 */ cmpwi r0, 0
/* 80374648 003715A8 40 82 00 10 */ bne lbl_80374658
/* 8037464C 003715AC 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 80374650 003715B0 48 01 0A BD */ bl OSSleepThread
/* 80374654 003715B4 4B FF FF EC */ b lbl_80374640
lbl_80374658:
/* 80374658 003715B8 7F E3 FB 78 */ mr r3, r31
/* 8037465C 003715BC 48 00 D0 2D */ bl OSRestoreInterrupts
/* 80374660 003715C0 38 60 00 00 */ li r3, 0
lbl_80374664:
/* 80374664 003715C4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80374668 003715C8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8037466C 003715CC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80374670 003715D0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80374674 003715D4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80374678 003715D8 38 21 00 20 */ addi r1, r1, 0x20
/* 8037467C 003715DC 7C 08 03 A6 */ mtlr r0
/* 80374680 003715E0 4E 80 00 20 */ blr
.global sub_80374684
sub_80374684:
/* 80374684 003715E4 7C 08 02 A6 */ mflr r0
/* 80374688 003715E8 38 6D AC 08 */ addi r3, r13, lbl_805A97C8@sda21
/* 8037468C 003715EC 90 01 00 04 */ stw r0, 4(r1)
/* 80374690 003715F0 38 00 00 01 */ li r0, 1
/* 80374694 003715F4 94 21 FF F8 */ stwu r1, -8(r1)
/* 80374698 003715F8 90 0D AC 4C */ stw r0, lbl_805A980C@sda21(r13)
/* 8037469C 003715FC 48 01 0B 5D */ bl OSWakeupThread
/* 803746A0 00371600 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803746A4 00371604 38 21 00 08 */ addi r1, r1, 8
/* 803746A8 00371608 7C 08 03 A6 */ mtlr r0
/* 803746AC 0037160C 4E 80 00 20 */ blr
.global DVDGetCurrentDiskID
DVDGetCurrentDiskID:
/* 803746B0 00371610 3C 60 80 00 */ lis r3, 0x8000
/* 803746B4 00371614 4E 80 00 20 */ blr
.global DVDCheckDisk
DVDCheckDisk:
/* 803746B8 00371618 7C 08 02 A6 */ mflr r0
/* 803746BC 0037161C 90 01 00 04 */ stw r0, 4(r1)
/* 803746C0 00371620 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803746C4 00371624 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803746C8 00371628 48 00 CF 99 */ bl OSDisableInterrupts
/* 803746CC 0037162C 80 0D AC 28 */ lwz r0, lbl_805A97E8@sda21(r13)
/* 803746D0 00371630 2C 00 00 00 */ cmpwi r0, 0
/* 803746D4 00371634 41 82 00 0C */ beq lbl_803746E0
/* 803746D8 00371638 38 80 FF FF */ li r4, -1
/* 803746DC 0037163C 48 00 00 48 */ b lbl_80374724
lbl_803746E0:
/* 803746E0 00371640 80 0D AC 20 */ lwz r0, lbl_805A97E0@sda21(r13)
/* 803746E4 00371644 2C 00 00 00 */ cmpwi r0, 0
/* 803746E8 00371648 41 82 00 0C */ beq lbl_803746F4
/* 803746EC 0037164C 38 80 00 08 */ li r4, 8
/* 803746F0 00371650 48 00 00 34 */ b lbl_80374724
lbl_803746F4:
/* 803746F4 00371654 80 AD AC 10 */ lwz r5, lbl_805A97D0@sda21(r13)
/* 803746F8 00371658 28 05 00 00 */ cmplwi r5, 0
/* 803746FC 0037165C 40 82 00 0C */ bne lbl_80374708
/* 80374700 00371660 38 80 00 00 */ li r4, 0
/* 80374704 00371664 48 00 00 20 */ b lbl_80374724
lbl_80374708:
/* 80374708 00371668 3C 80 80 54 */ lis r4, lbl_80540BA0@ha
/* 8037470C 0037166C 38 04 0B A0 */ addi r0, r4, lbl_80540BA0@l
/* 80374710 00371670 7C 05 00 40 */ cmplw r5, r0
/* 80374714 00371674 40 82 00 0C */ bne lbl_80374720
/* 80374718 00371678 38 80 00 00 */ li r4, 0
/* 8037471C 0037167C 48 00 00 08 */ b lbl_80374724
lbl_80374720:
/* 80374720 00371680 80 85 00 0C */ lwz r4, 0xc(r5)
lbl_80374724:
/* 80374724 00371684 38 04 00 01 */ addi r0, r4, 1
/* 80374728 00371688 28 00 00 0C */ cmplwi r0, 0xc
/* 8037472C 0037168C 41 81 00 54 */ bgt lbl_80374780
/* 80374730 00371690 3C 80 80 3F */ lis r4, lbl_803F00CC@ha
/* 80374734 00371694 38 84 00 CC */ addi r4, r4, lbl_803F00CC@l
/* 80374738 00371698 54 00 10 3A */ slwi r0, r0, 2
/* 8037473C 0037169C 7C 04 00 2E */ lwzx r0, r4, r0
/* 80374740 003716A0 7C 09 03 A6 */ mtctr r0
/* 80374744 003716A4 4E 80 04 20 */ bctr
/* 80374748 003716A8 3B E0 00 01 */ li r31, 1
/* 8037474C 003716AC 48 00 00 34 */ b lbl_80374780
/* 80374750 003716B0 3B E0 00 00 */ li r31, 0
/* 80374754 003716B4 48 00 00 2C */ b lbl_80374780
/* 80374758 003716B8 3C 80 CC 00 */ lis r4, 0xCC006000@ha
/* 8037475C 003716BC 38 84 60 00 */ addi r4, r4, 0xCC006000@l
/* 80374760 003716C0 80 84 00 04 */ lwz r4, 4(r4)
/* 80374764 003716C4 54 80 F7 FF */ rlwinm. r0, r4, 0x1e, 0x1f, 0x1f
/* 80374768 003716C8 40 82 00 0C */ bne lbl_80374774
/* 8037476C 003716CC 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 80374770 003716D0 41 82 00 0C */ beq lbl_8037477C
lbl_80374774:
/* 80374774 003716D4 3B E0 00 00 */ li r31, 0
/* 80374778 003716D8 48 00 00 08 */ b lbl_80374780
lbl_8037477C:
/* 8037477C 003716DC 3B E0 00 01 */ li r31, 1
lbl_80374780:
/* 80374780 003716E0 48 00 CF 09 */ bl OSRestoreInterrupts
/* 80374784 003716E4 7F E3 FB 78 */ mr r3, r31
/* 80374788 003716E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8037478C 003716EC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80374790 003716F0 38 21 00 10 */ addi r1, r1, 0x10
/* 80374794 003716F4 7C 08 03 A6 */ mtlr r0
/* 80374798 003716F8 4E 80 00 20 */ blr
.global __DVDPrepareResetAsync
__DVDPrepareResetAsync:
/* 8037479C 003716FC 7C 08 02 A6 */ mflr r0
/* 803747A0 00371700 90 01 00 04 */ stw r0, 4(r1)
/* 803747A4 00371704 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803747A8 00371708 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803747AC 0037170C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803747B0 00371710 7C 7E 1B 78 */ mr r30, r3
/* 803747B4 00371714 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803747B8 00371718 48 00 CE A9 */ bl OSDisableInterrupts
/* 803747BC 0037171C 7C 7D 1B 78 */ mr r29, r3
/* 803747C0 00371720 48 00 00 F9 */ bl __DVDClearWaitingQueue
/* 803747C4 00371724 80 0D AC 30 */ lwz r0, lbl_805A97F0@sda21(r13)
/* 803747C8 00371728 28 00 00 00 */ cmplwi r0, 0
/* 803747CC 0037172C 41 82 00 0C */ beq lbl_803747D8
/* 803747D0 00371730 93 CD AC 34 */ stw r30, lbl_805A97F4@sda21(r13)
/* 803747D4 00371734 48 00 00 C0 */ b lbl_80374894
lbl_803747D8:
/* 803747D8 00371738 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 803747DC 0037173C 28 03 00 00 */ cmplwi r3, 0
/* 803747E0 00371740 41 82 00 0C */ beq lbl_803747EC
/* 803747E4 00371744 38 00 00 00 */ li r0, 0
/* 803747E8 00371748 90 03 00 28 */ stw r0, 0x28(r3)
lbl_803747EC:
/* 803747EC 0037174C 48 00 CE 75 */ bl OSDisableInterrupts
/* 803747F0 00371750 7C 7F 1B 78 */ mr r31, r3
/* 803747F4 00371754 48 00 CE 6D */ bl OSDisableInterrupts
/* 803747F8 00371758 80 0D AC 10 */ lwz r0, lbl_805A97D0@sda21(r13)
/* 803747FC 0037175C 38 80 00 01 */ li r4, 1
/* 80374800 00371760 90 8D AC 1C */ stw r4, lbl_805A97DC@sda21(r13)
/* 80374804 00371764 28 00 00 00 */ cmplwi r0, 0
/* 80374808 00371768 40 82 00 08 */ bne lbl_80374810
/* 8037480C 0037176C 90 8D AC 20 */ stw r4, lbl_805A97E0@sda21(r13)
lbl_80374810:
/* 80374810 00371770 48 00 CE 79 */ bl OSRestoreInterrupts
/* 80374814 00371774 48 00 00 0C */ b lbl_80374820
lbl_80374818:
/* 80374818 00371778 38 80 00 00 */ li r4, 0
/* 8037481C 0037177C 4B FF F9 F1 */ bl DVDCancelAsync
lbl_80374820:
/* 80374820 00371780 48 00 01 39 */ bl __DVDPopWaitingQueue
/* 80374824 00371784 28 03 00 00 */ cmplwi r3, 0
/* 80374828 00371788 40 82 FF F0 */ bne lbl_80374818
/* 8037482C 0037178C 80 6D AC 10 */ lwz r3, lbl_805A97D0@sda21(r13)
/* 80374830 00371790 28 03 00 00 */ cmplwi r3, 0
/* 80374834 00371794 41 82 00 10 */ beq lbl_80374844
/* 80374838 00371798 7F C4 F3 78 */ mr r4, r30
/* 8037483C 0037179C 4B FF F9 D1 */ bl DVDCancelAsync
/* 80374840 003717A0 48 00 00 20 */ b lbl_80374860
lbl_80374844:
/* 80374844 003717A4 28 1E 00 00 */ cmplwi r30, 0
/* 80374848 003717A8 41 82 00 18 */ beq lbl_80374860
/* 8037484C 003717AC 39 9E 00 00 */ addi r12, r30, 0
/* 80374850 003717B0 7D 88 03 A6 */ mtlr r12
/* 80374854 003717B4 38 60 00 00 */ li r3, 0
/* 80374858 003717B8 38 80 00 00 */ li r4, 0
/* 8037485C 003717BC 4E 80 00 21 */ blrl
lbl_80374860:
/* 80374860 003717C0 48 00 CE 01 */ bl OSDisableInterrupts
/* 80374864 003717C4 38 80 00 00 */ li r4, 0
/* 80374868 003717C8 90 8D AC 1C */ stw r4, lbl_805A97DC@sda21(r13)
/* 8037486C 003717CC 7C 7E 1B 78 */ mr r30, r3
/* 80374870 003717D0 80 0D AC 20 */ lwz r0, lbl_805A97E0@sda21(r13)
/* 80374874 003717D4 2C 00 00 00 */ cmpwi r0, 0
/* 80374878 003717D8 41 82 00 0C */ beq lbl_80374884
/* 8037487C 003717DC 90 8D AC 20 */ stw r4, lbl_805A97E0@sda21(r13)
/* 80374880 003717E0 4B FF E3 85 */ bl stateReady
lbl_80374884:
/* 80374884 003717E4 7F C3 F3 78 */ mr r3, r30
/* 80374888 003717E8 48 00 CE 01 */ bl OSRestoreInterrupts
/* 8037488C 003717EC 7F E3 FB 78 */ mr r3, r31
/* 80374890 003717F0 48 00 CD F9 */ bl OSRestoreInterrupts
lbl_80374894:
/* 80374894 003717F4 7F A3 EB 78 */ mr r3, r29
/* 80374898 003717F8 48 00 CD F1 */ bl OSRestoreInterrupts
/* 8037489C 003717FC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803748A0 00371800 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803748A4 00371804 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803748A8 00371808 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803748AC 0037180C 38 21 00 20 */ addi r1, r1, 0x20
/* 803748B0 00371810 7C 08 03 A6 */ mtlr r0
/* 803748B4 00371814 4E 80 00 20 */ blr