diff options
-rw-r--r-- | asm/SDK/DVD/dvd.s | 310 | ||||
-rw-r--r-- | asm/SDK/DVD/dvdFatal.s | 98 | ||||
-rw-r--r-- | asm/SDK/DVD/dvd_broadway.s | 1874 | ||||
-rw-r--r-- | asm/SDK/DVD/dvderror.s | 221 | ||||
-rw-r--r-- | asm/SDK/DVD/dvdidutils.s | 72 | ||||
-rw-r--r-- | asm/SDK/DVD/dvdqueue.s | 183 | ||||
-rw-r--r-- | asm/SDK/OS/OSExec.s | 20 | ||||
-rw-r--r-- | asm/text_6_2.s | 2 | ||||
-rw-r--r-- | asm/text_8_3.s | 2425 | ||||
-rw-r--r-- | obj_files.mk | 5 |
10 files changed, 2619 insertions, 2591 deletions
diff --git a/asm/SDK/DVD/dvd.s b/asm/SDK/DVD/dvd.s index 8ff1df5..e515fa0 100644 --- a/asm/SDK/DVD/dvd.s +++ b/asm/SDK/DVD/dvd.s @@ -68,9 +68,9 @@ DVDInit: /* 80288264 00283EC4 4B FE 13 ED */ bl OSRegisterVersion
/* 80288268 00283EC8 3B E0 00 01 */ li r31, 1
/* 8028826C 00283ECC 93 ED AA 4C */ stw r31, lbl_8063FD0C-_SDA_BASE_(r13)
-/* 80288270 00283ED0 48 00 50 1D */ bl func_8028D28C
+/* 80288270 00283ED0 48 00 50 1D */ bl DVDLowInit
/* 80288274 00283ED4 4B FF F4 19 */ bl __DVDFSInit
-/* 80288278 00283ED8 48 00 47 15 */ bl func_8028C98C
+/* 80288278 00283ED8 48 00 47 15 */ bl __DVDClearWaitingQueue
/* 8028827C 00283EDC 3C 00 80 00 */ lis r0, 0x8000
/* 80288280 00283EE0 38 60 00 00 */ li r3, 0
/* 80288284 00283EE4 90 6D AA 70 */ stw r3, lbl_8063FD30-_SDA_BASE_(r13)
@@ -78,8 +78,8 @@ DVDInit: /* 8028828C 00283EEC 90 0D AA 88 */ stw r0, lbl_8063FD48-_SDA_BASE_(r13)
/* 80288290 00283EF0 90 0D AA 8C */ stw r0, lbl_8063FD4C-_SDA_BASE_(r13)
/* 80288294 00283EF4 4B FE 90 55 */ bl OSInitThreadQueue
-/* 80288298 00283EF8 48 00 66 F1 */ bl func_8028E988
-/* 8028829C 00283EFC 48 00 66 F5 */ bl func_8028E990
+/* 80288298 00283EF8 48 00 66 F1 */ bl DVDLowUnmaskStatusInterrupts
+/* 8028829C 00283EFC 48 00 66 F5 */ bl DVDLowMaskCoverInterrupt
/* 802882A0 00283F00 80 6D AA 88 */ lwz r3, lbl_8063FD48-_SDA_BASE_(r13)
/* 802882A4 00283F04 80 63 00 20 */ lwz r3, 0x20(r3)
/* 802882A8 00283F08 3C 03 1A E0 */ addis r0, r3, 0x1ae0
@@ -108,7 +108,7 @@ lbl_802882C4: /* 80288300 00283F60 88 86 00 07 */ lbz r4, 7(r6)
/* 80288304 00283F64 98 85 00 05 */ stb r4, 5(r5)
/* 80288308 00283F68 90 0D AA 48 */ stw r0, lbl_8063FD08-_SDA_BASE_(r13)
-/* 8028830C 00283F6C 48 00 4D 85 */ bl func_8028D090
+/* 8028830C 00283F6C 48 00 4D 85 */ bl DVDSetAutoFatalMessaging
lbl_80288310:
/* 80288310 00283F70 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80288314 00283F74 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -143,7 +143,7 @@ stateReadingFST: /* 8028837C 00283FDC 4B FE 31 21 */ bl OSPanic
lbl_80288380:
/* 80288380 00283FE0 38 60 00 00 */ li r3, 0
-/* 80288384 00283FE4 48 00 66 15 */ bl func_8028E998
+/* 80288384 00283FE4 48 00 66 15 */ bl DVDLowClearCoverInterrupt
/* 80288388 00283FE8 80 6D AA 48 */ lwz r3, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028838C 00283FEC 3C C0 80 51 */ lis r6, lbl_80516980@ha
/* 80288390 00283FF0 38 C6 69 80 */ addi r6, r6, lbl_80516980@l
@@ -205,7 +205,7 @@ lbl_802883D4: /* 8028846C 002840CC 54 84 00 34 */ rlwinm r4, r4, 0, 0, 0x1a
/* 80288470 002840D0 7C A5 04 30 */ srw r5, r5, r0
/* 80288474 002840D4 38 C6 84 9C */ addi r6, r6, cbForStateReadingFST@l
-/* 80288478 002840D8 48 00 60 61 */ bl func_8028E4D8
+/* 80288478 002840D8 48 00 60 61 */ bl DVDLowRead
/* 8028847C 002840DC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80288480 002840E0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80288484 002840E4 83 C1 00 18 */ lwz r30, 0x18(r1)
@@ -246,7 +246,7 @@ lbl_802884EC: /* 802884FC 0028415C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80288500 00284160 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80288504 00284164 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80288508 00284168 48 00 49 41 */ bl func_8028CE48
+/* 80288508 00284168 48 00 49 41 */ bl __DVDStoreErrorCode
/* 8028850C 0028416C 48 00 00 FC */ b lbl_80288608
lbl_80288510:
/* 80288510 00284170 28 1E 00 20 */ cmplwi r30, 0x20
@@ -255,7 +255,7 @@ lbl_80288510: /* 8028851C 0028417C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80288520 00284180 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80288524 00284184 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80288528 00284188 48 00 49 21 */ bl func_8028CE48
+/* 80288528 00284188 48 00 49 21 */ bl __DVDStoreErrorCode
/* 8028852C 0028418C 48 00 00 DC */ b lbl_80288608
lbl_80288530:
/* 80288530 00284190 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
@@ -314,7 +314,7 @@ lbl_80288594: /* 802885F8 00284258 4B FE 61 8D */ bl OSRestoreInterrupts
/* 802885FC 0028425C 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 80288600 00284260 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 80288604 00284264 48 00 58 D1 */ bl func_8028DED4
+/* 80288604 00284264 48 00 58 D1 */ bl DVDLowRequestError
lbl_80288608:
/* 80288608 00284268 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028860C 0028426C 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -325,7 +325,7 @@ lbl_80288608: .global FatalAlarmHandler
FatalAlarmHandler:
-/* 80288620 00284280 48 00 4A E0 */ b lbl_8028D100
+/* 80288620 00284280 48 00 4A E0 */ b __DVDPrintFatalMessage
.global cbForStateError
cbForStateError:
@@ -334,7 +334,7 @@ cbForStateError: /* 8028862C 0028428C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80288630 00284290 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80288634 00284294 7C 7F 1B 78 */ mr r31, r3
-/* 80288638 00284298 48 00 4A B5 */ bl func_8028D0EC
+/* 80288638 00284298 48 00 4A B5 */ bl __DVDGetAutoFatalMessaging
/* 8028863C 0028429C 2C 03 00 00 */ cmpwi r3, 0
/* 80288640 002842A0 41 82 00 2C */ beq lbl_8028866C
/* 80288644 002842A4 3F E0 80 51 */ lis r31, lbl_805169D0@ha
@@ -357,7 +357,7 @@ lbl_8028866C: /* 80288684 002842E4 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80288688 002842E8 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028868C 002842EC 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80288690 002842F0 48 00 47 B9 */ bl func_8028CE48
+/* 80288690 002842F0 48 00 47 B9 */ bl __DVDStoreErrorCode
/* 80288694 002842F4 48 00 00 8C */ b lbl_80288720
lbl_80288698:
/* 80288698 002842F8 28 1F 00 20 */ cmplwi r31, 0x20
@@ -366,7 +366,7 @@ lbl_80288698: /* 802886A4 00284304 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802886A8 00284308 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 802886AC 0028430C 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802886B0 00284310 48 00 47 99 */ bl func_8028CE48
+/* 802886B0 00284310 48 00 47 99 */ bl __DVDStoreErrorCode
/* 802886B4 00284314 48 00 00 6C */ b lbl_80288720
lbl_802886B8:
/* 802886B8 00284318 3C 60 80 51 */ lis r3, lbl_805169A0@ha
@@ -410,7 +410,7 @@ cbForStoreErrorCode1: /* 80288738 00284398 38 60 00 00 */ li r3, 0
/* 8028873C 0028439C 38 A5 86 24 */ addi r5, r5, cbForStateError@l
/* 80288740 002843A0 38 80 00 00 */ li r4, 0
-/* 80288744 002843A4 48 00 54 94 */ b func_8028DBD8
+/* 80288744 002843A4 48 00 54 94 */ b DVDLowStopMotor
.global cbForStoreErrorCode2
cbForStoreErrorCode2:
@@ -418,10 +418,10 @@ cbForStoreErrorCode2: /* 8028874C 002843AC 7C 08 02 A6 */ mflr r0
/* 80288750 002843B0 38 60 00 00 */ li r3, 0
/* 80288754 002843B4 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80288758 002843B8 48 00 58 E5 */ bl hioEnumCallback
+/* 80288758 002843B8 48 00 58 E5 */ bl DVDLowSetSpinupFlag
/* 8028875C 002843BC 3C 60 80 29 */ lis r3, cbForStateError@ha
/* 80288760 002843C0 38 63 86 24 */ addi r3, r3, cbForStateError@l
-/* 80288764 002843C4 48 00 58 E5 */ bl func_8028E048
+/* 80288764 002843C4 48 00 58 E5 */ bl DVDLowReset
/* 80288768 002843C8 38 00 00 00 */ li r0, 0
/* 8028876C 002843CC 90 0D AA 74 */ stw r0, lbl_8063FD34-_SDA_BASE_(r13)
/* 80288770 002843D0 90 0D AA 24 */ stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
@@ -548,7 +548,7 @@ lbl_802888A8: /* 80288914 00284574 38 60 00 00 */ li r3, 0
/* 80288918 00284578 38 A5 90 F4 */ addi r5, r5, cbForStateGoToRetry@l
/* 8028891C 0028457C 38 80 00 00 */ li r4, 0
-/* 80288920 00284580 48 00 52 B9 */ bl func_8028DBD8
+/* 80288920 00284580 48 00 52 B9 */ bl DVDLowStopMotor
/* 80288924 00284584 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80288928 00284588 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8028892C 0028458C 83 C1 00 08 */ lwz r30, 8(r1)
@@ -589,7 +589,7 @@ lbl_80288994: /* 802889A4 00284604 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802889A8 00284608 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 802889AC 0028460C 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802889B0 00284610 48 00 44 99 */ bl func_8028CE48
+/* 802889B0 00284610 48 00 44 99 */ bl __DVDStoreErrorCode
/* 802889B4 00284614 48 00 04 6C */ b lbl_80288E20
lbl_802889B8:
/* 802889B8 00284618 28 1C 00 20 */ cmplwi r28, 0x20
@@ -598,7 +598,7 @@ lbl_802889B8: /* 802889C4 00284624 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802889C8 00284628 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 802889CC 0028462C 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802889D0 00284630 48 00 44 79 */ bl func_8028CE48
+/* 802889D0 00284630 48 00 44 79 */ bl __DVDStoreErrorCode
/* 802889D4 00284634 48 00 04 4C */ b lbl_80288E20
lbl_802889D8:
/* 802889D8 00284638 57 80 07 BD */ rlwinm. r0, r28, 0, 0x1e, 0x1e
@@ -607,10 +607,10 @@ lbl_802889D8: /* 802889E4 00284644 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 802889E8 00284648 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 802889EC 0028464C 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 802889F0 00284650 48 00 44 59 */ bl func_8028CE48
+/* 802889F0 00284650 48 00 44 59 */ bl __DVDStoreErrorCode
/* 802889F4 00284654 48 00 04 2C */ b lbl_80288E20
lbl_802889F8:
-/* 802889F8 00284658 48 00 5F 85 */ bl func_8028E97C
+/* 802889F8 00284658 48 00 5F 85 */ bl DVDLowGetImmBufferReg
/* 802889FC 0028465C 7C 7D 1B 78 */ mr r29, r3
/* 80288A00 00284660 54 7C 00 0E */ rlwinm r28, r3, 0, 0, 7
/* 80288A04 00284664 4B FF FD 81 */ bl CategorizeError
@@ -620,7 +620,7 @@ lbl_802889F8: /* 80288A14 00284674 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 80288A18 00284678 7F A3 EB 78 */ mr r3, r29
/* 80288A1C 0028467C 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 80288A20 00284680 48 00 44 29 */ bl func_8028CE48
+/* 80288A20 00284680 48 00 44 29 */ bl __DVDStoreErrorCode
/* 80288A24 00284684 48 00 03 FC */ b lbl_80288E20
lbl_80288A28:
/* 80288A28 00284688 38 03 FF FE */ addi r0, r3, -2
@@ -701,7 +701,7 @@ lbl_80288B18: /* 80288B28 00284788 3C 80 80 29 */ lis r4, cbForStoreErrorCode3@ha
/* 80288B2C 0028478C 7F A3 EB 78 */ mr r3, r29
/* 80288B30 00284790 38 84 88 78 */ addi r4, r4, cbForStoreErrorCode3@l
-/* 80288B34 00284794 48 00 43 15 */ bl func_8028CE48
+/* 80288B34 00284794 48 00 43 15 */ bl __DVDStoreErrorCode
/* 80288B38 00284798 48 00 02 E8 */ b lbl_80288E20
lbl_80288B3C:
/* 80288B3C 0028479C 28 1E 00 03 */ cmplwi r30, 3
@@ -750,7 +750,7 @@ lbl_80288B78: /* 80288BE4 00284844 3C 80 80 29 */ lis r4, cbForUnrecoveredError@ha
/* 80288BE8 00284848 38 84 8E 40 */ addi r4, r4, cbForUnrecoveredError@l
/* 80288BEC 0028484C 80 63 00 10 */ lwz r3, 0x10(r3)
-/* 80288BF0 00284850 48 00 5A 99 */ bl func_8028E688
+/* 80288BF0 00284850 48 00 5A 99 */ bl DVDLowSeek
/* 80288BF4 00284854 48 00 02 2C */ b lbl_80288E20
lbl_80288BF8:
/* 80288BF8 00284858 81 8D AA 94 */ lwz r12, lbl_8063FD54-_SDA_BASE_(r13)
@@ -883,21 +883,21 @@ lbl_80288D74: /* 80288DE0 00284A40 38 60 00 00 */ li r3, 0
/* 80288DE4 00284A44 38 A5 9E B0 */ addi r5, r5, cbForStateCheckID1@l
/* 80288DE8 00284A48 38 80 00 00 */ li r4, 0
-/* 80288DEC 00284A4C 48 00 4D ED */ bl func_8028DBD8
+/* 80288DEC 00284A4C 48 00 4D ED */ bl DVDLowStopMotor
/* 80288DF0 00284A50 48 00 00 30 */ b lbl_80288E20
lbl_80288DF4:
/* 80288DF4 00284A54 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 80288DF8 00284A58 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 80288DFC 00284A5C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80288E00 00284A60 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 80288E04 00284A64 48 00 40 45 */ bl func_8028CE48
+/* 80288E04 00284A64 48 00 40 45 */ bl __DVDStoreErrorCode
/* 80288E08 00284A68 48 00 00 18 */ b lbl_80288E20
lbl_80288E0C:
/* 80288E0C 00284A6C 3C 60 01 23 */ lis r3, 0x01234567@ha
/* 80288E10 00284A70 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 80288E14 00284A74 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80288E18 00284A78 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 80288E1C 00284A7C 48 00 40 2D */ bl func_8028CE48
+/* 80288E1C 00284A7C 48 00 40 2D */ bl __DVDStoreErrorCode
lbl_80288E20:
/* 80288E20 00284A80 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80288E24 00284A84 83 E1 00 1C */ lwz r31, 0x1c(r1)
@@ -937,7 +937,7 @@ lbl_80288E90: /* 80288EA0 00284B00 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80288EA4 00284B04 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80288EA8 00284B08 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80288EAC 00284B0C 48 00 3F 9D */ bl func_8028CE48
+/* 80288EAC 00284B0C 48 00 3F 9D */ bl __DVDStoreErrorCode
/* 80288EB0 00284B10 48 00 01 58 */ b lbl_80289008
lbl_80288EB4:
/* 80288EB4 00284B14 28 1E 00 20 */ cmplwi r30, 0x20
@@ -946,7 +946,7 @@ lbl_80288EB4: /* 80288EC0 00284B20 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80288EC4 00284B24 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80288EC8 00284B28 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80288ECC 00284B2C 48 00 3F 7D */ bl func_8028CE48
+/* 80288ECC 00284B2C 48 00 3F 7D */ bl __DVDStoreErrorCode
/* 80288ED0 00284B30 48 00 01 38 */ b lbl_80289008
lbl_80288ED4:
/* 80288ED4 00284B34 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
@@ -989,7 +989,7 @@ lbl_80288EF8: /* 80288F64 00284BC4 38 60 00 00 */ li r3, 0
/* 80288F68 00284BC8 38 A5 90 F4 */ addi r5, r5, cbForStateGoToRetry@l
/* 80288F6C 00284BCC 38 80 00 00 */ li r4, 0
-/* 80288F70 00284BD0 48 00 4C 69 */ bl func_8028DBD8
+/* 80288F70 00284BD0 48 00 4C 69 */ bl DVDLowStopMotor
/* 80288F74 00284BD4 48 00 00 94 */ b lbl_80289008
lbl_80288F78:
/* 80288F78 00284BD8 4B FE 57 E5 */ bl OSDisableInterrupts
@@ -1028,7 +1028,7 @@ lbl_80288F94: /* 80288FF8 00284C58 4B FE 57 8D */ bl OSRestoreInterrupts
/* 80288FFC 00284C5C 3C 60 80 29 */ lis r3, cbForUnrecoveredErrorRetry@ha
/* 80289000 00284C60 38 63 90 20 */ addi r3, r3, cbForUnrecoveredErrorRetry@l
-/* 80289004 00284C64 48 00 4E D1 */ bl func_8028DED4
+/* 80289004 00284C64 48 00 4E D1 */ bl DVDLowRequestError
lbl_80289008:
/* 80289008 00284C68 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028900C 00284C6C 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -1067,7 +1067,7 @@ lbl_8028906C: /* 8028907C 00284CDC 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289080 00284CE0 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289084 00284CE4 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289088 00284CE8 48 00 3D C1 */ bl func_8028CE48
+/* 80289088 00284CE8 48 00 3D C1 */ bl __DVDStoreErrorCode
/* 8028908C 00284CEC 48 00 00 54 */ b lbl_802890E0
lbl_80289090:
/* 80289090 00284CF0 28 1F 00 20 */ cmplwi r31, 0x20
@@ -1076,7 +1076,7 @@ lbl_80289090: /* 8028909C 00284CFC 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802890A0 00284D00 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 802890A4 00284D04 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802890A8 00284D08 48 00 3D A1 */ bl func_8028CE48
+/* 802890A8 00284D08 48 00 3D A1 */ bl __DVDStoreErrorCode
/* 802890AC 00284D0C 48 00 00 34 */ b lbl_802890E0
lbl_802890B0:
/* 802890B0 00284D10 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e
@@ -1085,13 +1085,13 @@ lbl_802890B0: /* 802890BC 00284D1C 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 802890C0 00284D20 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 802890C4 00284D24 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 802890C8 00284D28 48 00 3D 81 */ bl func_8028CE48
+/* 802890C8 00284D28 48 00 3D 81 */ bl __DVDStoreErrorCode
/* 802890CC 00284D2C 48 00 00 14 */ b lbl_802890E0
lbl_802890D0:
-/* 802890D0 00284D30 48 00 58 AD */ bl func_8028E97C
+/* 802890D0 00284D30 48 00 58 AD */ bl DVDLowGetImmBufferReg
/* 802890D4 00284D34 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 802890D8 00284D38 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 802890DC 00284D3C 48 00 3D 6D */ bl func_8028CE48
+/* 802890DC 00284D3C 48 00 3D 6D */ bl __DVDStoreErrorCode
lbl_802890E0:
/* 802890E0 00284D40 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802890E4 00284D44 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -1129,7 +1129,7 @@ lbl_80289140: /* 80289150 00284DB0 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289154 00284DB4 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289158 00284DB8 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028915C 00284DBC 48 00 3C ED */ bl func_8028CE48
+/* 8028915C 00284DBC 48 00 3C ED */ bl __DVDStoreErrorCode
/* 80289160 00284DC0 48 00 01 A8 */ b lbl_80289308
lbl_80289164:
/* 80289164 00284DC4 28 1F 00 20 */ cmplwi r31, 0x20
@@ -1138,7 +1138,7 @@ lbl_80289164: /* 80289170 00284DD0 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289174 00284DD4 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80289178 00284DD8 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028917C 00284DDC 48 00 3C CD */ bl func_8028CE48
+/* 8028917C 00284DDC 48 00 3C CD */ bl __DVDStoreErrorCode
/* 80289180 00284DE0 48 00 01 88 */ b lbl_80289308
lbl_80289184:
/* 80289184 00284DE4 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e
@@ -1147,7 +1147,7 @@ lbl_80289184: /* 80289190 00284DF0 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 80289194 00284DF4 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80289198 00284DF8 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 8028919C 00284DFC 48 00 3C AD */ bl func_8028CE48
+/* 8028919C 00284DFC 48 00 3C AD */ bl __DVDStoreErrorCode
/* 802891A0 00284E00 48 00 01 68 */ b lbl_80289308
lbl_802891A4:
/* 802891A4 00284E04 38 00 00 00 */ li r0, 0
@@ -1272,7 +1272,7 @@ lbl_8028934C: /* 80289354 00284FB4 93 ED AA 40 */ stw r31, lbl_8063FD00-_SDA_BASE_(r13)
/* 80289358 00284FB8 38 7E 00 C0 */ addi r3, r30, 0xc0
/* 8028935C 00284FBC 80 84 00 24 */ lwz r4, 0x24(r4)
-/* 80289360 00284FC0 48 00 3B 8D */ bl func_8028CEEC
+/* 80289360 00284FC0 48 00 3B 8D */ bl DVDCompareDiskID
/* 80289364 00284FC4 2C 03 00 00 */ cmpwi r3, 0
/* 80289368 00284FC8 41 82 00 D8 */ beq lbl_80289440
/* 8028936C 00284FCC 80 6D AA 8C */ lwz r3, lbl_8063FD4C-_SDA_BASE_(r13)
@@ -1287,7 +1287,7 @@ lbl_8028934C: /* 80289390 00284FF0 4B FE 12 99 */ bl DCInvalidateRange
/* 80289394 00284FF4 93 ED AA 28 */ stw r31, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289398 00284FF8 38 60 00 00 */ li r3, 0
-/* 8028939C 00284FFC 48 00 55 FD */ bl func_8028E998
+/* 8028939C 00284FFC 48 00 55 FD */ bl DVDLowClearCoverInterrupt
/* 802893A0 00285000 4B FE 53 BD */ bl OSDisableInterrupts
/* 802893A4 00285004 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802893A8 00285008 7C 7D 1B 78 */ mr r29, r3
@@ -1327,7 +1327,7 @@ lbl_802893B8: /* 8028942C 0028508C 38 C6 96 54 */ addi r6, r6, cbForStateReadingTOC@l
/* 80289430 00285090 38 80 00 20 */ li r4, 0x20
/* 80289434 00285094 3C A0 00 01 */ lis r5, 1
-/* 80289438 00285098 48 00 46 0D */ bl func_8028DA44
+/* 80289438 00285098 48 00 46 0D */ bl DVDLowUnencryptedRead
/* 8028943C 0028509C 48 00 01 FC */ b lbl_80289638
lbl_80289440:
/* 80289440 002850A0 4B FE 53 1D */ bl OSDisableInterrupts
@@ -1367,7 +1367,7 @@ lbl_80289458: /* 802894C4 00285124 38 60 00 00 */ li r3, 0
/* 802894C8 00285128 38 A5 9E B0 */ addi r5, r5, cbForStateCheckID1@l
/* 802894CC 0028512C 38 80 00 00 */ li r4, 0
-/* 802894D0 00285130 48 00 47 09 */ bl func_8028DBD8
+/* 802894D0 00285130 48 00 47 09 */ bl DVDLowStopMotor
/* 802894D4 00285134 48 00 01 64 */ b lbl_80289638
lbl_802894D8:
/* 802894D8 00285138 80 8D AA 8C */ lwz r4, lbl_8063FD4C-_SDA_BASE_(r13)
@@ -1414,13 +1414,13 @@ lbl_8028950C: /* 80289578 002851D8 38 60 00 00 */ li r3, 0
/* 8028957C 002851DC 38 A5 9E B0 */ addi r5, r5, cbForStateCheckID1@l
/* 80289580 002851E0 38 80 00 00 */ li r4, 0
-/* 80289584 002851E4 48 00 46 55 */ bl func_8028DBD8
+/* 80289584 002851E4 48 00 46 55 */ bl DVDLowStopMotor
/* 80289588 002851E8 48 00 00 B0 */ b lbl_80289638
lbl_8028958C:
/* 8028958C 002851EC 3B E0 00 00 */ li r31, 0
/* 80289590 002851F0 38 60 00 00 */ li r3, 0
/* 80289594 002851F4 93 ED AA 28 */ stw r31, lbl_8063FCE8-_SDA_BASE_(r13)
-/* 80289598 002851F8 48 00 54 01 */ bl func_8028E998
+/* 80289598 002851F8 48 00 54 01 */ bl DVDLowClearCoverInterrupt
/* 8028959C 002851FC 4B FE 51 C1 */ bl OSDisableInterrupts
/* 802895A0 00285200 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802895A4 00285204 7C 7D 1B 78 */ mr r29, r3
@@ -1460,7 +1460,7 @@ lbl_802895B4: /* 80289628 00285288 38 C6 96 54 */ addi r6, r6, cbForStateReadingTOC@l
/* 8028962C 0028528C 38 80 00 20 */ li r4, 0x20
/* 80289630 00285290 3C A0 00 01 */ lis r5, 1
-/* 80289634 00285294 48 00 44 11 */ bl func_8028DA44
+/* 80289634 00285294 48 00 44 11 */ bl DVDLowUnencryptedRead
lbl_80289638:
/* 80289638 00285298 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8028963C 0028529C 83 E1 00 1C */ lwz r31, 0x1c(r1)
@@ -1501,7 +1501,7 @@ lbl_802896AC: /* 802896BC 0028531C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802896C0 00285320 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 802896C4 00285324 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802896C8 00285328 48 00 37 81 */ bl func_8028CE48
+/* 802896C8 00285328 48 00 37 81 */ bl __DVDStoreErrorCode
/* 802896CC 0028532C 48 00 01 0C */ b lbl_802897D8
lbl_802896D0:
/* 802896D0 00285330 28 1D 00 20 */ cmplwi r29, 0x20
@@ -1510,7 +1510,7 @@ lbl_802896D0: /* 802896DC 0028533C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 802896E0 00285340 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 802896E4 00285344 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 802896E8 00285348 48 00 37 61 */ bl func_8028CE48
+/* 802896E8 00285348 48 00 37 61 */ bl __DVDStoreErrorCode
/* 802896EC 0028534C 48 00 00 EC */ b lbl_802897D8
lbl_802896F0:
/* 802896F0 00285350 57 A0 07 FF */ clrlwi. r0, r29, 0x1f
@@ -1521,7 +1521,7 @@ lbl_802896F0: /* 80289704 00285364 93 AD AA 28 */ stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289708 00285368 38 60 00 00 */ li r3, 0
/* 8028970C 0028536C 90 8D AA 60 */ stw r4, lbl_8063FD20-_SDA_BASE_(r13)
-/* 80289710 00285370 48 00 52 89 */ bl func_8028E998
+/* 80289710 00285370 48 00 52 89 */ bl DVDLowClearCoverInterrupt
/* 80289714 00285374 4B FE 50 49 */ bl OSDisableInterrupts
/* 80289718 00285378 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028971C 0028537C 7C 7E 1B 78 */ mr r30, r3
@@ -1563,7 +1563,7 @@ lbl_8028972C: /* 802897A8 00285408 38 80 00 20 */ li r4, 0x20
/* 802897AC 0028540C 38 63 6A 80 */ addi r3, r3, lbl_80516A80@l
/* 802897B0 00285410 38 C6 97 F4 */ addi r6, r6, cbForStateReadingPartitionInfo@l
-/* 802897B4 00285414 48 00 42 91 */ bl func_8028DA44
+/* 802897B4 00285414 48 00 42 91 */ bl DVDLowUnencryptedRead
/* 802897B8 00285418 48 00 00 20 */ b lbl_802897D8
lbl_802897BC:
/* 802897BC 0028541C 38 60 00 27 */ li r3, 0x27
@@ -1572,7 +1572,7 @@ lbl_802897BC: /* 802897C8 00285428 4B FF E9 C5 */ bl StampCommand
/* 802897CC 0028542C 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 802897D0 00285430 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 802897D4 00285434 48 00 47 01 */ bl func_8028DED4
+/* 802897D4 00285434 48 00 47 01 */ bl DVDLowRequestError
lbl_802897D8:
/* 802897D8 00285438 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802897DC 0028543C 83 E1 00 1C */ lwz r31, 0x1c(r1)
@@ -1618,7 +1618,7 @@ lbl_80289858: /* 80289868 002854C8 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028986C 002854CC 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289870 002854D0 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289874 002854D4 48 00 35 D5 */ bl func_8028CE48
+/* 80289874 002854D4 48 00 35 D5 */ bl __DVDStoreErrorCode
/* 80289878 002854D8 48 00 03 2C */ b lbl_80289BA4
lbl_8028987C:
/* 8028987C 002854DC 28 1C 00 20 */ cmplwi r28, 0x20
@@ -1627,7 +1627,7 @@ lbl_8028987C: /* 80289888 002854E8 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028988C 002854EC 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80289890 002854F0 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289894 002854F4 48 00 35 B5 */ bl func_8028CE48
+/* 80289894 002854F4 48 00 35 B5 */ bl __DVDStoreErrorCode
/* 80289898 002854F8 48 00 03 0C */ b lbl_80289BA4
lbl_8028989C:
/* 8028989C 002854FC 57 80 07 FF */ clrlwi. r0, r28, 0x1f
@@ -1665,7 +1665,7 @@ lbl_8028990C: /* 8028990C 0028556C 3B A0 00 00 */ li r29, 0
/* 80289910 00285570 38 60 00 00 */ li r3, 0
/* 80289914 00285574 93 AD AA 28 */ stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
-/* 80289918 00285578 48 00 50 81 */ bl func_8028E998
+/* 80289918 00285578 48 00 50 81 */ bl DVDLowClearCoverInterrupt
/* 8028991C 0028557C 80 6D AA 58 */ lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 80289920 00285580 83 83 00 00 */ lwz r28, 0(r3)
/* 80289924 00285584 4B FE 4E 39 */ bl OSDisableInterrupts
@@ -1709,13 +1709,13 @@ lbl_8028993C: /* 802899B8 00285618 39 08 9B C4 */ addi r8, r8, cbForStateOpenPartition@l
/* 802899BC 0028561C 38 A0 00 00 */ li r5, 0
/* 802899C0 00285620 38 C0 00 00 */ li r6, 0
-/* 802899C4 00285624 48 00 3C B5 */ bl func_8028D678
+/* 802899C4 00285624 48 00 3C B5 */ bl DVDLowOpenPartition
/* 802899C8 00285628 48 00 01 DC */ b lbl_80289BA4
lbl_802899CC:
/* 802899CC 0028562C 3B A0 00 00 */ li r29, 0
/* 802899D0 00285630 38 60 00 00 */ li r3, 0
/* 802899D4 00285634 93 AD AA 28 */ stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
-/* 802899D8 00285638 48 00 4F C1 */ bl func_8028E998
+/* 802899D8 00285638 48 00 4F C1 */ bl DVDLowClearCoverInterrupt
/* 802899DC 0028563C 80 6D AA 58 */ lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 802899E0 00285640 83 83 00 00 */ lwz r28, 0(r3)
/* 802899E4 00285644 4B FE 4D 79 */ bl OSDisableInterrupts
@@ -1759,7 +1759,7 @@ lbl_802899FC: /* 80289A78 002856D8 39 08 9D 4C */ addi r8, r8, cbForStateOpenPartition2@l
/* 80289A7C 002856DC 38 A0 00 00 */ li r5, 0
/* 80289A80 002856E0 38 C0 00 00 */ li r6, 0
-/* 80289A84 002856E4 48 00 3B F5 */ bl func_8028D678
+/* 80289A84 002856E4 48 00 3B F5 */ bl DVDLowOpenPartition
/* 80289A88 002856E8 48 00 01 1C */ b lbl_80289BA4
lbl_80289A8C:
/* 80289A8C 002856EC 80 0D AA 20 */ lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
@@ -1836,7 +1836,7 @@ lbl_80289B88: /* 80289B94 002857F4 4B FF E5 F9 */ bl StampCommand
/* 80289B98 002857F8 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 80289B9C 002857FC 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 80289BA0 00285800 48 00 43 35 */ bl func_8028DED4
+/* 80289BA0 00285800 48 00 43 35 */ bl DVDLowRequestError
lbl_80289BA4:
/* 80289BA4 00285804 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80289BA8 00285808 83 E1 00 1C */ lwz r31, 0x1c(r1)
@@ -1878,7 +1878,7 @@ lbl_80289C18: /* 80289C28 00285888 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289C2C 0028588C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289C30 00285890 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289C34 00285894 48 00 32 15 */ bl func_8028CE48
+/* 80289C34 00285894 48 00 32 15 */ bl __DVDStoreErrorCode
/* 80289C38 00285898 48 00 00 FC */ b lbl_80289D34
lbl_80289C3C:
/* 80289C3C 0028589C 28 1E 00 20 */ cmplwi r30, 0x20
@@ -1887,7 +1887,7 @@ lbl_80289C3C: /* 80289C48 002858A8 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289C4C 002858AC 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80289C50 002858B0 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289C54 002858B4 48 00 31 F5 */ bl func_8028CE48
+/* 80289C54 002858B4 48 00 31 F5 */ bl __DVDStoreErrorCode
/* 80289C58 002858B8 48 00 00 DC */ b lbl_80289D34
lbl_80289C5C:
/* 80289C5C 002858BC 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
@@ -1895,7 +1895,7 @@ lbl_80289C5C: /* 80289C64 002858C4 3B C0 00 00 */ li r30, 0
/* 80289C68 002858C8 38 60 00 00 */ li r3, 0
/* 80289C6C 002858CC 93 CD AA 28 */ stw r30, lbl_8063FCE8-_SDA_BASE_(r13)
-/* 80289C70 002858D0 48 00 4D 29 */ bl func_8028E998
+/* 80289C70 002858D0 48 00 4D 29 */ bl DVDLowClearCoverInterrupt
/* 80289C74 002858D4 4B FE 4A E9 */ bl OSDisableInterrupts
/* 80289C78 002858D8 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289C7C 002858DC 7C 7F 1B 78 */ mr r31, r3
@@ -1936,7 +1936,7 @@ lbl_80289C8C: /* 80289D04 00285964 38 80 00 20 */ li r4, 0x20
/* 80289D08 00285968 38 C6 A0 78 */ addi r6, r6, cbForStateCheckID2@l
/* 80289D0C 0028596C 38 A0 01 08 */ li r5, 0x108
-/* 80289D10 00285970 48 00 47 C9 */ bl func_8028E4D8
+/* 80289D10 00285970 48 00 47 C9 */ bl DVDLowRead
/* 80289D14 00285974 48 00 00 20 */ b lbl_80289D34
lbl_80289D18:
/* 80289D18 00285978 38 60 00 27 */ li r3, 0x27
@@ -1945,7 +1945,7 @@ lbl_80289D18: /* 80289D24 00285984 4B FF E4 69 */ bl StampCommand
/* 80289D28 00285988 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 80289D2C 0028598C 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 80289D30 00285990 48 00 41 A5 */ bl func_8028DED4
+/* 80289D30 00285990 48 00 41 A5 */ bl DVDLowRequestError
lbl_80289D34:
/* 80289D34 00285994 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80289D38 00285998 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -1982,7 +1982,7 @@ lbl_80289D98: /* 80289DA8 00285A08 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289DAC 00285A0C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289DB0 00285A10 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289DB4 00285A14 48 00 30 95 */ bl func_8028CE48
+/* 80289DB4 00285A14 48 00 30 95 */ bl __DVDStoreErrorCode
/* 80289DB8 00285A18 48 00 00 E4 */ b lbl_80289E9C
lbl_80289DBC:
/* 80289DBC 00285A1C 28 1F 00 20 */ cmplwi r31, 0x20
@@ -1991,7 +1991,7 @@ lbl_80289DBC: /* 80289DC8 00285A28 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289DCC 00285A2C 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80289DD0 00285A30 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289DD4 00285A34 48 00 30 75 */ bl func_8028CE48
+/* 80289DD4 00285A34 48 00 30 75 */ bl __DVDStoreErrorCode
/* 80289DD8 00285A38 48 00 00 C4 */ b lbl_80289E9C
lbl_80289DDC:
/* 80289DDC 00285A3C 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
@@ -2046,7 +2046,7 @@ lbl_80289E80: /* 80289E8C 00285AEC 4B FF E3 01 */ bl StampCommand
/* 80289E90 00285AF0 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 80289E94 00285AF4 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 80289E98 00285AF8 48 00 40 3D */ bl func_8028DED4
+/* 80289E98 00285AF8 48 00 40 3D */ bl DVDLowRequestError
lbl_80289E9C:
/* 80289E9C 00285AFC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80289EA0 00285B00 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2082,7 +2082,7 @@ lbl_80289EFC: /* 80289F0C 00285B6C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289F10 00285B70 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 80289F14 00285B74 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289F18 00285B78 48 00 2F 31 */ bl func_8028CE48
+/* 80289F18 00285B78 48 00 2F 31 */ bl __DVDStoreErrorCode
/* 80289F1C 00285B7C 48 00 01 48 */ b lbl_8028A064
lbl_80289F20:
/* 80289F20 00285B80 28 1F 00 20 */ cmplwi r31, 0x20
@@ -2091,7 +2091,7 @@ lbl_80289F20: /* 80289F2C 00285B8C 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 80289F30 00285B90 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 80289F34 00285B94 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 80289F38 00285B98 48 00 2F 11 */ bl func_8028CE48
+/* 80289F38 00285B98 48 00 2F 11 */ bl __DVDStoreErrorCode
/* 80289F3C 00285B9C 48 00 01 28 */ b lbl_8028A064
lbl_80289F40:
/* 80289F40 00285BA0 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e
@@ -2100,7 +2100,7 @@ lbl_80289F40: /* 80289F4C 00285BAC 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 80289F50 00285BB0 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 80289F54 00285BB4 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 80289F58 00285BB8 48 00 2E F1 */ bl func_8028CE48
+/* 80289F58 00285BB8 48 00 2E F1 */ bl __DVDStoreErrorCode
/* 80289F5C 00285BBC 48 00 01 08 */ b lbl_8028A064
lbl_80289F60:
/* 80289F60 00285BC0 38 80 00 00 */ li r4, 0
@@ -2210,7 +2210,7 @@ lbl_8028A0C8: /* 8028A0D8 00285D38 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A0DC 00285D3C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028A0E0 00285D40 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A0E4 00285D44 48 00 2D 65 */ bl func_8028CE48
+/* 8028A0E4 00285D44 48 00 2D 65 */ bl __DVDStoreErrorCode
/* 8028A0E8 00285D48 48 00 01 10 */ b lbl_8028A1F8
lbl_8028A0EC:
/* 8028A0EC 00285D4C 28 1F 00 20 */ cmplwi r31, 0x20
@@ -2219,7 +2219,7 @@ lbl_8028A0EC: /* 8028A0F8 00285D58 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A0FC 00285D5C 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 8028A100 00285D60 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A104 00285D64 48 00 2D 45 */ bl func_8028CE48
+/* 8028A104 00285D64 48 00 2D 45 */ bl __DVDStoreErrorCode
/* 8028A108 00285D68 48 00 00 F0 */ b lbl_8028A1F8
lbl_8028A10C:
/* 8028A10C 00285D6C 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
@@ -2244,7 +2244,7 @@ lbl_8028A10C: /* 8028A158 00285DB8 4B FE 13 45 */ bl OSPanic
lbl_8028A15C:
/* 8028A15C 00285DBC 38 60 00 00 */ li r3, 0
-/* 8028A160 00285DC0 48 00 48 39 */ bl func_8028E998
+/* 8028A160 00285DC0 48 00 48 39 */ bl DVDLowClearCoverInterrupt
/* 8028A164 00285DC4 80 CD AA 48 */ lwz r6, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028A168 00285DC8 3F E0 80 51 */ lis r31, lbl_80516980@ha
/* 8028A16C 00285DCC 3B FF 69 80 */ addi r31, r31, lbl_80516980@l
@@ -2273,7 +2273,7 @@ lbl_8028A15C: /* 8028A1C8 00285E28 80 67 00 38 */ lwz r3, 0x38(r7)
/* 8028A1CC 00285E2C 54 84 00 34 */ rlwinm r4, r4, 0, 0, 0x1a
/* 8028A1D0 00285E30 7C A5 04 30 */ srw r5, r5, r0
-/* 8028A1D4 00285E34 48 00 43 05 */ bl func_8028E4D8
+/* 8028A1D4 00285E34 48 00 43 05 */ bl DVDLowRead
/* 8028A1D8 00285E38 48 00 00 20 */ b lbl_8028A1F8
lbl_8028A1DC:
/* 8028A1DC 00285E3C 38 60 00 27 */ li r3, 0x27
@@ -2282,7 +2282,7 @@ lbl_8028A1DC: /* 8028A1E8 00285E48 4B FF DF A5 */ bl StampCommand
/* 8028A1EC 00285E4C 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 8028A1F0 00285E50 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 8028A1F4 00285E54 48 00 3C E1 */ bl func_8028DED4
+/* 8028A1F4 00285E54 48 00 3C E1 */ bl DVDLowRequestError
lbl_8028A1F8:
/* 8028A1F8 00285E58 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A1FC 00285E5C 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2306,7 +2306,7 @@ stateCoverClosed: /* 8028A238 00285E98 7C 63 00 2E */ lwzx r3, r3, r0
/* 8028A23C 00285E9C 7C 69 03 A6 */ mtctr r3
/* 8028A240 00285EA0 4E 80 04 20 */ bctr
-/* 8028A244 00285EA4 48 00 27 49 */ bl func_8028C98C
+/* 8028A244 00285EA4 48 00 27 49 */ bl __DVDClearWaitingQueue
/* 8028A248 00285EA8 3C 60 80 51 */ lis r3, lbl_805169A0@ha
/* 8028A24C 00285EAC 80 8D AA 90 */ lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A250 00285EB0 38 63 69 A0 */ addi r3, r3, lbl_805169A0@l
@@ -2335,10 +2335,10 @@ lbl_8028A2A4: /* 8028A2A4 00285F04 38 00 00 00 */ li r0, 0
/* 8028A2A8 00285F08 38 60 00 01 */ li r3, 1
/* 8028A2AC 00285F0C 90 0D AA 70 */ stw r0, lbl_8063FD30-_SDA_BASE_(r13)
-/* 8028A2B0 00285F10 48 00 3D 8D */ bl hioEnumCallback
+/* 8028A2B0 00285F10 48 00 3D 8D */ bl DVDLowSetSpinupFlag
/* 8028A2B4 00285F14 3C 60 80 29 */ lis r3, cbForStateReset@ha
/* 8028A2B8 00285F18 38 63 A4 78 */ addi r3, r3, cbForStateReset@l
-/* 8028A2BC 00285F1C 48 00 3D 8D */ bl func_8028E048
+/* 8028A2BC 00285F1C 48 00 3D 8D */ bl DVDLowReset
lbl_8028A2C0:
/* 8028A2C0 00285F20 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A2C4 00285F24 7C 08 03 A6 */ mtlr r0
@@ -2360,7 +2360,7 @@ ResetAlarmHandler: /* 8028A2F8 00285F58 38 60 00 00 */ li r3, 0
/* 8028A2FC 00285F5C 38 84 A5 5C */ addi r4, r4, stateDownRotation@l
/* 8028A300 00285F60 90 8D AA 94 */ stw r4, lbl_8063FD54-_SDA_BASE_(r13)
-/* 8028A304 00285F64 48 00 46 95 */ bl func_8028E998
+/* 8028A304 00285F64 48 00 46 95 */ bl DVDLowClearCoverInterrupt
/* 8028A308 00285F68 4B FE 44 55 */ bl OSDisableInterrupts
/* 8028A30C 00285F6C 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A310 00285F70 7C 7F 1B 78 */ mr r31, r3
@@ -2398,7 +2398,7 @@ lbl_8028A324: /* 8028A38C 00285FEC 3C 80 80 29 */ lis r4, cbForStateDownRotation@ha
/* 8028A390 00285FF0 3C 60 00 02 */ lis r3, 2
/* 8028A394 00285FF4 38 84 A6 24 */ addi r4, r4, cbForStateDownRotation@l
-/* 8028A398 00285FF8 48 00 3F C1 */ bl func_8028E358
+/* 8028A398 00285FF8 48 00 3F C1 */ bl DVDLowSetMaximumRotation
/* 8028A39C 00285FFC 48 00 00 C4 */ b lbl_8028A460
lbl_8028A3A0:
/* 8028A3A0 00286000 3C 60 80 51 */ lis r3, lbl_80516A40@ha
@@ -2409,7 +2409,7 @@ lbl_8028A3A0: /* 8028A3B4 00286014 38 60 00 00 */ li r3, 0
/* 8028A3B8 00286018 38 84 A7 BC */ addi r4, r4, stateCoverClosed_CMD@l
/* 8028A3BC 0028601C 90 8D AA 94 */ stw r4, lbl_8063FD54-_SDA_BASE_(r13)
-/* 8028A3C0 00286020 48 00 45 D9 */ bl func_8028E998
+/* 8028A3C0 00286020 48 00 45 D9 */ bl DVDLowClearCoverInterrupt
/* 8028A3C4 00286024 4B FE 43 99 */ bl OSDisableInterrupts
/* 8028A3C8 00286028 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A3CC 0028602C 7C 7F 1B 78 */ mr r31, r3
@@ -2449,7 +2449,7 @@ lbl_8028A3E0: /* 8028A450 002860B0 3C 80 80 29 */ lis r4, cbForStateCoverClosed@ha
/* 8028A454 002860B4 38 63 6A 40 */ addi r3, r3, lbl_80516A40@l
/* 8028A458 002860B8 38 84 A8 8C */ addi r4, r4, cbForStateCoverClosed@l
-/* 8028A45C 002860BC 48 00 30 95 */ bl func_8028D4F0
+/* 8028A45C 002860BC 48 00 30 95 */ bl DVDLowReadDiskID
lbl_8028A460:
/* 8028A460 002860C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A464 002860C4 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2470,7 +2470,7 @@ cbForStateReset: /* 8028A494 002860F4 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A498 002860F8 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028A49C 002860FC 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A4A0 00286100 48 00 29 A9 */ bl func_8028CE48
+/* 8028A4A0 00286100 48 00 29 A9 */ bl __DVDStoreErrorCode
/* 8028A4A4 00286104 48 00 00 A4 */ b lbl_8028A548
lbl_8028A4A8:
/* 8028A4A8 00286108 28 03 00 20 */ cmplwi r3, 0x20
@@ -2479,7 +2479,7 @@ lbl_8028A4A8: /* 8028A4B4 00286114 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A4B8 00286118 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 8028A4BC 0028611C 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A4C0 00286120 48 00 29 89 */ bl func_8028CE48
+/* 8028A4C0 00286120 48 00 29 89 */ bl __DVDStoreErrorCode
/* 8028A4C4 00286124 48 00 00 84 */ b lbl_8028A548
lbl_8028A4C8:
/* 8028A4C8 00286128 54 60 07 FF */ clrlwi. r0, r3, 0x1f
@@ -2514,7 +2514,7 @@ lbl_8028A52C: /* 8028A538 00286198 4B FF DC 55 */ bl StampCommand
/* 8028A53C 0028619C 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 8028A540 002861A0 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 8028A544 002861A4 48 00 39 91 */ bl func_8028DED4
+/* 8028A544 002861A4 48 00 39 91 */ bl DVDLowRequestError
lbl_8028A548:
/* 8028A548 002861A8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A54C 002861AC 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2528,7 +2528,7 @@ stateDownRotation: /* 8028A568 002861C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8028A56C 002861CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8028A570 002861D0 93 C1 00 08 */ stw r30, 8(r1)
-/* 8028A574 002861D4 48 00 44 25 */ bl func_8028E998
+/* 8028A574 002861D4 48 00 44 25 */ bl DVDLowClearCoverInterrupt
/* 8028A578 002861D8 4B FE 41 E5 */ bl OSDisableInterrupts
/* 8028A57C 002861DC 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A580 002861E0 7C 7F 1B 78 */ mr r31, r3
@@ -2566,7 +2566,7 @@ lbl_8028A594: /* 8028A5FC 0028625C 3C 80 80 29 */ lis r4, cbForStateDownRotation@ha
/* 8028A600 00286260 3C 60 00 02 */ lis r3, 2
/* 8028A604 00286264 38 84 A6 24 */ addi r4, r4, cbForStateDownRotation@l
-/* 8028A608 00286268 48 00 3D 51 */ bl func_8028E358
+/* 8028A608 00286268 48 00 3D 51 */ bl DVDLowSetMaximumRotation
/* 8028A60C 0028626C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A610 00286270 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8028A614 00286274 83 C1 00 08 */ lwz r30, 8(r1)
@@ -2606,7 +2606,7 @@ lbl_8028A678: /* 8028A688 002862E8 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A68C 002862EC 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028A690 002862F0 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A694 002862F4 48 00 27 B5 */ bl func_8028CE48
+/* 8028A694 002862F4 48 00 27 B5 */ bl __DVDStoreErrorCode
/* 8028A698 002862F8 48 00 01 0C */ b lbl_8028A7A4
lbl_8028A69C:
/* 8028A69C 002862FC 28 1E 00 20 */ cmplwi r30, 0x20
@@ -2615,7 +2615,7 @@ lbl_8028A69C: /* 8028A6A8 00286308 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A6AC 0028630C 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 8028A6B0 00286310 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A6B4 00286314 48 00 27 95 */ bl func_8028CE48
+/* 8028A6B4 00286314 48 00 27 95 */ bl __DVDStoreErrorCode
/* 8028A6B8 00286318 48 00 00 EC */ b lbl_8028A7A4
lbl_8028A6BC:
/* 8028A6BC 0028631C 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
@@ -2628,7 +2628,7 @@ lbl_8028A6BC: /* 8028A6D8 00286338 38 60 00 00 */ li r3, 0
/* 8028A6DC 0028633C 38 84 A7 BC */ addi r4, r4, stateCoverClosed_CMD@l
/* 8028A6E0 00286340 90 8D AA 94 */ stw r4, lbl_8063FD54-_SDA_BASE_(r13)
-/* 8028A6E4 00286344 48 00 42 B5 */ bl func_8028E998
+/* 8028A6E4 00286344 48 00 42 B5 */ bl DVDLowClearCoverInterrupt
/* 8028A6E8 00286348 4B FE 40 75 */ bl OSDisableInterrupts
/* 8028A6EC 0028634C 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A6F0 00286350 7C 7F 1B 78 */ mr r31, r3
@@ -2668,7 +2668,7 @@ lbl_8028A704: /* 8028A774 002863D4 3C 80 80 29 */ lis r4, cbForStateCoverClosed@ha
/* 8028A778 002863D8 38 63 6A 40 */ addi r3, r3, lbl_80516A40@l
/* 8028A77C 002863DC 38 84 A8 8C */ addi r4, r4, cbForStateCoverClosed@l
-/* 8028A780 002863E0 48 00 2D 71 */ bl func_8028D4F0
+/* 8028A780 002863E0 48 00 2D 71 */ bl DVDLowReadDiskID
/* 8028A784 002863E4 48 00 00 20 */ b lbl_8028A7A4
lbl_8028A788:
/* 8028A788 002863E8 38 60 00 27 */ li r3, 0x27
@@ -2677,7 +2677,7 @@ lbl_8028A788: /* 8028A794 002863F4 4B FF D9 F9 */ bl StampCommand
/* 8028A798 002863F8 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 8028A79C 002863FC 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 8028A7A0 00286400 48 00 37 35 */ bl func_8028DED4
+/* 8028A7A0 00286400 48 00 37 35 */ bl DVDLowRequestError
lbl_8028A7A4:
/* 8028A7A4 00286404 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A7A8 00286408 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2694,7 +2694,7 @@ stateCoverClosed_CMD: /* 8028A7C8 00286428 90 01 00 14 */ stw r0, 0x14(r1)
/* 8028A7CC 0028642C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8028A7D0 00286430 93 C1 00 08 */ stw r30, 8(r1)
-/* 8028A7D4 00286434 48 00 41 C5 */ bl func_8028E998
+/* 8028A7D4 00286434 48 00 41 C5 */ bl DVDLowClearCoverInterrupt
/* 8028A7D8 00286438 4B FE 3F 85 */ bl OSDisableInterrupts
/* 8028A7DC 0028643C 80 0D AA 10 */ lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A7E0 00286440 7C 7F 1B 78 */ mr r31, r3
@@ -2734,7 +2734,7 @@ lbl_8028A7F4: /* 8028A864 002864C4 3C 80 80 29 */ lis r4, cbForStateCoverClosed@ha
/* 8028A868 002864C8 38 63 6A 40 */ addi r3, r3, lbl_80516A40@l
/* 8028A86C 002864CC 38 84 A8 8C */ addi r4, r4, cbForStateCoverClosed@l
-/* 8028A870 002864D0 48 00 2C 81 */ bl func_8028D4F0
+/* 8028A870 002864D0 48 00 2C 81 */ bl DVDLowReadDiskID
/* 8028A874 002864D4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A878 002864D8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8028A87C 002864DC 83 C1 00 08 */ lwz r30, 8(r1)
@@ -2772,7 +2772,7 @@ lbl_8028A8D8: /* 8028A8E8 00286548 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A8EC 0028654C 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028A8F0 00286550 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A8F4 00286554 48 00 25 55 */ bl func_8028CE48
+/* 8028A8F4 00286554 48 00 25 55 */ bl __DVDStoreErrorCode
/* 8028A8F8 00286558 48 00 00 58 */ b lbl_8028A950
lbl_8028A8FC:
/* 8028A8FC 0028655C 28 1F 00 20 */ cmplwi r31, 0x20
@@ -2781,7 +2781,7 @@ lbl_8028A8FC: /* 8028A908 00286568 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028A90C 0028656C 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 8028A910 00286570 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028A914 00286574 48 00 25 35 */ bl func_8028CE48
+/* 8028A914 00286574 48 00 25 35 */ bl __DVDStoreErrorCode
/* 8028A918 00286578 48 00 00 38 */ b lbl_8028A950
lbl_8028A91C:
/* 8028A91C 0028657C 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
@@ -2797,7 +2797,7 @@ lbl_8028A934: /* 8028A940 002865A0 4B FF D8 4D */ bl StampCommand
/* 8028A944 002865A4 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 8028A948 002865A8 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 8028A94C 002865AC 48 00 35 89 */ bl func_8028DED4
+/* 8028A94C 002865AC 48 00 35 89 */ bl DVDLowRequestError
lbl_8028A950:
/* 8028A950 002865B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028A954 002865B4 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -2814,7 +2814,7 @@ cbForPrepareCoverRegister: /* 8028A97C 002865DC 80 0D AA 38 */ lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028A980 002865E0 2C 00 00 00 */ cmpwi r0, 0
/* 8028A984 002865E4 41 82 00 88 */ beq lbl_8028AA0C
-/* 8028A988 002865E8 48 00 3E 7D */ bl func_8028E804
+/* 8028A988 002865E8 48 00 3E 7D */ bl DVDLowGetCoverRegister
/* 8028A98C 002865EC 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8028A990 002865F0 40 82 01 48 */ bne lbl_8028AAD8
/* 8028A994 002865F4 3C 60 80 51 */ lis r3, lbl_80516A00@ha
@@ -2838,7 +2838,7 @@ lbl_8028A9BC: /* 8028A9D8 00286638 90 03 00 0C */ stw r0, 0xc(r3)
/* 8028A9DC 0028663C 48 00 00 FC */ b lbl_8028AAD8
lbl_8028A9E0:
-/* 8028A9E0 00286640 48 00 3F B1 */ bl func_8028E990
+/* 8028A9E0 00286640 48 00 3F B1 */ bl DVDLowMaskCoverInterrupt
/* 8028A9E4 00286644 80 6D AA 90 */ lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A9E8 00286648 2C 03 00 00 */ cmpwi r3, 0
/* 8028A9EC 0028664C 41 82 00 14 */ beq lbl_8028AA00
@@ -2851,7 +2851,7 @@ lbl_8028AA00: /* 8028AA04 00286664 90 0D AA 24 */ stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028AA08 00286668 48 00 00 D0 */ b lbl_8028AAD8
lbl_8028AA0C:
-/* 8028AA0C 0028666C 48 00 3D F9 */ bl func_8028E804
+/* 8028AA0C 0028666C 48 00 3D F9 */ bl DVDLowGetCoverRegister
/* 8028AA10 00286670 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8028AA14 00286674 41 82 00 3C */ beq lbl_8028AA50
/* 8028AA18 00286678 80 0D AA 70 */ lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
@@ -2870,7 +2870,7 @@ lbl_8028AA40: /* 8028AA48 002866A8 90 03 00 0C */ stw r0, 0xc(r3)
/* 8028AA4C 002866AC 48 00 00 8C */ b lbl_8028AAD8
lbl_8028AA50:
-/* 8028AA50 002866B0 48 00 3D B5 */ bl func_8028E804
+/* 8028AA50 002866B0 48 00 3D B5 */ bl DVDLowGetCoverRegister
/* 8028AA54 002866B4 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8028AA58 002866B8 41 82 00 80 */ beq lbl_8028AAD8
/* 8028AA5C 002866BC 3C 60 80 51 */ lis r3, lbl_80516A00@ha
@@ -2878,7 +2878,7 @@ lbl_8028AA50: /* 8028AA64 002866C4 4B FD F0 15 */ bl OSCancelAlarm
/* 8028AA68 002866C8 93 ED AA 34 */ stw r31, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AA6C 002866CC 38 60 00 00 */ li r3, 0
-/* 8028AA70 002866D0 48 00 3F 29 */ bl func_8028E998
+/* 8028AA70 002866D0 48 00 3F 29 */ bl DVDLowClearCoverInterrupt
/* 8028AA74 002866D4 93 ED AA 38 */ stw r31, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028AA78 002866D8 80 0D AA 84 */ lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028AA7C 002866DC 28 00 00 03 */ cmplwi r0, 3
@@ -2896,7 +2896,7 @@ lbl_8028AA8C: /* 8028AAA8 00286708 90 03 00 0C */ stw r0, 0xc(r3)
/* 8028AAAC 0028670C 48 00 00 2C */ b lbl_8028AAD8
lbl_8028AAB0:
-/* 8028AAB0 00286710 48 00 3E E1 */ bl func_8028E990
+/* 8028AAB0 00286710 48 00 3E E1 */ bl DVDLowMaskCoverInterrupt
/* 8028AAB4 00286714 80 6D AA 90 */ lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AAB8 00286718 2C 03 00 00 */ cmpwi r3, 0
/* 8028AABC 0028671C 41 82 00 14 */ beq lbl_8028AAD0
@@ -2921,7 +2921,7 @@ CoverAlarmHandler: /* 8028AAFC 0028675C 3C 60 80 29 */ lis r3, cbForPrepareCoverRegister@ha
/* 8028AB00 00286760 90 0D AA 44 */ stw r0, lbl_8063FD04-_SDA_BASE_(r13)
/* 8028AB04 00286764 38 63 A9 64 */ addi r3, r3, cbForPrepareCoverRegister@l
-/* 8028AB08 00286768 48 00 3D 0C */ b func_8028E814
+/* 8028AB08 00286768 48 00 3D 0C */ b DVDLowPrepareCoverRegister
/* 8028AB0C 0028676C 4E 80 00 20 */ blr
.global stateReady
@@ -2930,7 +2930,7 @@ stateReady: /* 8028AB14 00286774 7C 08 02 A6 */ mflr r0
/* 8028AB18 00286778 90 01 00 14 */ stw r0, 0x14(r1)
/* 8028AB1C 0028677C 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 8028AB20 00286780 48 00 1F AD */ bl func_8028CACC
+/* 8028AB20 00286780 48 00 1F AD */ bl __DVDCheckWaitingQueue
/* 8028AB24 00286784 2C 03 00 00 */ cmpwi r3, 0
/* 8028AB28 00286788 40 82 00 10 */ bne lbl_8028AB38
/* 8028AB2C 0028678C 38 00 00 00 */ li r0, 0
@@ -2946,7 +2946,7 @@ lbl_8028AB38: /* 8028AB50 002867B0 90 0D AA 90 */ stw r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB54 002867B4 48 00 02 D0 */ b lbl_8028AE24
lbl_8028AB58:
-/* 8028AB58 002867B8 48 00 1E D5 */ bl func_8028CA2C
+/* 8028AB58 002867B8 48 00 1E D5 */ bl __DVDPopWaitingQueue
/* 8028AB5C 002867BC 80 0D AA 1C */ lwz r0, lbl_8063FCDC-_SDA_BASE_(r13)
/* 8028AB60 002867C0 90 6D AA 90 */ stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB64 002867C4 2C 00 00 00 */ cmpwi r0, 0
@@ -3106,7 +3106,7 @@ lbl_8028ADA4: /* 8028ADA4 00286A04 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 8028ADA8 00286A08 80 6D AA 7C */ lwz r3, lbl_8063FD3C-_SDA_BASE_(r13)
/* 8028ADAC 00286A0C 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 8028ADB0 00286A10 48 00 20 99 */ bl func_8028CE48
+/* 8028ADB0 00286A10 48 00 20 99 */ bl __DVDStoreErrorCode
lbl_8028ADB4:
/* 8028ADB4 00286A14 38 00 00 00 */ li r0, 0
/* 8028ADB8 00286A18 90 0D AA 24 */ stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
@@ -3227,13 +3227,13 @@ lbl_8028AF30: /* 8028AF4C 00286BAC 7C 69 03 A6 */ mtctr r3
/* 8028AF50 00286BB0 4E 80 04 20 */ bctr
/* 8028AF54 00286BB4 38 60 00 00 */ li r3, 0
-/* 8028AF58 00286BB8 48 00 3A 41 */ bl func_8028E998
+/* 8028AF58 00286BB8 48 00 3A 41 */ bl DVDLowClearCoverInterrupt
/* 8028AF5C 00286BBC 38 00 00 20 */ li r0, 0x20
/* 8028AF60 00286BC0 3C 80 80 29 */ lis r4, cbForStateBusy@ha
/* 8028AF64 00286BC4 90 1D 00 1C */ stw r0, 0x1c(r29)
/* 8028AF68 00286BC8 38 84 B3 40 */ addi r4, r4, cbForStateBusy@l
/* 8028AF6C 00286BCC 80 7D 00 18 */ lwz r3, 0x18(r29)
-/* 8028AF70 00286BD0 48 00 25 81 */ bl func_8028D4F0
+/* 8028AF70 00286BD0 48 00 25 81 */ bl DVDLowReadDiskID
/* 8028AF74 00286BD4 48 00 03 B4 */ b lbl_8028B328
/* 8028AF78 00286BD8 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 8028AF7C 00286BDC 2C 00 00 00 */ cmpwi r0, 0
@@ -3255,7 +3255,7 @@ lbl_8028AFB4: /* 8028AFB8 00286C18 48 00 03 70 */ b lbl_8028B328
lbl_8028AFBC:
/* 8028AFBC 00286C1C 38 60 00 00 */ li r3, 0
-/* 8028AFC0 00286C20 48 00 39 D9 */ bl func_8028E998
+/* 8028AFC0 00286C20 48 00 39 D9 */ bl DVDLowClearCoverInterrupt
/* 8028AFC4 00286C24 80 7D 00 20 */ lwz r3, 0x20(r29)
/* 8028AFC8 00286C28 3F E0 00 08 */ lis r31, 8
/* 8028AFCC 00286C2C 80 1D 00 14 */ lwz r0, 0x14(r29)
@@ -3311,57 +3311,57 @@ lbl_8028B014: /* 8028B08C 00286CEC 80 9D 00 1C */ lwz r4, 0x1c(r29)
/* 8028B090 00286CF0 7C 63 3A 14 */ add r3, r3, r7
/* 8028B094 00286CF4 7C A5 02 14 */ add r5, r5, r0
-/* 8028B098 00286CF8 48 00 34 41 */ bl func_8028E4D8
+/* 8028B098 00286CF8 48 00 34 41 */ bl DVDLowRead
/* 8028B09C 00286CFC 48 00 02 8C */ b lbl_8028B328
/* 8028B0A0 00286D00 38 60 00 00 */ li r3, 0
-/* 8028B0A4 00286D04 48 00 38 F5 */ bl func_8028E998
+/* 8028B0A4 00286D04 48 00 38 F5 */ bl DVDLowClearCoverInterrupt
/* 8028B0A8 00286D08 3C 80 80 29 */ lis r4, cbForStateBusy@ha
/* 8028B0AC 00286D0C 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 8028B0B0 00286D10 38 84 B3 40 */ addi r4, r4, cbForStateBusy@l
-/* 8028B0B4 00286D14 48 00 35 D5 */ bl func_8028E688
+/* 8028B0B4 00286D14 48 00 35 D5 */ bl DVDLowSeek
/* 8028B0B8 00286D18 48 00 02 70 */ b lbl_8028B328
/* 8028B0BC 00286D1C 3C A0 80 29 */ lis r5, cbForStateBusy@ha
/* 8028B0C0 00286D20 38 60 00 00 */ li r3, 0
/* 8028B0C4 00286D24 38 A5 B3 40 */ addi r5, r5, cbForStateBusy@l
/* 8028B0C8 00286D28 38 80 00 00 */ li r4, 0
-/* 8028B0CC 00286D2C 48 00 2B 0D */ bl func_8028DBD8
+/* 8028B0CC 00286D2C 48 00 2B 0D */ bl DVDLowStopMotor
/* 8028B0D0 00286D30 48 00 02 58 */ b lbl_8028B328
/* 8028B0D4 00286D34 3C A0 80 29 */ lis r5, cbForStateBusy@ha
/* 8028B0D8 00286D38 38 60 00 00 */ li r3, 0
/* 8028B0DC 00286D3C 38 A5 B3 40 */ addi r5, r5, cbForStateBusy@l
/* 8028B0E0 00286D40 38 80 00 00 */ li r4, 0
-/* 8028B0E4 00286D44 48 00 2A F5 */ bl func_8028DBD8
+/* 8028B0E4 00286D44 48 00 2A F5 */ bl DVDLowStopMotor
/* 8028B0E8 00286D48 48 00 02 40 */ b lbl_8028B328
/* 8028B0EC 00286D4C 38 60 00 00 */ li r3, 0
-/* 8028B0F0 00286D50 48 00 38 A9 */ bl func_8028E998
+/* 8028B0F0 00286D50 48 00 38 A9 */ bl DVDLowClearCoverInterrupt
/* 8028B0F4 00286D54 3C A0 80 29 */ lis r5, cbForStateBusy@ha
/* 8028B0F8 00286D58 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 8028B0FC 00286D5C 80 9D 00 14 */ lwz r4, 0x14(r29)
/* 8028B100 00286D60 38 A5 B3 40 */ addi r5, r5, cbForStateBusy@l
-/* 8028B104 00286D64 48 00 30 C1 */ bl func_8028E1C4
+/* 8028B104 00286D64 48 00 30 C1 */ bl DVDLowAudioBufferConfig
/* 8028B108 00286D68 48 00 02 20 */ b lbl_8028B328
/* 8028B10C 00286D6C 38 60 00 00 */ li r3, 0
-/* 8028B110 00286D70 48 00 38 89 */ bl func_8028E998
+/* 8028B110 00286D70 48 00 38 89 */ bl DVDLowClearCoverInterrupt
/* 8028B114 00286D74 38 00 00 20 */ li r0, 0x20
/* 8028B118 00286D78 3C 80 80 29 */ lis r4, cbForStateBusy@ha
/* 8028B11C 00286D7C 90 1D 00 1C */ stw r0, 0x1c(r29)
/* 8028B120 00286D80 38 84 B3 40 */ addi r4, r4, cbForStateBusy@l
/* 8028B124 00286D84 80 7D 00 18 */ lwz r3, 0x18(r29)
-/* 8028B128 00286D88 48 00 2C 45 */ bl func_8028DD6C
+/* 8028B128 00286D88 48 00 2C 45 */ bl DVDLowInquiry
/* 8028B12C 00286D8C 48 00 01 FC */ b lbl_8028B328
/* 8028B130 00286D90 38 60 00 00 */ li r3, 0
-/* 8028B134 00286D94 48 00 38 65 */ bl func_8028E998
+/* 8028B134 00286D94 48 00 38 65 */ bl DVDLowClearCoverInterrupt
/* 8028B138 00286D98 3C A0 80 29 */ lis r5, cbForStateBusy@ha
/* 8028B13C 00286D9C 38 60 00 00 */ li r3, 0
/* 8028B140 00286DA0 38 A5 B3 40 */ addi r5, r5, cbForStateBusy@l
/* 8028B144 00286DA4 38 80 00 00 */ li r4, 0
-/* 8028B148 00286DA8 48 00 2A 91 */ bl func_8028DBD8
+/* 8028B148 00286DA8 48 00 2A 91 */ bl DVDLowStopMotor
/* 8028B14C 00286DAC 48 00 01 DC */ b lbl_8028B328
/* 8028B150 00286DB0 38 60 00 01 */ li r3, 1
-/* 8028B154 00286DB4 48 00 2E E9 */ bl hioEnumCallback
+/* 8028B154 00286DB4 48 00 2E E9 */ bl DVDLowSetSpinupFlag
/* 8028B158 00286DB8 3C 60 80 29 */ lis r3, cbForStateBusy@ha
/* 8028B15C 00286DBC 38 63 B3 40 */ addi r3, r3, cbForStateBusy@l
-/* 8028B160 00286DC0 48 00 2E E9 */ bl func_8028E048
+/* 8028B160 00286DC0 48 00 2E E9 */ bl DVDLowReset
/* 8028B164 00286DC4 48 00 01 C4 */ b lbl_8028B328
/* 8028B168 00286DC8 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 8028B16C 00286DCC 2C 00 00 00 */ cmpwi r0, 0
@@ -3383,7 +3383,7 @@ lbl_8028B1A4: /* 8028B1A8 00286E08 48 00 01 80 */ b lbl_8028B328
lbl_8028B1AC:
/* 8028B1AC 00286E0C 38 60 00 00 */ li r3, 0
-/* 8028B1B0 00286E10 48 00 37 E9 */ bl func_8028E998
+/* 8028B1B0 00286E10 48 00 37 E9 */ bl DVDLowClearCoverInterrupt
/* 8028B1B4 00286E14 80 7D 00 20 */ lwz r3, 0x20(r29)
/* 8028B1B8 00286E18 3F E0 00 08 */ lis r31, 8
/* 8028B1BC 00286E1C 80 1D 00 14 */ lwz r0, 0x14(r29)
@@ -3439,10 +3439,10 @@ lbl_8028B204: /* 8028B27C 00286EDC 80 9D 00 1C */ lwz r4, 0x1c(r29)
/* 8028B280 00286EE0 7C 63 3A 14 */ add r3, r3, r7
/* 8028B284 00286EE4 7C A5 02 14 */ add r5, r5, r0
-/* 8028B288 00286EE8 48 00 27 BD */ bl func_8028DA44
+/* 8028B288 00286EE8 48 00 27 BD */ bl DVDLowUnencryptedRead
/* 8028B28C 00286EEC 48 00 00 9C */ b lbl_8028B328
/* 8028B290 00286EF0 38 60 00 00 */ li r3, 0
-/* 8028B294 00286EF4 48 00 37 05 */ bl func_8028E998
+/* 8028B294 00286EF4 48 00 37 05 */ bl DVDLowClearCoverInterrupt
/* 8028B298 00286EF8 3D 00 80 29 */ lis r8, cbForStateBusy@ha
/* 8028B29C 00286EFC 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 8028B2A0 00286F00 80 FD 00 18 */ lwz r7, 0x18(r29)
@@ -3450,28 +3450,28 @@ lbl_8028B204: /* 8028B2A8 00286F08 38 80 00 00 */ li r4, 0
/* 8028B2AC 00286F0C 38 A0 00 00 */ li r5, 0
/* 8028B2B0 00286F10 38 C0 00 00 */ li r6, 0
-/* 8028B2B4 00286F14 48 00 23 C5 */ bl func_8028D678
+/* 8028B2B4 00286F14 48 00 23 C5 */ bl DVDLowOpenPartition
/* 8028B2B8 00286F18 48 00 00 70 */ b lbl_8028B328
/* 8028B2BC 00286F1C 38 60 00 00 */ li r3, 0
-/* 8028B2C0 00286F20 48 00 36 D9 */ bl func_8028E998
+/* 8028B2C0 00286F20 48 00 36 D9 */ bl DVDLowClearCoverInterrupt
/* 8028B2C4 00286F24 3C 60 80 29 */ lis r3, cbForStateBusy@ha
/* 8028B2C8 00286F28 38 63 B3 40 */ addi r3, r3, cbForStateBusy@l
-/* 8028B2CC 00286F2C 48 00 26 15 */ bl func_8028D8E0
+/* 8028B2CC 00286F2C 48 00 26 15 */ bl DVDLowClosePartition
/* 8028B2D0 00286F30 48 00 00 58 */ b lbl_8028B328
/* 8028B2D4 00286F34 3C 60 80 29 */ lis r3, cbForStateBusy@ha
/* 8028B2D8 00286F38 38 63 B3 40 */ addi r3, r3, cbForStateBusy@l
-/* 8028B2DC 00286F3C 48 00 35 39 */ bl func_8028E814
+/* 8028B2DC 00286F3C 48 00 35 39 */ bl DVDLowPrepareCoverRegister
/* 8028B2E0 00286F40 48 00 00 48 */ b lbl_8028B328
/* 8028B2E4 00286F44 3C 60 80 29 */ lis r3, cbForStateBusy@ha
/* 8028B2E8 00286F48 38 63 B3 40 */ addi r3, r3, cbForStateBusy@l
-/* 8028B2EC 00286F4C 48 00 35 29 */ bl func_8028E814
+/* 8028B2EC 00286F4C 48 00 35 29 */ bl DVDLowPrepareCoverRegister
/* 8028B2F0 00286F50 48 00 00 38 */ b lbl_8028B328
/* 8028B2F4 00286F54 38 60 00 00 */ li r3, 0
-/* 8028B2F8 00286F58 48 00 36 A1 */ bl func_8028E998
+/* 8028B2F8 00286F58 48 00 36 A1 */ bl DVDLowClearCoverInterrupt
/* 8028B2FC 00286F5C 3C 80 80 29 */ lis r4, cbForStateBusy@ha
/* 8028B300 00286F60 3C 60 00 02 */ lis r3, 2
/* 8028B304 00286F64 38 84 B3 40 */ addi r4, r4, cbForStateBusy@l
-/* 8028B308 00286F68 48 00 30 51 */ bl func_8028E358
+/* 8028B308 00286F68 48 00 30 51 */ bl DVDLowSetMaximumRotation
/* 8028B30C 00286F6C 48 00 00 1C */ b lbl_8028B328
lbl_8028B310:
/* 8028B310 00286F70 81 8D 88 C0 */ lwz r12, lbl_8063DB80-_SDA_BASE_(r13)
@@ -3519,7 +3519,7 @@ lbl_8028B390: /* 8028B3A0 00287000 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028B3A4 00287004 38 63 45 68 */ addi r3, r3, 0x01234568@l
/* 8028B3A8 00287008 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028B3AC 0028700C 48 00 1A 9D */ bl func_8028CE48
+/* 8028B3AC 0028700C 48 00 1A 9D */ bl __DVDStoreErrorCode
/* 8028B3B0 00287010 48 00 07 AC */ b lbl_8028BB5C
lbl_8028B3B4:
/* 8028B3B4 00287014 28 1F 00 20 */ cmplwi r31, 0x20
@@ -3528,7 +3528,7 @@ lbl_8028B3B4: /* 8028B3C0 00287020 3C 80 80 29 */ lis r4, cbForStoreErrorCode2@ha
/* 8028B3C4 00287024 38 63 45 69 */ addi r3, r3, 0x01234569@l
/* 8028B3C8 00287028 38 84 87 48 */ addi r4, r4, cbForStoreErrorCode2@l
-/* 8028B3CC 0028702C 48 00 1A 7D */ bl func_8028CE48
+/* 8028B3CC 0028702C 48 00 1A 7D */ bl __DVDStoreErrorCode
/* 8028B3D0 00287030 48 00 07 8C */ b lbl_8028BB5C
lbl_8028B3D4:
/* 8028B3D4 00287034 80 0D AA 84 */ lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
@@ -3544,7 +3544,7 @@ lbl_8028B3EC: /* 8028B3F8 00287058 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 8028B3FC 0028705C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 8028B400 00287060 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 8028B404 00287064 48 00 1A 45 */ bl func_8028CE48
+/* 8028B404 00287064 48 00 1A 45 */ bl __DVDStoreErrorCode
/* 8028B408 00287068 48 00 07 54 */ b lbl_8028BB5C
lbl_8028B40C:
/* 8028B40C 0028706C 38 00 00 00 */ li r0, 0
@@ -3787,7 +3787,7 @@ lbl_8028B758: /* 8028B760 002873C0 80 0D AA 84 */ lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B764 002873C4 28 00 00 26 */ cmplwi r0, 0x26
/* 8028B768 002873C8 40 82 00 AC */ bne lbl_8028B814
-/* 8028B76C 002873CC 48 00 30 99 */ bl func_8028E804
+/* 8028B76C 002873CC 48 00 30 99 */ bl DVDLowGetCoverRegister
/* 8028B770 002873D0 7C 7F 1B 78 */ mr r31, r3
/* 8028B774 002873D4 4B FE 70 65 */ bl __OSGetSystemTime
/* 8028B778 002873D8 3C C0 80 00 */ lis r6, 0x800000F8@ha
@@ -3836,7 +3836,7 @@ lbl_8028B814: /* 8028B814 00287474 80 0D AA 84 */ lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B818 00287478 28 00 00 24 */ cmplwi r0, 0x24
/* 8028B81C 0028747C 40 82 00 64 */ bne lbl_8028B880
-/* 8028B820 00287480 48 00 2F E5 */ bl func_8028E804
+/* 8028B820 00287480 48 00 2F E5 */ bl DVDLowGetCoverRegister
/* 8028B824 00287484 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f
/* 8028B828 00287488 40 82 00 0C */ bne lbl_8028B834
/* 8028B82C 0028748C 54 60 07 FF */ clrlwi. r0, r3, 0x1f
@@ -3948,11 +3948,11 @@ lbl_8028B984: /* 8028B990 002875F0 38 03 FF F6 */ addi r0, r3, -10
/* 8028B994 002875F4 28 00 00 01 */ cmplwi r0, 1
/* 8028B998 002875F8 41 81 00 10 */ bgt lbl_8028B9A8
-/* 8028B99C 002875FC 48 00 2F E1 */ bl func_8028E97C
+/* 8028B99C 002875FC 48 00 2F E1 */ bl DVDLowGetImmBufferReg
/* 8028B9A0 00287600 54 63 10 3A */ slwi r3, r3, 2
/* 8028B9A4 00287604 48 00 00 08 */ b lbl_8028B9AC
lbl_8028B9A8:
-/* 8028B9A8 00287608 48 00 2F D5 */ bl func_8028E97C
+/* 8028B9A8 00287608 48 00 2F D5 */ bl DVDLowGetImmBufferReg
lbl_8028B9AC:
/* 8028B9AC 0028760C 3C A0 80 51 */ lis r5, lbl_805169A0@ha
/* 8028B9B0 00287610 80 8D AA 90 */ lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
@@ -3992,7 +3992,7 @@ lbl_8028BA18: /* 8028BA28 00287688 3C 80 80 29 */ lis r4, cbForStoreErrorCode1@ha
/* 8028BA2C 0028768C 38 63 45 67 */ addi r3, r3, 0x01234567@l
/* 8028BA30 00287690 38 84 87 34 */ addi r4, r4, cbForStoreErrorCode1@l
-/* 8028BA34 00287694 48 00 14 15 */ bl func_8028CE48
+/* 8028BA34 00287694 48 00 14 15 */ bl __DVDStoreErrorCode
/* 8028BA38 00287698 48 00 01 24 */ b lbl_8028BB5C
lbl_8028BA3C:
/* 8028BA3C 0028769C 80 0D AA 84 */ lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
@@ -4073,7 +4073,7 @@ lbl_8028BB40: /* 8028BB4C 002877AC 4B FF C6 41 */ bl StampCommand
/* 8028BB50 002877B0 3C 60 80 29 */ lis r3, cbForStateGettingError@ha
/* 8028BB54 002877B4 38 63 89 3C */ addi r3, r3, cbForStateGettingError@l
-/* 8028BB58 002877B8 48 00 23 7D */ bl func_8028DED4
+/* 8028BB58 002877B8 48 00 23 7D */ bl DVDLowRequestError
lbl_8028BB5C:
/* 8028BB5C 002877BC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8028BB60 002877C0 83 E1 00 0C */ lwz r31, 0xc(r1)
@@ -4124,7 +4124,7 @@ lbl_8028BBF4: /* 8028BC00 00287860 90 1D 00 0C */ stw r0, 0xc(r29)
/* 8028BC04 00287864 7F E3 FB 78 */ mr r3, r31
/* 8028BC08 00287868 7F A4 EB 78 */ mr r4, r29
-/* 8028BC0C 0028786C 48 00 0D B9 */ bl func_8028C9C4
+/* 8028BC0C 0028786C 48 00 0D B9 */ bl __DVDPushWaitingQueue
/* 8028BC10 00287870 80 0D AA 90 */ lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BC14 00287874 7C 7F 1B 78 */ mr r31, r3
/* 8028BC18 00287878 2C 00 00 00 */ cmpwi r0, 0
@@ -4183,7 +4183,7 @@ lbl_8028BCC8: /* 8028BCD4 00287934 90 1D 00 0C */ stw r0, 0xc(r29)
/* 8028BCD8 00287938 7F E3 FB 78 */ mr r3, r31
/* 8028BCDC 0028793C 7F A4 EB 78 */ mr r4, r29
-/* 8028BCE0 00287940 48 00 0C E5 */ bl func_8028C9C4
+/* 8028BCE0 00287940 48 00 0C E5 */ bl __DVDPushWaitingQueue
/* 8028BCE4 00287944 80 0D AA 90 */ lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BCE8 00287948 7C 7F 1B 78 */ mr r31, r3
/* 8028BCEC 0028794C 2C 00 00 00 */ cmpwi r0, 0
@@ -4244,7 +4244,7 @@ lbl_8028BDA4: /* 8028BDB0 00287A10 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8028BDB4 00287A14 7F E4 FB 78 */ mr r4, r31
/* 8028BDB8 00287A18 38 60 00 02 */ li r3, 2
-/* 8028BDBC 00287A1C 48 00 0C 09 */ bl func_8028C9C4
+/* 8028BDBC 00287A1C 48 00 0C 09 */ bl __DVDPushWaitingQueue
/* 8028BDC0 00287A20 80 0D AA 90 */ lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BDC4 00287A24 7C 7F 1B 78 */ mr r31, r3
/* 8028BDC8 00287A28 2C 00 00 00 */ cmpwi r0, 0
@@ -4292,7 +4292,7 @@ lbl_8028BE50: /* 8028BE58 00287AB8 3B FF B4 F0 */ addi r31, r31, lbl_8051B4F0@l
/* 8028BE5C 00287ABC 7C 00 F8 40 */ cmplw r0, r31
/* 8028BE60 00287AC0 40 82 00 40 */ bne lbl_8028BEA0
-/* 8028BE64 00287AC4 48 00 0C C1 */ bl func_8028CB24
+/* 8028BE64 00287AC4 48 00 0C C1 */ bl __DVDGetNextWaitingQueue
/* 8028BE68 00287AC8 2C 03 00 00 */ cmpwi r3, 0
/* 8028BE6C 00287ACC 41 82 00 1C */ beq lbl_8028BE88
/* 8028BE70 00287AD0 7C 1D 18 40 */ cmplw r29, r3
@@ -4457,7 +4457,7 @@ lbl_8028C080: /* 8028C084 00287CE4 90 0D AA 30 */ stw r0, lbl_8063FCF0-_SDA_BASE_(r13)
/* 8028C088 00287CE8 48 00 02 6C */ b lbl_8028C2F4
/* 8028C08C 00287CEC 7F A3 EB 78 */ mr r3, r29
-/* 8028C090 00287CF0 48 00 0A F5 */ bl func_8028CB84
+/* 8028C090 00287CF0 48 00 0A F5 */ bl __DVDDequeueWaitingQueue
/* 8028C094 00287CF4 81 9D 00 28 */ lwz r12, 0x28(r29)
/* 8028C098 00287CF8 38 00 00 0A */ li r0, 0xa
/* 8028C09C 00287CFC 90 1D 00 0C */ stw r0, 0xc(r29)
@@ -4723,7 +4723,7 @@ __DVDGetCoverStatus: /* 8028C414 00288074 38 63 C3 F8 */ addi r3, r3, __BS2DVDLowCallback@l
/* 8028C418 00288078 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8028C41C 0028807C 90 0D AA 50 */ stw r0, lbl_8063FD10-_SDA_BASE_(r13)
-/* 8028C420 00288080 48 00 23 F5 */ bl func_8028E814
+/* 8028C420 00288080 48 00 23 F5 */ bl DVDLowPrepareCoverRegister
lbl_8028C424:
/* 8028C424 00288084 80 0D AA 50 */ lwz r0, lbl_8063FD10-_SDA_BASE_(r13)
/* 8028C428 00288088 2C 00 00 00 */ cmpwi r0, 0
@@ -4734,7 +4734,7 @@ lbl_8028C424: /* 8028C43C 0028809C 38 60 00 00 */ li r3, 0
/* 8028C440 002880A0 48 00 00 74 */ b lbl_8028C4B4
lbl_8028C444:
-/* 8028C444 002880A4 48 00 23 C1 */ bl func_8028E804
+/* 8028C444 002880A4 48 00 23 C1 */ bl DVDLowGetCoverRegister
/* 8028C448 002880A8 7C 7F 1B 78 */ mr r31, r3
/* 8028C44C 002880AC 4B FE 63 8D */ bl __OSGetSystemTime
/* 8028C450 002880B0 3C C0 80 00 */ lis r6, 0x800000F8@ha
@@ -4912,7 +4912,7 @@ lbl_8028C69C: /* 8028C6A8 00288308 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8028C6AC 0028830C 7F E4 FB 78 */ mr r4, r31
/* 8028C6B0 00288310 38 60 00 02 */ li r3, 2
-/* 8028C6B4 00288314 48 00 03 11 */ bl func_8028C9C4
+/* 8028C6B4 00288314 48 00 03 11 */ bl __DVDPushWaitingQueue
/* 8028C6B8 00288318 80 0D AA 90 */ lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C6BC 0028831C 7C 7D 1B 78 */ mr r29, r3
/* 8028C6C0 00288320 2C 00 00 00 */ cmpwi r0, 0
@@ -4946,7 +4946,7 @@ __DVDPrepareResetAsync: /* 8028C71C 0028837C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8028C720 00288380 4B FE 20 3D */ bl OSDisableInterrupts
/* 8028C724 00288384 7C 7D 1B 78 */ mr r29, r3
-/* 8028C728 00288388 48 00 02 65 */ bl func_8028C98C
+/* 8028C728 00288388 48 00 02 65 */ bl __DVDClearWaitingQueue
/* 8028C72C 0028838C 80 0D AA 20 */ lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C730 00288390 2C 00 00 00 */ cmpwi r0, 0
/* 8028C734 00288394 41 82 00 0C */ beq lbl_8028C740
@@ -4975,7 +4975,7 @@ lbl_8028C780: /* 8028C780 002883E0 38 80 00 00 */ li r4, 0
/* 8028C784 002883E4 4B FF F8 45 */ bl DVDCancelAsync
lbl_8028C788:
-/* 8028C788 002883E8 48 00 02 A5 */ bl func_8028CA2C
+/* 8028C788 002883E8 48 00 02 A5 */ bl __DVDPopWaitingQueue
/* 8028C78C 002883EC 2C 03 00 00 */ cmpwi r3, 0
/* 8028C790 002883F0 40 82 FF F0 */ bne lbl_8028C780
/* 8028C794 002883F4 80 6D AA 90 */ lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
@@ -5035,7 +5035,7 @@ __DVDPrepareReset: /* 8028C84C 002884AC 93 ED AA 54 */ stw r31, lbl_8063FD14-_SDA_BASE_(r13)
/* 8028C850 002884B0 4B FE 1F 0D */ bl OSDisableInterrupts
/* 8028C854 002884B4 7C 7D 1B 78 */ mr r29, r3
-/* 8028C858 002884B8 48 00 01 35 */ bl func_8028C98C
+/* 8028C858 002884B8 48 00 01 35 */ bl __DVDClearWaitingQueue
/* 8028C85C 002884BC 80 0D AA 20 */ lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C860 002884C0 2C 00 00 00 */ cmpwi r0, 0
/* 8028C864 002884C4 41 82 00 14 */ beq lbl_8028C878
@@ -5065,7 +5065,7 @@ lbl_8028C8B4: /* 8028C8B4 00288514 38 80 00 00 */ li r4, 0
/* 8028C8B8 00288518 4B FF F7 11 */ bl DVDCancelAsync
lbl_8028C8BC:
-/* 8028C8BC 0028851C 48 00 01 71 */ bl func_8028CA2C
+/* 8028C8BC 0028851C 48 00 01 71 */ bl __DVDPopWaitingQueue
/* 8028C8C0 00288520 2C 03 00 00 */ cmpwi r3, 0
/* 8028C8C4 00288524 40 82 FF F0 */ bne lbl_8028C8B4
/* 8028C8C8 00288528 80 6D AA 90 */ lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
@@ -5121,7 +5121,7 @@ __DVDTestAlarm: /* 8028C970 002885D0 38 60 00 01 */ li r3, 1
/* 8028C974 002885D4 4E 80 00 20 */ blr
lbl_8028C978:
-/* 8028C978 002885D8 48 00 21 84 */ b lbl_8028EAFC
+/* 8028C978 002885D8 48 00 21 84 */ b __DVDLowTestAlarm
/* 8028C97C 002885DC 4E 80 00 20 */ blr
.global __DVDStopMotorAsync
diff --git a/asm/SDK/DVD/dvdFatal.s b/asm/SDK/DVD/dvdFatal.s new file mode 100644 index 0000000..e4ab30d --- /dev/null +++ b/asm/SDK/DVD/dvdFatal.s @@ -0,0 +1,98 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+__DVDShowFatalMessage:
+/* 8028CFDC 00288C3C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8028CFE0 00288C40 7C 08 02 A6 */ mflr r0
+/* 8028CFE4 00288C44 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8028CFE8 00288C48 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8028CFEC 00288C4C 3B E0 00 00 */ li r31, 0
+/* 8028CFF0 00288C50 88 A2 A2 10 */ lbz r5, lbl_80642810-_SDA2_BASE_(r2)
+/* 8028CFF4 00288C54 88 82 A2 11 */ lbz r4, lbl_80642811-_SDA2_BASE_(r2)
+/* 8028CFF8 00288C58 88 62 A2 12 */ lbz r3, lbl_80642812-_SDA2_BASE_(r2)
+/* 8028CFFC 00288C5C 88 02 A2 13 */ lbz r0, lbl_80642813-_SDA2_BASE_(r2)
+/* 8028D000 00288C60 98 A1 00 10 */ stb r5, 0x10(r1)
+/* 8028D004 00288C64 98 81 00 11 */ stb r4, 0x11(r1)
+/* 8028D008 00288C68 98 61 00 12 */ stb r3, 0x12(r1)
+/* 8028D00C 00288C6C 98 01 00 13 */ stb r0, 0x13(r1)
+/* 8028D010 00288C70 48 05 F4 39 */ bl func_802EC448
+/* 8028D014 00288C74 54 60 06 3F */ clrlwi. r0, r3, 0x18
+/* 8028D018 00288C78 40 82 00 10 */ bne lbl_8028D028
+/* 8028D01C 00288C7C 38 60 00 01 */ li r3, 1
+/* 8028D020 00288C80 4B FE 0D 4D */ bl OSSetFontEncode
+/* 8028D024 00288C84 48 00 00 0C */ b lbl_8028D030
+lbl_8028D028:
+/* 8028D028 00288C88 38 60 00 00 */ li r3, 0
+/* 8028D02C 00288C8C 4B FE 0D 41 */ bl OSSetFontEncode
+lbl_8028D030:
+/* 8028D030 00288C90 48 05 F4 19 */ bl func_802EC448
+/* 8028D034 00288C94 54 60 06 3E */ clrlwi r0, r3, 0x18
+/* 8028D038 00288C98 28 00 00 06 */ cmplwi r0, 6
+/* 8028D03C 00288C9C 40 81 00 14 */ ble lbl_8028D050
+/* 8028D040 00288CA0 3C 60 80 40 */ lis r3, lbl_803FD9B8@ha
+/* 8028D044 00288CA4 38 63 D9 B8 */ addi r3, r3, lbl_803FD9B8@l
+/* 8028D048 00288CA8 80 A3 00 04 */ lwz r5, 4(r3)
+/* 8028D04C 00288CAC 48 00 00 18 */ b lbl_8028D064
+lbl_8028D050:
+/* 8028D050 00288CB0 48 05 F3 F9 */ bl func_802EC448
+/* 8028D054 00288CB4 3C 80 80 40 */ lis r4, lbl_803FD9B8@ha
+/* 8028D058 00288CB8 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d
+/* 8028D05C 00288CBC 38 84 D9 B8 */ addi r4, r4, lbl_803FD9B8@l
+/* 8028D060 00288CC0 7C A4 00 2E */ lwzx r5, r4, r0
+lbl_8028D064:
+/* 8028D064 00288CC4 80 01 00 10 */ lwz r0, 0x10(r1)
+/* 8028D068 00288CC8 38 61 00 0C */ addi r3, r1, 0xc
+/* 8028D06C 00288CCC 93 E1 00 08 */ stw r31, 8(r1)
+/* 8028D070 00288CD0 38 81 00 08 */ addi r4, r1, 8
+/* 8028D074 00288CD4 90 01 00 0C */ stw r0, 0xc(r1)
+/* 8028D078 00288CD8 4B FE 02 19 */ bl OSFatal
+/* 8028D07C 00288CDC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8028D080 00288CE0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8028D084 00288CE4 7C 08 03 A6 */ mtlr r0
+/* 8028D088 00288CE8 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028D08C 00288CEC 4E 80 00 20 */ blr
+
+.global DVDSetAutoFatalMessaging
+DVDSetAutoFatalMessaging:
+/* 8028D090 00288CF0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028D094 00288CF4 7C 08 02 A6 */ mflr r0
+/* 8028D098 00288CF8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028D09C 00288CFC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028D0A0 00288D00 7C 7F 1B 78 */ mr r31, r3
+/* 8028D0A4 00288D04 4B FE 16 B9 */ bl OSDisableInterrupts
+/* 8028D0A8 00288D08 80 AD AA A0 */ lwz r5, lbl_8063FD60-_SDA_BASE_(r13)
+/* 8028D0AC 00288D0C 2C 1F 00 00 */ cmpwi r31, 0
+/* 8028D0B0 00288D10 38 80 00 00 */ li r4, 0
+/* 8028D0B4 00288D14 7C 05 00 D0 */ neg r0, r5
+/* 8028D0B8 00288D18 7C 00 2B 78 */ or r0, r0, r5
+/* 8028D0BC 00288D1C 54 1F 0F FE */ srwi r31, r0, 0x1f
+/* 8028D0C0 00288D20 41 82 00 0C */ beq lbl_8028D0CC
+/* 8028D0C4 00288D24 3C 80 80 29 */ lis r4, __DVDShowFatalMessage@ha
+/* 8028D0C8 00288D28 38 84 CF DC */ addi r4, r4, __DVDShowFatalMessage@l
+lbl_8028D0CC:
+/* 8028D0CC 00288D2C 90 8D AA A0 */ stw r4, lbl_8063FD60-_SDA_BASE_(r13)
+/* 8028D0D0 00288D30 4B FE 16 B5 */ bl OSRestoreInterrupts
+/* 8028D0D4 00288D34 7F E3 FB 78 */ mr r3, r31
+/* 8028D0D8 00288D38 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028D0DC 00288D3C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028D0E0 00288D40 7C 08 03 A6 */ mtlr r0
+/* 8028D0E4 00288D44 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028D0E8 00288D48 4E 80 00 20 */ blr
+
+.global __DVDGetAutoFatalMessaging
+__DVDGetAutoFatalMessaging:
+/* 8028D0EC 00288D4C 80 6D AA A0 */ lwz r3, lbl_8063FD60-_SDA_BASE_(r13)
+/* 8028D0F0 00288D50 7C 03 00 D0 */ neg r0, r3
+/* 8028D0F4 00288D54 7C 00 1B 78 */ or r0, r0, r3
+/* 8028D0F8 00288D58 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 8028D0FC 00288D5C 4E 80 00 20 */ blr
+
+.global __DVDPrintFatalMessage
+__DVDPrintFatalMessage:
+/* 8028D100 00288D60 81 8D AA A0 */ lwz r12, lbl_8063FD60-_SDA_BASE_(r13)
+/* 8028D104 00288D64 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028D108 00288D68 4D 82 00 20 */ beqlr
+/* 8028D10C 00288D6C 7D 89 03 A6 */ mtctr r12
+/* 8028D110 00288D70 4E 80 04 20 */ bctr
+/* 8028D114 00288D74 4E 80 00 20 */ blr
diff --git a/asm/SDK/DVD/dvd_broadway.s b/asm/SDK/DVD/dvd_broadway.s new file mode 100644 index 0000000..1898c16 --- /dev/null +++ b/asm/SDK/DVD/dvd_broadway.s @@ -0,0 +1,1874 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+doTransactionCallback:
+/* 8028D118 00288D78 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028D11C 00288D7C 7C 08 02 A6 */ mflr r0
+/* 8028D120 00288D80 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028D124 00288D84 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028D128 00288D88 7C 9F 23 78 */ mr r31, r4
+/* 8028D12C 00288D8C 80 A4 00 0C */ lwz r5, 0xc(r4)
+/* 8028D130 00288D90 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028D134 00288D94 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028D138 00288D98 41 82 00 24 */ beq lbl_8028D15C
+/* 8028D13C 00288D9C 3C 60 80 43 */ lis r3, lbl_804366A0@ha
+/* 8028D140 00288DA0 38 63 66 A0 */ addi r3, r3, lbl_804366A0@l
+/* 8028D144 00288DA4 4C C6 31 82 */ crclr 6
+/* 8028D148 00288DA8 4B D7 A9 7D */ bl func_80007AC4
+/* 8028D14C 00288DAC 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha
+/* 8028D150 00288DB0 38 03 DA ED */ addi r0, r3, 0xFEEBDAED@l
+/* 8028D154 00288DB4 90 1F 00 0C */ stw r0, 0xc(r31)
+/* 8028D158 00288DB8 48 00 00 58 */ b lbl_8028D1B0
+lbl_8028D15C:
+/* 8028D15C 00288DBC 38 C0 00 00 */ li r6, 0
+/* 8028D160 00288DC0 98 CD AA A8 */ stb r6, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028D164 00288DC4 80 04 00 00 */ lwz r0, 0(r4)
+/* 8028D168 00288DC8 2C 00 00 00 */ cmpwi r0, 0
+/* 8028D16C 00288DCC 41 82 00 44 */ beq lbl_8028D1B0
+/* 8028D170 00288DD0 88 0D AA C8 */ lbz r0, lbl_8063FD88-_SDA_BASE_(r13)
+/* 8028D174 00288DD4 38 A0 00 01 */ li r5, 1
+/* 8028D178 00288DD8 98 AD AA A9 */ stb r5, lbl_8063FD69-_SDA_BASE_(r13)
+/* 8028D17C 00288DDC 28 00 00 01 */ cmplwi r0, 1
+/* 8028D180 00288DE0 40 82 00 0C */ bne lbl_8028D18C
+/* 8028D184 00288DE4 98 CD AA C8 */ stb r6, lbl_8063FD88-_SDA_BASE_(r13)
+/* 8028D188 00288DE8 60 63 00 08 */ ori r3, r3, 8
+lbl_8028D18C:
+/* 8028D18C 00288DEC 54 60 07 FF */ clrlwi. r0, r3, 0x1f
+/* 8028D190 00288DF0 41 82 00 0C */ beq lbl_8028D19C
+/* 8028D194 00288DF4 38 00 00 00 */ li r0, 0
+/* 8028D198 00288DF8 90 0D AA BC */ stw r0, lbl_8063FD7C-_SDA_BASE_(r13)
+lbl_8028D19C:
+/* 8028D19C 00288DFC 81 84 00 00 */ lwz r12, 0(r4)
+/* 8028D1A0 00288E00 7D 89 03 A6 */ mtctr r12
+/* 8028D1A4 00288E04 4E 80 04 21 */ bctrl
+/* 8028D1A8 00288E08 38 00 00 00 */ li r0, 0
+/* 8028D1AC 00288E0C 98 0D AA A9 */ stb r0, lbl_8063FD69-_SDA_BASE_(r13)
+lbl_8028D1B0:
+/* 8028D1B0 00288E10 38 00 00 00 */ li r0, 0
+/* 8028D1B4 00288E14 38 60 00 00 */ li r3, 0
+/* 8028D1B8 00288E18 98 1F 00 08 */ stb r0, 8(r31)
+/* 8028D1BC 00288E1C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028D1C0 00288E20 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028D1C4 00288E24 7C 08 03 A6 */ mtlr r0
+/* 8028D1C8 00288E28 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028D1CC 00288E2C 4E 80 00 20 */ blr
+
+doPrepareCoverRegisterCallback:
+/* 8028D1D0 00288E30 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028D1D4 00288E34 7C 08 02 A6 */ mflr r0
+/* 8028D1D8 00288E38 3C A0 80 52 */ lis r5, lbl_8051B7E0@ha
+/* 8028D1DC 00288E3C 3C C0 80 52 */ lis r6, lbl_8051B800@ha
+/* 8028D1E0 00288E40 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028D1E4 00288E44 38 A5 B7 E0 */ addi r5, r5, lbl_8051B7E0@l
+/* 8028D1E8 00288E48 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028D1EC 00288E4C 7C 9F 23 78 */ mr r31, r4
+/* 8028D1F0 00288E50 80 06 B8 00 */ lwz r0, lbl_8051B800@l(r6)
+/* 8028D1F4 00288E54 38 C0 00 00 */ li r6, 0
+/* 8028D1F8 00288E58 98 CD AA A8 */ stb r6, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028D1FC 00288E5C 90 05 00 04 */ stw r0, 4(r5)
+/* 8028D200 00288E60 80 A4 00 0C */ lwz r5, 0xc(r4)
+/* 8028D204 00288E64 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028D208 00288E68 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028D20C 00288E6C 41 82 00 24 */ beq lbl_8028D230
+/* 8028D210 00288E70 3C 60 80 43 */ lis r3, lbl_804366A0@ha
+/* 8028D214 00288E74 38 63 66 A0 */ addi r3, r3, lbl_804366A0@l
+/* 8028D218 00288E78 4C C6 31 82 */ crclr 6
+/* 8028D21C 00288E7C 4B D7 A8 A9 */ bl func_80007AC4
+/* 8028D220 00288E80 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha
+/* 8028D224 00288E84 38 03 DA ED */ addi r0, r3, 0xFEEBDAED@l
+/* 8028D228 00288E88 90 1F 00 0C */ stw r0, 0xc(r31)
+/* 8028D22C 00288E8C 48 00 00 40 */ b lbl_8028D26C
+lbl_8028D230:
+/* 8028D230 00288E90 80 04 00 00 */ lwz r0, 0(r4)
+/* 8028D234 00288E94 2C 00 00 00 */ cmpwi r0, 0
+/* 8028D238 00288E98 41 82 00 34 */ beq lbl_8028D26C
+/* 8028D23C 00288E9C 88 0D AA C8 */ lbz r0, lbl_8063FD88-_SDA_BASE_(r13)
+/* 8028D240 00288EA0 38 A0 00 01 */ li r5, 1
+/* 8028D244 00288EA4 98 AD AA A9 */ stb r5, lbl_8063FD69-_SDA_BASE_(r13)
+/* 8028D248 00288EA8 28 00 00 01 */ cmplwi r0, 1
+/* 8028D24C 00288EAC 40 82 00 0C */ bne lbl_8028D258
+/* 8028D250 00288EB0 98 CD AA C8 */ stb r6, lbl_8063FD88-_SDA_BASE_(r13)
+/* 8028D254 00288EB4 60 63 00 08 */ ori r3, r3, 8
+lbl_8028D258:
+/* 8028D258 00288EB8 81 84 00 00 */ lwz r12, 0(r4)
+/* 8028D25C 00288EBC 7D 89 03 A6 */ mtctr r12
+/* 8028D260 00288EC0 4E 80 04 21 */ bctrl
+/* 8028D264 00288EC4 38 00 00 00 */ li r0, 0
+/* 8028D268 00288EC8 98 0D AA A9 */ stb r0, lbl_8063FD69-_SDA_BASE_(r13)
+lbl_8028D26C:
+/* 8028D26C 00288ECC 38 00 00 00 */ li r0, 0
+/* 8028D270 00288ED0 38 60 00 00 */ li r3, 0
+/* 8028D274 00288ED4 98 1F 00 08 */ stb r0, 8(r31)
+/* 8028D278 00288ED8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028D27C 00288EDC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028D280 00288EE0 7C 08 03 A6 */ mtlr r0
+/* 8028D284 00288EE4 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028D288 00288EE8 4E 80 00 20 */ blr
+
+.global DVDLowInit
+DVDLowInit:
+/* 8028D28C 00288EEC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028D290 00288EF0 7C 08 02 A6 */ mflr r0
+/* 8028D294 00288EF4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028D298 00288EF8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028D29C 00288EFC 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028D2A0 00288F00 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028D2A4 00288F04 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028D2A8 00288F08 88 0D AA B5 */ lbz r0, lbl_8063FD75-_SDA_BASE_(r13)
+/* 8028D2AC 00288F0C 2C 00 00 00 */ cmpwi r0, 0
+/* 8028D2B0 00288F10 40 82 01 84 */ bne lbl_8028D434
+/* 8028D2B4 00288F14 38 00 00 01 */ li r0, 1
+/* 8028D2B8 00288F18 98 0D AA B5 */ stb r0, lbl_8063FD75-_SDA_BASE_(r13)
+/* 8028D2BC 00288F1C 48 01 5A 85 */ bl func_802A2D40
+/* 8028D2C0 00288F20 2C 03 00 00 */ cmpwi r3, 0
+/* 8028D2C4 00288F24 41 82 00 1C */ beq lbl_8028D2E0
+/* 8028D2C8 00288F28 7C 64 1B 78 */ mr r4, r3
+/* 8028D2CC 00288F2C 38 7F 00 60 */ addi r3, r31, 0x60
+/* 8028D2D0 00288F30 4C C6 31 82 */ crclr 6
+/* 8028D2D4 00288F34 4B D7 A7 F1 */ bl func_80007AC4
+/* 8028D2D8 00288F38 38 60 00 00 */ li r3, 0
+/* 8028D2DC 00288F3C 48 00 01 FC */ b lbl_8028D4D8
+lbl_8028D2E0:
+/* 8028D2E0 00288F40 48 01 56 15 */ bl func_802A28F4
+/* 8028D2E4 00288F44 7C 7E 1B 78 */ mr r30, r3
+/* 8028D2E8 00288F48 48 01 56 05 */ bl func_802A28EC
+/* 8028D2EC 00288F4C 57 C0 06 FF */ clrlwi. r0, r30, 0x1b
+/* 8028D2F0 00288F50 41 82 00 0C */ beq lbl_8028D2FC
+/* 8028D2F4 00288F54 38 1E 00 1F */ addi r0, r30, 0x1f
+/* 8028D2F8 00288F58 54 1E 06 FE */ clrlwi r30, r0, 0x1b
+lbl_8028D2FC:
+/* 8028D2FC 00288F5C 38 1E 00 80 */ addi r0, r30, 0x80
+/* 8028D300 00288F60 7C 00 18 40 */ cmplw r0, r3
+/* 8028D304 00288F64 40 81 00 14 */ ble lbl_8028D318
+/* 8028D308 00288F68 38 7F 00 80 */ addi r3, r31, 0x80
+/* 8028D30C 00288F6C 38 80 00 80 */ li r4, 0x80
+/* 8028D310 00288F70 4C C6 31 82 */ crclr 6
+/* 8028D314 00288F74 4B D7 A7 B1 */ bl func_80007AC4
+lbl_8028D318:
+/* 8028D318 00288F78 38 7E 00 80 */ addi r3, r30, 0x80
+/* 8028D31C 00288F7C 48 01 55 E1 */ bl func_802A28FC
+/* 8028D320 00288F80 2C 1E 00 00 */ cmpwi r30, 0
+/* 8028D324 00288F84 93 CD AA C4 */ stw r30, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D328 00288F88 40 82 00 18 */ bne lbl_8028D340
+/* 8028D32C 00288F8C 38 7F 00 BC */ addi r3, r31, 0xbc
+/* 8028D330 00288F90 4C C6 31 82 */ crclr 6
+/* 8028D334 00288F94 4B D7 A7 91 */ bl func_80007AC4
+/* 8028D338 00288F98 38 00 00 00 */ li r0, 0
+/* 8028D33C 00288F9C 48 00 00 68 */ b lbl_8028D3A4
+lbl_8028D340:
+/* 8028D340 00288FA0 48 01 55 B5 */ bl func_802A28F4
+/* 8028D344 00288FA4 7C 7E 1B 78 */ mr r30, r3
+/* 8028D348 00288FA8 48 01 55 A5 */ bl func_802A28EC
+/* 8028D34C 00288FAC 57 C0 06 FF */ clrlwi. r0, r30, 0x1b
+/* 8028D350 00288FB0 41 82 00 0C */ beq lbl_8028D35C
+/* 8028D354 00288FB4 38 1E 00 1F */ addi r0, r30, 0x1f
+/* 8028D358 00288FB8 54 1E 06 FE */ clrlwi r30, r0, 0x1b
+lbl_8028D35C:
+/* 8028D35C 00288FBC 38 1E 00 20 */ addi r0, r30, 0x20
+/* 8028D360 00288FC0 7C 00 18 40 */ cmplw r0, r3
+/* 8028D364 00288FC4 40 81 00 14 */ ble lbl_8028D378
+/* 8028D368 00288FC8 38 7F 00 80 */ addi r3, r31, 0x80
+/* 8028D36C 00288FCC 38 80 00 20 */ li r4, 0x20
+/* 8028D370 00288FD0 4C C6 31 82 */ crclr 6
+/* 8028D374 00288FD4 4B D7 A7 51 */ bl func_80007AC4
+lbl_8028D378:
+/* 8028D378 00288FD8 38 7E 00 20 */ addi r3, r30, 0x20
+/* 8028D37C 00288FDC 48 01 55 81 */ bl func_802A28FC
+/* 8028D380 00288FE0 2C 1E 00 00 */ cmpwi r30, 0
+/* 8028D384 00288FE4 93 CD AA C0 */ stw r30, lbl_8063FD80-_SDA_BASE_(r13)
+/* 8028D388 00288FE8 40 82 00 18 */ bne lbl_8028D3A0
+/* 8028D38C 00288FEC 38 7F 00 E4 */ addi r3, r31, 0xe4
+/* 8028D390 00288FF0 4C C6 31 82 */ crclr 6
+/* 8028D394 00288FF4 4B D7 A7 31 */ bl func_80007AC4
+/* 8028D398 00288FF8 38 00 00 00 */ li r0, 0
+/* 8028D39C 00288FFC 48 00 00 08 */ b lbl_8028D3A4
+lbl_8028D3A0:
+/* 8028D3A0 00289000 38 00 00 01 */ li r0, 1
+lbl_8028D3A4:
+/* 8028D3A4 00289004 2C 00 00 00 */ cmpwi r0, 0
+/* 8028D3A8 00289008 40 82 00 0C */ bne lbl_8028D3B4
+/* 8028D3AC 0028900C 38 60 00 00 */ li r3, 0
+/* 8028D3B0 00289010 48 00 01 28 */ b lbl_8028D4D8
+lbl_8028D3B4:
+/* 8028D3B4 00289014 88 0D AA B4 */ lbz r0, lbl_8063FD74-_SDA_BASE_(r13)
+/* 8028D3B8 00289018 2C 00 00 00 */ cmpwi r0, 0
+/* 8028D3BC 0028901C 40 82 00 78 */ bne lbl_8028D434
+/* 8028D3C0 00289020 38 A0 00 00 */ li r5, 0
+/* 8028D3C4 00289024 3C 80 80 52 */ lis r4, lbl_8051B760@ha
+/* 8028D3C8 00289028 94 A4 B7 60 */ stwu r5, lbl_8051B760@l(r4)
+/* 8028D3CC 0028902C 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha
+/* 8028D3D0 00289030 38 00 00 01 */ li r0, 1
+/* 8028D3D4 00289034 38 C0 00 02 */ li r6, 2
+/* 8028D3D8 00289038 90 A4 00 04 */ stw r5, 4(r4)
+/* 8028D3DC 0028903C 38 63 DA ED */ addi r3, r3, 0xFEEBDAED@l
+/* 8028D3E0 00289040 98 A4 00 08 */ stb r5, 8(r4)
+/* 8028D3E4 00289044 90 64 00 0C */ stw r3, 0xc(r4)
+/* 8028D3E8 00289048 90 A4 00 10 */ stw r5, 0x10(r4)
+/* 8028D3EC 0028904C 90 A4 00 20 */ stw r5, 0x20(r4)
+/* 8028D3F0 00289050 90 A4 00 24 */ stw r5, 0x24(r4)
+/* 8028D3F4 00289054 98 A4 00 28 */ stb r5, 0x28(r4)
+/* 8028D3F8 00289058 90 64 00 2C */ stw r3, 0x2c(r4)
+/* 8028D3FC 0028905C 90 04 00 30 */ stw r0, 0x30(r4)
+/* 8028D400 00289060 90 A4 00 40 */ stw r5, 0x40(r4)
+/* 8028D404 00289064 90 A4 00 44 */ stw r5, 0x44(r4)
+/* 8028D408 00289068 98 A4 00 48 */ stb r5, 0x48(r4)
+/* 8028D40C 0028906C 90 64 00 4C */ stw r3, 0x4c(r4)
+/* 8028D410 00289070 90 C4 00 50 */ stw r6, 0x50(r4)
+/* 8028D414 00289074 38 C0 00 03 */ li r6, 3
+/* 8028D418 00289078 90 A4 00 60 */ stw r5, 0x60(r4)
+/* 8028D41C 0028907C 90 A4 00 64 */ stw r5, 0x64(r4)
+/* 8028D420 00289080 98 A4 00 68 */ stb r5, 0x68(r4)
+/* 8028D424 00289084 90 64 00 6C */ stw r3, 0x6c(r4)
+/* 8028D428 00289088 90 C4 00 70 */ stw r6, 0x70(r4)
+/* 8028D42C 0028908C 90 AD AA B0 */ stw r5, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D430 00289090 98 0D AA B4 */ stb r0, lbl_8063FD74-_SDA_BASE_(r13)
+lbl_8028D434:
+/* 8028D434 00289094 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13)
+/* 8028D438 00289098 38 8D 88 D8 */ addi r4, r13, lbl_8063DB98-_SDA_BASE_
+/* 8028D43C 0028909C 38 A0 00 20 */ li r5, 0x20
+/* 8028D440 002890A0 4B F4 0F 51 */ bl strncpy
+/* 8028D444 002890A4 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13)
+/* 8028D448 002890A8 38 80 00 00 */ li r4, 0
+/* 8028D44C 002890AC 48 01 5D 0D */ bl func_802A3158
+/* 8028D450 002890B0 2C 03 00 00 */ cmpwi r3, 0
+/* 8028D454 002890B4 90 6D 88 D0 */ stw r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028D458 002890B8 41 80 00 0C */ blt lbl_8028D464
+/* 8028D45C 002890BC 38 60 00 01 */ li r3, 1
+/* 8028D460 002890C0 48 00 00 78 */ b lbl_8028D4D8
+lbl_8028D464:
+/* 8028D464 002890C4 2C 03 FF FB */ cmpwi r3, -5
+/* 8028D468 002890C8 41 82 00 48 */ beq lbl_8028D4B0
+/* 8028D46C 002890CC 40 80 00 10 */ bge lbl_8028D47C
+/* 8028D470 002890D0 2C 03 FF FA */ cmpwi r3, -6
+/* 8028D474 002890D4 40 80 00 14 */ bge lbl_8028D488
+/* 8028D478 002890D8 48 00 00 4C */ b lbl_8028D4C4
+lbl_8028D47C:
+/* 8028D47C 002890DC 2C 03 FF FF */ cmpwi r3, -1
+/* 8028D480 002890E0 41 82 00 1C */ beq lbl_8028D49C
+/* 8028D484 002890E4 48 00 00 40 */ b lbl_8028D4C4
+lbl_8028D488:
+/* 8028D488 002890E8 38 7F 01 04 */ addi r3, r31, 0x104
+/* 8028D48C 002890EC 4C C6 31 82 */ crclr 6
+/* 8028D490 002890F0 4B D7 A6 35 */ bl func_80007AC4
+/* 8028D494 002890F4 38 60 00 00 */ li r3, 0
+/* 8028D498 002890F8 48 00 00 40 */ b lbl_8028D4D8
+lbl_8028D49C:
+/* 8028D49C 002890FC 38 7F 01 50 */ addi r3, r31, 0x150
+/* 8028D4A0 00289100 4C C6 31 82 */ crclr 6
+/* 8028D4A4 00289104 4B D7 A6 21 */ bl func_80007AC4
+/* 8028D4A8 00289108 38 60 00 00 */ li r3, 0
+/* 8028D4AC 0028910C 48 00 00 2C */ b lbl_8028D4D8
+lbl_8028D4B0:
+/* 8028D4B0 00289110 38 7F 01 98 */ addi r3, r31, 0x198
+/* 8028D4B4 00289114 4C C6 31 82 */ crclr 6
+/* 8028D4B8 00289118 4B D7 A6 0D */ bl func_80007AC4
+/* 8028D4BC 0028911C 38 60 00 00 */ li r3, 0
+/* 8028D4C0 00289120 48 00 00 18 */ b lbl_8028D4D8
+lbl_8028D4C4:
+/* 8028D4C4 00289124 7C 64 1B 78 */ mr r4, r3
+/* 8028D4C8 00289128 38 7F 01 E4 */ addi r3, r31, 0x1e4
+/* 8028D4CC 0028912C 4C C6 31 82 */ crclr 6
+/* 8028D4D0 00289130 4B D7 A5 F5 */ bl func_80007AC4
+/* 8028D4D4 00289134 38 60 00 00 */ li r3, 0
+lbl_8028D4D8:
+/* 8028D4D8 00289138 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028D4DC 0028913C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028D4E0 00289140 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028D4E4 00289144 7C 08 03 A6 */ mtlr r0
+/* 8028D4E8 00289148 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028D4EC 0028914C 4E 80 00 20 */ blr
+
+.global DVDLowReadDiskID
+DVDLowReadDiskID:
+/* 8028D4F0 00289150 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8028D4F4 00289154 7C 08 02 A6 */ mflr r0
+/* 8028D4F8 00289158 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028D4FC 0028915C 39 40 00 01 */ li r10, 1
+/* 8028D500 00289160 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8028D504 00289164 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028D508 00289168 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8028D50C 0028916C 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028D510 00289170 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028D514 00289174 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8028D518 00289178 7C 7E 1B 78 */ mr r30, r3
+/* 8028D51C 0028917C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8028D520 00289180 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D524 00289184 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028D528 00289188 55 28 28 34 */ slwi r8, r9, 5
+/* 8028D52C 0028918C 7C C7 42 14 */ add r6, r7, r8
+/* 8028D530 00289190 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028D534 00289194 7C 05 00 D0 */ neg r0, r5
+/* 8028D538 00289198 7C 00 2B 78 */ or r0, r0, r5
+/* 8028D53C 0028919C 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028D540 002891A0 28 00 00 01 */ cmplwi r0, 1
+/* 8028D544 002891A4 40 82 00 24 */ bne lbl_8028D568
+/* 8028D548 002891A8 7D 24 4B 78 */ mr r4, r9
+/* 8028D54C 002891AC 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028D550 002891B0 4C C6 31 82 */ crclr 6
+/* 8028D554 002891B4 4B D7 A5 71 */ bl func_80007AC4
+/* 8028D558 002891B8 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028D55C 002891BC 4C C6 31 82 */ crclr 6
+/* 8028D560 002891C0 4B D7 A5 65 */ bl func_80007AC4
+lbl_8028D564:
+/* 8028D564 002891C4 48 00 00 00 */ b lbl_8028D564
+lbl_8028D568:
+/* 8028D568 002891C8 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028D56C 002891CC 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028D570 002891D0 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028D574 002891D4 41 82 00 14 */ beq lbl_8028D588
+/* 8028D578 002891D8 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028D57C 002891DC 4C C6 31 82 */ crclr 6
+/* 8028D580 002891E0 4B D7 A5 45 */ bl func_80007AC4
+lbl_8028D584:
+/* 8028D584 002891E4 48 00 00 00 */ b lbl_8028D584
+lbl_8028D588:
+/* 8028D588 002891E8 7C 87 41 2E */ stwx r4, r7, r8
+/* 8028D58C 002891EC 38 09 00 01 */ addi r0, r9, 1
+/* 8028D590 002891F0 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D594 002891F4 91 46 00 04 */ stw r10, 4(r6)
+/* 8028D598 002891F8 99 46 00 08 */ stb r10, 8(r6)
+/* 8028D59C 002891FC 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D5A0 00289200 41 80 00 0C */ blt lbl_8028D5AC
+/* 8028D5A4 00289204 38 00 00 00 */ li r0, 0
+/* 8028D5A8 00289208 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028D5AC:
+/* 8028D5AC 0028920C 3C 80 80 52 */ lis r4, lbl_8051B760@ha
+/* 8028D5B0 00289210 2C 03 00 00 */ cmpwi r3, 0
+/* 8028D5B4 00289214 55 20 28 34 */ slwi r0, r9, 5
+/* 8028D5B8 00289218 38 84 B7 60 */ addi r4, r4, lbl_8051B760@l
+/* 8028D5BC 0028921C 7F A4 02 14 */ add r29, r4, r0
+/* 8028D5C0 00289220 40 82 00 10 */ bne lbl_8028D5D0
+/* 8028D5C4 00289224 38 7F 02 C0 */ addi r3, r31, 0x2c0
+/* 8028D5C8 00289228 4C C6 31 82 */ crclr 6
+/* 8028D5CC 0028922C 4B D7 A4 F9 */ bl func_80007AC4
+lbl_8028D5D0:
+/* 8028D5D0 00289230 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D5D4 00289234 38 03 00 01 */ addi r0, r3, 1
+/* 8028D5D8 00289238 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D5DC 0028923C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D5E0 00289240 41 80 00 0C */ blt lbl_8028D5EC
+/* 8028D5E4 00289244 38 00 00 00 */ li r0, 0
+/* 8028D5E8 00289248 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028D5EC:
+/* 8028D5EC 0028924C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D5F0 00289250 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028D5F4 00289254 54 00 28 34 */ slwi r0, r0, 5
+/* 8028D5F8 00289258 38 80 00 70 */ li r4, 0x70
+/* 8028D5FC 0028925C 7C 83 01 AE */ stbx r4, r3, r0
+/* 8028D600 00289260 7F C7 F3 78 */ mr r7, r30
+/* 8028D604 00289264 7F AA EB 78 */ mr r10, r29
+/* 8028D608 00289268 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028D60C 0028926C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D610 00289270 38 80 00 70 */ li r4, 0x70
+/* 8028D614 00289274 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D618 00289278 38 C0 00 20 */ li r6, 0x20
+/* 8028D61C 0028927C 54 00 28 34 */ slwi r0, r0, 5
+/* 8028D620 00289280 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028D624 00289284 7C A5 02 14 */ add r5, r5, r0
+/* 8028D628 00289288 39 00 00 20 */ li r8, 0x20
+/* 8028D62C 0028928C 48 01 63 8D */ bl func_802A39B8
+/* 8028D630 00289290 2C 03 00 00 */ cmpwi r3, 0
+/* 8028D634 00289294 41 82 00 24 */ beq lbl_8028D658
+/* 8028D638 00289298 7C 64 1B 78 */ mr r4, r3
+/* 8028D63C 0028929C 38 7F 02 FC */ addi r3, r31, 0x2fc
+/* 8028D640 002892A0 4C C6 31 82 */ crclr 6
+/* 8028D644 002892A4 4B D7 A4 81 */ bl func_80007AC4
+/* 8028D648 002892A8 38 00 00 00 */ li r0, 0
+/* 8028D64C 002892AC 38 60 00 00 */ li r3, 0
+/* 8028D650 002892B0 98 1D 00 08 */ stb r0, 8(r29)
+/* 8028D654 002892B4 48 00 00 08 */ b lbl_8028D65C
+lbl_8028D658:
+/* 8028D658 002892B8 38 60 00 01 */ li r3, 1
+lbl_8028D65C:
+/* 8028D65C 002892BC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8028D660 002892C0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8028D664 002892C4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8028D668 002892C8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8028D66C 002892CC 7C 08 03 A6 */ mtlr r0
+/* 8028D670 002892D0 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028D674 002892D4 4E 80 00 20 */ blr
+
+.global DVDLowOpenPartition
+DVDLowOpenPartition:
+/* 8028D678 002892D8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8028D67C 002892DC 7C 08 02 A6 */ mflr r0
+/* 8028D680 002892E0 3D 20 80 52 */ lis r9, lbl_8051B760@ha
+/* 8028D684 002892E4 2C 04 00 00 */ cmpwi r4, 0
+/* 8028D688 002892E8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8028D68C 002892EC 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l
+/* 8028D690 002892F0 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8028D694 002892F4 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028D698 002892F8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028D69C 002892FC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8028D6A0 00289300 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8028D6A4 00289304 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8028D6A8 00289308 41 82 00 20 */ beq lbl_8028D6C8
+/* 8028D6AC 0028930C 54 80 06 FF */ clrlwi. r0, r4, 0x1b
+/* 8028D6B0 00289310 41 82 00 18 */ beq lbl_8028D6C8
+/* 8028D6B4 00289314 38 7F 03 38 */ addi r3, r31, 0x338
+/* 8028D6B8 00289318 4C C6 31 82 */ crclr 6
+/* 8028D6BC 0028931C 4B D7 A4 09 */ bl func_80007AC4
+/* 8028D6C0 00289320 38 60 00 00 */ li r3, 0
+/* 8028D6C4 00289324 48 00 01 FC */ b lbl_8028D8C0
+lbl_8028D6C8:
+/* 8028D6C8 00289328 2C 06 00 00 */ cmpwi r6, 0
+/* 8028D6CC 0028932C 41 82 00 20 */ beq lbl_8028D6EC
+/* 8028D6D0 00289330 54 C0 06 FF */ clrlwi. r0, r6, 0x1b
+/* 8028D6D4 00289334 41 82 00 18 */ beq lbl_8028D6EC
+/* 8028D6D8 00289338 38 7F 03 70 */ addi r3, r31, 0x370
+/* 8028D6DC 0028933C 4C C6 31 82 */ crclr 6
+/* 8028D6E0 00289340 4B D7 A3 E5 */ bl func_80007AC4
+/* 8028D6E4 00289344 38 60 00 00 */ li r3, 0
+/* 8028D6E8 00289348 48 00 01 D8 */ b lbl_8028D8C0
+lbl_8028D6EC:
+/* 8028D6EC 0028934C 2C 07 00 00 */ cmpwi r7, 0
+/* 8028D6F0 00289350 41 82 00 20 */ beq lbl_8028D710
+/* 8028D6F4 00289354 54 E0 06 FF */ clrlwi. r0, r7, 0x1b
+/* 8028D6F8 00289358 41 82 00 18 */ beq lbl_8028D710
+/* 8028D6FC 0028935C 38 7F 03 70 */ addi r3, r31, 0x370
+/* 8028D700 00289360 4C C6 31 82 */ crclr 6
+/* 8028D704 00289364 4B D7 A3 C1 */ bl func_80007AC4
+/* 8028D708 00289368 38 60 00 00 */ li r3, 0
+/* 8028D70C 0028936C 48 00 01 B4 */ b lbl_8028D8C0
+lbl_8028D710:
+/* 8028D710 00289370 83 AD AA B0 */ lwz r29, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D714 00289374 3B 80 00 01 */ li r28, 1
+/* 8028D718 00289378 39 89 00 00 */ addi r12, r9, 0
+/* 8028D71C 0028937C 9B 8D AA A8 */ stb r28, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028D720 00289380 57 BE 28 34 */ slwi r30, r29, 5
+/* 8028D724 00289384 7D 6C F2 14 */ add r11, r12, r30
+/* 8028D728 00289388 89 4B 00 08 */ lbz r10, 8(r11)
+/* 8028D72C 0028938C 7C 0A 00 D0 */ neg r0, r10
+/* 8028D730 00289390 7C 00 53 78 */ or r0, r0, r10
+/* 8028D734 00289394 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028D738 00289398 28 00 00 01 */ cmplwi r0, 1
+/* 8028D73C 0028939C 40 82 00 24 */ bne lbl_8028D760
+/* 8028D740 002893A0 7F A4 EB 78 */ mr r4, r29
+/* 8028D744 002893A4 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028D748 002893A8 4C C6 31 82 */ crclr 6
+/* 8028D74C 002893AC 4B D7 A3 79 */ bl func_80007AC4
+/* 8028D750 002893B0 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028D754 002893B4 4C C6 31 82 */ crclr 6
+/* 8028D758 002893B8 4B D7 A3 6D */ bl func_80007AC4
+lbl_8028D75C:
+/* 8028D75C 002893BC 48 00 00 00 */ b lbl_8028D75C
+lbl_8028D760:
+/* 8028D760 002893C0 81 4B 00 0C */ lwz r10, 0xc(r11)
+/* 8028D764 002893C4 3C 0A 01 15 */ addis r0, r10, 0x115
+/* 8028D768 002893C8 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028D76C 002893CC 41 82 00 14 */ beq lbl_8028D780
+/* 8028D770 002893D0 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028D774 002893D4 4C C6 31 82 */ crclr 6
+/* 8028D778 002893D8 4B D7 A3 4D */ bl func_80007AC4
+lbl_8028D77C:
+/* 8028D77C 002893DC 48 00 00 00 */ b lbl_8028D77C
+lbl_8028D780:
+/* 8028D780 002893E0 7D 0C F1 2E */ stwx r8, r12, r30
+/* 8028D784 002893E4 38 1D 00 01 */ addi r0, r29, 1
+/* 8028D788 002893E8 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D78C 002893EC 93 8B 00 04 */ stw r28, 4(r11)
+/* 8028D790 002893F0 9B 8B 00 08 */ stb r28, 8(r11)
+/* 8028D794 002893F4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D798 002893F8 41 80 00 0C */ blt lbl_8028D7A4
+/* 8028D79C 002893FC 38 00 00 00 */ li r0, 0
+/* 8028D7A0 00289400 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028D7A4:
+/* 8028D7A4 00289404 81 0D AA AC */ lwz r8, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D7A8 00289408 57 AB 28 34 */ slwi r11, r29, 5
+/* 8028D7AC 0028940C 39 49 00 00 */ addi r10, r9, 0
+/* 8028D7B0 00289410 38 08 00 01 */ addi r0, r8, 1
+/* 8028D7B4 00289414 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D7B8 00289418 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D7BC 0028941C 7F CA 5A 14 */ add r30, r10, r11
+/* 8028D7C0 00289420 41 80 00 0C */ blt lbl_8028D7CC
+/* 8028D7C4 00289424 38 00 00 00 */ li r0, 0
+/* 8028D7C8 00289428 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028D7CC:
+/* 8028D7CC 0028942C 81 0D AA C4 */ lwz r8, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D7D0 00289430 54 00 28 34 */ slwi r0, r0, 5
+/* 8028D7D4 00289434 39 40 00 8B */ li r10, 0x8b
+/* 8028D7D8 00289438 2C 04 00 00 */ cmpwi r4, 0
+/* 8028D7DC 0028943C 7D 48 01 AE */ stbx r10, r8, r0
+/* 8028D7E0 00289440 39 09 00 C0 */ addi r8, r9, 0xc0
+/* 8028D7E4 00289444 38 00 00 20 */ li r0, 0x20
+/* 8028D7E8 00289448 81 4D AA AC */ lwz r10, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D7EC 0028944C 81 6D AA C4 */ lwz r11, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D7F0 00289450 55 4A 28 34 */ slwi r10, r10, 5
+/* 8028D7F4 00289454 7D 4B 52 14 */ add r10, r11, r10
+/* 8028D7F8 00289458 90 6A 00 04 */ stw r3, 4(r10)
+/* 8028D7FC 0028945C 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D800 00289460 81 4D AA C4 */ lwz r10, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D804 00289464 54 63 28 34 */ slwi r3, r3, 5
+/* 8028D808 00289468 90 08 00 04 */ stw r0, 4(r8)
+/* 8028D80C 0028946C 7C 0A 1A 14 */ add r0, r10, r3
+/* 8028D810 00289470 90 09 00 C0 */ stw r0, 0xc0(r9)
+/* 8028D814 00289474 90 88 00 08 */ stw r4, 8(r8)
+/* 8028D818 00289478 40 82 00 10 */ bne lbl_8028D828
+/* 8028D81C 0028947C 38 00 00 00 */ li r0, 0
+/* 8028D820 00289480 90 08 00 0C */ stw r0, 0xc(r8)
+/* 8028D824 00289484 48 00 00 0C */ b lbl_8028D830
+lbl_8028D828:
+/* 8028D828 00289488 38 00 02 A4 */ li r0, 0x2a4
+/* 8028D82C 0028948C 90 08 00 0C */ stw r0, 0xc(r8)
+lbl_8028D830:
+/* 8028D830 00289490 38 69 00 C0 */ addi r3, r9, 0xc0
+/* 8028D834 00289494 2C 06 00 00 */ cmpwi r6, 0
+/* 8028D838 00289498 90 C3 00 10 */ stw r6, 0x10(r3)
+/* 8028D83C 0028949C 40 82 00 10 */ bne lbl_8028D84C
+/* 8028D840 002894A0 38 00 00 00 */ li r0, 0
+/* 8028D844 002894A4 90 03 00 14 */ stw r0, 0x14(r3)
+/* 8028D848 002894A8 48 00 00 08 */ b lbl_8028D850
+lbl_8028D84C:
+/* 8028D84C 002894AC 90 A3 00 14 */ stw r5, 0x14(r3)
+lbl_8028D850:
+/* 8028D850 002894B0 39 49 00 C0 */ addi r10, r9, 0xc0
+/* 8028D854 002894B4 38 A9 01 00 */ addi r5, r9, 0x100
+/* 8028D858 002894B8 38 80 49 E4 */ li r4, 0x49e4
+/* 8028D85C 002894BC 38 00 00 20 */ li r0, 0x20
+/* 8028D860 002894C0 90 EA 00 18 */ stw r7, 0x18(r10)
+/* 8028D864 002894C4 3D 00 80 29 */ lis r8, doTransactionCallback@ha
+/* 8028D868 002894C8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028D86C 002894CC 7D 47 53 78 */ mr r7, r10
+/* 8028D870 002894D0 90 8A 00 1C */ stw r4, 0x1c(r10)
+/* 8028D874 002894D4 7F C9 F3 78 */ mr r9, r30
+/* 8028D878 002894D8 39 08 D1 18 */ addi r8, r8, doTransactionCallback@l
+/* 8028D87C 002894DC 38 80 00 8B */ li r4, 0x8b
+/* 8028D880 002894E0 90 AA 00 20 */ stw r5, 0x20(r10)
+/* 8028D884 002894E4 38 A0 00 03 */ li r5, 3
+/* 8028D888 002894E8 38 C0 00 02 */ li r6, 2
+/* 8028D88C 002894EC 90 0A 00 24 */ stw r0, 0x24(r10)
+/* 8028D890 002894F0 48 01 64 CD */ bl func_802A3D5C
+/* 8028D894 002894F4 2C 03 00 00 */ cmpwi r3, 0
+/* 8028D898 002894F8 41 82 00 24 */ beq lbl_8028D8BC
+/* 8028D89C 002894FC 7C 64 1B 78 */ mr r4, r3
+/* 8028D8A0 00289500 38 7F 03 A8 */ addi r3, r31, 0x3a8
+/* 8028D8A4 00289504 4C C6 31 82 */ crclr 6
+/* 8028D8A8 00289508 4B D7 A2 1D */ bl func_80007AC4
+/* 8028D8AC 0028950C 38 00 00 00 */ li r0, 0
+/* 8028D8B0 00289510 38 60 00 00 */ li r3, 0
+/* 8028D8B4 00289514 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028D8B8 00289518 48 00 00 08 */ b lbl_8028D8C0
+lbl_8028D8BC:
+/* 8028D8BC 0028951C 38 60 00 01 */ li r3, 1
+lbl_8028D8C0:
+/* 8028D8C0 00289520 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8028D8C4 00289524 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8028D8C8 00289528 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8028D8CC 0028952C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8028D8D0 00289530 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8028D8D4 00289534 7C 08 03 A6 */ mtlr r0
+/* 8028D8D8 00289538 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028D8DC 0028953C 4E 80 00 20 */ blr
+
+.global DVDLowClosePartition
+DVDLowClosePartition:
+/* 8028D8E0 00289540 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028D8E4 00289544 7C 08 02 A6 */ mflr r0
+/* 8028D8E8 00289548 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028D8EC 0028954C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028D8F0 00289550 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028D8F4 00289554 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028D8F8 00289558 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028D8FC 0028955C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D900 00289560 38 04 00 01 */ addi r0, r4, 1
+/* 8028D904 00289564 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D908 00289568 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D90C 0028956C 41 80 00 0C */ blt lbl_8028D918
+/* 8028D910 00289570 38 00 00 00 */ li r0, 0
+/* 8028D914 00289574 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028D918:
+/* 8028D918 00289578 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D91C 0028957C 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028D920 00289580 54 00 28 34 */ slwi r0, r0, 5
+/* 8028D924 00289584 38 A0 00 8C */ li r5, 0x8c
+/* 8028D928 00289588 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028D92C 0028958C 39 20 00 01 */ li r9, 1
+/* 8028D930 00289590 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028D934 00289594 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D938 00289598 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028D93C 0028959C 54 88 28 34 */ slwi r8, r4, 5
+/* 8028D940 002895A0 7C C7 42 14 */ add r6, r7, r8
+/* 8028D944 002895A4 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028D948 002895A8 7C 05 00 D0 */ neg r0, r5
+/* 8028D94C 002895AC 7C 00 2B 78 */ or r0, r0, r5
+/* 8028D950 002895B0 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028D954 002895B4 28 00 00 01 */ cmplwi r0, 1
+/* 8028D958 002895B8 40 82 00 20 */ bne lbl_8028D978
+/* 8028D95C 002895BC 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028D960 002895C0 4C C6 31 82 */ crclr 6
+/* 8028D964 002895C4 4B D7 A1 61 */ bl func_80007AC4
+/* 8028D968 002895C8 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028D96C 002895CC 4C C6 31 82 */ crclr 6
+/* 8028D970 002895D0 4B D7 A1 55 */ bl func_80007AC4
+lbl_8028D974:
+/* 8028D974 002895D4 48 00 00 00 */ b lbl_8028D974
+lbl_8028D978:
+/* 8028D978 002895D8 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028D97C 002895DC 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028D980 002895E0 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028D984 002895E4 41 82 00 14 */ beq lbl_8028D998
+/* 8028D988 002895E8 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028D98C 002895EC 4C C6 31 82 */ crclr 6
+/* 8028D990 002895F0 4B D7 A1 35 */ bl func_80007AC4
+lbl_8028D994:
+/* 8028D994 002895F4 48 00 00 00 */ b lbl_8028D994
+lbl_8028D998:
+/* 8028D998 002895F8 7C 67 41 2E */ stwx r3, r7, r8
+/* 8028D99C 002895FC 38 04 00 01 */ addi r0, r4, 1
+/* 8028D9A0 00289600 2C 00 00 04 */ cmpwi r0, 4
+/* 8028D9A4 00289604 91 26 00 04 */ stw r9, 4(r6)
+/* 8028D9A8 00289608 99 26 00 08 */ stb r9, 8(r6)
+/* 8028D9AC 0028960C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028D9B0 00289610 41 80 00 0C */ blt lbl_8028D9BC
+/* 8028D9B4 00289614 38 00 00 00 */ li r0, 0
+/* 8028D9B8 00289618 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028D9BC:
+/* 8028D9BC 0028961C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028D9C0 00289620 3C 60 80 52 */ lis r3, lbl_8051B760@ha
+/* 8028D9C4 00289624 54 85 28 34 */ slwi r5, r4, 5
+/* 8028D9C8 00289628 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028D9CC 0028962C 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l
+/* 8028D9D0 00289630 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028D9D4 00289634 7F C3 2A 14 */ add r30, r3, r5
+/* 8028D9D8 00289638 54 00 28 34 */ slwi r0, r0, 5
+/* 8028D9DC 0028963C 7C A4 02 14 */ add r5, r4, r0
+/* 8028D9E0 00289640 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028D9E4 00289644 7F CA F3 78 */ mr r10, r30
+/* 8028D9E8 00289648 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028D9EC 0028964C 38 80 00 8C */ li r4, 0x8c
+/* 8028D9F0 00289650 38 C0 00 20 */ li r6, 0x20
+/* 8028D9F4 00289654 38 E0 00 00 */ li r7, 0
+/* 8028D9F8 00289658 39 00 00 00 */ li r8, 0
+/* 8028D9FC 0028965C 48 01 5F BD */ bl func_802A39B8
+/* 8028DA00 00289660 2C 03 00 00 */ cmpwi r3, 0
+/* 8028DA04 00289664 41 82 00 24 */ beq lbl_8028DA28
+/* 8028DA08 00289668 7C 64 1B 78 */ mr r4, r3
+/* 8028DA0C 0028966C 38 7F 03 E8 */ addi r3, r31, 0x3e8
+/* 8028DA10 00289670 4C C6 31 82 */ crclr 6
+/* 8028DA14 00289674 4B D7 A0 B1 */ bl func_80007AC4
+/* 8028DA18 00289678 38 00 00 00 */ li r0, 0
+/* 8028DA1C 0028967C 38 60 00 00 */ li r3, 0
+/* 8028DA20 00289680 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028DA24 00289684 48 00 00 08 */ b lbl_8028DA2C
+lbl_8028DA28:
+/* 8028DA28 00289688 38 60 00 01 */ li r3, 1
+lbl_8028DA2C:
+/* 8028DA2C 0028968C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028DA30 00289690 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028DA34 00289694 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028DA38 00289698 7C 08 03 A6 */ mtlr r0
+/* 8028DA3C 0028969C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028DA40 002896A0 4E 80 00 20 */ blr
+
+.global DVDLowUnencryptedRead
+DVDLowUnencryptedRead:
+/* 8028DA44 002896A4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028DA48 002896A8 7C 08 02 A6 */ mflr r0
+/* 8028DA4C 002896AC 3D 20 80 52 */ lis r9, lbl_8051B760@ha
+/* 8028DA50 002896B0 39 80 00 01 */ li r12, 1
+/* 8028DA54 002896B4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028DA58 002896B8 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l
+/* 8028DA5C 002896BC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028DA60 002896C0 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028DA64 002896C4 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028DA68 002896C8 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028DA6C 002896CC 81 6D AA B0 */ lwz r11, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DA70 002896D0 99 8D AA A8 */ stb r12, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028DA74 002896D4 55 6A 28 34 */ slwi r10, r11, 5
+/* 8028DA78 002896D8 7D 09 52 14 */ add r8, r9, r10
+/* 8028DA7C 002896DC 88 E8 00 08 */ lbz r7, 8(r8)
+/* 8028DA80 002896E0 7C 07 00 D0 */ neg r0, r7
+/* 8028DA84 002896E4 7C 00 3B 78 */ or r0, r0, r7
+/* 8028DA88 002896E8 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028DA8C 002896EC 28 00 00 01 */ cmplwi r0, 1
+/* 8028DA90 002896F0 40 82 00 24 */ bne lbl_8028DAB4
+/* 8028DA94 002896F4 7D 64 5B 78 */ mr r4, r11
+/* 8028DA98 002896F8 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028DA9C 002896FC 4C C6 31 82 */ crclr 6
+/* 8028DAA0 00289700 4B D7 A0 25 */ bl func_80007AC4
+/* 8028DAA4 00289704 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028DAA8 00289708 4C C6 31 82 */ crclr 6
+/* 8028DAAC 0028970C 4B D7 A0 19 */ bl func_80007AC4
+lbl_8028DAB0:
+/* 8028DAB0 00289710 48 00 00 00 */ b lbl_8028DAB0
+lbl_8028DAB4:
+/* 8028DAB4 00289714 80 E8 00 0C */ lwz r7, 0xc(r8)
+/* 8028DAB8 00289718 3C 07 01 15 */ addis r0, r7, 0x115
+/* 8028DABC 0028971C 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028DAC0 00289720 41 82 00 14 */ beq lbl_8028DAD4
+/* 8028DAC4 00289724 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028DAC8 00289728 4C C6 31 82 */ crclr 6
+/* 8028DACC 0028972C 4B D7 9F F9 */ bl func_80007AC4
+lbl_8028DAD0:
+/* 8028DAD0 00289730 48 00 00 00 */ b lbl_8028DAD0
+lbl_8028DAD4:
+/* 8028DAD4 00289734 7C C9 51 2E */ stwx r6, r9, r10
+/* 8028DAD8 00289738 38 0B 00 01 */ addi r0, r11, 1
+/* 8028DADC 0028973C 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DAE0 00289740 91 88 00 04 */ stw r12, 4(r8)
+/* 8028DAE4 00289744 99 88 00 08 */ stb r12, 8(r8)
+/* 8028DAE8 00289748 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DAEC 0028974C 41 80 00 0C */ blt lbl_8028DAF8
+/* 8028DAF0 00289750 38 00 00 00 */ li r0, 0
+/* 8028DAF4 00289754 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028DAF8:
+/* 8028DAF8 00289758 80 CD AA AC */ lwz r6, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DAFC 0028975C 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028DB00 00289760 90 8D AA BC */ stw r4, lbl_8063FD7C-_SDA_BASE_(r13)
+/* 8028DB04 00289764 55 68 28 34 */ slwi r8, r11, 5
+/* 8028DB08 00289768 38 06 00 01 */ addi r0, r6, 1
+/* 8028DB0C 0028976C 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028DB10 00289770 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DB14 00289774 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DB18 00289778 7F C7 42 14 */ add r30, r7, r8
+/* 8028DB1C 0028977C 41 80 00 0C */ blt lbl_8028DB28
+/* 8028DB20 00289780 38 00 00 00 */ li r0, 0
+/* 8028DB24 00289784 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028DB28:
+/* 8028DB28 00289788 80 CD AA C4 */ lwz r6, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DB2C 0028978C 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028DB30 00289790 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DB34 00289794 38 E0 00 8D */ li r7, 0x8d
+/* 8028DB38 00289798 7C E6 01 AE */ stbx r7, r6, r0
+/* 8028DB3C 0028979C 7C 67 1B 78 */ mr r7, r3
+/* 8028DB40 002897A0 7C 88 23 78 */ mr r8, r4
+/* 8028DB44 002897A4 7F CA F3 78 */ mr r10, r30
+/* 8028DB48 002897A8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DB4C 002897AC 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028DB50 002897B0 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DB54 002897B4 38 C0 00 20 */ li r6, 0x20
+/* 8028DB58 002897B8 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DB5C 002897BC 7C 63 02 14 */ add r3, r3, r0
+/* 8028DB60 002897C0 90 83 00 04 */ stw r4, 4(r3)
+/* 8028DB64 002897C4 38 80 00 8D */ li r4, 0x8d
+/* 8028DB68 002897C8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DB6C 002897CC 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DB70 002897D0 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DB74 002897D4 7C 63 02 14 */ add r3, r3, r0
+/* 8028DB78 002897D8 90 A3 00 08 */ stw r5, 8(r3)
+/* 8028DB7C 002897DC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DB80 002897E0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DB84 002897E4 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DB88 002897E8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028DB8C 002897EC 7C A5 02 14 */ add r5, r5, r0
+/* 8028DB90 002897F0 48 01 5E 29 */ bl func_802A39B8
+/* 8028DB94 002897F4 2C 03 00 00 */ cmpwi r3, 0
+/* 8028DB98 002897F8 41 82 00 24 */ beq lbl_8028DBBC
+/* 8028DB9C 002897FC 7C 64 1B 78 */ mr r4, r3
+/* 8028DBA0 00289800 38 7F 04 28 */ addi r3, r31, 0x428
+/* 8028DBA4 00289804 4C C6 31 82 */ crclr 6
+/* 8028DBA8 00289808 4B D7 9F 1D */ bl func_80007AC4
+/* 8028DBAC 0028980C 38 00 00 00 */ li r0, 0
+/* 8028DBB0 00289810 38 60 00 00 */ li r3, 0
+/* 8028DBB4 00289814 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028DBB8 00289818 48 00 00 08 */ b lbl_8028DBC0
+lbl_8028DBBC:
+/* 8028DBBC 0028981C 38 60 00 01 */ li r3, 1
+lbl_8028DBC0:
+/* 8028DBC0 00289820 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028DBC4 00289824 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028DBC8 00289828 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028DBCC 0028982C 7C 08 03 A6 */ mtlr r0
+/* 8028DBD0 00289830 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028DBD4 00289834 4E 80 00 20 */ blr
+
+.global DVDLowStopMotor
+DVDLowStopMotor:
+/* 8028DBD8 00289838 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028DBDC 0028983C 7C 08 02 A6 */ mflr r0
+/* 8028DBE0 00289840 3D 00 80 52 */ lis r8, lbl_8051B760@ha
+/* 8028DBE4 00289844 39 60 00 01 */ li r11, 1
+/* 8028DBE8 00289848 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028DBEC 0028984C 39 08 B7 60 */ addi r8, r8, lbl_8051B760@l
+/* 8028DBF0 00289850 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028DBF4 00289854 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028DBF8 00289858 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028DBFC 0028985C 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028DC00 00289860 81 4D AA B0 */ lwz r10, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DC04 00289864 99 6D AA A8 */ stb r11, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028DC08 00289868 55 49 28 34 */ slwi r9, r10, 5
+/* 8028DC0C 0028986C 7C E8 4A 14 */ add r7, r8, r9
+/* 8028DC10 00289870 88 C7 00 08 */ lbz r6, 8(r7)
+/* 8028DC14 00289874 7C 06 00 D0 */ neg r0, r6
+/* 8028DC18 00289878 7C 00 33 78 */ or r0, r0, r6
+/* 8028DC1C 0028987C 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028DC20 00289880 28 00 00 01 */ cmplwi r0, 1
+/* 8028DC24 00289884 40 82 00 24 */ bne lbl_8028DC48
+/* 8028DC28 00289888 7D 44 53 78 */ mr r4, r10
+/* 8028DC2C 0028988C 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028DC30 00289890 4C C6 31 82 */ crclr 6
+/* 8028DC34 00289894 4B D7 9E 91 */ bl func_80007AC4
+/* 8028DC38 00289898 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028DC3C 0028989C 4C C6 31 82 */ crclr 6
+/* 8028DC40 002898A0 4B D7 9E 85 */ bl func_80007AC4
+lbl_8028DC44:
+/* 8028DC44 002898A4 48 00 00 00 */ b lbl_8028DC44
+lbl_8028DC48:
+/* 8028DC48 002898A8 80 C7 00 0C */ lwz r6, 0xc(r7)
+/* 8028DC4C 002898AC 3C 06 01 15 */ addis r0, r6, 0x115
+/* 8028DC50 002898B0 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028DC54 002898B4 41 82 00 14 */ beq lbl_8028DC68
+/* 8028DC58 002898B8 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028DC5C 002898BC 4C C6 31 82 */ crclr 6
+/* 8028DC60 002898C0 4B D7 9E 65 */ bl func_80007AC4
+lbl_8028DC64:
+/* 8028DC64 002898C4 48 00 00 00 */ b lbl_8028DC64
+lbl_8028DC68:
+/* 8028DC68 002898C8 7C A8 49 2E */ stwx r5, r8, r9
+/* 8028DC6C 002898CC 38 0A 00 01 */ addi r0, r10, 1
+/* 8028DC70 002898D0 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DC74 002898D4 91 67 00 04 */ stw r11, 4(r7)
+/* 8028DC78 002898D8 99 67 00 08 */ stb r11, 8(r7)
+/* 8028DC7C 002898DC 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DC80 002898E0 41 80 00 0C */ blt lbl_8028DC8C
+/* 8028DC84 002898E4 38 00 00 00 */ li r0, 0
+/* 8028DC88 002898E8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028DC8C:
+/* 8028DC8C 002898EC 80 AD AA AC */ lwz r5, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DC90 002898F0 3C C0 80 52 */ lis r6, lbl_8051B760@ha
+/* 8028DC94 002898F4 55 47 28 34 */ slwi r7, r10, 5
+/* 8028DC98 002898F8 38 05 00 01 */ addi r0, r5, 1
+/* 8028DC9C 002898FC 38 C6 B7 60 */ addi r6, r6, lbl_8051B760@l
+/* 8028DCA0 00289900 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DCA4 00289904 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DCA8 00289908 7F C6 3A 14 */ add r30, r6, r7
+/* 8028DCAC 0028990C 41 80 00 0C */ blt lbl_8028DCB8
+/* 8028DCB0 00289910 38 00 00 00 */ li r0, 0
+/* 8028DCB4 00289914 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028DCB8:
+/* 8028DCB8 00289918 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DCBC 0028991C 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha
+/* 8028DCC0 00289920 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DCC4 00289924 38 C0 00 E3 */ li r6, 0xe3
+/* 8028DCC8 00289928 7C C5 01 AE */ stbx r6, r5, r0
+/* 8028DCCC 0028992C 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028DCD0 00289930 7F CA F3 78 */ mr r10, r30
+/* 8028DCD4 00289934 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l
+/* 8028DCD8 00289938 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DCDC 0028993C 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028DCE0 00289940 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DCE4 00289944 38 C0 00 20 */ li r6, 0x20
+/* 8028DCE8 00289948 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DCEC 0028994C 39 00 00 20 */ li r8, 0x20
+/* 8028DCF0 00289950 7C A5 02 14 */ add r5, r5, r0
+/* 8028DCF4 00289954 90 65 00 04 */ stw r3, 4(r5)
+/* 8028DCF8 00289958 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DCFC 0028995C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DD00 00289960 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DD04 00289964 7C 63 02 14 */ add r3, r3, r0
+/* 8028DD08 00289968 90 83 00 08 */ stw r4, 8(r3)
+/* 8028DD0C 0028996C 38 80 00 E3 */ li r4, 0xe3
+/* 8028DD10 00289970 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DD14 00289974 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DD18 00289978 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DD1C 0028997C 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028DD20 00289980 7C A5 02 14 */ add r5, r5, r0
+/* 8028DD24 00289984 48 01 5C 95 */ bl func_802A39B8
+/* 8028DD28 00289988 2C 03 00 00 */ cmpwi r3, 0
+/* 8028DD2C 0028998C 41 82 00 24 */ beq lbl_8028DD50
+/* 8028DD30 00289990 7C 64 1B 78 */ mr r4, r3
+/* 8028DD34 00289994 38 7F 04 68 */ addi r3, r31, 0x468
+/* 8028DD38 00289998 4C C6 31 82 */ crclr 6
+/* 8028DD3C 0028999C 4B D7 9D 89 */ bl func_80007AC4
+/* 8028DD40 002899A0 38 00 00 00 */ li r0, 0
+/* 8028DD44 002899A4 38 60 00 00 */ li r3, 0
+/* 8028DD48 002899A8 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028DD4C 002899AC 48 00 00 08 */ b lbl_8028DD54
+lbl_8028DD50:
+/* 8028DD50 002899B0 38 60 00 01 */ li r3, 1
+lbl_8028DD54:
+/* 8028DD54 002899B4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028DD58 002899B8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028DD5C 002899BC 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028DD60 002899C0 7C 08 03 A6 */ mtlr r0
+/* 8028DD64 002899C4 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028DD68 002899C8 4E 80 00 20 */ blr
+
+.global DVDLowInquiry
+DVDLowInquiry:
+/* 8028DD6C 002899CC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028DD70 002899D0 7C 08 02 A6 */ mflr r0
+/* 8028DD74 002899D4 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028DD78 002899D8 39 40 00 01 */ li r10, 1
+/* 8028DD7C 002899DC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028DD80 002899E0 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028DD84 002899E4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028DD88 002899E8 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028DD8C 002899EC 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028DD90 002899F0 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028DD94 002899F4 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DD98 002899F8 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028DD9C 002899FC 55 28 28 34 */ slwi r8, r9, 5
+/* 8028DDA0 00289A00 7C C7 42 14 */ add r6, r7, r8
+/* 8028DDA4 00289A04 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028DDA8 00289A08 7C 05 00 D0 */ neg r0, r5
+/* 8028DDAC 00289A0C 7C 00 2B 78 */ or r0, r0, r5
+/* 8028DDB0 00289A10 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028DDB4 00289A14 28 00 00 01 */ cmplwi r0, 1
+/* 8028DDB8 00289A18 40 82 00 24 */ bne lbl_8028DDDC
+/* 8028DDBC 00289A1C 7D 24 4B 78 */ mr r4, r9
+/* 8028DDC0 00289A20 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028DDC4 00289A24 4C C6 31 82 */ crclr 6
+/* 8028DDC8 00289A28 4B D7 9C FD */ bl func_80007AC4
+/* 8028DDCC 00289A2C 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028DDD0 00289A30 4C C6 31 82 */ crclr 6
+/* 8028DDD4 00289A34 4B D7 9C F1 */ bl func_80007AC4
+lbl_8028DDD8:
+/* 8028DDD8 00289A38 48 00 00 00 */ b lbl_8028DDD8
+lbl_8028DDDC:
+/* 8028DDDC 00289A3C 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028DDE0 00289A40 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028DDE4 00289A44 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028DDE8 00289A48 41 82 00 14 */ beq lbl_8028DDFC
+/* 8028DDEC 00289A4C 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028DDF0 00289A50 4C C6 31 82 */ crclr 6
+/* 8028DDF4 00289A54 4B D7 9C D1 */ bl func_80007AC4
+lbl_8028DDF8:
+/* 8028DDF8 00289A58 48 00 00 00 */ b lbl_8028DDF8
+lbl_8028DDFC:
+/* 8028DDFC 00289A5C 7C 87 41 2E */ stwx r4, r7, r8
+/* 8028DE00 00289A60 38 09 00 01 */ addi r0, r9, 1
+/* 8028DE04 00289A64 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DE08 00289A68 91 46 00 04 */ stw r10, 4(r6)
+/* 8028DE0C 00289A6C 99 46 00 08 */ stb r10, 8(r6)
+/* 8028DE10 00289A70 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DE14 00289A74 41 80 00 0C */ blt lbl_8028DE20
+/* 8028DE18 00289A78 38 00 00 00 */ li r0, 0
+/* 8028DE1C 00289A7C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028DE20:
+/* 8028DE20 00289A80 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DE24 00289A84 3C A0 80 52 */ lis r5, lbl_8051B760@ha
+/* 8028DE28 00289A88 55 26 28 34 */ slwi r6, r9, 5
+/* 8028DE2C 00289A8C 38 04 00 01 */ addi r0, r4, 1
+/* 8028DE30 00289A90 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l
+/* 8028DE34 00289A94 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DE38 00289A98 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DE3C 00289A9C 7F C5 32 14 */ add r30, r5, r6
+/* 8028DE40 00289AA0 41 80 00 0C */ blt lbl_8028DE4C
+/* 8028DE44 00289AA4 38 00 00 00 */ li r0, 0
+/* 8028DE48 00289AA8 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028DE4C:
+/* 8028DE4C 00289AAC 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DE50 00289AB0 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028DE54 00289AB4 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DE58 00289AB8 38 A0 00 12 */ li r5, 0x12
+/* 8028DE5C 00289ABC 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028DE60 00289AC0 7C 67 1B 78 */ mr r7, r3
+/* 8028DE64 00289AC4 7F CA F3 78 */ mr r10, r30
+/* 8028DE68 00289AC8 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028DE6C 00289ACC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DE70 00289AD0 38 80 00 12 */ li r4, 0x12
+/* 8028DE74 00289AD4 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DE78 00289AD8 38 C0 00 20 */ li r6, 0x20
+/* 8028DE7C 00289ADC 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DE80 00289AE0 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028DE84 00289AE4 7C A5 02 14 */ add r5, r5, r0
+/* 8028DE88 00289AE8 39 00 00 20 */ li r8, 0x20
+/* 8028DE8C 00289AEC 48 01 5B 2D */ bl func_802A39B8
+/* 8028DE90 00289AF0 2C 03 00 00 */ cmpwi r3, 0
+/* 8028DE94 00289AF4 41 82 00 24 */ beq lbl_8028DEB8
+/* 8028DE98 00289AF8 7C 64 1B 78 */ mr r4, r3
+/* 8028DE9C 00289AFC 38 7F 04 E8 */ addi r3, r31, 0x4e8
+/* 8028DEA0 00289B00 4C C6 31 82 */ crclr 6
+/* 8028DEA4 00289B04 4B D7 9C 21 */ bl func_80007AC4
+/* 8028DEA8 00289B08 38 00 00 00 */ li r0, 0
+/* 8028DEAC 00289B0C 38 60 00 00 */ li r3, 0
+/* 8028DEB0 00289B10 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028DEB4 00289B14 48 00 00 08 */ b lbl_8028DEBC
+lbl_8028DEB8:
+/* 8028DEB8 00289B18 38 60 00 01 */ li r3, 1
+lbl_8028DEBC:
+/* 8028DEBC 00289B1C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028DEC0 00289B20 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028DEC4 00289B24 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028DEC8 00289B28 7C 08 03 A6 */ mtlr r0
+/* 8028DECC 00289B2C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028DED0 00289B30 4E 80 00 20 */ blr
+
+.global DVDLowRequestError
+DVDLowRequestError:
+/* 8028DED4 00289B34 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028DED8 00289B38 7C 08 02 A6 */ mflr r0
+/* 8028DEDC 00289B3C 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028DEE0 00289B40 39 20 00 01 */ li r9, 1
+/* 8028DEE4 00289B44 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028DEE8 00289B48 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028DEEC 00289B4C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028DEF0 00289B50 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028DEF4 00289B54 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028DEF8 00289B58 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028DEFC 00289B5C 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DF00 00289B60 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028DF04 00289B64 54 88 28 34 */ slwi r8, r4, 5
+/* 8028DF08 00289B68 7C C7 42 14 */ add r6, r7, r8
+/* 8028DF0C 00289B6C 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028DF10 00289B70 7C 05 00 D0 */ neg r0, r5
+/* 8028DF14 00289B74 7C 00 2B 78 */ or r0, r0, r5
+/* 8028DF18 00289B78 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028DF1C 00289B7C 28 00 00 01 */ cmplwi r0, 1
+/* 8028DF20 00289B80 40 82 00 20 */ bne lbl_8028DF40
+/* 8028DF24 00289B84 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028DF28 00289B88 4C C6 31 82 */ crclr 6
+/* 8028DF2C 00289B8C 4B D7 9B 99 */ bl func_80007AC4
+/* 8028DF30 00289B90 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028DF34 00289B94 4C C6 31 82 */ crclr 6
+/* 8028DF38 00289B98 4B D7 9B 8D */ bl func_80007AC4
+lbl_8028DF3C:
+/* 8028DF3C 00289B9C 48 00 00 00 */ b lbl_8028DF3C
+lbl_8028DF40:
+/* 8028DF40 00289BA0 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028DF44 00289BA4 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028DF48 00289BA8 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028DF4C 00289BAC 41 82 00 14 */ beq lbl_8028DF60
+/* 8028DF50 00289BB0 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028DF54 00289BB4 4C C6 31 82 */ crclr 6
+/* 8028DF58 00289BB8 4B D7 9B 6D */ bl func_80007AC4
+lbl_8028DF5C:
+/* 8028DF5C 00289BBC 48 00 00 00 */ b lbl_8028DF5C
+lbl_8028DF60:
+/* 8028DF60 00289BC0 7C 67 41 2E */ stwx r3, r7, r8
+/* 8028DF64 00289BC4 38 04 00 01 */ addi r0, r4, 1
+/* 8028DF68 00289BC8 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DF6C 00289BCC 91 26 00 04 */ stw r9, 4(r6)
+/* 8028DF70 00289BD0 99 26 00 08 */ stb r9, 8(r6)
+/* 8028DF74 00289BD4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028DF78 00289BD8 41 80 00 0C */ blt lbl_8028DF84
+/* 8028DF7C 00289BDC 38 00 00 00 */ li r0, 0
+/* 8028DF80 00289BE0 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028DF84:
+/* 8028DF84 00289BE4 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DF88 00289BE8 3C A0 80 52 */ lis r5, lbl_8051B760@ha
+/* 8028DF8C 00289BEC 54 84 28 34 */ slwi r4, r4, 5
+/* 8028DF90 00289BF0 38 03 00 01 */ addi r0, r3, 1
+/* 8028DF94 00289BF4 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l
+/* 8028DF98 00289BF8 2C 00 00 04 */ cmpwi r0, 4
+/* 8028DF9C 00289BFC 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DFA0 00289C00 7F C5 22 14 */ add r30, r5, r4
+/* 8028DFA4 00289C04 41 80 00 0C */ blt lbl_8028DFB0
+/* 8028DFA8 00289C08 38 00 00 00 */ li r0, 0
+/* 8028DFAC 00289C0C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028DFB0:
+/* 8028DFB0 00289C10 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DFB4 00289C14 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha
+/* 8028DFB8 00289C18 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DFBC 00289C1C 38 80 00 E0 */ li r4, 0xe0
+/* 8028DFC0 00289C20 7C 83 01 AE */ stbx r4, r3, r0
+/* 8028DFC4 00289C24 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028DFC8 00289C28 7F CA F3 78 */ mr r10, r30
+/* 8028DFCC 00289C2C 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l
+/* 8028DFD0 00289C30 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028DFD4 00289C34 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028DFD8 00289C38 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028DFDC 00289C3C 38 80 00 E0 */ li r4, 0xe0
+/* 8028DFE0 00289C40 54 00 28 34 */ slwi r0, r0, 5
+/* 8028DFE4 00289C44 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028DFE8 00289C48 7C A5 02 14 */ add r5, r5, r0
+/* 8028DFEC 00289C4C 38 C0 00 20 */ li r6, 0x20
+/* 8028DFF0 00289C50 39 00 00 20 */ li r8, 0x20
+/* 8028DFF4 00289C54 48 01 59 C5 */ bl func_802A39B8
+/* 8028DFF8 00289C58 2C 03 00 00 */ cmpwi r3, 0
+/* 8028DFFC 00289C5C 41 82 00 24 */ beq lbl_8028E020
+/* 8028E000 00289C60 7C 64 1B 78 */ mr r4, r3
+/* 8028E004 00289C64 38 7F 05 20 */ addi r3, r31, 0x520
+/* 8028E008 00289C68 4C C6 31 82 */ crclr 6
+/* 8028E00C 00289C6C 4B D7 9A B9 */ bl func_80007AC4
+/* 8028E010 00289C70 38 00 00 00 */ li r0, 0
+/* 8028E014 00289C74 38 60 00 00 */ li r3, 0
+/* 8028E018 00289C78 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E01C 00289C7C 48 00 00 08 */ b lbl_8028E024
+lbl_8028E020:
+/* 8028E020 00289C80 38 60 00 01 */ li r3, 1
+lbl_8028E024:
+/* 8028E024 00289C84 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E028 00289C88 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E02C 00289C8C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E030 00289C90 7C 08 03 A6 */ mtlr r0
+/* 8028E034 00289C94 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E038 00289C98 4E 80 00 20 */ blr
+
+.global DVDLowSetSpinupFlag
+DVDLowSetSpinupFlag:
+/* 8028E03C 00289C9C 90 6D AA B8 */ stw r3, lbl_8063FD78-_SDA_BASE_(r13)
+/* 8028E040 00289CA0 38 60 00 01 */ li r3, 1
+/* 8028E044 00289CA4 4E 80 00 20 */ blr
+
+.global DVDLowReset
+DVDLowReset:
+/* 8028E048 00289CA8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E04C 00289CAC 7C 08 02 A6 */ mflr r0
+/* 8028E050 00289CB0 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E054 00289CB4 39 20 00 01 */ li r9, 1
+/* 8028E058 00289CB8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E05C 00289CBC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E060 00289CC0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E064 00289CC4 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E068 00289CC8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E06C 00289CCC 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E070 00289CD0 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E074 00289CD4 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E078 00289CD8 54 88 28 34 */ slwi r8, r4, 5
+/* 8028E07C 00289CDC 7C C7 42 14 */ add r6, r7, r8
+/* 8028E080 00289CE0 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028E084 00289CE4 7C 05 00 D0 */ neg r0, r5
+/* 8028E088 00289CE8 7C 00 2B 78 */ or r0, r0, r5
+/* 8028E08C 00289CEC 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E090 00289CF0 28 00 00 01 */ cmplwi r0, 1
+/* 8028E094 00289CF4 40 82 00 20 */ bne lbl_8028E0B4
+/* 8028E098 00289CF8 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E09C 00289CFC 4C C6 31 82 */ crclr 6
+/* 8028E0A0 00289D00 4B D7 9A 25 */ bl func_80007AC4
+/* 8028E0A4 00289D04 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E0A8 00289D08 4C C6 31 82 */ crclr 6
+/* 8028E0AC 00289D0C 4B D7 9A 19 */ bl func_80007AC4
+lbl_8028E0B0:
+/* 8028E0B0 00289D10 48 00 00 00 */ b lbl_8028E0B0
+lbl_8028E0B4:
+/* 8028E0B4 00289D14 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028E0B8 00289D18 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028E0BC 00289D1C 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E0C0 00289D20 41 82 00 14 */ beq lbl_8028E0D4
+/* 8028E0C4 00289D24 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E0C8 00289D28 4C C6 31 82 */ crclr 6
+/* 8028E0CC 00289D2C 4B D7 99 F9 */ bl func_80007AC4
+lbl_8028E0D0:
+/* 8028E0D0 00289D30 48 00 00 00 */ b lbl_8028E0D0
+lbl_8028E0D4:
+/* 8028E0D4 00289D34 7C 67 41 2E */ stwx r3, r7, r8
+/* 8028E0D8 00289D38 38 04 00 01 */ addi r0, r4, 1
+/* 8028E0DC 00289D3C 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E0E0 00289D40 91 26 00 04 */ stw r9, 4(r6)
+/* 8028E0E4 00289D44 99 26 00 08 */ stb r9, 8(r6)
+/* 8028E0E8 00289D48 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E0EC 00289D4C 41 80 00 0C */ blt lbl_8028E0F8
+/* 8028E0F0 00289D50 38 00 00 00 */ li r0, 0
+/* 8028E0F4 00289D54 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E0F8:
+/* 8028E0F8 00289D58 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E0FC 00289D5C 3C A0 80 52 */ lis r5, lbl_8051B760@ha
+/* 8028E100 00289D60 54 84 28 34 */ slwi r4, r4, 5
+/* 8028E104 00289D64 38 03 00 01 */ addi r0, r3, 1
+/* 8028E108 00289D68 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l
+/* 8028E10C 00289D6C 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E110 00289D70 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E114 00289D74 7F C5 22 14 */ add r30, r5, r4
+/* 8028E118 00289D78 41 80 00 0C */ blt lbl_8028E124
+/* 8028E11C 00289D7C 38 00 00 00 */ li r0, 0
+/* 8028E120 00289D80 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E124:
+/* 8028E124 00289D84 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E128 00289D88 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028E12C 00289D8C 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E130 00289D90 38 80 00 8A */ li r4, 0x8a
+/* 8028E134 00289D94 7C 83 01 AE */ stbx r4, r3, r0
+/* 8028E138 00289D98 7F CA F3 78 */ mr r10, r30
+/* 8028E13C 00289D9C 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028E140 00289DA0 38 80 00 8A */ li r4, 0x8a
+/* 8028E144 00289DA4 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E148 00289DA8 38 C0 00 20 */ li r6, 0x20
+/* 8028E14C 00289DAC 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E150 00289DB0 38 E0 00 00 */ li r7, 0
+/* 8028E154 00289DB4 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E158 00289DB8 80 AD AA B8 */ lwz r5, lbl_8063FD78-_SDA_BASE_(r13)
+/* 8028E15C 00289DBC 7C 63 02 14 */ add r3, r3, r0
+/* 8028E160 00289DC0 39 00 00 00 */ li r8, 0
+/* 8028E164 00289DC4 90 A3 00 04 */ stw r5, 4(r3)
+/* 8028E168 00289DC8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E16C 00289DCC 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E170 00289DD0 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E174 00289DD4 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E178 00289DD8 7C A5 02 14 */ add r5, r5, r0
+/* 8028E17C 00289DDC 48 01 58 3D */ bl func_802A39B8
+/* 8028E180 00289DE0 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E184 00289DE4 41 82 00 24 */ beq lbl_8028E1A8
+/* 8028E188 00289DE8 7C 64 1B 78 */ mr r4, r3
+/* 8028E18C 00289DEC 38 7F 05 E0 */ addi r3, r31, 0x5e0
+/* 8028E190 00289DF0 4C C6 31 82 */ crclr 6
+/* 8028E194 00289DF4 4B D7 99 31 */ bl func_80007AC4
+/* 8028E198 00289DF8 38 00 00 00 */ li r0, 0
+/* 8028E19C 00289DFC 38 60 00 00 */ li r3, 0
+/* 8028E1A0 00289E00 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E1A4 00289E04 48 00 00 08 */ b lbl_8028E1AC
+lbl_8028E1A8:
+/* 8028E1A8 00289E08 38 60 00 01 */ li r3, 1
+lbl_8028E1AC:
+/* 8028E1AC 00289E0C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E1B0 00289E10 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E1B4 00289E14 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E1B8 00289E18 7C 08 03 A6 */ mtlr r0
+/* 8028E1BC 00289E1C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E1C0 00289E20 4E 80 00 20 */ blr
+
+.global DVDLowAudioBufferConfig
+DVDLowAudioBufferConfig:
+/* 8028E1C4 00289E24 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E1C8 00289E28 7C 08 02 A6 */ mflr r0
+/* 8028E1CC 00289E2C 3D 00 80 52 */ lis r8, lbl_8051B760@ha
+/* 8028E1D0 00289E30 39 60 00 01 */ li r11, 1
+/* 8028E1D4 00289E34 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E1D8 00289E38 39 08 B7 60 */ addi r8, r8, lbl_8051B760@l
+/* 8028E1DC 00289E3C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E1E0 00289E40 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E1E4 00289E44 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E1E8 00289E48 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E1EC 00289E4C 81 4D AA B0 */ lwz r10, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E1F0 00289E50 99 6D AA A8 */ stb r11, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E1F4 00289E54 55 49 28 34 */ slwi r9, r10, 5
+/* 8028E1F8 00289E58 7C E8 4A 14 */ add r7, r8, r9
+/* 8028E1FC 00289E5C 88 C7 00 08 */ lbz r6, 8(r7)
+/* 8028E200 00289E60 7C 06 00 D0 */ neg r0, r6
+/* 8028E204 00289E64 7C 00 33 78 */ or r0, r0, r6
+/* 8028E208 00289E68 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E20C 00289E6C 28 00 00 01 */ cmplwi r0, 1
+/* 8028E210 00289E70 40 82 00 24 */ bne lbl_8028E234
+/* 8028E214 00289E74 7D 44 53 78 */ mr r4, r10
+/* 8028E218 00289E78 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E21C 00289E7C 4C C6 31 82 */ crclr 6
+/* 8028E220 00289E80 4B D7 98 A5 */ bl func_80007AC4
+/* 8028E224 00289E84 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E228 00289E88 4C C6 31 82 */ crclr 6
+/* 8028E22C 00289E8C 4B D7 98 99 */ bl func_80007AC4
+lbl_8028E230:
+/* 8028E230 00289E90 48 00 00 00 */ b lbl_8028E230
+lbl_8028E234:
+/* 8028E234 00289E94 80 C7 00 0C */ lwz r6, 0xc(r7)
+/* 8028E238 00289E98 3C 06 01 15 */ addis r0, r6, 0x115
+/* 8028E23C 00289E9C 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E240 00289EA0 41 82 00 14 */ beq lbl_8028E254
+/* 8028E244 00289EA4 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E248 00289EA8 4C C6 31 82 */ crclr 6
+/* 8028E24C 00289EAC 4B D7 98 79 */ bl func_80007AC4
+lbl_8028E250:
+/* 8028E250 00289EB0 48 00 00 00 */ b lbl_8028E250
+lbl_8028E254:
+/* 8028E254 00289EB4 7C A8 49 2E */ stwx r5, r8, r9
+/* 8028E258 00289EB8 38 0A 00 01 */ addi r0, r10, 1
+/* 8028E25C 00289EBC 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E260 00289EC0 91 67 00 04 */ stw r11, 4(r7)
+/* 8028E264 00289EC4 99 67 00 08 */ stb r11, 8(r7)
+/* 8028E268 00289EC8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E26C 00289ECC 41 80 00 0C */ blt lbl_8028E278
+/* 8028E270 00289ED0 38 00 00 00 */ li r0, 0
+/* 8028E274 00289ED4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E278:
+/* 8028E278 00289ED8 80 AD AA AC */ lwz r5, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E27C 00289EDC 3C C0 80 52 */ lis r6, lbl_8051B760@ha
+/* 8028E280 00289EE0 55 47 28 34 */ slwi r7, r10, 5
+/* 8028E284 00289EE4 38 05 00 01 */ addi r0, r5, 1
+/* 8028E288 00289EE8 38 C6 B7 60 */ addi r6, r6, lbl_8051B760@l
+/* 8028E28C 00289EEC 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E290 00289EF0 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E294 00289EF4 7F C6 3A 14 */ add r30, r6, r7
+/* 8028E298 00289EF8 41 80 00 0C */ blt lbl_8028E2A4
+/* 8028E29C 00289EFC 38 00 00 00 */ li r0, 0
+/* 8028E2A0 00289F00 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E2A4:
+/* 8028E2A4 00289F04 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E2A8 00289F08 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha
+/* 8028E2AC 00289F0C 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E2B0 00289F10 38 C0 00 E4 */ li r6, 0xe4
+/* 8028E2B4 00289F14 7C C5 01 AE */ stbx r6, r5, r0
+/* 8028E2B8 00289F18 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028E2BC 00289F1C 7F CA F3 78 */ mr r10, r30
+/* 8028E2C0 00289F20 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l
+/* 8028E2C4 00289F24 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E2C8 00289F28 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028E2CC 00289F2C 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E2D0 00289F30 38 C0 00 20 */ li r6, 0x20
+/* 8028E2D4 00289F34 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E2D8 00289F38 39 00 00 20 */ li r8, 0x20
+/* 8028E2DC 00289F3C 7C A5 02 14 */ add r5, r5, r0
+/* 8028E2E0 00289F40 90 65 00 04 */ stw r3, 4(r5)
+/* 8028E2E4 00289F44 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E2E8 00289F48 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E2EC 00289F4C 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E2F0 00289F50 7C 63 02 14 */ add r3, r3, r0
+/* 8028E2F4 00289F54 90 83 00 08 */ stw r4, 8(r3)
+/* 8028E2F8 00289F58 38 80 00 E4 */ li r4, 0xe4
+/* 8028E2FC 00289F5C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E300 00289F60 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E304 00289F64 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E308 00289F68 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E30C 00289F6C 7C A5 02 14 */ add r5, r5, r0
+/* 8028E310 00289F70 48 01 56 A9 */ bl func_802A39B8
+/* 8028E314 00289F74 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E318 00289F78 41 82 00 24 */ beq lbl_8028E33C
+/* 8028E31C 00289F7C 7C 64 1B 78 */ mr r4, r3
+/* 8028E320 00289F80 38 7F 06 18 */ addi r3, r31, 0x618
+/* 8028E324 00289F84 4C C6 31 82 */ crclr 6
+/* 8028E328 00289F88 4B D7 97 9D */ bl func_80007AC4
+/* 8028E32C 00289F8C 38 00 00 00 */ li r0, 0
+/* 8028E330 00289F90 38 60 00 00 */ li r3, 0
+/* 8028E334 00289F94 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E338 00289F98 48 00 00 08 */ b lbl_8028E340
+lbl_8028E33C:
+/* 8028E33C 00289F9C 38 60 00 01 */ li r3, 1
+lbl_8028E340:
+/* 8028E340 00289FA0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E344 00289FA4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E348 00289FA8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E34C 00289FAC 7C 08 03 A6 */ mtlr r0
+/* 8028E350 00289FB0 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E354 00289FB4 4E 80 00 20 */ blr
+
+.global DVDLowSetMaximumRotation
+DVDLowSetMaximumRotation:
+/* 8028E358 00289FB8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E35C 00289FBC 7C 08 02 A6 */ mflr r0
+/* 8028E360 00289FC0 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E364 00289FC4 39 40 00 01 */ li r10, 1
+/* 8028E368 00289FC8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E36C 00289FCC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E370 00289FD0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E374 00289FD4 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E378 00289FD8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E37C 00289FDC 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E380 00289FE0 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E384 00289FE4 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E388 00289FE8 55 28 28 34 */ slwi r8, r9, 5
+/* 8028E38C 00289FEC 7C C7 42 14 */ add r6, r7, r8
+/* 8028E390 00289FF0 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028E394 00289FF4 7C 05 00 D0 */ neg r0, r5
+/* 8028E398 00289FF8 7C 00 2B 78 */ or r0, r0, r5
+/* 8028E39C 00289FFC 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E3A0 0028A000 28 00 00 01 */ cmplwi r0, 1
+/* 8028E3A4 0028A004 40 82 00 24 */ bne lbl_8028E3C8
+/* 8028E3A8 0028A008 7D 24 4B 78 */ mr r4, r9
+/* 8028E3AC 0028A00C 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E3B0 0028A010 4C C6 31 82 */ crclr 6
+/* 8028E3B4 0028A014 4B D7 97 11 */ bl func_80007AC4
+/* 8028E3B8 0028A018 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E3BC 0028A01C 4C C6 31 82 */ crclr 6
+/* 8028E3C0 0028A020 4B D7 97 05 */ bl func_80007AC4
+lbl_8028E3C4:
+/* 8028E3C4 0028A024 48 00 00 00 */ b lbl_8028E3C4
+lbl_8028E3C8:
+/* 8028E3C8 0028A028 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028E3CC 0028A02C 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028E3D0 0028A030 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E3D4 0028A034 41 82 00 14 */ beq lbl_8028E3E8
+/* 8028E3D8 0028A038 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E3DC 0028A03C 4C C6 31 82 */ crclr 6
+/* 8028E3E0 0028A040 4B D7 96 E5 */ bl func_80007AC4
+lbl_8028E3E4:
+/* 8028E3E4 0028A044 48 00 00 00 */ b lbl_8028E3E4
+lbl_8028E3E8:
+/* 8028E3E8 0028A048 7C 87 41 2E */ stwx r4, r7, r8
+/* 8028E3EC 0028A04C 38 09 00 01 */ addi r0, r9, 1
+/* 8028E3F0 0028A050 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E3F4 0028A054 91 46 00 04 */ stw r10, 4(r6)
+/* 8028E3F8 0028A058 99 46 00 08 */ stb r10, 8(r6)
+/* 8028E3FC 0028A05C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E400 0028A060 41 80 00 0C */ blt lbl_8028E40C
+/* 8028E404 0028A064 38 00 00 00 */ li r0, 0
+/* 8028E408 0028A068 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E40C:
+/* 8028E40C 0028A06C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E410 0028A070 3C A0 80 52 */ lis r5, lbl_8051B760@ha
+/* 8028E414 0028A074 55 26 28 34 */ slwi r6, r9, 5
+/* 8028E418 0028A078 38 04 00 01 */ addi r0, r4, 1
+/* 8028E41C 0028A07C 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l
+/* 8028E420 0028A080 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E424 0028A084 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E428 0028A088 7F C5 32 14 */ add r30, r5, r6
+/* 8028E42C 0028A08C 41 80 00 0C */ blt lbl_8028E438
+/* 8028E430 0028A090 38 00 00 00 */ li r0, 0
+/* 8028E434 0028A094 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E438:
+/* 8028E438 0028A098 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E43C 0028A09C 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028E440 0028A0A0 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E444 0028A0A4 38 A0 00 DD */ li r5, 0xdd
+/* 8028E448 0028A0A8 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028E44C 0028A0AC 54 65 87 BE */ rlwinm r5, r3, 0x10, 0x1e, 0x1f
+/* 8028E450 0028A0B0 7F CA F3 78 */ mr r10, r30
+/* 8028E454 0028A0B4 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028E458 0028A0B8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E45C 0028A0BC 38 80 00 DD */ li r4, 0xdd
+/* 8028E460 0028A0C0 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E464 0028A0C4 38 C0 00 20 */ li r6, 0x20
+/* 8028E468 0028A0C8 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E46C 0028A0CC 38 E0 00 00 */ li r7, 0
+/* 8028E470 0028A0D0 7C 63 02 14 */ add r3, r3, r0
+/* 8028E474 0028A0D4 39 00 00 00 */ li r8, 0
+/* 8028E478 0028A0D8 90 A3 00 04 */ stw r5, 4(r3)
+/* 8028E47C 0028A0DC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E480 0028A0E0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E484 0028A0E4 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E488 0028A0E8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E48C 0028A0EC 7C A5 02 14 */ add r5, r5, r0
+/* 8028E490 0028A0F0 48 01 55 29 */ bl func_802A39B8
+/* 8028E494 0028A0F4 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E498 0028A0F8 41 82 00 24 */ beq lbl_8028E4BC
+/* 8028E49C 0028A0FC 7C 64 1B 78 */ mr r4, r3
+/* 8028E4A0 0028A100 38 7F 09 CC */ addi r3, r31, 0x9cc
+/* 8028E4A4 0028A104 4C C6 31 82 */ crclr 6
+/* 8028E4A8 0028A108 4B D7 96 1D */ bl func_80007AC4
+/* 8028E4AC 0028A10C 38 00 00 00 */ li r0, 0
+/* 8028E4B0 0028A110 38 60 00 00 */ li r3, 0
+/* 8028E4B4 0028A114 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E4B8 0028A118 48 00 00 08 */ b lbl_8028E4C0
+lbl_8028E4BC:
+/* 8028E4BC 0028A11C 38 60 00 01 */ li r3, 1
+lbl_8028E4C0:
+/* 8028E4C0 0028A120 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E4C4 0028A124 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E4C8 0028A128 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E4CC 0028A12C 7C 08 03 A6 */ mtlr r0
+/* 8028E4D0 0028A130 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E4D4 0028A134 4E 80 00 20 */ blr
+
+.global DVDLowRead
+DVDLowRead:
+/* 8028E4D8 0028A138 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E4DC 0028A13C 7C 08 02 A6 */ mflr r0
+/* 8028E4E0 0028A140 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E4E4 0028A144 54 60 06 FF */ clrlwi. r0, r3, 0x1b
+/* 8028E4E8 0028A148 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E4EC 0028A14C 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E4F0 0028A150 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E4F4 0028A154 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E4F8 0028A158 41 82 00 18 */ beq lbl_8028E510
+/* 8028E4FC 0028A15C 38 7F 0A 0C */ addi r3, r31, 0xa0c
+/* 8028E500 0028A160 4C C6 31 82 */ crclr 6
+/* 8028E504 0028A164 4B D7 95 C1 */ bl func_80007AC4
+/* 8028E508 0028A168 38 60 00 00 */ li r3, 0
+/* 8028E50C 0028A16C 48 00 01 64 */ b lbl_8028E670
+lbl_8028E510:
+/* 8028E510 0028A170 81 6D AA B0 */ lwz r11, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E514 0028A174 3D 20 80 52 */ lis r9, lbl_8051B760@ha
+/* 8028E518 0028A178 39 80 00 01 */ li r12, 1
+/* 8028E51C 0028A17C 55 6A 28 34 */ slwi r10, r11, 5
+/* 8028E520 0028A180 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l
+/* 8028E524 0028A184 7D 09 52 14 */ add r8, r9, r10
+/* 8028E528 0028A188 99 8D AA A8 */ stb r12, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E52C 0028A18C 88 E8 00 08 */ lbz r7, 8(r8)
+/* 8028E530 0028A190 7C 07 00 D0 */ neg r0, r7
+/* 8028E534 0028A194 7C 00 3B 78 */ or r0, r0, r7
+/* 8028E538 0028A198 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E53C 0028A19C 28 00 00 01 */ cmplwi r0, 1
+/* 8028E540 0028A1A0 40 82 00 24 */ bne lbl_8028E564
+/* 8028E544 0028A1A4 7D 64 5B 78 */ mr r4, r11
+/* 8028E548 0028A1A8 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E54C 0028A1AC 4C C6 31 82 */ crclr 6
+/* 8028E550 0028A1B0 4B D7 95 75 */ bl func_80007AC4
+/* 8028E554 0028A1B4 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E558 0028A1B8 4C C6 31 82 */ crclr 6
+/* 8028E55C 0028A1BC 4B D7 95 69 */ bl func_80007AC4
+lbl_8028E560:
+/* 8028E560 0028A1C0 48 00 00 00 */ b lbl_8028E560
+lbl_8028E564:
+/* 8028E564 0028A1C4 80 E8 00 0C */ lwz r7, 0xc(r8)
+/* 8028E568 0028A1C8 3C 07 01 15 */ addis r0, r7, 0x115
+/* 8028E56C 0028A1CC 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E570 0028A1D0 41 82 00 14 */ beq lbl_8028E584
+/* 8028E574 0028A1D4 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E578 0028A1D8 4C C6 31 82 */ crclr 6
+/* 8028E57C 0028A1DC 4B D7 95 49 */ bl func_80007AC4
+lbl_8028E580:
+/* 8028E580 0028A1E0 48 00 00 00 */ b lbl_8028E580
+lbl_8028E584:
+/* 8028E584 0028A1E4 7C C9 51 2E */ stwx r6, r9, r10
+/* 8028E588 0028A1E8 38 0B 00 01 */ addi r0, r11, 1
+/* 8028E58C 0028A1EC 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E590 0028A1F0 91 88 00 04 */ stw r12, 4(r8)
+/* 8028E594 0028A1F4 99 88 00 08 */ stb r12, 8(r8)
+/* 8028E598 0028A1F8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E59C 0028A1FC 41 80 00 0C */ blt lbl_8028E5A8
+/* 8028E5A0 0028A200 38 00 00 00 */ li r0, 0
+/* 8028E5A4 0028A204 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E5A8:
+/* 8028E5A8 0028A208 80 CD AA AC */ lwz r6, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E5AC 0028A20C 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E5B0 0028A210 90 8D AA BC */ stw r4, lbl_8063FD7C-_SDA_BASE_(r13)
+/* 8028E5B4 0028A214 55 68 28 34 */ slwi r8, r11, 5
+/* 8028E5B8 0028A218 38 06 00 01 */ addi r0, r6, 1
+/* 8028E5BC 0028A21C 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E5C0 0028A220 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E5C4 0028A224 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E5C8 0028A228 7F C7 42 14 */ add r30, r7, r8
+/* 8028E5CC 0028A22C 41 80 00 0C */ blt lbl_8028E5D8
+/* 8028E5D0 0028A230 38 00 00 00 */ li r0, 0
+/* 8028E5D4 0028A234 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E5D8:
+/* 8028E5D8 0028A238 80 CD AA C4 */ lwz r6, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E5DC 0028A23C 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028E5E0 0028A240 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E5E4 0028A244 38 E0 00 71 */ li r7, 0x71
+/* 8028E5E8 0028A248 7C E6 01 AE */ stbx r7, r6, r0
+/* 8028E5EC 0028A24C 7C 67 1B 78 */ mr r7, r3
+/* 8028E5F0 0028A250 7C 88 23 78 */ mr r8, r4
+/* 8028E5F4 0028A254 7F CA F3 78 */ mr r10, r30
+/* 8028E5F8 0028A258 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E5FC 0028A25C 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028E600 0028A260 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E604 0028A264 38 C0 00 20 */ li r6, 0x20
+/* 8028E608 0028A268 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E60C 0028A26C 7C 63 02 14 */ add r3, r3, r0
+/* 8028E610 0028A270 90 83 00 04 */ stw r4, 4(r3)
+/* 8028E614 0028A274 38 80 00 71 */ li r4, 0x71
+/* 8028E618 0028A278 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E61C 0028A27C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E620 0028A280 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E624 0028A284 7C 63 02 14 */ add r3, r3, r0
+/* 8028E628 0028A288 90 A3 00 08 */ stw r5, 8(r3)
+/* 8028E62C 0028A28C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E630 0028A290 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E634 0028A294 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E638 0028A298 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E63C 0028A29C 7C A5 02 14 */ add r5, r5, r0
+/* 8028E640 0028A2A0 48 01 53 79 */ bl func_802A39B8
+/* 8028E644 0028A2A4 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E648 0028A2A8 41 82 00 24 */ beq lbl_8028E66C
+/* 8028E64C 0028A2AC 7C 64 1B 78 */ mr r4, r3
+/* 8028E650 0028A2B0 38 7F 0A 4C */ addi r3, r31, 0xa4c
+/* 8028E654 0028A2B4 4C C6 31 82 */ crclr 6
+/* 8028E658 0028A2B8 4B D7 94 6D */ bl func_80007AC4
+/* 8028E65C 0028A2BC 38 00 00 00 */ li r0, 0
+/* 8028E660 0028A2C0 38 60 00 00 */ li r3, 0
+/* 8028E664 0028A2C4 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E668 0028A2C8 48 00 00 08 */ b lbl_8028E670
+lbl_8028E66C:
+/* 8028E66C 0028A2CC 38 60 00 01 */ li r3, 1
+lbl_8028E670:
+/* 8028E670 0028A2D0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E674 0028A2D4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E678 0028A2D8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E67C 0028A2DC 7C 08 03 A6 */ mtlr r0
+/* 8028E680 0028A2E0 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E684 0028A2E4 4E 80 00 20 */ blr
+
+.global DVDLowSeek
+DVDLowSeek:
+/* 8028E688 0028A2E8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E68C 0028A2EC 7C 08 02 A6 */ mflr r0
+/* 8028E690 0028A2F0 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E694 0028A2F4 39 40 00 01 */ li r10, 1
+/* 8028E698 0028A2F8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E69C 0028A2FC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E6A0 0028A300 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E6A4 0028A304 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E6A8 0028A308 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E6AC 0028A30C 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E6B0 0028A310 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E6B4 0028A314 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E6B8 0028A318 55 28 28 34 */ slwi r8, r9, 5
+/* 8028E6BC 0028A31C 7C C7 42 14 */ add r6, r7, r8
+/* 8028E6C0 0028A320 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028E6C4 0028A324 7C 05 00 D0 */ neg r0, r5
+/* 8028E6C8 0028A328 7C 00 2B 78 */ or r0, r0, r5
+/* 8028E6CC 0028A32C 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E6D0 0028A330 28 00 00 01 */ cmplwi r0, 1
+/* 8028E6D4 0028A334 40 82 00 24 */ bne lbl_8028E6F8
+/* 8028E6D8 0028A338 7D 24 4B 78 */ mr r4, r9
+/* 8028E6DC 0028A33C 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E6E0 0028A340 4C C6 31 82 */ crclr 6
+/* 8028E6E4 0028A344 4B D7 93 E1 */ bl func_80007AC4
+/* 8028E6E8 0028A348 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E6EC 0028A34C 4C C6 31 82 */ crclr 6
+/* 8028E6F0 0028A350 4B D7 93 D5 */ bl func_80007AC4
+lbl_8028E6F4:
+/* 8028E6F4 0028A354 48 00 00 00 */ b lbl_8028E6F4
+lbl_8028E6F8:
+/* 8028E6F8 0028A358 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028E6FC 0028A35C 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028E700 0028A360 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E704 0028A364 41 82 00 14 */ beq lbl_8028E718
+/* 8028E708 0028A368 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E70C 0028A36C 4C C6 31 82 */ crclr 6
+/* 8028E710 0028A370 4B D7 93 B5 */ bl func_80007AC4
+lbl_8028E714:
+/* 8028E714 0028A374 48 00 00 00 */ b lbl_8028E714
+lbl_8028E718:
+/* 8028E718 0028A378 7C 87 41 2E */ stwx r4, r7, r8
+/* 8028E71C 0028A37C 38 09 00 01 */ addi r0, r9, 1
+/* 8028E720 0028A380 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E724 0028A384 91 46 00 04 */ stw r10, 4(r6)
+/* 8028E728 0028A388 99 46 00 08 */ stb r10, 8(r6)
+/* 8028E72C 0028A38C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E730 0028A390 41 80 00 0C */ blt lbl_8028E73C
+/* 8028E734 0028A394 38 00 00 00 */ li r0, 0
+/* 8028E738 0028A398 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E73C:
+/* 8028E73C 0028A39C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E740 0028A3A0 3C A0 80 52 */ lis r5, lbl_8051B760@ha
+/* 8028E744 0028A3A4 55 26 28 34 */ slwi r6, r9, 5
+/* 8028E748 0028A3A8 38 04 00 01 */ addi r0, r4, 1
+/* 8028E74C 0028A3AC 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l
+/* 8028E750 0028A3B0 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E754 0028A3B4 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E758 0028A3B8 7F C5 32 14 */ add r30, r5, r6
+/* 8028E75C 0028A3BC 41 80 00 0C */ blt lbl_8028E768
+/* 8028E760 0028A3C0 38 00 00 00 */ li r0, 0
+/* 8028E764 0028A3C4 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E768:
+/* 8028E768 0028A3C8 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E76C 0028A3CC 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028E770 0028A3D0 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E774 0028A3D4 38 A0 00 AB */ li r5, 0xab
+/* 8028E778 0028A3D8 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028E77C 0028A3DC 7F CA F3 78 */ mr r10, r30
+/* 8028E780 0028A3E0 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028E784 0028A3E4 38 80 00 AB */ li r4, 0xab
+/* 8028E788 0028A3E8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E78C 0028A3EC 38 C0 00 20 */ li r6, 0x20
+/* 8028E790 0028A3F0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E794 0028A3F4 38 E0 00 00 */ li r7, 0
+/* 8028E798 0028A3F8 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E79C 0028A3FC 39 00 00 00 */ li r8, 0
+/* 8028E7A0 0028A400 7C A5 02 14 */ add r5, r5, r0
+/* 8028E7A4 0028A404 90 65 00 04 */ stw r3, 4(r5)
+/* 8028E7A8 0028A408 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E7AC 0028A40C 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E7B0 0028A410 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E7B4 0028A414 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E7B8 0028A418 7C A5 02 14 */ add r5, r5, r0
+/* 8028E7BC 0028A41C 48 01 51 FD */ bl func_802A39B8
+/* 8028E7C0 0028A420 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E7C4 0028A424 41 82 00 24 */ beq lbl_8028E7E8
+/* 8028E7C8 0028A428 7C 64 1B 78 */ mr r4, r3
+/* 8028E7CC 0028A42C 38 7F 0A 80 */ addi r3, r31, 0xa80
+/* 8028E7D0 0028A430 4C C6 31 82 */ crclr 6
+/* 8028E7D4 0028A434 4B D7 92 F1 */ bl func_80007AC4
+/* 8028E7D8 0028A438 38 00 00 00 */ li r0, 0
+/* 8028E7DC 0028A43C 38 60 00 00 */ li r3, 0
+/* 8028E7E0 0028A440 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E7E4 0028A444 48 00 00 08 */ b lbl_8028E7EC
+lbl_8028E7E8:
+/* 8028E7E8 0028A448 38 60 00 01 */ li r3, 1
+lbl_8028E7EC:
+/* 8028E7EC 0028A44C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E7F0 0028A450 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E7F4 0028A454 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E7F8 0028A458 7C 08 03 A6 */ mtlr r0
+/* 8028E7FC 0028A45C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E800 0028A460 4E 80 00 20 */ blr
+
+.global DVDLowGetCoverRegister
+DVDLowGetCoverRegister:
+/* 8028E804 0028A464 3C 60 80 52 */ lis r3, lbl_8051B7E0@ha
+/* 8028E808 0028A468 38 63 B7 E0 */ addi r3, r3, lbl_8051B7E0@l
+/* 8028E80C 0028A46C 80 63 00 04 */ lwz r3, 4(r3)
+/* 8028E810 0028A470 4E 80 00 20 */ blr
+
+.global DVDLowPrepareCoverRegister
+DVDLowPrepareCoverRegister:
+/* 8028E814 0028A474 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E818 0028A478 7C 08 02 A6 */ mflr r0
+/* 8028E81C 0028A47C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E820 0028A480 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E824 0028A484 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E828 0028A488 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E82C 0028A48C 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E830 0028A490 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E834 0028A494 38 04 00 01 */ addi r0, r4, 1
+/* 8028E838 0028A498 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E83C 0028A49C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E840 0028A4A0 41 80 00 0C */ blt lbl_8028E84C
+/* 8028E844 0028A4A4 38 00 00 00 */ li r0, 0
+/* 8028E848 0028A4A8 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E84C:
+/* 8028E84C 0028A4AC 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E850 0028A4B0 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E854 0028A4B4 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E858 0028A4B8 38 A0 00 7A */ li r5, 0x7a
+/* 8028E85C 0028A4BC 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028E860 0028A4C0 39 20 00 01 */ li r9, 1
+/* 8028E864 0028A4C4 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E868 0028A4C8 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E86C 0028A4CC 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E870 0028A4D0 54 88 28 34 */ slwi r8, r4, 5
+/* 8028E874 0028A4D4 7C C7 42 14 */ add r6, r7, r8
+/* 8028E878 0028A4D8 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028E87C 0028A4DC 7C 05 00 D0 */ neg r0, r5
+/* 8028E880 0028A4E0 7C 00 2B 78 */ or r0, r0, r5
+/* 8028E884 0028A4E4 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028E888 0028A4E8 28 00 00 01 */ cmplwi r0, 1
+/* 8028E88C 0028A4EC 40 82 00 20 */ bne lbl_8028E8AC
+/* 8028E890 0028A4F0 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028E894 0028A4F4 4C C6 31 82 */ crclr 6
+/* 8028E898 0028A4F8 4B D7 92 2D */ bl func_80007AC4
+/* 8028E89C 0028A4FC 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028E8A0 0028A500 4C C6 31 82 */ crclr 6
+/* 8028E8A4 0028A504 4B D7 92 21 */ bl func_80007AC4
+lbl_8028E8A8:
+/* 8028E8A8 0028A508 48 00 00 00 */ b lbl_8028E8A8
+lbl_8028E8AC:
+/* 8028E8AC 0028A50C 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028E8B0 0028A510 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028E8B4 0028A514 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028E8B8 0028A518 41 82 00 14 */ beq lbl_8028E8CC
+/* 8028E8BC 0028A51C 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028E8C0 0028A520 4C C6 31 82 */ crclr 6
+/* 8028E8C4 0028A524 4B D7 92 01 */ bl func_80007AC4
+lbl_8028E8C8:
+/* 8028E8C8 0028A528 48 00 00 00 */ b lbl_8028E8C8
+lbl_8028E8CC:
+/* 8028E8CC 0028A52C 7C 67 41 2E */ stwx r3, r7, r8
+/* 8028E8D0 0028A530 38 04 00 01 */ addi r0, r4, 1
+/* 8028E8D4 0028A534 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E8D8 0028A538 91 26 00 04 */ stw r9, 4(r6)
+/* 8028E8DC 0028A53C 99 26 00 08 */ stb r9, 8(r6)
+/* 8028E8E0 0028A540 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E8E4 0028A544 41 80 00 0C */ blt lbl_8028E8F0
+/* 8028E8E8 0028A548 38 00 00 00 */ li r0, 0
+/* 8028E8EC 0028A54C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028E8F0:
+/* 8028E8F0 0028A550 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E8F4 0028A554 3C 60 80 52 */ lis r3, lbl_8051B760@ha
+/* 8028E8F8 0028A558 54 85 28 34 */ slwi r5, r4, 5
+/* 8028E8FC 0028A55C 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E900 0028A560 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l
+/* 8028E904 0028A564 3C E0 80 52 */ lis r7, lbl_8051B800@ha
+/* 8028E908 0028A568 7F C3 2A 14 */ add r30, r3, r5
+/* 8028E90C 0028A56C 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E910 0028A570 3D 20 80 29 */ lis r9, doPrepareCoverRegisterCallback@ha
+/* 8028E914 0028A574 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028E918 0028A578 7C A4 02 14 */ add r5, r4, r0
+/* 8028E91C 0028A57C 7F CA F3 78 */ mr r10, r30
+/* 8028E920 0028A580 38 E7 B8 00 */ addi r7, r7, lbl_8051B800@l
+/* 8028E924 0028A584 39 29 D1 D0 */ addi r9, r9, doPrepareCoverRegisterCallback@l
+/* 8028E928 0028A588 38 80 00 7A */ li r4, 0x7a
+/* 8028E92C 0028A58C 38 C0 00 20 */ li r6, 0x20
+/* 8028E930 0028A590 39 00 00 20 */ li r8, 0x20
+/* 8028E934 0028A594 48 01 50 85 */ bl func_802A39B8
+/* 8028E938 0028A598 2C 03 00 00 */ cmpwi r3, 0
+/* 8028E93C 0028A59C 41 82 00 24 */ beq lbl_8028E960
+/* 8028E940 0028A5A0 7C 64 1B 78 */ mr r4, r3
+/* 8028E944 0028A5A4 38 7F 0B 30 */ addi r3, r31, 0xb30
+/* 8028E948 0028A5A8 4C C6 31 82 */ crclr 6
+/* 8028E94C 0028A5AC 4B D7 91 79 */ bl func_80007AC4
+/* 8028E950 0028A5B0 38 00 00 00 */ li r0, 0
+/* 8028E954 0028A5B4 38 60 00 00 */ li r3, 0
+/* 8028E958 0028A5B8 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028E95C 0028A5BC 48 00 00 08 */ b lbl_8028E964
+lbl_8028E960:
+/* 8028E960 0028A5C0 38 60 00 01 */ li r3, 1
+lbl_8028E964:
+/* 8028E964 0028A5C4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028E968 0028A5C8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028E96C 0028A5CC 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028E970 0028A5D0 7C 08 03 A6 */ mtlr r0
+/* 8028E974 0028A5D4 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028E978 0028A5D8 4E 80 00 20 */ blr
+
+.global DVDLowGetImmBufferReg
+DVDLowGetImmBufferReg:
+/* 8028E97C 0028A5DC 3C 60 80 52 */ lis r3, lbl_8051B7E0@ha
+/* 8028E980 0028A5E0 80 63 B7 E0 */ lwz r3, lbl_8051B7E0@l(r3)
+/* 8028E984 0028A5E4 4E 80 00 20 */ blr
+
+.global DVDLowUnmaskStatusInterrupts
+DVDLowUnmaskStatusInterrupts:
+/* 8028E988 0028A5E8 38 60 00 01 */ li r3, 1
+/* 8028E98C 0028A5EC 4E 80 00 20 */ blr
+
+.global DVDLowMaskCoverInterrupt
+DVDLowMaskCoverInterrupt:
+/* 8028E990 0028A5F0 38 60 00 01 */ li r3, 1
+/* 8028E994 0028A5F4 4E 80 00 20 */ blr
+
+.global DVDLowClearCoverInterrupt
+DVDLowClearCoverInterrupt:
+/* 8028E998 0028A5F8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028E99C 0028A5FC 7C 08 02 A6 */ mflr r0
+/* 8028E9A0 0028A600 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028E9A4 0028A604 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028E9A8 0028A608 3F E0 80 43 */ lis r31, lbl_804366A0@ha
+/* 8028E9AC 0028A60C 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l
+/* 8028E9B0 0028A610 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028E9B4 0028A614 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E9B8 0028A618 38 04 00 01 */ addi r0, r4, 1
+/* 8028E9BC 0028A61C 2C 00 00 04 */ cmpwi r0, 4
+/* 8028E9C0 0028A620 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028E9C4 0028A624 41 80 00 0C */ blt lbl_8028E9D0
+/* 8028E9C8 0028A628 38 00 00 00 */ li r0, 0
+/* 8028E9CC 0028A62C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13)
+lbl_8028E9D0:
+/* 8028E9D0 0028A630 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028E9D4 0028A634 3C E0 80 52 */ lis r7, lbl_8051B760@ha
+/* 8028E9D8 0028A638 54 00 28 34 */ slwi r0, r0, 5
+/* 8028E9DC 0028A63C 38 A0 00 86 */ li r5, 0x86
+/* 8028E9E0 0028A640 7C A4 01 AE */ stbx r5, r4, r0
+/* 8028E9E4 0028A644 39 20 00 01 */ li r9, 1
+/* 8028E9E8 0028A648 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l
+/* 8028E9EC 0028A64C 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028E9F0 0028A650 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13)
+/* 8028E9F4 0028A654 54 88 28 34 */ slwi r8, r4, 5
+/* 8028E9F8 0028A658 7C C7 42 14 */ add r6, r7, r8
+/* 8028E9FC 0028A65C 88 A6 00 08 */ lbz r5, 8(r6)
+/* 8028EA00 0028A660 7C 05 00 D0 */ neg r0, r5
+/* 8028EA04 0028A664 7C 00 2B 78 */ or r0, r0, r5
+/* 8028EA08 0028A668 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 8028EA0C 0028A66C 28 00 00 01 */ cmplwi r0, 1
+/* 8028EA10 0028A670 40 82 00 20 */ bne lbl_8028EA30
+/* 8028EA14 0028A674 38 7F 02 18 */ addi r3, r31, 0x218
+/* 8028EA18 0028A678 4C C6 31 82 */ crclr 6
+/* 8028EA1C 0028A67C 4B D7 90 A9 */ bl func_80007AC4
+/* 8028EA20 0028A680 38 7F 02 50 */ addi r3, r31, 0x250
+/* 8028EA24 0028A684 4C C6 31 82 */ crclr 6
+/* 8028EA28 0028A688 4B D7 90 9D */ bl func_80007AC4
+lbl_8028EA2C:
+/* 8028EA2C 0028A68C 48 00 00 00 */ b lbl_8028EA2C
+lbl_8028EA30:
+/* 8028EA30 0028A690 80 A6 00 0C */ lwz r5, 0xc(r6)
+/* 8028EA34 0028A694 3C 05 01 15 */ addis r0, r5, 0x115
+/* 8028EA38 0028A698 28 00 DA ED */ cmplwi r0, 0xdaed
+/* 8028EA3C 0028A69C 41 82 00 14 */ beq lbl_8028EA50
+/* 8028EA40 0028A6A0 38 7F 02 80 */ addi r3, r31, 0x280
+/* 8028EA44 0028A6A4 4C C6 31 82 */ crclr 6
+/* 8028EA48 0028A6A8 4B D7 90 7D */ bl func_80007AC4
+lbl_8028EA4C:
+/* 8028EA4C 0028A6AC 48 00 00 00 */ b lbl_8028EA4C
+lbl_8028EA50:
+/* 8028EA50 0028A6B0 7C 67 41 2E */ stwx r3, r7, r8
+/* 8028EA54 0028A6B4 38 04 00 01 */ addi r0, r4, 1
+/* 8028EA58 0028A6B8 2C 00 00 04 */ cmpwi r0, 4
+/* 8028EA5C 0028A6BC 91 26 00 04 */ stw r9, 4(r6)
+/* 8028EA60 0028A6C0 99 26 00 08 */ stb r9, 8(r6)
+/* 8028EA64 0028A6C4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+/* 8028EA68 0028A6C8 41 80 00 0C */ blt lbl_8028EA74
+/* 8028EA6C 0028A6CC 38 00 00 00 */ li r0, 0
+/* 8028EA70 0028A6D0 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13)
+lbl_8028EA74:
+/* 8028EA74 0028A6D4 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13)
+/* 8028EA78 0028A6D8 3C 60 80 52 */ lis r3, lbl_8051B760@ha
+/* 8028EA7C 0028A6DC 54 85 28 34 */ slwi r5, r4, 5
+/* 8028EA80 0028A6E0 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13)
+/* 8028EA84 0028A6E4 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l
+/* 8028EA88 0028A6E8 3D 20 80 29 */ lis r9, doTransactionCallback@ha
+/* 8028EA8C 0028A6EC 7F C3 2A 14 */ add r30, r3, r5
+/* 8028EA90 0028A6F0 54 00 28 34 */ slwi r0, r0, 5
+/* 8028EA94 0028A6F4 7C A4 02 14 */ add r5, r4, r0
+/* 8028EA98 0028A6F8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13)
+/* 8028EA9C 0028A6FC 7F CA F3 78 */ mr r10, r30
+/* 8028EAA0 0028A700 39 29 D1 18 */ addi r9, r9, doTransactionCallback@l
+/* 8028EAA4 0028A704 38 80 00 86 */ li r4, 0x86
+/* 8028EAA8 0028A708 38 C0 00 20 */ li r6, 0x20
+/* 8028EAAC 0028A70C 38 E0 00 00 */ li r7, 0
+/* 8028EAB0 0028A710 39 00 00 00 */ li r8, 0
+/* 8028EAB4 0028A714 48 01 4F 05 */ bl func_802A39B8
+/* 8028EAB8 0028A718 2C 03 00 00 */ cmpwi r3, 0
+/* 8028EABC 0028A71C 41 82 00 24 */ beq lbl_8028EAE0
+/* 8028EAC0 0028A720 7C 64 1B 78 */ mr r4, r3
+/* 8028EAC4 0028A724 38 7F 0B 74 */ addi r3, r31, 0xb74
+/* 8028EAC8 0028A728 4C C6 31 82 */ crclr 6
+/* 8028EACC 0028A72C 4B D7 8F F9 */ bl func_80007AC4
+/* 8028EAD0 0028A730 38 00 00 00 */ li r0, 0
+/* 8028EAD4 0028A734 38 60 00 00 */ li r3, 0
+/* 8028EAD8 0028A738 98 1E 00 08 */ stb r0, 8(r30)
+/* 8028EADC 0028A73C 48 00 00 08 */ b lbl_8028EAE4
+lbl_8028EAE0:
+/* 8028EAE0 0028A740 38 60 00 01 */ li r3, 1
+lbl_8028EAE4:
+/* 8028EAE4 0028A744 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028EAE8 0028A748 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028EAEC 0028A74C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028EAF0 0028A750 7C 08 03 A6 */ mtlr r0
+/* 8028EAF4 0028A754 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028EAF8 0028A758 4E 80 00 20 */ blr
+
+.global __DVDLowTestAlarm
+__DVDLowTestAlarm:
+/* 8028EAFC 0028A75C 38 60 00 00 */ li r3, 0
+/* 8028EB00 0028A760 4E 80 00 20 */ blr
diff --git a/asm/SDK/DVD/dvderror.s b/asm/SDK/DVD/dvderror.s new file mode 100644 index 0000000..c3355e2 --- /dev/null +++ b/asm/SDK/DVD/dvderror.s @@ -0,0 +1,221 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+cbForNandClose:
+/* 8028CBE4 00288844 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CBE8 00288848 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CBEC 0028884C 4D 82 00 20 */ beqlr
+/* 8028CBF0 00288850 7C 60 00 34 */ cntlzw r0, r3
+/* 8028CBF4 00288854 38 80 00 00 */ li r4, 0
+/* 8028CBF8 00288858 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f
+/* 8028CBFC 0028885C 7C 60 00 D0 */ neg r3, r0
+/* 8028CC00 00288860 38 63 00 02 */ addi r3, r3, 2
+/* 8028CC04 00288864 7D 89 03 A6 */ mtctr r12
+/* 8028CC08 00288868 4E 80 04 20 */ bctr
+/* 8028CC0C 0028886C 4E 80 00 20 */ blr
+
+cbForNandWrite:
+/* 8028CC10 00288870 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CC14 00288874 7C 08 02 A6 */ mflr r0
+/* 8028CC18 00288878 3C 60 80 52 */ lis r3, lbl_8051B580@ha
+/* 8028CC1C 0028887C 3C 80 80 29 */ lis r4, cbForNandClose@ha
+/* 8028CC20 00288880 3C A0 80 52 */ lis r5, lbl_8051B610@ha
+/* 8028CC24 00288884 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CC28 00288888 38 63 B5 80 */ addi r3, r3, lbl_8051B580@l
+/* 8028CC2C 0028888C 38 84 CB E4 */ addi r4, r4, cbForNandClose@l
+/* 8028CC30 00288890 38 A5 B6 10 */ addi r5, r5, lbl_8051B610@l
+/* 8028CC34 00288894 48 05 BA C1 */ bl func_802E86F4
+/* 8028CC38 00288898 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CC3C 0028889C 41 82 00 20 */ beq lbl_8028CC5C
+/* 8028CC40 002888A0 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CC44 002888A4 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CC48 002888A8 41 82 00 14 */ beq lbl_8028CC5C
+/* 8028CC4C 002888AC 38 60 00 02 */ li r3, 2
+/* 8028CC50 002888B0 38 80 00 00 */ li r4, 0
+/* 8028CC54 002888B4 7D 89 03 A6 */ mtctr r12
+/* 8028CC58 002888B8 4E 80 04 21 */ bctrl
+lbl_8028CC5C:
+/* 8028CC5C 002888BC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CC60 002888C0 7C 08 03 A6 */ mtlr r0
+/* 8028CC64 002888C4 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CC68 002888C8 4E 80 00 20 */ blr
+
+.global cbForNandOpen
+cbForNandOpen:
+/* 8028CC6C 002888CC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CC70 002888D0 7C 08 02 A6 */ mflr r0
+/* 8028CC74 002888D4 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CC78 002888D8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CC7C 002888DC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CC80 002888E0 3F E0 80 52 */ lis r31, lbl_8051B580@ha
+/* 8028CC84 002888E4 3B FF B5 80 */ addi r31, r31, lbl_8051B580@l
+/* 8028CC88 002888E8 40 82 00 64 */ bne lbl_8028CCEC
+/* 8028CC8C 002888EC 3C C0 80 29 */ lis r6, cbForNandWrite@ha
+/* 8028CC90 002888F0 38 7F 00 00 */ addi r3, r31, 0
+/* 8028CC94 002888F4 38 9F 01 60 */ addi r4, r31, 0x160
+/* 8028CC98 002888F8 38 FF 00 90 */ addi r7, r31, 0x90
+/* 8028CC9C 002888FC 38 C6 CC 10 */ addi r6, r6, cbForNandWrite@l
+/* 8028CCA0 00288900 38 A0 00 80 */ li r5, 0x80
+/* 8028CCA4 00288904 48 05 AD 65 */ bl func_802E7A08
+/* 8028CCA8 00288908 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CCAC 0028890C 41 82 00 5C */ beq lbl_8028CD08
+/* 8028CCB0 00288910 3C 80 80 29 */ lis r4, cbForNandClose@ha
+/* 8028CCB4 00288914 38 7F 00 00 */ addi r3, r31, 0
+/* 8028CCB8 00288918 38 84 CB E4 */ addi r4, r4, cbForNandClose@l
+/* 8028CCBC 0028891C 38 BF 00 90 */ addi r5, r31, 0x90
+/* 8028CCC0 00288920 48 05 BA 35 */ bl func_802E86F4
+/* 8028CCC4 00288924 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CCC8 00288928 41 82 00 40 */ beq lbl_8028CD08
+/* 8028CCCC 0028892C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CCD0 00288930 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CCD4 00288934 41 82 00 34 */ beq lbl_8028CD08
+/* 8028CCD8 00288938 38 60 00 02 */ li r3, 2
+/* 8028CCDC 0028893C 38 80 00 00 */ li r4, 0
+/* 8028CCE0 00288940 7D 89 03 A6 */ mtctr r12
+/* 8028CCE4 00288944 4E 80 04 21 */ bctrl
+/* 8028CCE8 00288948 48 00 00 20 */ b lbl_8028CD08
+lbl_8028CCEC:
+/* 8028CCEC 0028894C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CCF0 00288950 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CCF4 00288954 41 82 00 14 */ beq lbl_8028CD08
+/* 8028CCF8 00288958 38 60 00 02 */ li r3, 2
+/* 8028CCFC 0028895C 38 80 00 00 */ li r4, 0
+/* 8028CD00 00288960 7D 89 03 A6 */ mtctr r12
+/* 8028CD04 00288964 4E 80 04 21 */ bctrl
+lbl_8028CD08:
+/* 8028CD08 00288968 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CD0C 0028896C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CD10 00288970 7C 08 03 A6 */ mtlr r0
+/* 8028CD14 00288974 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CD18 00288978 4E 80 00 20 */ blr
+
+cbForNandCreate:
+/* 8028CD1C 0028897C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CD20 00288980 7C 08 02 A6 */ mflr r0
+/* 8028CD24 00288984 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CD28 00288988 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CD2C 0028898C 41 82 00 0C */ beq lbl_8028CD38
+/* 8028CD30 00288990 2C 03 FF FA */ cmpwi r3, -6
+/* 8028CD34 00288994 40 82 00 54 */ bne lbl_8028CD88
+lbl_8028CD38:
+/* 8028CD38 00288998 3C 60 80 43 */ lis r3, lbl_804361C0@ha
+/* 8028CD3C 0028899C 3C 80 80 52 */ lis r4, lbl_8051B580@ha
+/* 8028CD40 002889A0 3C C0 80 29 */ lis r6, cbForNandOpen@ha
+/* 8028CD44 002889A4 3C E0 80 52 */ lis r7, lbl_8051B610@ha
+/* 8028CD48 002889A8 38 63 61 C0 */ addi r3, r3, lbl_804361C0@l
+/* 8028CD4C 002889AC 38 84 B5 80 */ addi r4, r4, lbl_8051B580@l
+/* 8028CD50 002889B0 38 C6 CC 6C */ addi r6, r6, cbForNandOpen@l
+/* 8028CD54 002889B4 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l
+/* 8028CD58 002889B8 38 A0 00 02 */ li r5, 2
+/* 8028CD5C 002889BC 48 05 B8 3D */ bl func_802E8598
+/* 8028CD60 002889C0 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CD64 002889C4 41 82 00 40 */ beq lbl_8028CDA4
+/* 8028CD68 002889C8 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CD6C 002889CC 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CD70 002889D0 41 82 00 34 */ beq lbl_8028CDA4
+/* 8028CD74 002889D4 38 60 00 02 */ li r3, 2
+/* 8028CD78 002889D8 38 80 00 00 */ li r4, 0
+/* 8028CD7C 002889DC 7D 89 03 A6 */ mtctr r12
+/* 8028CD80 002889E0 4E 80 04 21 */ bctrl
+/* 8028CD84 002889E4 48 00 00 20 */ b lbl_8028CDA4
+lbl_8028CD88:
+/* 8028CD88 002889E8 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CD8C 002889EC 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CD90 002889F0 41 82 00 14 */ beq lbl_8028CDA4
+/* 8028CD94 002889F4 38 60 00 02 */ li r3, 2
+/* 8028CD98 002889F8 38 80 00 00 */ li r4, 0
+/* 8028CD9C 002889FC 7D 89 03 A6 */ mtctr r12
+/* 8028CDA0 00288A00 4E 80 04 21 */ bctrl
+lbl_8028CDA4:
+/* 8028CDA4 00288A04 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CDA8 00288A08 7C 08 03 A6 */ mtlr r0
+/* 8028CDAC 00288A0C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CDB0 00288A10 4E 80 00 20 */ blr
+
+cbForNandCreateDir:
+/* 8028CDB4 00288A14 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CDB8 00288A18 7C 08 02 A6 */ mflr r0
+/* 8028CDBC 00288A1C 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CDC0 00288A20 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CDC4 00288A24 41 82 00 0C */ beq lbl_8028CDD0
+/* 8028CDC8 00288A28 2C 03 FF FA */ cmpwi r3, -6
+/* 8028CDCC 00288A2C 40 82 00 50 */ bne lbl_8028CE1C
+lbl_8028CDD0:
+/* 8028CDD0 00288A30 3C 60 80 43 */ lis r3, lbl_804361C0@ha
+/* 8028CDD4 00288A34 3C C0 80 29 */ lis r6, cbForNandCreate@ha
+/* 8028CDD8 00288A38 3C E0 80 52 */ lis r7, lbl_8051B610@ha
+/* 8028CDDC 00288A3C 38 80 00 3F */ li r4, 0x3f
+/* 8028CDE0 00288A40 38 63 61 C0 */ addi r3, r3, lbl_804361C0@l
+/* 8028CDE4 00288A44 38 C6 CD 1C */ addi r6, r6, cbForNandCreate@l
+/* 8028CDE8 00288A48 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l
+/* 8028CDEC 00288A4C 38 A0 00 00 */ li r5, 0
+/* 8028CDF0 00288A50 48 05 A8 E9 */ bl func_802E76D8
+/* 8028CDF4 00288A54 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CDF8 00288A58 41 82 00 40 */ beq lbl_8028CE38
+/* 8028CDFC 00288A5C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CE00 00288A60 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CE04 00288A64 41 82 00 34 */ beq lbl_8028CE38
+/* 8028CE08 00288A68 38 60 00 02 */ li r3, 2
+/* 8028CE0C 00288A6C 38 80 00 00 */ li r4, 0
+/* 8028CE10 00288A70 7D 89 03 A6 */ mtctr r12
+/* 8028CE14 00288A74 4E 80 04 21 */ bctrl
+/* 8028CE18 00288A78 48 00 00 20 */ b lbl_8028CE38
+lbl_8028CE1C:
+/* 8028CE1C 00288A7C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CE20 00288A80 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CE24 00288A84 41 82 00 14 */ beq lbl_8028CE38
+/* 8028CE28 00288A88 38 60 00 02 */ li r3, 2
+/* 8028CE2C 00288A8C 38 80 00 00 */ li r4, 0
+/* 8028CE30 00288A90 7D 89 03 A6 */ mtctr r12
+/* 8028CE34 00288A94 4E 80 04 21 */ bctrl
+lbl_8028CE38:
+/* 8028CE38 00288A98 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CE3C 00288A9C 7C 08 03 A6 */ mtlr r0
+/* 8028CE40 00288AA0 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CE44 00288AA4 4E 80 00 20 */ blr
+
+.global __DVDStoreErrorCode
+__DVDStoreErrorCode:
+/* 8028CE48 00288AA8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CE4C 00288AAC 7C 08 02 A6 */ mflr r0
+/* 8028CE50 00288AB0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CE54 00288AB4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CE58 00288AB8 3F E0 80 52 */ lis r31, lbl_8051B6E0@ha
+/* 8028CE5C 00288ABC 3B FF B6 E0 */ addi r31, r31, lbl_8051B6E0@l
+/* 8028CE60 00288AC0 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028CE64 00288AC4 7C 9E 23 78 */ mr r30, r4
+/* 8028CE68 00288AC8 90 7F 00 08 */ stw r3, 8(r31)
+/* 8028CE6C 00288ACC 4B FE 59 4D */ bl OSGetTime
+/* 8028CE70 00288AD0 3C C0 80 00 */ lis r6, 0x800000F8@ha
+/* 8028CE74 00288AD4 38 A0 00 00 */ li r5, 0
+/* 8028CE78 00288AD8 80 06 00 F8 */ lwz r0, 0x800000F8@l(r6)
+/* 8028CE7C 00288ADC 54 06 F0 BE */ srwi r6, r0, 2
+/* 8028CE80 00288AE0 4B F3 A3 F9 */ bl __div2i
+/* 8028CE84 00288AE4 90 9F 00 0C */ stw r4, 0xc(r31)
+/* 8028CE88 00288AE8 3C 60 80 43 */ lis r3, lbl_804361DC@ha
+/* 8028CE8C 00288AEC 3C C0 80 29 */ lis r6, cbForNandCreateDir@ha
+/* 8028CE90 00288AF0 3C E0 80 52 */ lis r7, lbl_8051B610@ha
+/* 8028CE94 00288AF4 93 CD AA 98 */ stw r30, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CE98 00288AF8 38 63 61 DC */ addi r3, r3, lbl_804361DC@l
+/* 8028CE9C 00288AFC 38 C6 CD B4 */ addi r6, r6, cbForNandCreateDir@l
+/* 8028CEA0 00288B00 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l
+/* 8028CEA4 00288B04 38 80 00 3F */ li r4, 0x3f
+/* 8028CEA8 00288B08 38 A0 00 00 */ li r5, 0
+/* 8028CEAC 00288B0C 48 05 AF A9 */ bl func_802E7E54
+/* 8028CEB0 00288B10 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CEB4 00288B14 41 82 00 20 */ beq lbl_8028CED4
+/* 8028CEB8 00288B18 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13)
+/* 8028CEBC 00288B1C 2C 0C 00 00 */ cmpwi r12, 0
+/* 8028CEC0 00288B20 41 82 00 14 */ beq lbl_8028CED4
+/* 8028CEC4 00288B24 38 60 00 02 */ li r3, 2
+/* 8028CEC8 00288B28 38 80 00 00 */ li r4, 0
+/* 8028CECC 00288B2C 7D 89 03 A6 */ mtctr r12
+/* 8028CED0 00288B30 4E 80 04 21 */ bctrl
+lbl_8028CED4:
+/* 8028CED4 00288B34 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CED8 00288B38 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CEDC 00288B3C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028CEE0 00288B40 7C 08 03 A6 */ mtlr r0
+/* 8028CEE4 00288B44 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CEE8 00288B48 4E 80 00 20 */ blr
diff --git a/asm/SDK/DVD/dvdidutils.s b/asm/SDK/DVD/dvdidutils.s new file mode 100644 index 0000000..c73d605 --- /dev/null +++ b/asm/SDK/DVD/dvdidutils.s @@ -0,0 +1,72 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global DVDCompareDiskID
+DVDCompareDiskID:
+/* 8028CEEC 00288B4C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CEF0 00288B50 7C 08 02 A6 */ mflr r0
+/* 8028CEF4 00288B54 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CEF8 00288B58 88 03 00 00 */ lbz r0, 0(r3)
+/* 8028CEFC 00288B5C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CF00 00288B60 7C 9F 23 78 */ mr r31, r4
+/* 8028CF04 00288B64 7C 00 07 75 */ extsb. r0, r0
+/* 8028CF08 00288B68 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028CF0C 00288B6C 7C 7E 1B 78 */ mr r30, r3
+/* 8028CF10 00288B70 41 82 00 28 */ beq lbl_8028CF38
+/* 8028CF14 00288B74 88 04 00 00 */ lbz r0, 0(r4)
+/* 8028CF18 00288B78 7C 00 07 75 */ extsb. r0, r0
+/* 8028CF1C 00288B7C 41 82 00 1C */ beq lbl_8028CF38
+/* 8028CF20 00288B80 38 A0 00 04 */ li r5, 4
+/* 8028CF24 00288B84 4B F4 16 45 */ bl strncmp
+/* 8028CF28 00288B88 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CF2C 00288B8C 41 82 00 0C */ beq lbl_8028CF38
+/* 8028CF30 00288B90 38 60 00 00 */ li r3, 0
+/* 8028CF34 00288B94 48 00 00 90 */ b lbl_8028CFC4
+lbl_8028CF38:
+/* 8028CF38 00288B98 88 1E 00 04 */ lbz r0, 4(r30)
+/* 8028CF3C 00288B9C 7C 00 07 75 */ extsb. r0, r0
+/* 8028CF40 00288BA0 41 82 00 28 */ beq lbl_8028CF68
+/* 8028CF44 00288BA4 88 1F 00 04 */ lbz r0, 4(r31)
+/* 8028CF48 00288BA8 7C 00 07 75 */ extsb. r0, r0
+/* 8028CF4C 00288BAC 41 82 00 1C */ beq lbl_8028CF68
+/* 8028CF50 00288BB0 38 7E 00 04 */ addi r3, r30, 4
+/* 8028CF54 00288BB4 38 9F 00 04 */ addi r4, r31, 4
+/* 8028CF58 00288BB8 38 A0 00 02 */ li r5, 2
+/* 8028CF5C 00288BBC 4B F4 16 0D */ bl strncmp
+/* 8028CF60 00288BC0 2C 03 00 00 */ cmpwi r3, 0
+/* 8028CF64 00288BC4 41 82 00 0C */ beq lbl_8028CF70
+lbl_8028CF68:
+/* 8028CF68 00288BC8 38 60 00 00 */ li r3, 0
+/* 8028CF6C 00288BCC 48 00 00 58 */ b lbl_8028CFC4
+lbl_8028CF70:
+/* 8028CF70 00288BD0 88 7E 00 06 */ lbz r3, 6(r30)
+/* 8028CF74 00288BD4 28 03 00 FF */ cmplwi r3, 0xff
+/* 8028CF78 00288BD8 41 82 00 20 */ beq lbl_8028CF98
+/* 8028CF7C 00288BDC 88 1F 00 06 */ lbz r0, 6(r31)
+/* 8028CF80 00288BE0 28 00 00 FF */ cmplwi r0, 0xff
+/* 8028CF84 00288BE4 41 82 00 14 */ beq lbl_8028CF98
+/* 8028CF88 00288BE8 7C 03 00 40 */ cmplw r3, r0
+/* 8028CF8C 00288BEC 41 82 00 0C */ beq lbl_8028CF98
+/* 8028CF90 00288BF0 38 60 00 00 */ li r3, 0
+/* 8028CF94 00288BF4 48 00 00 30 */ b lbl_8028CFC4
+lbl_8028CF98:
+/* 8028CF98 00288BF8 88 7E 00 07 */ lbz r3, 7(r30)
+/* 8028CF9C 00288BFC 28 03 00 FF */ cmplwi r3, 0xff
+/* 8028CFA0 00288C00 41 82 00 20 */ beq lbl_8028CFC0
+/* 8028CFA4 00288C04 88 1F 00 07 */ lbz r0, 7(r31)
+/* 8028CFA8 00288C08 28 00 00 FF */ cmplwi r0, 0xff
+/* 8028CFAC 00288C0C 41 82 00 14 */ beq lbl_8028CFC0
+/* 8028CFB0 00288C10 7C 03 00 40 */ cmplw r3, r0
+/* 8028CFB4 00288C14 41 82 00 0C */ beq lbl_8028CFC0
+/* 8028CFB8 00288C18 38 60 00 00 */ li r3, 0
+/* 8028CFBC 00288C1C 48 00 00 08 */ b lbl_8028CFC4
+lbl_8028CFC0:
+/* 8028CFC0 00288C20 38 60 00 01 */ li r3, 1
+lbl_8028CFC4:
+/* 8028CFC4 00288C24 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CFC8 00288C28 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CFCC 00288C2C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028CFD0 00288C30 7C 08 03 A6 */ mtlr r0
+/* 8028CFD4 00288C34 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CFD8 00288C38 4E 80 00 20 */ blr
diff --git a/asm/SDK/DVD/dvdqueue.s b/asm/SDK/DVD/dvdqueue.s new file mode 100644 index 0000000..5dac7d5 --- /dev/null +++ b/asm/SDK/DVD/dvdqueue.s @@ -0,0 +1,183 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __DVDClearWaitingQueue
+__DVDClearWaitingQueue:
+/* 8028C98C 002885EC 3C C0 80 52 */ lis r6, lbl_8051B550@ha
+/* 8028C990 002885F0 38 C6 B5 50 */ addi r6, r6, lbl_8051B550@l
+/* 8028C994 002885F4 38 A6 00 08 */ addi r5, r6, 8
+/* 8028C998 002885F8 90 C6 00 00 */ stw r6, 0(r6)
+/* 8028C99C 002885FC 38 86 00 10 */ addi r4, r6, 0x10
+/* 8028C9A0 00288600 38 66 00 18 */ addi r3, r6, 0x18
+/* 8028C9A4 00288604 90 C6 00 04 */ stw r6, 4(r6)
+/* 8028C9A8 00288608 90 A6 00 08 */ stw r5, 8(r6)
+/* 8028C9AC 0028860C 90 A6 00 0C */ stw r5, 0xc(r6)
+/* 8028C9B0 00288610 90 86 00 10 */ stw r4, 0x10(r6)
+/* 8028C9B4 00288614 90 86 00 14 */ stw r4, 0x14(r6)
+/* 8028C9B8 00288618 90 66 00 18 */ stw r3, 0x18(r6)
+/* 8028C9BC 0028861C 90 66 00 1C */ stw r3, 0x1c(r6)
+/* 8028C9C0 00288620 4E 80 00 20 */ blr
+
+.global __DVDPushWaitingQueue
+__DVDPushWaitingQueue:
+/* 8028C9C4 00288624 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028C9C8 00288628 7C 08 02 A6 */ mflr r0
+/* 8028C9CC 0028862C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028C9D0 00288630 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028C9D4 00288634 7C 9F 23 78 */ mr r31, r4
+/* 8028C9D8 00288638 93 C1 00 08 */ stw r30, 8(r1)
+/* 8028C9DC 0028863C 7C 7E 1B 78 */ mr r30, r3
+/* 8028C9E0 00288640 4B FE 1D 7D */ bl OSDisableInterrupts
+/* 8028C9E4 00288644 3C 80 80 52 */ lis r4, lbl_8051B550@ha
+/* 8028C9E8 00288648 57 C0 18 38 */ slwi r0, r30, 3
+/* 8028C9EC 0028864C 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l
+/* 8028C9F0 00288650 7C A4 02 14 */ add r5, r4, r0
+/* 8028C9F4 00288654 80 85 00 04 */ lwz r4, 4(r5)
+/* 8028C9F8 00288658 93 E4 00 00 */ stw r31, 0(r4)
+/* 8028C9FC 0028865C 80 05 00 04 */ lwz r0, 4(r5)
+/* 8028CA00 00288660 90 1F 00 04 */ stw r0, 4(r31)
+/* 8028CA04 00288664 90 BF 00 00 */ stw r5, 0(r31)
+/* 8028CA08 00288668 93 E5 00 04 */ stw r31, 4(r5)
+/* 8028CA0C 0028866C 4B FE 1D 79 */ bl OSRestoreInterrupts
+/* 8028CA10 00288670 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CA14 00288674 38 60 00 01 */ li r3, 1
+/* 8028CA18 00288678 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028CA1C 0028867C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CA20 00288680 7C 08 03 A6 */ mtlr r0
+/* 8028CA24 00288684 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CA28 00288688 4E 80 00 20 */ blr
+
+.global __DVDPopWaitingQueue
+__DVDPopWaitingQueue:
+/* 8028CA2C 0028868C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CA30 00288690 7C 08 02 A6 */ mflr r0
+/* 8028CA34 00288694 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CA38 00288698 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CA3C 0028869C 4B FE 1D 21 */ bl OSDisableInterrupts
+/* 8028CA40 002886A0 3C 80 80 52 */ lis r4, lbl_8051B550@ha
+/* 8028CA44 002886A4 38 00 00 04 */ li r0, 4
+/* 8028CA48 002886A8 3B E0 00 00 */ li r31, 0
+/* 8028CA4C 002886AC 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l
+/* 8028CA50 002886B0 7C 09 03 A6 */ mtctr r0
+lbl_8028CA54:
+/* 8028CA54 002886B4 80 04 00 00 */ lwz r0, 0(r4)
+/* 8028CA58 002886B8 7C 00 20 40 */ cmplw r0, r4
+/* 8028CA5C 002886BC 41 82 00 48 */ beq lbl_8028CAA4
+/* 8028CA60 002886C0 4B FE 1D 25 */ bl OSRestoreInterrupts
+/* 8028CA64 002886C4 4B FE 1C F9 */ bl OSDisableInterrupts
+/* 8028CA68 002886C8 3C 80 80 52 */ lis r4, lbl_8051B550@ha
+/* 8028CA6C 002886CC 57 E0 18 38 */ slwi r0, r31, 3
+/* 8028CA70 002886D0 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l
+/* 8028CA74 002886D4 7F E4 00 2E */ lwzx r31, r4, r0
+/* 8028CA78 002886D8 7C A4 02 14 */ add r5, r4, r0
+/* 8028CA7C 002886DC 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8028CA80 002886E0 90 05 00 00 */ stw r0, 0(r5)
+/* 8028CA84 002886E4 80 9F 00 00 */ lwz r4, 0(r31)
+/* 8028CA88 002886E8 90 A4 00 04 */ stw r5, 4(r4)
+/* 8028CA8C 002886EC 4B FE 1C F9 */ bl OSRestoreInterrupts
+/* 8028CA90 002886F0 38 00 00 00 */ li r0, 0
+/* 8028CA94 002886F4 7F E3 FB 78 */ mr r3, r31
+/* 8028CA98 002886F8 90 1F 00 00 */ stw r0, 0(r31)
+/* 8028CA9C 002886FC 90 1F 00 04 */ stw r0, 4(r31)
+/* 8028CAA0 00288700 48 00 00 18 */ b lbl_8028CAB8
+lbl_8028CAA4:
+/* 8028CAA4 00288704 38 84 00 08 */ addi r4, r4, 8
+/* 8028CAA8 00288708 3B FF 00 01 */ addi r31, r31, 1
+/* 8028CAAC 0028870C 42 00 FF A8 */ bdnz lbl_8028CA54
+/* 8028CAB0 00288710 4B FE 1C D5 */ bl OSRestoreInterrupts
+/* 8028CAB4 00288714 38 60 00 00 */ li r3, 0
+lbl_8028CAB8:
+/* 8028CAB8 00288718 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CABC 0028871C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CAC0 00288720 7C 08 03 A6 */ mtlr r0
+/* 8028CAC4 00288724 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CAC8 00288728 4E 80 00 20 */ blr
+
+.global __DVDCheckWaitingQueue
+__DVDCheckWaitingQueue:
+/* 8028CACC 0028872C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CAD0 00288730 7C 08 02 A6 */ mflr r0
+/* 8028CAD4 00288734 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CAD8 00288738 4B FE 1C 85 */ bl OSDisableInterrupts
+/* 8028CADC 0028873C 3C 80 80 52 */ lis r4, lbl_8051B550@ha
+/* 8028CAE0 00288740 38 00 00 04 */ li r0, 4
+/* 8028CAE4 00288744 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l
+/* 8028CAE8 00288748 7C 09 03 A6 */ mtctr r0
+lbl_8028CAEC:
+/* 8028CAEC 0028874C 80 04 00 00 */ lwz r0, 0(r4)
+/* 8028CAF0 00288750 7C 00 20 40 */ cmplw r0, r4
+/* 8028CAF4 00288754 41 82 00 10 */ beq lbl_8028CB04
+/* 8028CAF8 00288758 4B FE 1C 8D */ bl OSRestoreInterrupts
+/* 8028CAFC 0028875C 38 60 00 01 */ li r3, 1
+/* 8028CB00 00288760 48 00 00 14 */ b lbl_8028CB14
+lbl_8028CB04:
+/* 8028CB04 00288764 38 84 00 08 */ addi r4, r4, 8
+/* 8028CB08 00288768 42 00 FF E4 */ bdnz lbl_8028CAEC
+/* 8028CB0C 0028876C 4B FE 1C 79 */ bl OSRestoreInterrupts
+/* 8028CB10 00288770 38 60 00 00 */ li r3, 0
+lbl_8028CB14:
+/* 8028CB14 00288774 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CB18 00288778 7C 08 03 A6 */ mtlr r0
+/* 8028CB1C 0028877C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CB20 00288780 4E 80 00 20 */ blr
+
+.global __DVDGetNextWaitingQueue
+__DVDGetNextWaitingQueue:
+/* 8028CB24 00288784 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CB28 00288788 7C 08 02 A6 */ mflr r0
+/* 8028CB2C 0028878C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CB30 00288790 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CB34 00288794 4B FE 1C 29 */ bl OSDisableInterrupts
+/* 8028CB38 00288798 3C 80 80 52 */ lis r4, lbl_8051B550@ha
+/* 8028CB3C 0028879C 38 00 00 04 */ li r0, 4
+/* 8028CB40 002887A0 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l
+/* 8028CB44 002887A4 7C 09 03 A6 */ mtctr r0
+lbl_8028CB48:
+/* 8028CB48 002887A8 83 E4 00 00 */ lwz r31, 0(r4)
+/* 8028CB4C 002887AC 7C 1F 20 40 */ cmplw r31, r4
+/* 8028CB50 002887B0 41 82 00 10 */ beq lbl_8028CB60
+/* 8028CB54 002887B4 4B FE 1C 31 */ bl OSRestoreInterrupts
+/* 8028CB58 002887B8 7F E3 FB 78 */ mr r3, r31
+/* 8028CB5C 002887BC 48 00 00 14 */ b lbl_8028CB70
+lbl_8028CB60:
+/* 8028CB60 002887C0 38 84 00 08 */ addi r4, r4, 8
+/* 8028CB64 002887C4 42 00 FF E4 */ bdnz lbl_8028CB48
+/* 8028CB68 002887C8 4B FE 1C 1D */ bl OSRestoreInterrupts
+/* 8028CB6C 002887CC 38 60 00 00 */ li r3, 0
+lbl_8028CB70:
+/* 8028CB70 002887D0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CB74 002887D4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CB78 002887D8 7C 08 03 A6 */ mtlr r0
+/* 8028CB7C 002887DC 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CB80 002887E0 4E 80 00 20 */ blr
+
+.global __DVDDequeueWaitingQueue
+__DVDDequeueWaitingQueue:
+/* 8028CB84 002887E4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028CB88 002887E8 7C 08 02 A6 */ mflr r0
+/* 8028CB8C 002887EC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028CB90 002887F0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028CB94 002887F4 7C 7F 1B 78 */ mr r31, r3
+/* 8028CB98 002887F8 4B FE 1B C5 */ bl OSDisableInterrupts
+/* 8028CB9C 002887FC 80 9F 00 04 */ lwz r4, 4(r31)
+/* 8028CBA0 00288800 80 BF 00 00 */ lwz r5, 0(r31)
+/* 8028CBA4 00288804 2C 04 00 00 */ cmpwi r4, 0
+/* 8028CBA8 00288808 41 82 00 0C */ beq lbl_8028CBB4
+/* 8028CBAC 0028880C 2C 05 00 00 */ cmpwi r5, 0
+/* 8028CBB0 00288810 40 82 00 10 */ bne lbl_8028CBC0
+lbl_8028CBB4:
+/* 8028CBB4 00288814 4B FE 1B D1 */ bl OSRestoreInterrupts
+/* 8028CBB8 00288818 38 60 00 00 */ li r3, 0
+/* 8028CBBC 0028881C 48 00 00 14 */ b lbl_8028CBD0
+lbl_8028CBC0:
+/* 8028CBC0 00288820 90 A4 00 00 */ stw r5, 0(r4)
+/* 8028CBC4 00288824 90 85 00 04 */ stw r4, 4(r5)
+/* 8028CBC8 00288828 4B FE 1B BD */ bl OSRestoreInterrupts
+/* 8028CBCC 0028882C 38 60 00 01 */ li r3, 1
+lbl_8028CBD0:
+/* 8028CBD0 00288830 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028CBD4 00288834 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8028CBD8 00288838 7C 08 03 A6 */ mtlr r0
+/* 8028CBDC 0028883C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8028CBE0 00288840 4E 80 00 20 */ blr
diff --git a/asm/SDK/OS/OSExec.s b/asm/SDK/OS/OSExec.s index 4dc5f32..086dde2 100644 --- a/asm/SDK/OS/OSExec.s +++ b/asm/SDK/OS/OSExec.s @@ -178,7 +178,7 @@ __OSReLaunchFirmware: /* 8026BD8C 002679EC 98 A1 00 0A */ stb r5, 0xa(r1) /* 8026BD90 002679F0 98 81 00 0B */ stb r4, 0xb(r1) /* 8026BD94 002679F4 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) -/* 8026BD98 002679F8 48 02 1B 49 */ bl func_8028D8E0 +/* 8026BD98 002679F8 48 02 1B 49 */ bl DVDLowClosePartition lbl_8026BD9C: /* 8026BD9C 002679FC 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDA0 00267A00 2C 00 00 00 */ cmpwi r0, 0 @@ -201,7 +201,7 @@ lbl_8026BDCC: /* 8026BDE0 00267A40 3C A0 00 01 */ lis r5, 1 /* 8026BDE4 00267A44 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDE8 00267A48 38 C6 BD 2C */ addi r6, r6, callback@l -/* 8026BDEC 00267A4C 48 02 1C 59 */ bl func_8028DA44 +/* 8026BDEC 00267A4C 48 02 1C 59 */ bl DVDLowUnencryptedRead lbl_8026BDF0: /* 8026BDF0 00267A50 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDF4 00267A54 2C 00 00 00 */ cmpwi r0, 0 @@ -225,7 +225,7 @@ lbl_8026BE20: /* 8026BE38 00267A98 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE3C 00267A9C 38 80 00 20 */ li r4, 0x20 /* 8026BE40 00267AA0 80 A5 00 04 */ lwz r5, 4(r5) -/* 8026BE44 00267AA4 48 02 1C 01 */ bl func_8028DA44 +/* 8026BE44 00267AA4 48 02 1C 01 */ bl DVDLowUnencryptedRead lbl_8026BE48: /* 8026BE48 00267AA8 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE4C 00267AAC 2C 00 00 00 */ cmpwi r0, 0 @@ -270,7 +270,7 @@ lbl_8026BEB0: /* 8026BED8 00267B38 80 63 00 00 */ lwz r3, 0(r3) /* 8026BEDC 00267B3C 38 A0 00 00 */ li r5, 0 /* 8026BEE0 00267B40 38 C0 00 00 */ li r6, 0 -/* 8026BEE4 00267B44 48 02 17 95 */ bl func_8028D678 +/* 8026BEE4 00267B44 48 02 17 95 */ bl DVDLowOpenPartition lbl_8026BEE8: /* 8026BEE8 00267B48 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BEEC 00267B4C 2C 00 00 00 */ cmpwi r0, 0 @@ -289,7 +289,7 @@ lbl_8026BF18: /* 8026BF1C 00267B7C 3C 60 80 27 */ lis r3, callback@ha /* 8026BF20 00267B80 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF24 00267B84 38 63 BD 2C */ addi r3, r3, callback@l -/* 8026BF28 00267B88 48 02 19 B9 */ bl func_8028D8E0 +/* 8026BF28 00267B88 48 02 19 B9 */ bl DVDLowClosePartition lbl_8026BF2C: /* 8026BF2C 00267B8C 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF30 00267B90 2C 00 00 00 */ cmpwi r0, 0 @@ -383,13 +383,13 @@ lbl_8026C05C: /* 8026C074 00267CD4 38 00 FF FF */ li r0, -1 /* 8026C078 00267CD8 90 01 00 0C */ stw r0, 0xc(r1) lbl_8026C07C: -/* 8026C07C 00267CDC 48 02 12 11 */ bl func_8028D28C +/* 8026C07C 00267CDC 48 02 12 11 */ bl DVDLowInit /* 8026C080 00267CE0 38 00 00 00 */ li r0, 0 /* 8026C084 00267CE4 3C 80 80 27 */ lis r4, callback@ha /* 8026C088 00267CE8 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C08C 00267CEC 38 7F 07 40 */ addi r3, r31, 0x740 /* 8026C090 00267CF0 38 84 BD 2C */ addi r4, r4, callback@l -/* 8026C094 00267CF4 48 02 14 5D */ bl func_8028D4F0 +/* 8026C094 00267CF4 48 02 14 5D */ bl DVDLowReadDiskID lbl_8026C098: /* 8026C098 00267CF8 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C09C 00267CFC 2C 00 00 00 */ cmpwi r0, 0 @@ -412,7 +412,7 @@ lbl_8026C0C8: /* 8026C0DC 00267D3C 3C A0 00 01 */ lis r5, 1 /* 8026C0E0 00267D40 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0E4 00267D44 38 C6 BD 2C */ addi r6, r6, callback@l -/* 8026C0E8 00267D48 48 02 19 5D */ bl func_8028DA44 +/* 8026C0E8 00267D48 48 02 19 5D */ bl DVDLowUnencryptedRead lbl_8026C0EC: /* 8026C0EC 00267D4C 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0F0 00267D50 2C 00 00 00 */ cmpwi r0, 0 @@ -436,7 +436,7 @@ lbl_8026C11C: /* 8026C134 00267D94 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C138 00267D98 38 80 00 20 */ li r4, 0x20 /* 8026C13C 00267D9C 80 A5 00 04 */ lwz r5, 4(r5) -/* 8026C140 00267DA0 48 02 19 05 */ bl func_8028DA44 +/* 8026C140 00267DA0 48 02 19 05 */ bl DVDLowUnencryptedRead lbl_8026C144: /* 8026C144 00267DA4 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C148 00267DA8 2C 00 00 00 */ cmpwi r0, 0 @@ -481,7 +481,7 @@ lbl_8026C1AC: /* 8026C1D4 00267E34 80 63 00 00 */ lwz r3, 0(r3) /* 8026C1D8 00267E38 38 A0 00 00 */ li r5, 0 /* 8026C1DC 00267E3C 38 C0 00 00 */ li r6, 0 -/* 8026C1E0 00267E40 48 02 14 99 */ bl func_8028D678 +/* 8026C1E0 00267E40 48 02 14 99 */ bl DVDLowOpenPartition lbl_8026C1E4: /* 8026C1E4 00267E44 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C1E8 00267E48 2C 00 00 00 */ cmpwi r0, 0 diff --git a/asm/text_6_2.s b/asm/text_6_2.s index 4d4a727..1ba34ed 100644 --- a/asm/text_6_2.s +++ b/asm/text_6_2.s @@ -1858,7 +1858,7 @@ lbl_801DC1B8: /* 801DC20C 001D7E6C 98 03 00 07 */ stb r0, 7(r3) lbl_801DC210: /* 801DC210 001D7E70 38 60 00 00 */ li r3, 0 -/* 801DC214 001D7E74 48 0B 0E 7D */ bl func_8028D090 +/* 801DC214 001D7E74 48 0B 0E 7D */ bl DVDSetAutoFatalMessaging /* 801DC218 001D7E78 3C C0 80 1E */ lis r6, func_801DC9CC@ha /* 801DC21C 001D7E7C 38 60 00 01 */ li r3, 1 /* 801DC220 001D7E80 38 C6 C9 CC */ addi r6, r6, func_801DC9CC@l diff --git a/asm/text_8_3.s b/asm/text_8_3.s index d6d1cca..6c9fd12 100644 --- a/asm/text_8_3.s +++ b/asm/text_8_3.s @@ -2,2431 +2,6 @@ .section .text, "ax" # 0x80006980 - 0x803E1E60 -.global func_8028C98C -func_8028C98C: -/* 8028C98C 002885EC 3C C0 80 52 */ lis r6, lbl_8051B550@ha -/* 8028C990 002885F0 38 C6 B5 50 */ addi r6, r6, lbl_8051B550@l -/* 8028C994 002885F4 38 A6 00 08 */ addi r5, r6, 8 -/* 8028C998 002885F8 90 C6 00 00 */ stw r6, 0(r6) -/* 8028C99C 002885FC 38 86 00 10 */ addi r4, r6, 0x10 -/* 8028C9A0 00288600 38 66 00 18 */ addi r3, r6, 0x18 -/* 8028C9A4 00288604 90 C6 00 04 */ stw r6, 4(r6) -/* 8028C9A8 00288608 90 A6 00 08 */ stw r5, 8(r6) -/* 8028C9AC 0028860C 90 A6 00 0C */ stw r5, 0xc(r6) -/* 8028C9B0 00288610 90 86 00 10 */ stw r4, 0x10(r6) -/* 8028C9B4 00288614 90 86 00 14 */ stw r4, 0x14(r6) -/* 8028C9B8 00288618 90 66 00 18 */ stw r3, 0x18(r6) -/* 8028C9BC 0028861C 90 66 00 1C */ stw r3, 0x1c(r6) -/* 8028C9C0 00288620 4E 80 00 20 */ blr - -.global func_8028C9C4 -func_8028C9C4: -/* 8028C9C4 00288624 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028C9C8 00288628 7C 08 02 A6 */ mflr r0 -/* 8028C9CC 0028862C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028C9D0 00288630 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028C9D4 00288634 7C 9F 23 78 */ mr r31, r4 -/* 8028C9D8 00288638 93 C1 00 08 */ stw r30, 8(r1) -/* 8028C9DC 0028863C 7C 7E 1B 78 */ mr r30, r3 -/* 8028C9E0 00288640 4B FE 1D 7D */ bl OSDisableInterrupts -/* 8028C9E4 00288644 3C 80 80 52 */ lis r4, lbl_8051B550@ha -/* 8028C9E8 00288648 57 C0 18 38 */ slwi r0, r30, 3 -/* 8028C9EC 0028864C 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l -/* 8028C9F0 00288650 7C A4 02 14 */ add r5, r4, r0 -/* 8028C9F4 00288654 80 85 00 04 */ lwz r4, 4(r5) -/* 8028C9F8 00288658 93 E4 00 00 */ stw r31, 0(r4) -/* 8028C9FC 0028865C 80 05 00 04 */ lwz r0, 4(r5) -/* 8028CA00 00288660 90 1F 00 04 */ stw r0, 4(r31) -/* 8028CA04 00288664 90 BF 00 00 */ stw r5, 0(r31) -/* 8028CA08 00288668 93 E5 00 04 */ stw r31, 4(r5) -/* 8028CA0C 0028866C 4B FE 1D 79 */ bl OSRestoreInterrupts -/* 8028CA10 00288670 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CA14 00288674 38 60 00 01 */ li r3, 1 -/* 8028CA18 00288678 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028CA1C 0028867C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CA20 00288680 7C 08 03 A6 */ mtlr r0 -/* 8028CA24 00288684 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CA28 00288688 4E 80 00 20 */ blr - -.global func_8028CA2C -func_8028CA2C: -/* 8028CA2C 0028868C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CA30 00288690 7C 08 02 A6 */ mflr r0 -/* 8028CA34 00288694 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CA38 00288698 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CA3C 0028869C 4B FE 1D 21 */ bl OSDisableInterrupts -/* 8028CA40 002886A0 3C 80 80 52 */ lis r4, lbl_8051B550@ha -/* 8028CA44 002886A4 38 00 00 04 */ li r0, 4 -/* 8028CA48 002886A8 3B E0 00 00 */ li r31, 0 -/* 8028CA4C 002886AC 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l -/* 8028CA50 002886B0 7C 09 03 A6 */ mtctr r0 -lbl_8028CA54: -/* 8028CA54 002886B4 80 04 00 00 */ lwz r0, 0(r4) -/* 8028CA58 002886B8 7C 00 20 40 */ cmplw r0, r4 -/* 8028CA5C 002886BC 41 82 00 48 */ beq lbl_8028CAA4 -/* 8028CA60 002886C0 4B FE 1D 25 */ bl OSRestoreInterrupts -/* 8028CA64 002886C4 4B FE 1C F9 */ bl OSDisableInterrupts -/* 8028CA68 002886C8 3C 80 80 52 */ lis r4, lbl_8051B550@ha -/* 8028CA6C 002886CC 57 E0 18 38 */ slwi r0, r31, 3 -/* 8028CA70 002886D0 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l -/* 8028CA74 002886D4 7F E4 00 2E */ lwzx r31, r4, r0 -/* 8028CA78 002886D8 7C A4 02 14 */ add r5, r4, r0 -/* 8028CA7C 002886DC 80 1F 00 00 */ lwz r0, 0(r31) -/* 8028CA80 002886E0 90 05 00 00 */ stw r0, 0(r5) -/* 8028CA84 002886E4 80 9F 00 00 */ lwz r4, 0(r31) -/* 8028CA88 002886E8 90 A4 00 04 */ stw r5, 4(r4) -/* 8028CA8C 002886EC 4B FE 1C F9 */ bl OSRestoreInterrupts -/* 8028CA90 002886F0 38 00 00 00 */ li r0, 0 -/* 8028CA94 002886F4 7F E3 FB 78 */ mr r3, r31 -/* 8028CA98 002886F8 90 1F 00 00 */ stw r0, 0(r31) -/* 8028CA9C 002886FC 90 1F 00 04 */ stw r0, 4(r31) -/* 8028CAA0 00288700 48 00 00 18 */ b lbl_8028CAB8 -lbl_8028CAA4: -/* 8028CAA4 00288704 38 84 00 08 */ addi r4, r4, 8 -/* 8028CAA8 00288708 3B FF 00 01 */ addi r31, r31, 1 -/* 8028CAAC 0028870C 42 00 FF A8 */ bdnz lbl_8028CA54 -/* 8028CAB0 00288710 4B FE 1C D5 */ bl OSRestoreInterrupts -/* 8028CAB4 00288714 38 60 00 00 */ li r3, 0 -lbl_8028CAB8: -/* 8028CAB8 00288718 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CABC 0028871C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CAC0 00288720 7C 08 03 A6 */ mtlr r0 -/* 8028CAC4 00288724 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CAC8 00288728 4E 80 00 20 */ blr - -.global func_8028CACC -func_8028CACC: -/* 8028CACC 0028872C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CAD0 00288730 7C 08 02 A6 */ mflr r0 -/* 8028CAD4 00288734 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CAD8 00288738 4B FE 1C 85 */ bl OSDisableInterrupts -/* 8028CADC 0028873C 3C 80 80 52 */ lis r4, lbl_8051B550@ha -/* 8028CAE0 00288740 38 00 00 04 */ li r0, 4 -/* 8028CAE4 00288744 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l -/* 8028CAE8 00288748 7C 09 03 A6 */ mtctr r0 -lbl_8028CAEC: -/* 8028CAEC 0028874C 80 04 00 00 */ lwz r0, 0(r4) -/* 8028CAF0 00288750 7C 00 20 40 */ cmplw r0, r4 -/* 8028CAF4 00288754 41 82 00 10 */ beq lbl_8028CB04 -/* 8028CAF8 00288758 4B FE 1C 8D */ bl OSRestoreInterrupts -/* 8028CAFC 0028875C 38 60 00 01 */ li r3, 1 -/* 8028CB00 00288760 48 00 00 14 */ b lbl_8028CB14 -lbl_8028CB04: -/* 8028CB04 00288764 38 84 00 08 */ addi r4, r4, 8 -/* 8028CB08 00288768 42 00 FF E4 */ bdnz lbl_8028CAEC -/* 8028CB0C 0028876C 4B FE 1C 79 */ bl OSRestoreInterrupts -/* 8028CB10 00288770 38 60 00 00 */ li r3, 0 -lbl_8028CB14: -/* 8028CB14 00288774 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CB18 00288778 7C 08 03 A6 */ mtlr r0 -/* 8028CB1C 0028877C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CB20 00288780 4E 80 00 20 */ blr - -.global func_8028CB24 -func_8028CB24: -/* 8028CB24 00288784 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CB28 00288788 7C 08 02 A6 */ mflr r0 -/* 8028CB2C 0028878C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CB30 00288790 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CB34 00288794 4B FE 1C 29 */ bl OSDisableInterrupts -/* 8028CB38 00288798 3C 80 80 52 */ lis r4, lbl_8051B550@ha -/* 8028CB3C 0028879C 38 00 00 04 */ li r0, 4 -/* 8028CB40 002887A0 38 84 B5 50 */ addi r4, r4, lbl_8051B550@l -/* 8028CB44 002887A4 7C 09 03 A6 */ mtctr r0 -lbl_8028CB48: -/* 8028CB48 002887A8 83 E4 00 00 */ lwz r31, 0(r4) -/* 8028CB4C 002887AC 7C 1F 20 40 */ cmplw r31, r4 -/* 8028CB50 002887B0 41 82 00 10 */ beq lbl_8028CB60 -/* 8028CB54 002887B4 4B FE 1C 31 */ bl OSRestoreInterrupts -/* 8028CB58 002887B8 7F E3 FB 78 */ mr r3, r31 -/* 8028CB5C 002887BC 48 00 00 14 */ b lbl_8028CB70 -lbl_8028CB60: -/* 8028CB60 002887C0 38 84 00 08 */ addi r4, r4, 8 -/* 8028CB64 002887C4 42 00 FF E4 */ bdnz lbl_8028CB48 -/* 8028CB68 002887C8 4B FE 1C 1D */ bl OSRestoreInterrupts -/* 8028CB6C 002887CC 38 60 00 00 */ li r3, 0 -lbl_8028CB70: -/* 8028CB70 002887D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CB74 002887D4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CB78 002887D8 7C 08 03 A6 */ mtlr r0 -/* 8028CB7C 002887DC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CB80 002887E0 4E 80 00 20 */ blr - -.global func_8028CB84 -func_8028CB84: -/* 8028CB84 002887E4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CB88 002887E8 7C 08 02 A6 */ mflr r0 -/* 8028CB8C 002887EC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CB90 002887F0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CB94 002887F4 7C 7F 1B 78 */ mr r31, r3 -/* 8028CB98 002887F8 4B FE 1B C5 */ bl OSDisableInterrupts -/* 8028CB9C 002887FC 80 9F 00 04 */ lwz r4, 4(r31) -/* 8028CBA0 00288800 80 BF 00 00 */ lwz r5, 0(r31) -/* 8028CBA4 00288804 2C 04 00 00 */ cmpwi r4, 0 -/* 8028CBA8 00288808 41 82 00 0C */ beq lbl_8028CBB4 -/* 8028CBAC 0028880C 2C 05 00 00 */ cmpwi r5, 0 -/* 8028CBB0 00288810 40 82 00 10 */ bne lbl_8028CBC0 -lbl_8028CBB4: -/* 8028CBB4 00288814 4B FE 1B D1 */ bl OSRestoreInterrupts -/* 8028CBB8 00288818 38 60 00 00 */ li r3, 0 -/* 8028CBBC 0028881C 48 00 00 14 */ b lbl_8028CBD0 -lbl_8028CBC0: -/* 8028CBC0 00288820 90 A4 00 00 */ stw r5, 0(r4) -/* 8028CBC4 00288824 90 85 00 04 */ stw r4, 4(r5) -/* 8028CBC8 00288828 4B FE 1B BD */ bl OSRestoreInterrupts -/* 8028CBCC 0028882C 38 60 00 01 */ li r3, 1 -lbl_8028CBD0: -/* 8028CBD0 00288830 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CBD4 00288834 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CBD8 00288838 7C 08 03 A6 */ mtlr r0 -/* 8028CBDC 0028883C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CBE0 00288840 4E 80 00 20 */ blr -lbl_8028CBE4: -/* 8028CBE4 00288844 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CBE8 00288848 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CBEC 0028884C 4D 82 00 20 */ beqlr -/* 8028CBF0 00288850 7C 60 00 34 */ cntlzw r0, r3 -/* 8028CBF4 00288854 38 80 00 00 */ li r4, 0 -/* 8028CBF8 00288858 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f -/* 8028CBFC 0028885C 7C 60 00 D0 */ neg r3, r0 -/* 8028CC00 00288860 38 63 00 02 */ addi r3, r3, 2 -/* 8028CC04 00288864 7D 89 03 A6 */ mtctr r12 -/* 8028CC08 00288868 4E 80 04 20 */ bctr -/* 8028CC0C 0028886C 4E 80 00 20 */ blr -lbl_8028CC10: -/* 8028CC10 00288870 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CC14 00288874 7C 08 02 A6 */ mflr r0 -/* 8028CC18 00288878 3C 60 80 52 */ lis r3, lbl_8051B580@ha -/* 8028CC1C 0028887C 3C 80 80 29 */ lis r4, lbl_8028CBE4@ha -/* 8028CC20 00288880 3C A0 80 52 */ lis r5, lbl_8051B610@ha -/* 8028CC24 00288884 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CC28 00288888 38 63 B5 80 */ addi r3, r3, lbl_8051B580@l -/* 8028CC2C 0028888C 38 84 CB E4 */ addi r4, r4, lbl_8028CBE4@l -/* 8028CC30 00288890 38 A5 B6 10 */ addi r5, r5, lbl_8051B610@l -/* 8028CC34 00288894 48 05 BA C1 */ bl func_802E86F4 -/* 8028CC38 00288898 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CC3C 0028889C 41 82 00 20 */ beq lbl_8028CC5C -/* 8028CC40 002888A0 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CC44 002888A4 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CC48 002888A8 41 82 00 14 */ beq lbl_8028CC5C -/* 8028CC4C 002888AC 38 60 00 02 */ li r3, 2 -/* 8028CC50 002888B0 38 80 00 00 */ li r4, 0 -/* 8028CC54 002888B4 7D 89 03 A6 */ mtctr r12 -/* 8028CC58 002888B8 4E 80 04 21 */ bctrl -lbl_8028CC5C: -/* 8028CC5C 002888BC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CC60 002888C0 7C 08 03 A6 */ mtlr r0 -/* 8028CC64 002888C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CC68 002888C8 4E 80 00 20 */ blr -lbl_8028CC6C: -/* 8028CC6C 002888CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CC70 002888D0 7C 08 02 A6 */ mflr r0 -/* 8028CC74 002888D4 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CC78 002888D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CC7C 002888DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CC80 002888E0 3F E0 80 52 */ lis r31, lbl_8051B580@ha -/* 8028CC84 002888E4 3B FF B5 80 */ addi r31, r31, lbl_8051B580@l -/* 8028CC88 002888E8 40 82 00 64 */ bne lbl_8028CCEC -/* 8028CC8C 002888EC 3C C0 80 29 */ lis r6, lbl_8028CC10@ha -/* 8028CC90 002888F0 38 7F 00 00 */ addi r3, r31, 0 -/* 8028CC94 002888F4 38 9F 01 60 */ addi r4, r31, 0x160 -/* 8028CC98 002888F8 38 FF 00 90 */ addi r7, r31, 0x90 -/* 8028CC9C 002888FC 38 C6 CC 10 */ addi r6, r6, lbl_8028CC10@l -/* 8028CCA0 00288900 38 A0 00 80 */ li r5, 0x80 -/* 8028CCA4 00288904 48 05 AD 65 */ bl func_802E7A08 -/* 8028CCA8 00288908 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CCAC 0028890C 41 82 00 5C */ beq lbl_8028CD08 -/* 8028CCB0 00288910 3C 80 80 29 */ lis r4, lbl_8028CBE4@ha -/* 8028CCB4 00288914 38 7F 00 00 */ addi r3, r31, 0 -/* 8028CCB8 00288918 38 84 CB E4 */ addi r4, r4, lbl_8028CBE4@l -/* 8028CCBC 0028891C 38 BF 00 90 */ addi r5, r31, 0x90 -/* 8028CCC0 00288920 48 05 BA 35 */ bl func_802E86F4 -/* 8028CCC4 00288924 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CCC8 00288928 41 82 00 40 */ beq lbl_8028CD08 -/* 8028CCCC 0028892C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CCD0 00288930 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CCD4 00288934 41 82 00 34 */ beq lbl_8028CD08 -/* 8028CCD8 00288938 38 60 00 02 */ li r3, 2 -/* 8028CCDC 0028893C 38 80 00 00 */ li r4, 0 -/* 8028CCE0 00288940 7D 89 03 A6 */ mtctr r12 -/* 8028CCE4 00288944 4E 80 04 21 */ bctrl -/* 8028CCE8 00288948 48 00 00 20 */ b lbl_8028CD08 -lbl_8028CCEC: -/* 8028CCEC 0028894C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CCF0 00288950 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CCF4 00288954 41 82 00 14 */ beq lbl_8028CD08 -/* 8028CCF8 00288958 38 60 00 02 */ li r3, 2 -/* 8028CCFC 0028895C 38 80 00 00 */ li r4, 0 -/* 8028CD00 00288960 7D 89 03 A6 */ mtctr r12 -/* 8028CD04 00288964 4E 80 04 21 */ bctrl -lbl_8028CD08: -/* 8028CD08 00288968 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CD0C 0028896C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CD10 00288970 7C 08 03 A6 */ mtlr r0 -/* 8028CD14 00288974 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CD18 00288978 4E 80 00 20 */ blr -lbl_8028CD1C: -/* 8028CD1C 0028897C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CD20 00288980 7C 08 02 A6 */ mflr r0 -/* 8028CD24 00288984 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CD28 00288988 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CD2C 0028898C 41 82 00 0C */ beq lbl_8028CD38 -/* 8028CD30 00288990 2C 03 FF FA */ cmpwi r3, -6 -/* 8028CD34 00288994 40 82 00 54 */ bne lbl_8028CD88 -lbl_8028CD38: -/* 8028CD38 00288998 3C 60 80 43 */ lis r3, lbl_804361C0@ha -/* 8028CD3C 0028899C 3C 80 80 52 */ lis r4, lbl_8051B580@ha -/* 8028CD40 002889A0 3C C0 80 29 */ lis r6, lbl_8028CC6C@ha -/* 8028CD44 002889A4 3C E0 80 52 */ lis r7, lbl_8051B610@ha -/* 8028CD48 002889A8 38 63 61 C0 */ addi r3, r3, lbl_804361C0@l -/* 8028CD4C 002889AC 38 84 B5 80 */ addi r4, r4, lbl_8051B580@l -/* 8028CD50 002889B0 38 C6 CC 6C */ addi r6, r6, lbl_8028CC6C@l -/* 8028CD54 002889B4 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l -/* 8028CD58 002889B8 38 A0 00 02 */ li r5, 2 -/* 8028CD5C 002889BC 48 05 B8 3D */ bl func_802E8598 -/* 8028CD60 002889C0 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CD64 002889C4 41 82 00 40 */ beq lbl_8028CDA4 -/* 8028CD68 002889C8 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CD6C 002889CC 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CD70 002889D0 41 82 00 34 */ beq lbl_8028CDA4 -/* 8028CD74 002889D4 38 60 00 02 */ li r3, 2 -/* 8028CD78 002889D8 38 80 00 00 */ li r4, 0 -/* 8028CD7C 002889DC 7D 89 03 A6 */ mtctr r12 -/* 8028CD80 002889E0 4E 80 04 21 */ bctrl -/* 8028CD84 002889E4 48 00 00 20 */ b lbl_8028CDA4 -lbl_8028CD88: -/* 8028CD88 002889E8 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CD8C 002889EC 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CD90 002889F0 41 82 00 14 */ beq lbl_8028CDA4 -/* 8028CD94 002889F4 38 60 00 02 */ li r3, 2 -/* 8028CD98 002889F8 38 80 00 00 */ li r4, 0 -/* 8028CD9C 002889FC 7D 89 03 A6 */ mtctr r12 -/* 8028CDA0 00288A00 4E 80 04 21 */ bctrl -lbl_8028CDA4: -/* 8028CDA4 00288A04 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CDA8 00288A08 7C 08 03 A6 */ mtlr r0 -/* 8028CDAC 00288A0C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CDB0 00288A10 4E 80 00 20 */ blr -lbl_8028CDB4: -/* 8028CDB4 00288A14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CDB8 00288A18 7C 08 02 A6 */ mflr r0 -/* 8028CDBC 00288A1C 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CDC0 00288A20 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CDC4 00288A24 41 82 00 0C */ beq lbl_8028CDD0 -/* 8028CDC8 00288A28 2C 03 FF FA */ cmpwi r3, -6 -/* 8028CDCC 00288A2C 40 82 00 50 */ bne lbl_8028CE1C -lbl_8028CDD0: -/* 8028CDD0 00288A30 3C 60 80 43 */ lis r3, lbl_804361C0@ha -/* 8028CDD4 00288A34 3C C0 80 29 */ lis r6, lbl_8028CD1C@ha -/* 8028CDD8 00288A38 3C E0 80 52 */ lis r7, lbl_8051B610@ha -/* 8028CDDC 00288A3C 38 80 00 3F */ li r4, 0x3f -/* 8028CDE0 00288A40 38 63 61 C0 */ addi r3, r3, lbl_804361C0@l -/* 8028CDE4 00288A44 38 C6 CD 1C */ addi r6, r6, lbl_8028CD1C@l -/* 8028CDE8 00288A48 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l -/* 8028CDEC 00288A4C 38 A0 00 00 */ li r5, 0 -/* 8028CDF0 00288A50 48 05 A8 E9 */ bl func_802E76D8 -/* 8028CDF4 00288A54 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CDF8 00288A58 41 82 00 40 */ beq lbl_8028CE38 -/* 8028CDFC 00288A5C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CE00 00288A60 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CE04 00288A64 41 82 00 34 */ beq lbl_8028CE38 -/* 8028CE08 00288A68 38 60 00 02 */ li r3, 2 -/* 8028CE0C 00288A6C 38 80 00 00 */ li r4, 0 -/* 8028CE10 00288A70 7D 89 03 A6 */ mtctr r12 -/* 8028CE14 00288A74 4E 80 04 21 */ bctrl -/* 8028CE18 00288A78 48 00 00 20 */ b lbl_8028CE38 -lbl_8028CE1C: -/* 8028CE1C 00288A7C 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CE20 00288A80 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CE24 00288A84 41 82 00 14 */ beq lbl_8028CE38 -/* 8028CE28 00288A88 38 60 00 02 */ li r3, 2 -/* 8028CE2C 00288A8C 38 80 00 00 */ li r4, 0 -/* 8028CE30 00288A90 7D 89 03 A6 */ mtctr r12 -/* 8028CE34 00288A94 4E 80 04 21 */ bctrl -lbl_8028CE38: -/* 8028CE38 00288A98 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CE3C 00288A9C 7C 08 03 A6 */ mtlr r0 -/* 8028CE40 00288AA0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CE44 00288AA4 4E 80 00 20 */ blr - -.global func_8028CE48 -func_8028CE48: -/* 8028CE48 00288AA8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CE4C 00288AAC 7C 08 02 A6 */ mflr r0 -/* 8028CE50 00288AB0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CE54 00288AB4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CE58 00288AB8 3F E0 80 52 */ lis r31, lbl_8051B6E0@ha -/* 8028CE5C 00288ABC 3B FF B6 E0 */ addi r31, r31, lbl_8051B6E0@l -/* 8028CE60 00288AC0 93 C1 00 08 */ stw r30, 8(r1) -/* 8028CE64 00288AC4 7C 9E 23 78 */ mr r30, r4 -/* 8028CE68 00288AC8 90 7F 00 08 */ stw r3, 8(r31) -/* 8028CE6C 00288ACC 4B FE 59 4D */ bl OSGetTime -/* 8028CE70 00288AD0 3C C0 80 00 */ lis r6, 0x800000F8@ha -/* 8028CE74 00288AD4 38 A0 00 00 */ li r5, 0 -/* 8028CE78 00288AD8 80 06 00 F8 */ lwz r0, 0x800000F8@l(r6) -/* 8028CE7C 00288ADC 54 06 F0 BE */ srwi r6, r0, 2 -/* 8028CE80 00288AE0 4B F3 A3 F9 */ bl __div2i -/* 8028CE84 00288AE4 90 9F 00 0C */ stw r4, 0xc(r31) -/* 8028CE88 00288AE8 3C 60 80 43 */ lis r3, lbl_804361DC@ha -/* 8028CE8C 00288AEC 3C C0 80 29 */ lis r6, lbl_8028CDB4@ha -/* 8028CE90 00288AF0 3C E0 80 52 */ lis r7, lbl_8051B610@ha -/* 8028CE94 00288AF4 93 CD AA 98 */ stw r30, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CE98 00288AF8 38 63 61 DC */ addi r3, r3, lbl_804361DC@l -/* 8028CE9C 00288AFC 38 C6 CD B4 */ addi r6, r6, lbl_8028CDB4@l -/* 8028CEA0 00288B00 38 E7 B6 10 */ addi r7, r7, lbl_8051B610@l -/* 8028CEA4 00288B04 38 80 00 3F */ li r4, 0x3f -/* 8028CEA8 00288B08 38 A0 00 00 */ li r5, 0 -/* 8028CEAC 00288B0C 48 05 AF A9 */ bl func_802E7E54 -/* 8028CEB0 00288B10 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CEB4 00288B14 41 82 00 20 */ beq lbl_8028CED4 -/* 8028CEB8 00288B18 81 8D AA 98 */ lwz r12, lbl_8063FD58-_SDA_BASE_(r13) -/* 8028CEBC 00288B1C 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028CEC0 00288B20 41 82 00 14 */ beq lbl_8028CED4 -/* 8028CEC4 00288B24 38 60 00 02 */ li r3, 2 -/* 8028CEC8 00288B28 38 80 00 00 */ li r4, 0 -/* 8028CECC 00288B2C 7D 89 03 A6 */ mtctr r12 -/* 8028CED0 00288B30 4E 80 04 21 */ bctrl -lbl_8028CED4: -/* 8028CED4 00288B34 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CED8 00288B38 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CEDC 00288B3C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028CEE0 00288B40 7C 08 03 A6 */ mtlr r0 -/* 8028CEE4 00288B44 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CEE8 00288B48 4E 80 00 20 */ blr - -.global func_8028CEEC -func_8028CEEC: -/* 8028CEEC 00288B4C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028CEF0 00288B50 7C 08 02 A6 */ mflr r0 -/* 8028CEF4 00288B54 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028CEF8 00288B58 88 03 00 00 */ lbz r0, 0(r3) -/* 8028CEFC 00288B5C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028CF00 00288B60 7C 9F 23 78 */ mr r31, r4 -/* 8028CF04 00288B64 7C 00 07 75 */ extsb. r0, r0 -/* 8028CF08 00288B68 93 C1 00 08 */ stw r30, 8(r1) -/* 8028CF0C 00288B6C 7C 7E 1B 78 */ mr r30, r3 -/* 8028CF10 00288B70 41 82 00 28 */ beq lbl_8028CF38 -/* 8028CF14 00288B74 88 04 00 00 */ lbz r0, 0(r4) -/* 8028CF18 00288B78 7C 00 07 75 */ extsb. r0, r0 -/* 8028CF1C 00288B7C 41 82 00 1C */ beq lbl_8028CF38 -/* 8028CF20 00288B80 38 A0 00 04 */ li r5, 4 -/* 8028CF24 00288B84 4B F4 16 45 */ bl strncmp -/* 8028CF28 00288B88 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CF2C 00288B8C 41 82 00 0C */ beq lbl_8028CF38 -/* 8028CF30 00288B90 38 60 00 00 */ li r3, 0 -/* 8028CF34 00288B94 48 00 00 90 */ b lbl_8028CFC4 -lbl_8028CF38: -/* 8028CF38 00288B98 88 1E 00 04 */ lbz r0, 4(r30) -/* 8028CF3C 00288B9C 7C 00 07 75 */ extsb. r0, r0 -/* 8028CF40 00288BA0 41 82 00 28 */ beq lbl_8028CF68 -/* 8028CF44 00288BA4 88 1F 00 04 */ lbz r0, 4(r31) -/* 8028CF48 00288BA8 7C 00 07 75 */ extsb. r0, r0 -/* 8028CF4C 00288BAC 41 82 00 1C */ beq lbl_8028CF68 -/* 8028CF50 00288BB0 38 7E 00 04 */ addi r3, r30, 4 -/* 8028CF54 00288BB4 38 9F 00 04 */ addi r4, r31, 4 -/* 8028CF58 00288BB8 38 A0 00 02 */ li r5, 2 -/* 8028CF5C 00288BBC 4B F4 16 0D */ bl strncmp -/* 8028CF60 00288BC0 2C 03 00 00 */ cmpwi r3, 0 -/* 8028CF64 00288BC4 41 82 00 0C */ beq lbl_8028CF70 -lbl_8028CF68: -/* 8028CF68 00288BC8 38 60 00 00 */ li r3, 0 -/* 8028CF6C 00288BCC 48 00 00 58 */ b lbl_8028CFC4 -lbl_8028CF70: -/* 8028CF70 00288BD0 88 7E 00 06 */ lbz r3, 6(r30) -/* 8028CF74 00288BD4 28 03 00 FF */ cmplwi r3, 0xff -/* 8028CF78 00288BD8 41 82 00 20 */ beq lbl_8028CF98 -/* 8028CF7C 00288BDC 88 1F 00 06 */ lbz r0, 6(r31) -/* 8028CF80 00288BE0 28 00 00 FF */ cmplwi r0, 0xff -/* 8028CF84 00288BE4 41 82 00 14 */ beq lbl_8028CF98 -/* 8028CF88 00288BE8 7C 03 00 40 */ cmplw r3, r0 -/* 8028CF8C 00288BEC 41 82 00 0C */ beq lbl_8028CF98 -/* 8028CF90 00288BF0 38 60 00 00 */ li r3, 0 -/* 8028CF94 00288BF4 48 00 00 30 */ b lbl_8028CFC4 -lbl_8028CF98: -/* 8028CF98 00288BF8 88 7E 00 07 */ lbz r3, 7(r30) -/* 8028CF9C 00288BFC 28 03 00 FF */ cmplwi r3, 0xff -/* 8028CFA0 00288C00 41 82 00 20 */ beq lbl_8028CFC0 -/* 8028CFA4 00288C04 88 1F 00 07 */ lbz r0, 7(r31) -/* 8028CFA8 00288C08 28 00 00 FF */ cmplwi r0, 0xff -/* 8028CFAC 00288C0C 41 82 00 14 */ beq lbl_8028CFC0 -/* 8028CFB0 00288C10 7C 03 00 40 */ cmplw r3, r0 -/* 8028CFB4 00288C14 41 82 00 0C */ beq lbl_8028CFC0 -/* 8028CFB8 00288C18 38 60 00 00 */ li r3, 0 -/* 8028CFBC 00288C1C 48 00 00 08 */ b lbl_8028CFC4 -lbl_8028CFC0: -/* 8028CFC0 00288C20 38 60 00 01 */ li r3, 1 -lbl_8028CFC4: -/* 8028CFC4 00288C24 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028CFC8 00288C28 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028CFCC 00288C2C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028CFD0 00288C30 7C 08 03 A6 */ mtlr r0 -/* 8028CFD4 00288C34 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028CFD8 00288C38 4E 80 00 20 */ blr -lbl_8028CFDC: -/* 8028CFDC 00288C3C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8028CFE0 00288C40 7C 08 02 A6 */ mflr r0 -/* 8028CFE4 00288C44 90 01 00 24 */ stw r0, 0x24(r1) -/* 8028CFE8 00288C48 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8028CFEC 00288C4C 3B E0 00 00 */ li r31, 0 -/* 8028CFF0 00288C50 88 A2 A2 10 */ lbz r5, lbl_80642810-_SDA2_BASE_(r2) -/* 8028CFF4 00288C54 88 82 A2 11 */ lbz r4, lbl_80642811-_SDA2_BASE_(r2) -/* 8028CFF8 00288C58 88 62 A2 12 */ lbz r3, lbl_80642812-_SDA2_BASE_(r2) -/* 8028CFFC 00288C5C 88 02 A2 13 */ lbz r0, lbl_80642813-_SDA2_BASE_(r2) -/* 8028D000 00288C60 98 A1 00 10 */ stb r5, 0x10(r1) -/* 8028D004 00288C64 98 81 00 11 */ stb r4, 0x11(r1) -/* 8028D008 00288C68 98 61 00 12 */ stb r3, 0x12(r1) -/* 8028D00C 00288C6C 98 01 00 13 */ stb r0, 0x13(r1) -/* 8028D010 00288C70 48 05 F4 39 */ bl func_802EC448 -/* 8028D014 00288C74 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8028D018 00288C78 40 82 00 10 */ bne lbl_8028D028 -/* 8028D01C 00288C7C 38 60 00 01 */ li r3, 1 -/* 8028D020 00288C80 4B FE 0D 4D */ bl OSSetFontEncode -/* 8028D024 00288C84 48 00 00 0C */ b lbl_8028D030 -lbl_8028D028: -/* 8028D028 00288C88 38 60 00 00 */ li r3, 0 -/* 8028D02C 00288C8C 4B FE 0D 41 */ bl OSSetFontEncode -lbl_8028D030: -/* 8028D030 00288C90 48 05 F4 19 */ bl func_802EC448 -/* 8028D034 00288C94 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8028D038 00288C98 28 00 00 06 */ cmplwi r0, 6 -/* 8028D03C 00288C9C 40 81 00 14 */ ble lbl_8028D050 -/* 8028D040 00288CA0 3C 60 80 40 */ lis r3, lbl_803FD9B8@ha -/* 8028D044 00288CA4 38 63 D9 B8 */ addi r3, r3, lbl_803FD9B8@l -/* 8028D048 00288CA8 80 A3 00 04 */ lwz r5, 4(r3) -/* 8028D04C 00288CAC 48 00 00 18 */ b lbl_8028D064 -lbl_8028D050: -/* 8028D050 00288CB0 48 05 F3 F9 */ bl func_802EC448 -/* 8028D054 00288CB4 3C 80 80 40 */ lis r4, lbl_803FD9B8@ha -/* 8028D058 00288CB8 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d -/* 8028D05C 00288CBC 38 84 D9 B8 */ addi r4, r4, lbl_803FD9B8@l -/* 8028D060 00288CC0 7C A4 00 2E */ lwzx r5, r4, r0 -lbl_8028D064: -/* 8028D064 00288CC4 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8028D068 00288CC8 38 61 00 0C */ addi r3, r1, 0xc -/* 8028D06C 00288CCC 93 E1 00 08 */ stw r31, 8(r1) -/* 8028D070 00288CD0 38 81 00 08 */ addi r4, r1, 8 -/* 8028D074 00288CD4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8028D078 00288CD8 4B FE 02 19 */ bl OSFatal -/* 8028D07C 00288CDC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8028D080 00288CE0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8028D084 00288CE4 7C 08 03 A6 */ mtlr r0 -/* 8028D088 00288CE8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8028D08C 00288CEC 4E 80 00 20 */ blr - -.global func_8028D090 -func_8028D090: -/* 8028D090 00288CF0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028D094 00288CF4 7C 08 02 A6 */ mflr r0 -/* 8028D098 00288CF8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028D09C 00288CFC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028D0A0 00288D00 7C 7F 1B 78 */ mr r31, r3 -/* 8028D0A4 00288D04 4B FE 16 B9 */ bl OSDisableInterrupts -/* 8028D0A8 00288D08 80 AD AA A0 */ lwz r5, lbl_8063FD60-_SDA_BASE_(r13) -/* 8028D0AC 00288D0C 2C 1F 00 00 */ cmpwi r31, 0 -/* 8028D0B0 00288D10 38 80 00 00 */ li r4, 0 -/* 8028D0B4 00288D14 7C 05 00 D0 */ neg r0, r5 -/* 8028D0B8 00288D18 7C 00 2B 78 */ or r0, r0, r5 -/* 8028D0BC 00288D1C 54 1F 0F FE */ srwi r31, r0, 0x1f -/* 8028D0C0 00288D20 41 82 00 0C */ beq lbl_8028D0CC -/* 8028D0C4 00288D24 3C 80 80 29 */ lis r4, lbl_8028CFDC@ha -/* 8028D0C8 00288D28 38 84 CF DC */ addi r4, r4, lbl_8028CFDC@l -lbl_8028D0CC: -/* 8028D0CC 00288D2C 90 8D AA A0 */ stw r4, lbl_8063FD60-_SDA_BASE_(r13) -/* 8028D0D0 00288D30 4B FE 16 B5 */ bl OSRestoreInterrupts -/* 8028D0D4 00288D34 7F E3 FB 78 */ mr r3, r31 -/* 8028D0D8 00288D38 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028D0DC 00288D3C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028D0E0 00288D40 7C 08 03 A6 */ mtlr r0 -/* 8028D0E4 00288D44 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028D0E8 00288D48 4E 80 00 20 */ blr - -.global func_8028D0EC -func_8028D0EC: -/* 8028D0EC 00288D4C 80 6D AA A0 */ lwz r3, lbl_8063FD60-_SDA_BASE_(r13) -/* 8028D0F0 00288D50 7C 03 00 D0 */ neg r0, r3 -/* 8028D0F4 00288D54 7C 00 1B 78 */ or r0, r0, r3 -/* 8028D0F8 00288D58 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8028D0FC 00288D5C 4E 80 00 20 */ blr - -.global lbl_8028D100 -lbl_8028D100: -/* 8028D100 00288D60 81 8D AA A0 */ lwz r12, lbl_8063FD60-_SDA_BASE_(r13) -/* 8028D104 00288D64 2C 0C 00 00 */ cmpwi r12, 0 -/* 8028D108 00288D68 4D 82 00 20 */ beqlr -/* 8028D10C 00288D6C 7D 89 03 A6 */ mtctr r12 -/* 8028D110 00288D70 4E 80 04 20 */ bctr -/* 8028D114 00288D74 4E 80 00 20 */ blr - -lbl_8028D118: -/* 8028D118 00288D78 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028D11C 00288D7C 7C 08 02 A6 */ mflr r0 -/* 8028D120 00288D80 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028D124 00288D84 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028D128 00288D88 7C 9F 23 78 */ mr r31, r4 -/* 8028D12C 00288D8C 80 A4 00 0C */ lwz r5, 0xc(r4) -/* 8028D130 00288D90 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028D134 00288D94 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028D138 00288D98 41 82 00 24 */ beq lbl_8028D15C -/* 8028D13C 00288D9C 3C 60 80 43 */ lis r3, lbl_804366A0@ha -/* 8028D140 00288DA0 38 63 66 A0 */ addi r3, r3, lbl_804366A0@l -/* 8028D144 00288DA4 4C C6 31 82 */ crclr 6 -/* 8028D148 00288DA8 4B D7 A9 7D */ bl func_80007AC4 -/* 8028D14C 00288DAC 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha -/* 8028D150 00288DB0 38 03 DA ED */ addi r0, r3, 0xFEEBDAED@l -/* 8028D154 00288DB4 90 1F 00 0C */ stw r0, 0xc(r31) -/* 8028D158 00288DB8 48 00 00 58 */ b lbl_8028D1B0 -lbl_8028D15C: -/* 8028D15C 00288DBC 38 C0 00 00 */ li r6, 0 -/* 8028D160 00288DC0 98 CD AA A8 */ stb r6, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028D164 00288DC4 80 04 00 00 */ lwz r0, 0(r4) -/* 8028D168 00288DC8 2C 00 00 00 */ cmpwi r0, 0 -/* 8028D16C 00288DCC 41 82 00 44 */ beq lbl_8028D1B0 -/* 8028D170 00288DD0 88 0D AA C8 */ lbz r0, lbl_8063FD88-_SDA_BASE_(r13) -/* 8028D174 00288DD4 38 A0 00 01 */ li r5, 1 -/* 8028D178 00288DD8 98 AD AA A9 */ stb r5, lbl_8063FD69-_SDA_BASE_(r13) -/* 8028D17C 00288DDC 28 00 00 01 */ cmplwi r0, 1 -/* 8028D180 00288DE0 40 82 00 0C */ bne lbl_8028D18C -/* 8028D184 00288DE4 98 CD AA C8 */ stb r6, lbl_8063FD88-_SDA_BASE_(r13) -/* 8028D188 00288DE8 60 63 00 08 */ ori r3, r3, 8 -lbl_8028D18C: -/* 8028D18C 00288DEC 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 8028D190 00288DF0 41 82 00 0C */ beq lbl_8028D19C -/* 8028D194 00288DF4 38 00 00 00 */ li r0, 0 -/* 8028D198 00288DF8 90 0D AA BC */ stw r0, lbl_8063FD7C-_SDA_BASE_(r13) -lbl_8028D19C: -/* 8028D19C 00288DFC 81 84 00 00 */ lwz r12, 0(r4) -/* 8028D1A0 00288E00 7D 89 03 A6 */ mtctr r12 -/* 8028D1A4 00288E04 4E 80 04 21 */ bctrl -/* 8028D1A8 00288E08 38 00 00 00 */ li r0, 0 -/* 8028D1AC 00288E0C 98 0D AA A9 */ stb r0, lbl_8063FD69-_SDA_BASE_(r13) -lbl_8028D1B0: -/* 8028D1B0 00288E10 38 00 00 00 */ li r0, 0 -/* 8028D1B4 00288E14 38 60 00 00 */ li r3, 0 -/* 8028D1B8 00288E18 98 1F 00 08 */ stb r0, 8(r31) -/* 8028D1BC 00288E1C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028D1C0 00288E20 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028D1C4 00288E24 7C 08 03 A6 */ mtlr r0 -/* 8028D1C8 00288E28 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028D1CC 00288E2C 4E 80 00 20 */ blr -lbl_8028D1D0: -/* 8028D1D0 00288E30 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028D1D4 00288E34 7C 08 02 A6 */ mflr r0 -/* 8028D1D8 00288E38 3C A0 80 52 */ lis r5, lbl_8051B7E0@ha -/* 8028D1DC 00288E3C 3C C0 80 52 */ lis r6, lbl_8051B800@ha -/* 8028D1E0 00288E40 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028D1E4 00288E44 38 A5 B7 E0 */ addi r5, r5, lbl_8051B7E0@l -/* 8028D1E8 00288E48 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028D1EC 00288E4C 7C 9F 23 78 */ mr r31, r4 -/* 8028D1F0 00288E50 80 06 B8 00 */ lwz r0, lbl_8051B800@l(r6) -/* 8028D1F4 00288E54 38 C0 00 00 */ li r6, 0 -/* 8028D1F8 00288E58 98 CD AA A8 */ stb r6, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028D1FC 00288E5C 90 05 00 04 */ stw r0, 4(r5) -/* 8028D200 00288E60 80 A4 00 0C */ lwz r5, 0xc(r4) -/* 8028D204 00288E64 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028D208 00288E68 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028D20C 00288E6C 41 82 00 24 */ beq lbl_8028D230 -/* 8028D210 00288E70 3C 60 80 43 */ lis r3, lbl_804366A0@ha -/* 8028D214 00288E74 38 63 66 A0 */ addi r3, r3, lbl_804366A0@l -/* 8028D218 00288E78 4C C6 31 82 */ crclr 6 -/* 8028D21C 00288E7C 4B D7 A8 A9 */ bl func_80007AC4 -/* 8028D220 00288E80 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha -/* 8028D224 00288E84 38 03 DA ED */ addi r0, r3, 0xFEEBDAED@l -/* 8028D228 00288E88 90 1F 00 0C */ stw r0, 0xc(r31) -/* 8028D22C 00288E8C 48 00 00 40 */ b lbl_8028D26C -lbl_8028D230: -/* 8028D230 00288E90 80 04 00 00 */ lwz r0, 0(r4) -/* 8028D234 00288E94 2C 00 00 00 */ cmpwi r0, 0 -/* 8028D238 00288E98 41 82 00 34 */ beq lbl_8028D26C -/* 8028D23C 00288E9C 88 0D AA C8 */ lbz r0, lbl_8063FD88-_SDA_BASE_(r13) -/* 8028D240 00288EA0 38 A0 00 01 */ li r5, 1 -/* 8028D244 00288EA4 98 AD AA A9 */ stb r5, lbl_8063FD69-_SDA_BASE_(r13) -/* 8028D248 00288EA8 28 00 00 01 */ cmplwi r0, 1 -/* 8028D24C 00288EAC 40 82 00 0C */ bne lbl_8028D258 -/* 8028D250 00288EB0 98 CD AA C8 */ stb r6, lbl_8063FD88-_SDA_BASE_(r13) -/* 8028D254 00288EB4 60 63 00 08 */ ori r3, r3, 8 -lbl_8028D258: -/* 8028D258 00288EB8 81 84 00 00 */ lwz r12, 0(r4) -/* 8028D25C 00288EBC 7D 89 03 A6 */ mtctr r12 -/* 8028D260 00288EC0 4E 80 04 21 */ bctrl -/* 8028D264 00288EC4 38 00 00 00 */ li r0, 0 -/* 8028D268 00288EC8 98 0D AA A9 */ stb r0, lbl_8063FD69-_SDA_BASE_(r13) -lbl_8028D26C: -/* 8028D26C 00288ECC 38 00 00 00 */ li r0, 0 -/* 8028D270 00288ED0 38 60 00 00 */ li r3, 0 -/* 8028D274 00288ED4 98 1F 00 08 */ stb r0, 8(r31) -/* 8028D278 00288ED8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028D27C 00288EDC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028D280 00288EE0 7C 08 03 A6 */ mtlr r0 -/* 8028D284 00288EE4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028D288 00288EE8 4E 80 00 20 */ blr - -.global func_8028D28C -func_8028D28C: -/* 8028D28C 00288EEC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028D290 00288EF0 7C 08 02 A6 */ mflr r0 -/* 8028D294 00288EF4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028D298 00288EF8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028D29C 00288EFC 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028D2A0 00288F00 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028D2A4 00288F04 93 C1 00 08 */ stw r30, 8(r1) -/* 8028D2A8 00288F08 88 0D AA B5 */ lbz r0, lbl_8063FD75-_SDA_BASE_(r13) -/* 8028D2AC 00288F0C 2C 00 00 00 */ cmpwi r0, 0 -/* 8028D2B0 00288F10 40 82 01 84 */ bne lbl_8028D434 -/* 8028D2B4 00288F14 38 00 00 01 */ li r0, 1 -/* 8028D2B8 00288F18 98 0D AA B5 */ stb r0, lbl_8063FD75-_SDA_BASE_(r13) -/* 8028D2BC 00288F1C 48 01 5A 85 */ bl func_802A2D40 -/* 8028D2C0 00288F20 2C 03 00 00 */ cmpwi r3, 0 -/* 8028D2C4 00288F24 41 82 00 1C */ beq lbl_8028D2E0 -/* 8028D2C8 00288F28 7C 64 1B 78 */ mr r4, r3 -/* 8028D2CC 00288F2C 38 7F 00 60 */ addi r3, r31, 0x60 -/* 8028D2D0 00288F30 4C C6 31 82 */ crclr 6 -/* 8028D2D4 00288F34 4B D7 A7 F1 */ bl func_80007AC4 -/* 8028D2D8 00288F38 38 60 00 00 */ li r3, 0 -/* 8028D2DC 00288F3C 48 00 01 FC */ b lbl_8028D4D8 -lbl_8028D2E0: -/* 8028D2E0 00288F40 48 01 56 15 */ bl func_802A28F4 -/* 8028D2E4 00288F44 7C 7E 1B 78 */ mr r30, r3 -/* 8028D2E8 00288F48 48 01 56 05 */ bl func_802A28EC -/* 8028D2EC 00288F4C 57 C0 06 FF */ clrlwi. r0, r30, 0x1b -/* 8028D2F0 00288F50 41 82 00 0C */ beq lbl_8028D2FC -/* 8028D2F4 00288F54 38 1E 00 1F */ addi r0, r30, 0x1f -/* 8028D2F8 00288F58 54 1E 06 FE */ clrlwi r30, r0, 0x1b -lbl_8028D2FC: -/* 8028D2FC 00288F5C 38 1E 00 80 */ addi r0, r30, 0x80 -/* 8028D300 00288F60 7C 00 18 40 */ cmplw r0, r3 -/* 8028D304 00288F64 40 81 00 14 */ ble lbl_8028D318 -/* 8028D308 00288F68 38 7F 00 80 */ addi r3, r31, 0x80 -/* 8028D30C 00288F6C 38 80 00 80 */ li r4, 0x80 -/* 8028D310 00288F70 4C C6 31 82 */ crclr 6 -/* 8028D314 00288F74 4B D7 A7 B1 */ bl func_80007AC4 -lbl_8028D318: -/* 8028D318 00288F78 38 7E 00 80 */ addi r3, r30, 0x80 -/* 8028D31C 00288F7C 48 01 55 E1 */ bl func_802A28FC -/* 8028D320 00288F80 2C 1E 00 00 */ cmpwi r30, 0 -/* 8028D324 00288F84 93 CD AA C4 */ stw r30, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D328 00288F88 40 82 00 18 */ bne lbl_8028D340 -/* 8028D32C 00288F8C 38 7F 00 BC */ addi r3, r31, 0xbc -/* 8028D330 00288F90 4C C6 31 82 */ crclr 6 -/* 8028D334 00288F94 4B D7 A7 91 */ bl func_80007AC4 -/* 8028D338 00288F98 38 00 00 00 */ li r0, 0 -/* 8028D33C 00288F9C 48 00 00 68 */ b lbl_8028D3A4 -lbl_8028D340: -/* 8028D340 00288FA0 48 01 55 B5 */ bl func_802A28F4 -/* 8028D344 00288FA4 7C 7E 1B 78 */ mr r30, r3 -/* 8028D348 00288FA8 48 01 55 A5 */ bl func_802A28EC -/* 8028D34C 00288FAC 57 C0 06 FF */ clrlwi. r0, r30, 0x1b -/* 8028D350 00288FB0 41 82 00 0C */ beq lbl_8028D35C -/* 8028D354 00288FB4 38 1E 00 1F */ addi r0, r30, 0x1f -/* 8028D358 00288FB8 54 1E 06 FE */ clrlwi r30, r0, 0x1b -lbl_8028D35C: -/* 8028D35C 00288FBC 38 1E 00 20 */ addi r0, r30, 0x20 -/* 8028D360 00288FC0 7C 00 18 40 */ cmplw r0, r3 -/* 8028D364 00288FC4 40 81 00 14 */ ble lbl_8028D378 -/* 8028D368 00288FC8 38 7F 00 80 */ addi r3, r31, 0x80 -/* 8028D36C 00288FCC 38 80 00 20 */ li r4, 0x20 -/* 8028D370 00288FD0 4C C6 31 82 */ crclr 6 -/* 8028D374 00288FD4 4B D7 A7 51 */ bl func_80007AC4 -lbl_8028D378: -/* 8028D378 00288FD8 38 7E 00 20 */ addi r3, r30, 0x20 -/* 8028D37C 00288FDC 48 01 55 81 */ bl func_802A28FC -/* 8028D380 00288FE0 2C 1E 00 00 */ cmpwi r30, 0 -/* 8028D384 00288FE4 93 CD AA C0 */ stw r30, lbl_8063FD80-_SDA_BASE_(r13) -/* 8028D388 00288FE8 40 82 00 18 */ bne lbl_8028D3A0 -/* 8028D38C 00288FEC 38 7F 00 E4 */ addi r3, r31, 0xe4 -/* 8028D390 00288FF0 4C C6 31 82 */ crclr 6 -/* 8028D394 00288FF4 4B D7 A7 31 */ bl func_80007AC4 -/* 8028D398 00288FF8 38 00 00 00 */ li r0, 0 -/* 8028D39C 00288FFC 48 00 00 08 */ b lbl_8028D3A4 -lbl_8028D3A0: -/* 8028D3A0 00289000 38 00 00 01 */ li r0, 1 -lbl_8028D3A4: -/* 8028D3A4 00289004 2C 00 00 00 */ cmpwi r0, 0 -/* 8028D3A8 00289008 40 82 00 0C */ bne lbl_8028D3B4 -/* 8028D3AC 0028900C 38 60 00 00 */ li r3, 0 -/* 8028D3B0 00289010 48 00 01 28 */ b lbl_8028D4D8 -lbl_8028D3B4: -/* 8028D3B4 00289014 88 0D AA B4 */ lbz r0, lbl_8063FD74-_SDA_BASE_(r13) -/* 8028D3B8 00289018 2C 00 00 00 */ cmpwi r0, 0 -/* 8028D3BC 0028901C 40 82 00 78 */ bne lbl_8028D434 -/* 8028D3C0 00289020 38 A0 00 00 */ li r5, 0 -/* 8028D3C4 00289024 3C 80 80 52 */ lis r4, lbl_8051B760@ha -/* 8028D3C8 00289028 94 A4 B7 60 */ stwu r5, lbl_8051B760@l(r4) -/* 8028D3CC 0028902C 3C 60 FE EC */ lis r3, 0xFEEBDAED@ha -/* 8028D3D0 00289030 38 00 00 01 */ li r0, 1 -/* 8028D3D4 00289034 38 C0 00 02 */ li r6, 2 -/* 8028D3D8 00289038 90 A4 00 04 */ stw r5, 4(r4) -/* 8028D3DC 0028903C 38 63 DA ED */ addi r3, r3, 0xFEEBDAED@l -/* 8028D3E0 00289040 98 A4 00 08 */ stb r5, 8(r4) -/* 8028D3E4 00289044 90 64 00 0C */ stw r3, 0xc(r4) -/* 8028D3E8 00289048 90 A4 00 10 */ stw r5, 0x10(r4) -/* 8028D3EC 0028904C 90 A4 00 20 */ stw r5, 0x20(r4) -/* 8028D3F0 00289050 90 A4 00 24 */ stw r5, 0x24(r4) -/* 8028D3F4 00289054 98 A4 00 28 */ stb r5, 0x28(r4) -/* 8028D3F8 00289058 90 64 00 2C */ stw r3, 0x2c(r4) -/* 8028D3FC 0028905C 90 04 00 30 */ stw r0, 0x30(r4) -/* 8028D400 00289060 90 A4 00 40 */ stw r5, 0x40(r4) -/* 8028D404 00289064 90 A4 00 44 */ stw r5, 0x44(r4) -/* 8028D408 00289068 98 A4 00 48 */ stb r5, 0x48(r4) -/* 8028D40C 0028906C 90 64 00 4C */ stw r3, 0x4c(r4) -/* 8028D410 00289070 90 C4 00 50 */ stw r6, 0x50(r4) -/* 8028D414 00289074 38 C0 00 03 */ li r6, 3 -/* 8028D418 00289078 90 A4 00 60 */ stw r5, 0x60(r4) -/* 8028D41C 0028907C 90 A4 00 64 */ stw r5, 0x64(r4) -/* 8028D420 00289080 98 A4 00 68 */ stb r5, 0x68(r4) -/* 8028D424 00289084 90 64 00 6C */ stw r3, 0x6c(r4) -/* 8028D428 00289088 90 C4 00 70 */ stw r6, 0x70(r4) -/* 8028D42C 0028908C 90 AD AA B0 */ stw r5, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D430 00289090 98 0D AA B4 */ stb r0, lbl_8063FD74-_SDA_BASE_(r13) -lbl_8028D434: -/* 8028D434 00289094 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13) -/* 8028D438 00289098 38 8D 88 D8 */ addi r4, r13, lbl_8063DB98-_SDA_BASE_ -/* 8028D43C 0028909C 38 A0 00 20 */ li r5, 0x20 -/* 8028D440 002890A0 4B F4 0F 51 */ bl strncpy -/* 8028D444 002890A4 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13) -/* 8028D448 002890A8 38 80 00 00 */ li r4, 0 -/* 8028D44C 002890AC 48 01 5D 0D */ bl func_802A3158 -/* 8028D450 002890B0 2C 03 00 00 */ cmpwi r3, 0 -/* 8028D454 002890B4 90 6D 88 D0 */ stw r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028D458 002890B8 41 80 00 0C */ blt lbl_8028D464 -/* 8028D45C 002890BC 38 60 00 01 */ li r3, 1 -/* 8028D460 002890C0 48 00 00 78 */ b lbl_8028D4D8 -lbl_8028D464: -/* 8028D464 002890C4 2C 03 FF FB */ cmpwi r3, -5 -/* 8028D468 002890C8 41 82 00 48 */ beq lbl_8028D4B0 -/* 8028D46C 002890CC 40 80 00 10 */ bge lbl_8028D47C -/* 8028D470 002890D0 2C 03 FF FA */ cmpwi r3, -6 -/* 8028D474 002890D4 40 80 00 14 */ bge lbl_8028D488 -/* 8028D478 002890D8 48 00 00 4C */ b lbl_8028D4C4 -lbl_8028D47C: -/* 8028D47C 002890DC 2C 03 FF FF */ cmpwi r3, -1 -/* 8028D480 002890E0 41 82 00 1C */ beq lbl_8028D49C -/* 8028D484 002890E4 48 00 00 40 */ b lbl_8028D4C4 -lbl_8028D488: -/* 8028D488 002890E8 38 7F 01 04 */ addi r3, r31, 0x104 -/* 8028D48C 002890EC 4C C6 31 82 */ crclr 6 -/* 8028D490 002890F0 4B D7 A6 35 */ bl func_80007AC4 -/* 8028D494 002890F4 38 60 00 00 */ li r3, 0 -/* 8028D498 002890F8 48 00 00 40 */ b lbl_8028D4D8 -lbl_8028D49C: -/* 8028D49C 002890FC 38 7F 01 50 */ addi r3, r31, 0x150 -/* 8028D4A0 00289100 4C C6 31 82 */ crclr 6 -/* 8028D4A4 00289104 4B D7 A6 21 */ bl func_80007AC4 -/* 8028D4A8 00289108 38 60 00 00 */ li r3, 0 -/* 8028D4AC 0028910C 48 00 00 2C */ b lbl_8028D4D8 -lbl_8028D4B0: -/* 8028D4B0 00289110 38 7F 01 98 */ addi r3, r31, 0x198 -/* 8028D4B4 00289114 4C C6 31 82 */ crclr 6 -/* 8028D4B8 00289118 4B D7 A6 0D */ bl func_80007AC4 -/* 8028D4BC 0028911C 38 60 00 00 */ li r3, 0 -/* 8028D4C0 00289120 48 00 00 18 */ b lbl_8028D4D8 -lbl_8028D4C4: -/* 8028D4C4 00289124 7C 64 1B 78 */ mr r4, r3 -/* 8028D4C8 00289128 38 7F 01 E4 */ addi r3, r31, 0x1e4 -/* 8028D4CC 0028912C 4C C6 31 82 */ crclr 6 -/* 8028D4D0 00289130 4B D7 A5 F5 */ bl func_80007AC4 -/* 8028D4D4 00289134 38 60 00 00 */ li r3, 0 -lbl_8028D4D8: -/* 8028D4D8 00289138 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028D4DC 0028913C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028D4E0 00289140 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028D4E4 00289144 7C 08 03 A6 */ mtlr r0 -/* 8028D4E8 00289148 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028D4EC 0028914C 4E 80 00 20 */ blr - -.global func_8028D4F0 -func_8028D4F0: -/* 8028D4F0 00289150 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8028D4F4 00289154 7C 08 02 A6 */ mflr r0 -/* 8028D4F8 00289158 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028D4FC 0028915C 39 40 00 01 */ li r10, 1 -/* 8028D500 00289160 90 01 00 24 */ stw r0, 0x24(r1) -/* 8028D504 00289164 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028D508 00289168 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8028D50C 0028916C 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028D510 00289170 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028D514 00289174 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8028D518 00289178 7C 7E 1B 78 */ mr r30, r3 -/* 8028D51C 0028917C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8028D520 00289180 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D524 00289184 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028D528 00289188 55 28 28 34 */ slwi r8, r9, 5 -/* 8028D52C 0028918C 7C C7 42 14 */ add r6, r7, r8 -/* 8028D530 00289190 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028D534 00289194 7C 05 00 D0 */ neg r0, r5 -/* 8028D538 00289198 7C 00 2B 78 */ or r0, r0, r5 -/* 8028D53C 0028919C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028D540 002891A0 28 00 00 01 */ cmplwi r0, 1 -/* 8028D544 002891A4 40 82 00 24 */ bne lbl_8028D568 -/* 8028D548 002891A8 7D 24 4B 78 */ mr r4, r9 -/* 8028D54C 002891AC 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028D550 002891B0 4C C6 31 82 */ crclr 6 -/* 8028D554 002891B4 4B D7 A5 71 */ bl func_80007AC4 -/* 8028D558 002891B8 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028D55C 002891BC 4C C6 31 82 */ crclr 6 -/* 8028D560 002891C0 4B D7 A5 65 */ bl func_80007AC4 -lbl_8028D564: -/* 8028D564 002891C4 48 00 00 00 */ b lbl_8028D564 -lbl_8028D568: -/* 8028D568 002891C8 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028D56C 002891CC 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028D570 002891D0 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028D574 002891D4 41 82 00 14 */ beq lbl_8028D588 -/* 8028D578 002891D8 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028D57C 002891DC 4C C6 31 82 */ crclr 6 -/* 8028D580 002891E0 4B D7 A5 45 */ bl func_80007AC4 -lbl_8028D584: -/* 8028D584 002891E4 48 00 00 00 */ b lbl_8028D584 -lbl_8028D588: -/* 8028D588 002891E8 7C 87 41 2E */ stwx r4, r7, r8 -/* 8028D58C 002891EC 38 09 00 01 */ addi r0, r9, 1 -/* 8028D590 002891F0 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D594 002891F4 91 46 00 04 */ stw r10, 4(r6) -/* 8028D598 002891F8 99 46 00 08 */ stb r10, 8(r6) -/* 8028D59C 002891FC 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D5A0 00289200 41 80 00 0C */ blt lbl_8028D5AC -/* 8028D5A4 00289204 38 00 00 00 */ li r0, 0 -/* 8028D5A8 00289208 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028D5AC: -/* 8028D5AC 0028920C 3C 80 80 52 */ lis r4, lbl_8051B760@ha -/* 8028D5B0 00289210 2C 03 00 00 */ cmpwi r3, 0 -/* 8028D5B4 00289214 55 20 28 34 */ slwi r0, r9, 5 -/* 8028D5B8 00289218 38 84 B7 60 */ addi r4, r4, lbl_8051B760@l -/* 8028D5BC 0028921C 7F A4 02 14 */ add r29, r4, r0 -/* 8028D5C0 00289220 40 82 00 10 */ bne lbl_8028D5D0 -/* 8028D5C4 00289224 38 7F 02 C0 */ addi r3, r31, 0x2c0 -/* 8028D5C8 00289228 4C C6 31 82 */ crclr 6 -/* 8028D5CC 0028922C 4B D7 A4 F9 */ bl func_80007AC4 -lbl_8028D5D0: -/* 8028D5D0 00289230 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D5D4 00289234 38 03 00 01 */ addi r0, r3, 1 -/* 8028D5D8 00289238 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D5DC 0028923C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D5E0 00289240 41 80 00 0C */ blt lbl_8028D5EC -/* 8028D5E4 00289244 38 00 00 00 */ li r0, 0 -/* 8028D5E8 00289248 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028D5EC: -/* 8028D5EC 0028924C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D5F0 00289250 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028D5F4 00289254 54 00 28 34 */ slwi r0, r0, 5 -/* 8028D5F8 00289258 38 80 00 70 */ li r4, 0x70 -/* 8028D5FC 0028925C 7C 83 01 AE */ stbx r4, r3, r0 -/* 8028D600 00289260 7F C7 F3 78 */ mr r7, r30 -/* 8028D604 00289264 7F AA EB 78 */ mr r10, r29 -/* 8028D608 00289268 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028D60C 0028926C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D610 00289270 38 80 00 70 */ li r4, 0x70 -/* 8028D614 00289274 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D618 00289278 38 C0 00 20 */ li r6, 0x20 -/* 8028D61C 0028927C 54 00 28 34 */ slwi r0, r0, 5 -/* 8028D620 00289280 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028D624 00289284 7C A5 02 14 */ add r5, r5, r0 -/* 8028D628 00289288 39 00 00 20 */ li r8, 0x20 -/* 8028D62C 0028928C 48 01 63 8D */ bl func_802A39B8 -/* 8028D630 00289290 2C 03 00 00 */ cmpwi r3, 0 -/* 8028D634 00289294 41 82 00 24 */ beq lbl_8028D658 -/* 8028D638 00289298 7C 64 1B 78 */ mr r4, r3 -/* 8028D63C 0028929C 38 7F 02 FC */ addi r3, r31, 0x2fc -/* 8028D640 002892A0 4C C6 31 82 */ crclr 6 -/* 8028D644 002892A4 4B D7 A4 81 */ bl func_80007AC4 -/* 8028D648 002892A8 38 00 00 00 */ li r0, 0 -/* 8028D64C 002892AC 38 60 00 00 */ li r3, 0 -/* 8028D650 002892B0 98 1D 00 08 */ stb r0, 8(r29) -/* 8028D654 002892B4 48 00 00 08 */ b lbl_8028D65C -lbl_8028D658: -/* 8028D658 002892B8 38 60 00 01 */ li r3, 1 -lbl_8028D65C: -/* 8028D65C 002892BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8028D660 002892C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8028D664 002892C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8028D668 002892C8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8028D66C 002892CC 7C 08 03 A6 */ mtlr r0 -/* 8028D670 002892D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8028D674 002892D4 4E 80 00 20 */ blr - -.global func_8028D678 -func_8028D678: -/* 8028D678 002892D8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8028D67C 002892DC 7C 08 02 A6 */ mflr r0 -/* 8028D680 002892E0 3D 20 80 52 */ lis r9, lbl_8051B760@ha -/* 8028D684 002892E4 2C 04 00 00 */ cmpwi r4, 0 -/* 8028D688 002892E8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8028D68C 002892EC 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l -/* 8028D690 002892F0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8028D694 002892F4 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028D698 002892F8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028D69C 002892FC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8028D6A0 00289300 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8028D6A4 00289304 93 81 00 10 */ stw r28, 0x10(r1) -/* 8028D6A8 00289308 41 82 00 20 */ beq lbl_8028D6C8 -/* 8028D6AC 0028930C 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 8028D6B0 00289310 41 82 00 18 */ beq lbl_8028D6C8 -/* 8028D6B4 00289314 38 7F 03 38 */ addi r3, r31, 0x338 -/* 8028D6B8 00289318 4C C6 31 82 */ crclr 6 -/* 8028D6BC 0028931C 4B D7 A4 09 */ bl func_80007AC4 -/* 8028D6C0 00289320 38 60 00 00 */ li r3, 0 -/* 8028D6C4 00289324 48 00 01 FC */ b lbl_8028D8C0 -lbl_8028D6C8: -/* 8028D6C8 00289328 2C 06 00 00 */ cmpwi r6, 0 -/* 8028D6CC 0028932C 41 82 00 20 */ beq lbl_8028D6EC -/* 8028D6D0 00289330 54 C0 06 FF */ clrlwi. r0, r6, 0x1b -/* 8028D6D4 00289334 41 82 00 18 */ beq lbl_8028D6EC -/* 8028D6D8 00289338 38 7F 03 70 */ addi r3, r31, 0x370 -/* 8028D6DC 0028933C 4C C6 31 82 */ crclr 6 -/* 8028D6E0 00289340 4B D7 A3 E5 */ bl func_80007AC4 -/* 8028D6E4 00289344 38 60 00 00 */ li r3, 0 -/* 8028D6E8 00289348 48 00 01 D8 */ b lbl_8028D8C0 -lbl_8028D6EC: -/* 8028D6EC 0028934C 2C 07 00 00 */ cmpwi r7, 0 -/* 8028D6F0 00289350 41 82 00 20 */ beq lbl_8028D710 -/* 8028D6F4 00289354 54 E0 06 FF */ clrlwi. r0, r7, 0x1b -/* 8028D6F8 00289358 41 82 00 18 */ beq lbl_8028D710 -/* 8028D6FC 0028935C 38 7F 03 70 */ addi r3, r31, 0x370 -/* 8028D700 00289360 4C C6 31 82 */ crclr 6 -/* 8028D704 00289364 4B D7 A3 C1 */ bl func_80007AC4 -/* 8028D708 00289368 38 60 00 00 */ li r3, 0 -/* 8028D70C 0028936C 48 00 01 B4 */ b lbl_8028D8C0 -lbl_8028D710: -/* 8028D710 00289370 83 AD AA B0 */ lwz r29, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D714 00289374 3B 80 00 01 */ li r28, 1 -/* 8028D718 00289378 39 89 00 00 */ addi r12, r9, 0 -/* 8028D71C 0028937C 9B 8D AA A8 */ stb r28, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028D720 00289380 57 BE 28 34 */ slwi r30, r29, 5 -/* 8028D724 00289384 7D 6C F2 14 */ add r11, r12, r30 -/* 8028D728 00289388 89 4B 00 08 */ lbz r10, 8(r11) -/* 8028D72C 0028938C 7C 0A 00 D0 */ neg r0, r10 -/* 8028D730 00289390 7C 00 53 78 */ or r0, r0, r10 -/* 8028D734 00289394 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028D738 00289398 28 00 00 01 */ cmplwi r0, 1 -/* 8028D73C 0028939C 40 82 00 24 */ bne lbl_8028D760 -/* 8028D740 002893A0 7F A4 EB 78 */ mr r4, r29 -/* 8028D744 002893A4 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028D748 002893A8 4C C6 31 82 */ crclr 6 -/* 8028D74C 002893AC 4B D7 A3 79 */ bl func_80007AC4 -/* 8028D750 002893B0 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028D754 002893B4 4C C6 31 82 */ crclr 6 -/* 8028D758 002893B8 4B D7 A3 6D */ bl func_80007AC4 -lbl_8028D75C: -/* 8028D75C 002893BC 48 00 00 00 */ b lbl_8028D75C -lbl_8028D760: -/* 8028D760 002893C0 81 4B 00 0C */ lwz r10, 0xc(r11) -/* 8028D764 002893C4 3C 0A 01 15 */ addis r0, r10, 0x115 -/* 8028D768 002893C8 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028D76C 002893CC 41 82 00 14 */ beq lbl_8028D780 -/* 8028D770 002893D0 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028D774 002893D4 4C C6 31 82 */ crclr 6 -/* 8028D778 002893D8 4B D7 A3 4D */ bl func_80007AC4 -lbl_8028D77C: -/* 8028D77C 002893DC 48 00 00 00 */ b lbl_8028D77C -lbl_8028D780: -/* 8028D780 002893E0 7D 0C F1 2E */ stwx r8, r12, r30 -/* 8028D784 002893E4 38 1D 00 01 */ addi r0, r29, 1 -/* 8028D788 002893E8 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D78C 002893EC 93 8B 00 04 */ stw r28, 4(r11) -/* 8028D790 002893F0 9B 8B 00 08 */ stb r28, 8(r11) -/* 8028D794 002893F4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D798 002893F8 41 80 00 0C */ blt lbl_8028D7A4 -/* 8028D79C 002893FC 38 00 00 00 */ li r0, 0 -/* 8028D7A0 00289400 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028D7A4: -/* 8028D7A4 00289404 81 0D AA AC */ lwz r8, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D7A8 00289408 57 AB 28 34 */ slwi r11, r29, 5 -/* 8028D7AC 0028940C 39 49 00 00 */ addi r10, r9, 0 -/* 8028D7B0 00289410 38 08 00 01 */ addi r0, r8, 1 -/* 8028D7B4 00289414 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D7B8 00289418 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D7BC 0028941C 7F CA 5A 14 */ add r30, r10, r11 -/* 8028D7C0 00289420 41 80 00 0C */ blt lbl_8028D7CC -/* 8028D7C4 00289424 38 00 00 00 */ li r0, 0 -/* 8028D7C8 00289428 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028D7CC: -/* 8028D7CC 0028942C 81 0D AA C4 */ lwz r8, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D7D0 00289430 54 00 28 34 */ slwi r0, r0, 5 -/* 8028D7D4 00289434 39 40 00 8B */ li r10, 0x8b -/* 8028D7D8 00289438 2C 04 00 00 */ cmpwi r4, 0 -/* 8028D7DC 0028943C 7D 48 01 AE */ stbx r10, r8, r0 -/* 8028D7E0 00289440 39 09 00 C0 */ addi r8, r9, 0xc0 -/* 8028D7E4 00289444 38 00 00 20 */ li r0, 0x20 -/* 8028D7E8 00289448 81 4D AA AC */ lwz r10, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D7EC 0028944C 81 6D AA C4 */ lwz r11, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D7F0 00289450 55 4A 28 34 */ slwi r10, r10, 5 -/* 8028D7F4 00289454 7D 4B 52 14 */ add r10, r11, r10 -/* 8028D7F8 00289458 90 6A 00 04 */ stw r3, 4(r10) -/* 8028D7FC 0028945C 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D800 00289460 81 4D AA C4 */ lwz r10, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D804 00289464 54 63 28 34 */ slwi r3, r3, 5 -/* 8028D808 00289468 90 08 00 04 */ stw r0, 4(r8) -/* 8028D80C 0028946C 7C 0A 1A 14 */ add r0, r10, r3 -/* 8028D810 00289470 90 09 00 C0 */ stw r0, 0xc0(r9) -/* 8028D814 00289474 90 88 00 08 */ stw r4, 8(r8) -/* 8028D818 00289478 40 82 00 10 */ bne lbl_8028D828 -/* 8028D81C 0028947C 38 00 00 00 */ li r0, 0 -/* 8028D820 00289480 90 08 00 0C */ stw r0, 0xc(r8) -/* 8028D824 00289484 48 00 00 0C */ b lbl_8028D830 -lbl_8028D828: -/* 8028D828 00289488 38 00 02 A4 */ li r0, 0x2a4 -/* 8028D82C 0028948C 90 08 00 0C */ stw r0, 0xc(r8) -lbl_8028D830: -/* 8028D830 00289490 38 69 00 C0 */ addi r3, r9, 0xc0 -/* 8028D834 00289494 2C 06 00 00 */ cmpwi r6, 0 -/* 8028D838 00289498 90 C3 00 10 */ stw r6, 0x10(r3) -/* 8028D83C 0028949C 40 82 00 10 */ bne lbl_8028D84C -/* 8028D840 002894A0 38 00 00 00 */ li r0, 0 -/* 8028D844 002894A4 90 03 00 14 */ stw r0, 0x14(r3) -/* 8028D848 002894A8 48 00 00 08 */ b lbl_8028D850 -lbl_8028D84C: -/* 8028D84C 002894AC 90 A3 00 14 */ stw r5, 0x14(r3) -lbl_8028D850: -/* 8028D850 002894B0 39 49 00 C0 */ addi r10, r9, 0xc0 -/* 8028D854 002894B4 38 A9 01 00 */ addi r5, r9, 0x100 -/* 8028D858 002894B8 38 80 49 E4 */ li r4, 0x49e4 -/* 8028D85C 002894BC 38 00 00 20 */ li r0, 0x20 -/* 8028D860 002894C0 90 EA 00 18 */ stw r7, 0x18(r10) -/* 8028D864 002894C4 3D 00 80 29 */ lis r8, lbl_8028D118@ha -/* 8028D868 002894C8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028D86C 002894CC 7D 47 53 78 */ mr r7, r10 -/* 8028D870 002894D0 90 8A 00 1C */ stw r4, 0x1c(r10) -/* 8028D874 002894D4 7F C9 F3 78 */ mr r9, r30 -/* 8028D878 002894D8 39 08 D1 18 */ addi r8, r8, lbl_8028D118@l -/* 8028D87C 002894DC 38 80 00 8B */ li r4, 0x8b -/* 8028D880 002894E0 90 AA 00 20 */ stw r5, 0x20(r10) -/* 8028D884 002894E4 38 A0 00 03 */ li r5, 3 -/* 8028D888 002894E8 38 C0 00 02 */ li r6, 2 -/* 8028D88C 002894EC 90 0A 00 24 */ stw r0, 0x24(r10) -/* 8028D890 002894F0 48 01 64 CD */ bl func_802A3D5C -/* 8028D894 002894F4 2C 03 00 00 */ cmpwi r3, 0 -/* 8028D898 002894F8 41 82 00 24 */ beq lbl_8028D8BC -/* 8028D89C 002894FC 7C 64 1B 78 */ mr r4, r3 -/* 8028D8A0 00289500 38 7F 03 A8 */ addi r3, r31, 0x3a8 -/* 8028D8A4 00289504 4C C6 31 82 */ crclr 6 -/* 8028D8A8 00289508 4B D7 A2 1D */ bl func_80007AC4 -/* 8028D8AC 0028950C 38 00 00 00 */ li r0, 0 -/* 8028D8B0 00289510 38 60 00 00 */ li r3, 0 -/* 8028D8B4 00289514 98 1E 00 08 */ stb r0, 8(r30) -/* 8028D8B8 00289518 48 00 00 08 */ b lbl_8028D8C0 -lbl_8028D8BC: -/* 8028D8BC 0028951C 38 60 00 01 */ li r3, 1 -lbl_8028D8C0: -/* 8028D8C0 00289520 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8028D8C4 00289524 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8028D8C8 00289528 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8028D8CC 0028952C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8028D8D0 00289530 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8028D8D4 00289534 7C 08 03 A6 */ mtlr r0 -/* 8028D8D8 00289538 38 21 00 20 */ addi r1, r1, 0x20 -/* 8028D8DC 0028953C 4E 80 00 20 */ blr - -.global func_8028D8E0 -func_8028D8E0: -/* 8028D8E0 00289540 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028D8E4 00289544 7C 08 02 A6 */ mflr r0 -/* 8028D8E8 00289548 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028D8EC 0028954C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028D8F0 00289550 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028D8F4 00289554 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028D8F8 00289558 93 C1 00 08 */ stw r30, 8(r1) -/* 8028D8FC 0028955C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D900 00289560 38 04 00 01 */ addi r0, r4, 1 -/* 8028D904 00289564 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D908 00289568 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D90C 0028956C 41 80 00 0C */ blt lbl_8028D918 -/* 8028D910 00289570 38 00 00 00 */ li r0, 0 -/* 8028D914 00289574 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028D918: -/* 8028D918 00289578 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D91C 0028957C 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028D920 00289580 54 00 28 34 */ slwi r0, r0, 5 -/* 8028D924 00289584 38 A0 00 8C */ li r5, 0x8c -/* 8028D928 00289588 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028D92C 0028958C 39 20 00 01 */ li r9, 1 -/* 8028D930 00289590 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028D934 00289594 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D938 00289598 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028D93C 0028959C 54 88 28 34 */ slwi r8, r4, 5 -/* 8028D940 002895A0 7C C7 42 14 */ add r6, r7, r8 -/* 8028D944 002895A4 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028D948 002895A8 7C 05 00 D0 */ neg r0, r5 -/* 8028D94C 002895AC 7C 00 2B 78 */ or r0, r0, r5 -/* 8028D950 002895B0 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028D954 002895B4 28 00 00 01 */ cmplwi r0, 1 -/* 8028D958 002895B8 40 82 00 20 */ bne lbl_8028D978 -/* 8028D95C 002895BC 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028D960 002895C0 4C C6 31 82 */ crclr 6 -/* 8028D964 002895C4 4B D7 A1 61 */ bl func_80007AC4 -/* 8028D968 002895C8 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028D96C 002895CC 4C C6 31 82 */ crclr 6 -/* 8028D970 002895D0 4B D7 A1 55 */ bl func_80007AC4 -lbl_8028D974: -/* 8028D974 002895D4 48 00 00 00 */ b lbl_8028D974 -lbl_8028D978: -/* 8028D978 002895D8 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028D97C 002895DC 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028D980 002895E0 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028D984 002895E4 41 82 00 14 */ beq lbl_8028D998 -/* 8028D988 002895E8 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028D98C 002895EC 4C C6 31 82 */ crclr 6 -/* 8028D990 002895F0 4B D7 A1 35 */ bl func_80007AC4 -lbl_8028D994: -/* 8028D994 002895F4 48 00 00 00 */ b lbl_8028D994 -lbl_8028D998: -/* 8028D998 002895F8 7C 67 41 2E */ stwx r3, r7, r8 -/* 8028D99C 002895FC 38 04 00 01 */ addi r0, r4, 1 -/* 8028D9A0 00289600 2C 00 00 04 */ cmpwi r0, 4 -/* 8028D9A4 00289604 91 26 00 04 */ stw r9, 4(r6) -/* 8028D9A8 00289608 99 26 00 08 */ stb r9, 8(r6) -/* 8028D9AC 0028960C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028D9B0 00289610 41 80 00 0C */ blt lbl_8028D9BC -/* 8028D9B4 00289614 38 00 00 00 */ li r0, 0 -/* 8028D9B8 00289618 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028D9BC: -/* 8028D9BC 0028961C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028D9C0 00289620 3C 60 80 52 */ lis r3, lbl_8051B760@ha -/* 8028D9C4 00289624 54 85 28 34 */ slwi r5, r4, 5 -/* 8028D9C8 00289628 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028D9CC 0028962C 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l -/* 8028D9D0 00289630 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028D9D4 00289634 7F C3 2A 14 */ add r30, r3, r5 -/* 8028D9D8 00289638 54 00 28 34 */ slwi r0, r0, 5 -/* 8028D9DC 0028963C 7C A4 02 14 */ add r5, r4, r0 -/* 8028D9E0 00289640 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028D9E4 00289644 7F CA F3 78 */ mr r10, r30 -/* 8028D9E8 00289648 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028D9EC 0028964C 38 80 00 8C */ li r4, 0x8c -/* 8028D9F0 00289650 38 C0 00 20 */ li r6, 0x20 -/* 8028D9F4 00289654 38 E0 00 00 */ li r7, 0 -/* 8028D9F8 00289658 39 00 00 00 */ li r8, 0 -/* 8028D9FC 0028965C 48 01 5F BD */ bl func_802A39B8 -/* 8028DA00 00289660 2C 03 00 00 */ cmpwi r3, 0 -/* 8028DA04 00289664 41 82 00 24 */ beq lbl_8028DA28 -/* 8028DA08 00289668 7C 64 1B 78 */ mr r4, r3 -/* 8028DA0C 0028966C 38 7F 03 E8 */ addi r3, r31, 0x3e8 -/* 8028DA10 00289670 4C C6 31 82 */ crclr 6 -/* 8028DA14 00289674 4B D7 A0 B1 */ bl func_80007AC4 -/* 8028DA18 00289678 38 00 00 00 */ li r0, 0 -/* 8028DA1C 0028967C 38 60 00 00 */ li r3, 0 -/* 8028DA20 00289680 98 1E 00 08 */ stb r0, 8(r30) -/* 8028DA24 00289684 48 00 00 08 */ b lbl_8028DA2C -lbl_8028DA28: -/* 8028DA28 00289688 38 60 00 01 */ li r3, 1 -lbl_8028DA2C: -/* 8028DA2C 0028968C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028DA30 00289690 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028DA34 00289694 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028DA38 00289698 7C 08 03 A6 */ mtlr r0 -/* 8028DA3C 0028969C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028DA40 002896A0 4E 80 00 20 */ blr - -.global func_8028DA44 -func_8028DA44: -/* 8028DA44 002896A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028DA48 002896A8 7C 08 02 A6 */ mflr r0 -/* 8028DA4C 002896AC 3D 20 80 52 */ lis r9, lbl_8051B760@ha -/* 8028DA50 002896B0 39 80 00 01 */ li r12, 1 -/* 8028DA54 002896B4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028DA58 002896B8 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l -/* 8028DA5C 002896BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028DA60 002896C0 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028DA64 002896C4 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028DA68 002896C8 93 C1 00 08 */ stw r30, 8(r1) -/* 8028DA6C 002896CC 81 6D AA B0 */ lwz r11, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DA70 002896D0 99 8D AA A8 */ stb r12, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028DA74 002896D4 55 6A 28 34 */ slwi r10, r11, 5 -/* 8028DA78 002896D8 7D 09 52 14 */ add r8, r9, r10 -/* 8028DA7C 002896DC 88 E8 00 08 */ lbz r7, 8(r8) -/* 8028DA80 002896E0 7C 07 00 D0 */ neg r0, r7 -/* 8028DA84 002896E4 7C 00 3B 78 */ or r0, r0, r7 -/* 8028DA88 002896E8 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028DA8C 002896EC 28 00 00 01 */ cmplwi r0, 1 -/* 8028DA90 002896F0 40 82 00 24 */ bne lbl_8028DAB4 -/* 8028DA94 002896F4 7D 64 5B 78 */ mr r4, r11 -/* 8028DA98 002896F8 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028DA9C 002896FC 4C C6 31 82 */ crclr 6 -/* 8028DAA0 00289700 4B D7 A0 25 */ bl func_80007AC4 -/* 8028DAA4 00289704 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028DAA8 00289708 4C C6 31 82 */ crclr 6 -/* 8028DAAC 0028970C 4B D7 A0 19 */ bl func_80007AC4 -lbl_8028DAB0: -/* 8028DAB0 00289710 48 00 00 00 */ b lbl_8028DAB0 -lbl_8028DAB4: -/* 8028DAB4 00289714 80 E8 00 0C */ lwz r7, 0xc(r8) -/* 8028DAB8 00289718 3C 07 01 15 */ addis r0, r7, 0x115 -/* 8028DABC 0028971C 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028DAC0 00289720 41 82 00 14 */ beq lbl_8028DAD4 -/* 8028DAC4 00289724 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028DAC8 00289728 4C C6 31 82 */ crclr 6 -/* 8028DACC 0028972C 4B D7 9F F9 */ bl func_80007AC4 -lbl_8028DAD0: -/* 8028DAD0 00289730 48 00 00 00 */ b lbl_8028DAD0 -lbl_8028DAD4: -/* 8028DAD4 00289734 7C C9 51 2E */ stwx r6, r9, r10 -/* 8028DAD8 00289738 38 0B 00 01 */ addi r0, r11, 1 -/* 8028DADC 0028973C 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DAE0 00289740 91 88 00 04 */ stw r12, 4(r8) -/* 8028DAE4 00289744 99 88 00 08 */ stb r12, 8(r8) -/* 8028DAE8 00289748 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DAEC 0028974C 41 80 00 0C */ blt lbl_8028DAF8 -/* 8028DAF0 00289750 38 00 00 00 */ li r0, 0 -/* 8028DAF4 00289754 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028DAF8: -/* 8028DAF8 00289758 80 CD AA AC */ lwz r6, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DAFC 0028975C 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028DB00 00289760 90 8D AA BC */ stw r4, lbl_8063FD7C-_SDA_BASE_(r13) -/* 8028DB04 00289764 55 68 28 34 */ slwi r8, r11, 5 -/* 8028DB08 00289768 38 06 00 01 */ addi r0, r6, 1 -/* 8028DB0C 0028976C 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028DB10 00289770 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DB14 00289774 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DB18 00289778 7F C7 42 14 */ add r30, r7, r8 -/* 8028DB1C 0028977C 41 80 00 0C */ blt lbl_8028DB28 -/* 8028DB20 00289780 38 00 00 00 */ li r0, 0 -/* 8028DB24 00289784 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028DB28: -/* 8028DB28 00289788 80 CD AA C4 */ lwz r6, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DB2C 0028978C 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028DB30 00289790 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DB34 00289794 38 E0 00 8D */ li r7, 0x8d -/* 8028DB38 00289798 7C E6 01 AE */ stbx r7, r6, r0 -/* 8028DB3C 0028979C 7C 67 1B 78 */ mr r7, r3 -/* 8028DB40 002897A0 7C 88 23 78 */ mr r8, r4 -/* 8028DB44 002897A4 7F CA F3 78 */ mr r10, r30 -/* 8028DB48 002897A8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DB4C 002897AC 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028DB50 002897B0 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DB54 002897B4 38 C0 00 20 */ li r6, 0x20 -/* 8028DB58 002897B8 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DB5C 002897BC 7C 63 02 14 */ add r3, r3, r0 -/* 8028DB60 002897C0 90 83 00 04 */ stw r4, 4(r3) -/* 8028DB64 002897C4 38 80 00 8D */ li r4, 0x8d -/* 8028DB68 002897C8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DB6C 002897CC 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DB70 002897D0 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DB74 002897D4 7C 63 02 14 */ add r3, r3, r0 -/* 8028DB78 002897D8 90 A3 00 08 */ stw r5, 8(r3) -/* 8028DB7C 002897DC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DB80 002897E0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DB84 002897E4 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DB88 002897E8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028DB8C 002897EC 7C A5 02 14 */ add r5, r5, r0 -/* 8028DB90 002897F0 48 01 5E 29 */ bl func_802A39B8 -/* 8028DB94 002897F4 2C 03 00 00 */ cmpwi r3, 0 -/* 8028DB98 002897F8 41 82 00 24 */ beq lbl_8028DBBC -/* 8028DB9C 002897FC 7C 64 1B 78 */ mr r4, r3 -/* 8028DBA0 00289800 38 7F 04 28 */ addi r3, r31, 0x428 -/* 8028DBA4 00289804 4C C6 31 82 */ crclr 6 -/* 8028DBA8 00289808 4B D7 9F 1D */ bl func_80007AC4 -/* 8028DBAC 0028980C 38 00 00 00 */ li r0, 0 -/* 8028DBB0 00289810 38 60 00 00 */ li r3, 0 -/* 8028DBB4 00289814 98 1E 00 08 */ stb r0, 8(r30) -/* 8028DBB8 00289818 48 00 00 08 */ b lbl_8028DBC0 -lbl_8028DBBC: -/* 8028DBBC 0028981C 38 60 00 01 */ li r3, 1 -lbl_8028DBC0: -/* 8028DBC0 00289820 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028DBC4 00289824 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028DBC8 00289828 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028DBCC 0028982C 7C 08 03 A6 */ mtlr r0 -/* 8028DBD0 00289830 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028DBD4 00289834 4E 80 00 20 */ blr - -.global func_8028DBD8 -func_8028DBD8: -/* 8028DBD8 00289838 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028DBDC 0028983C 7C 08 02 A6 */ mflr r0 -/* 8028DBE0 00289840 3D 00 80 52 */ lis r8, lbl_8051B760@ha -/* 8028DBE4 00289844 39 60 00 01 */ li r11, 1 -/* 8028DBE8 00289848 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028DBEC 0028984C 39 08 B7 60 */ addi r8, r8, lbl_8051B760@l -/* 8028DBF0 00289850 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028DBF4 00289854 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028DBF8 00289858 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028DBFC 0028985C 93 C1 00 08 */ stw r30, 8(r1) -/* 8028DC00 00289860 81 4D AA B0 */ lwz r10, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DC04 00289864 99 6D AA A8 */ stb r11, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028DC08 00289868 55 49 28 34 */ slwi r9, r10, 5 -/* 8028DC0C 0028986C 7C E8 4A 14 */ add r7, r8, r9 -/* 8028DC10 00289870 88 C7 00 08 */ lbz r6, 8(r7) -/* 8028DC14 00289874 7C 06 00 D0 */ neg r0, r6 -/* 8028DC18 00289878 7C 00 33 78 */ or r0, r0, r6 -/* 8028DC1C 0028987C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028DC20 00289880 28 00 00 01 */ cmplwi r0, 1 -/* 8028DC24 00289884 40 82 00 24 */ bne lbl_8028DC48 -/* 8028DC28 00289888 7D 44 53 78 */ mr r4, r10 -/* 8028DC2C 0028988C 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028DC30 00289890 4C C6 31 82 */ crclr 6 -/* 8028DC34 00289894 4B D7 9E 91 */ bl func_80007AC4 -/* 8028DC38 00289898 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028DC3C 0028989C 4C C6 31 82 */ crclr 6 -/* 8028DC40 002898A0 4B D7 9E 85 */ bl func_80007AC4 -lbl_8028DC44: -/* 8028DC44 002898A4 48 00 00 00 */ b lbl_8028DC44 -lbl_8028DC48: -/* 8028DC48 002898A8 80 C7 00 0C */ lwz r6, 0xc(r7) -/* 8028DC4C 002898AC 3C 06 01 15 */ addis r0, r6, 0x115 -/* 8028DC50 002898B0 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028DC54 002898B4 41 82 00 14 */ beq lbl_8028DC68 -/* 8028DC58 002898B8 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028DC5C 002898BC 4C C6 31 82 */ crclr 6 -/* 8028DC60 002898C0 4B D7 9E 65 */ bl func_80007AC4 -lbl_8028DC64: -/* 8028DC64 002898C4 48 00 00 00 */ b lbl_8028DC64 -lbl_8028DC68: -/* 8028DC68 002898C8 7C A8 49 2E */ stwx r5, r8, r9 -/* 8028DC6C 002898CC 38 0A 00 01 */ addi r0, r10, 1 -/* 8028DC70 002898D0 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DC74 002898D4 91 67 00 04 */ stw r11, 4(r7) -/* 8028DC78 002898D8 99 67 00 08 */ stb r11, 8(r7) -/* 8028DC7C 002898DC 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DC80 002898E0 41 80 00 0C */ blt lbl_8028DC8C -/* 8028DC84 002898E4 38 00 00 00 */ li r0, 0 -/* 8028DC88 002898E8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028DC8C: -/* 8028DC8C 002898EC 80 AD AA AC */ lwz r5, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DC90 002898F0 3C C0 80 52 */ lis r6, lbl_8051B760@ha -/* 8028DC94 002898F4 55 47 28 34 */ slwi r7, r10, 5 -/* 8028DC98 002898F8 38 05 00 01 */ addi r0, r5, 1 -/* 8028DC9C 002898FC 38 C6 B7 60 */ addi r6, r6, lbl_8051B760@l -/* 8028DCA0 00289900 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DCA4 00289904 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DCA8 00289908 7F C6 3A 14 */ add r30, r6, r7 -/* 8028DCAC 0028990C 41 80 00 0C */ blt lbl_8028DCB8 -/* 8028DCB0 00289910 38 00 00 00 */ li r0, 0 -/* 8028DCB4 00289914 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028DCB8: -/* 8028DCB8 00289918 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DCBC 0028991C 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha -/* 8028DCC0 00289920 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DCC4 00289924 38 C0 00 E3 */ li r6, 0xe3 -/* 8028DCC8 00289928 7C C5 01 AE */ stbx r6, r5, r0 -/* 8028DCCC 0028992C 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028DCD0 00289930 7F CA F3 78 */ mr r10, r30 -/* 8028DCD4 00289934 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l -/* 8028DCD8 00289938 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DCDC 0028993C 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028DCE0 00289940 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DCE4 00289944 38 C0 00 20 */ li r6, 0x20 -/* 8028DCE8 00289948 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DCEC 0028994C 39 00 00 20 */ li r8, 0x20 -/* 8028DCF0 00289950 7C A5 02 14 */ add r5, r5, r0 -/* 8028DCF4 00289954 90 65 00 04 */ stw r3, 4(r5) -/* 8028DCF8 00289958 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DCFC 0028995C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DD00 00289960 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DD04 00289964 7C 63 02 14 */ add r3, r3, r0 -/* 8028DD08 00289968 90 83 00 08 */ stw r4, 8(r3) -/* 8028DD0C 0028996C 38 80 00 E3 */ li r4, 0xe3 -/* 8028DD10 00289970 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DD14 00289974 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DD18 00289978 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DD1C 0028997C 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028DD20 00289980 7C A5 02 14 */ add r5, r5, r0 -/* 8028DD24 00289984 48 01 5C 95 */ bl func_802A39B8 -/* 8028DD28 00289988 2C 03 00 00 */ cmpwi r3, 0 -/* 8028DD2C 0028998C 41 82 00 24 */ beq lbl_8028DD50 -/* 8028DD30 00289990 7C 64 1B 78 */ mr r4, r3 -/* 8028DD34 00289994 38 7F 04 68 */ addi r3, r31, 0x468 -/* 8028DD38 00289998 4C C6 31 82 */ crclr 6 -/* 8028DD3C 0028999C 4B D7 9D 89 */ bl func_80007AC4 -/* 8028DD40 002899A0 38 00 00 00 */ li r0, 0 -/* 8028DD44 002899A4 38 60 00 00 */ li r3, 0 -/* 8028DD48 002899A8 98 1E 00 08 */ stb r0, 8(r30) -/* 8028DD4C 002899AC 48 00 00 08 */ b lbl_8028DD54 -lbl_8028DD50: -/* 8028DD50 002899B0 38 60 00 01 */ li r3, 1 -lbl_8028DD54: -/* 8028DD54 002899B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028DD58 002899B8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028DD5C 002899BC 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028DD60 002899C0 7C 08 03 A6 */ mtlr r0 -/* 8028DD64 002899C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028DD68 002899C8 4E 80 00 20 */ blr - -.global func_8028DD6C -func_8028DD6C: -/* 8028DD6C 002899CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028DD70 002899D0 7C 08 02 A6 */ mflr r0 -/* 8028DD74 002899D4 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028DD78 002899D8 39 40 00 01 */ li r10, 1 -/* 8028DD7C 002899DC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028DD80 002899E0 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028DD84 002899E4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028DD88 002899E8 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028DD8C 002899EC 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028DD90 002899F0 93 C1 00 08 */ stw r30, 8(r1) -/* 8028DD94 002899F4 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DD98 002899F8 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028DD9C 002899FC 55 28 28 34 */ slwi r8, r9, 5 -/* 8028DDA0 00289A00 7C C7 42 14 */ add r6, r7, r8 -/* 8028DDA4 00289A04 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028DDA8 00289A08 7C 05 00 D0 */ neg r0, r5 -/* 8028DDAC 00289A0C 7C 00 2B 78 */ or r0, r0, r5 -/* 8028DDB0 00289A10 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028DDB4 00289A14 28 00 00 01 */ cmplwi r0, 1 -/* 8028DDB8 00289A18 40 82 00 24 */ bne lbl_8028DDDC -/* 8028DDBC 00289A1C 7D 24 4B 78 */ mr r4, r9 -/* 8028DDC0 00289A20 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028DDC4 00289A24 4C C6 31 82 */ crclr 6 -/* 8028DDC8 00289A28 4B D7 9C FD */ bl func_80007AC4 -/* 8028DDCC 00289A2C 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028DDD0 00289A30 4C C6 31 82 */ crclr 6 -/* 8028DDD4 00289A34 4B D7 9C F1 */ bl func_80007AC4 -lbl_8028DDD8: -/* 8028DDD8 00289A38 48 00 00 00 */ b lbl_8028DDD8 -lbl_8028DDDC: -/* 8028DDDC 00289A3C 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028DDE0 00289A40 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028DDE4 00289A44 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028DDE8 00289A48 41 82 00 14 */ beq lbl_8028DDFC -/* 8028DDEC 00289A4C 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028DDF0 00289A50 4C C6 31 82 */ crclr 6 -/* 8028DDF4 00289A54 4B D7 9C D1 */ bl func_80007AC4 -lbl_8028DDF8: -/* 8028DDF8 00289A58 48 00 00 00 */ b lbl_8028DDF8 -lbl_8028DDFC: -/* 8028DDFC 00289A5C 7C 87 41 2E */ stwx r4, r7, r8 -/* 8028DE00 00289A60 38 09 00 01 */ addi r0, r9, 1 -/* 8028DE04 00289A64 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DE08 00289A68 91 46 00 04 */ stw r10, 4(r6) -/* 8028DE0C 00289A6C 99 46 00 08 */ stb r10, 8(r6) -/* 8028DE10 00289A70 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DE14 00289A74 41 80 00 0C */ blt lbl_8028DE20 -/* 8028DE18 00289A78 38 00 00 00 */ li r0, 0 -/* 8028DE1C 00289A7C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028DE20: -/* 8028DE20 00289A80 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DE24 00289A84 3C A0 80 52 */ lis r5, lbl_8051B760@ha -/* 8028DE28 00289A88 55 26 28 34 */ slwi r6, r9, 5 -/* 8028DE2C 00289A8C 38 04 00 01 */ addi r0, r4, 1 -/* 8028DE30 00289A90 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l -/* 8028DE34 00289A94 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DE38 00289A98 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DE3C 00289A9C 7F C5 32 14 */ add r30, r5, r6 -/* 8028DE40 00289AA0 41 80 00 0C */ blt lbl_8028DE4C -/* 8028DE44 00289AA4 38 00 00 00 */ li r0, 0 -/* 8028DE48 00289AA8 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028DE4C: -/* 8028DE4C 00289AAC 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DE50 00289AB0 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028DE54 00289AB4 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DE58 00289AB8 38 A0 00 12 */ li r5, 0x12 -/* 8028DE5C 00289ABC 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028DE60 00289AC0 7C 67 1B 78 */ mr r7, r3 -/* 8028DE64 00289AC4 7F CA F3 78 */ mr r10, r30 -/* 8028DE68 00289AC8 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028DE6C 00289ACC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DE70 00289AD0 38 80 00 12 */ li r4, 0x12 -/* 8028DE74 00289AD4 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DE78 00289AD8 38 C0 00 20 */ li r6, 0x20 -/* 8028DE7C 00289ADC 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DE80 00289AE0 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028DE84 00289AE4 7C A5 02 14 */ add r5, r5, r0 -/* 8028DE88 00289AE8 39 00 00 20 */ li r8, 0x20 -/* 8028DE8C 00289AEC 48 01 5B 2D */ bl func_802A39B8 -/* 8028DE90 00289AF0 2C 03 00 00 */ cmpwi r3, 0 -/* 8028DE94 00289AF4 41 82 00 24 */ beq lbl_8028DEB8 -/* 8028DE98 00289AF8 7C 64 1B 78 */ mr r4, r3 -/* 8028DE9C 00289AFC 38 7F 04 E8 */ addi r3, r31, 0x4e8 -/* 8028DEA0 00289B00 4C C6 31 82 */ crclr 6 -/* 8028DEA4 00289B04 4B D7 9C 21 */ bl func_80007AC4 -/* 8028DEA8 00289B08 38 00 00 00 */ li r0, 0 -/* 8028DEAC 00289B0C 38 60 00 00 */ li r3, 0 -/* 8028DEB0 00289B10 98 1E 00 08 */ stb r0, 8(r30) -/* 8028DEB4 00289B14 48 00 00 08 */ b lbl_8028DEBC -lbl_8028DEB8: -/* 8028DEB8 00289B18 38 60 00 01 */ li r3, 1 -lbl_8028DEBC: -/* 8028DEBC 00289B1C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028DEC0 00289B20 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028DEC4 00289B24 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028DEC8 00289B28 7C 08 03 A6 */ mtlr r0 -/* 8028DECC 00289B2C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028DED0 00289B30 4E 80 00 20 */ blr - -.global func_8028DED4 -func_8028DED4: -/* 8028DED4 00289B34 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028DED8 00289B38 7C 08 02 A6 */ mflr r0 -/* 8028DEDC 00289B3C 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028DEE0 00289B40 39 20 00 01 */ li r9, 1 -/* 8028DEE4 00289B44 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028DEE8 00289B48 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028DEEC 00289B4C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028DEF0 00289B50 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028DEF4 00289B54 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028DEF8 00289B58 93 C1 00 08 */ stw r30, 8(r1) -/* 8028DEFC 00289B5C 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DF00 00289B60 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028DF04 00289B64 54 88 28 34 */ slwi r8, r4, 5 -/* 8028DF08 00289B68 7C C7 42 14 */ add r6, r7, r8 -/* 8028DF0C 00289B6C 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028DF10 00289B70 7C 05 00 D0 */ neg r0, r5 -/* 8028DF14 00289B74 7C 00 2B 78 */ or r0, r0, r5 -/* 8028DF18 00289B78 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028DF1C 00289B7C 28 00 00 01 */ cmplwi r0, 1 -/* 8028DF20 00289B80 40 82 00 20 */ bne lbl_8028DF40 -/* 8028DF24 00289B84 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028DF28 00289B88 4C C6 31 82 */ crclr 6 -/* 8028DF2C 00289B8C 4B D7 9B 99 */ bl func_80007AC4 -/* 8028DF30 00289B90 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028DF34 00289B94 4C C6 31 82 */ crclr 6 -/* 8028DF38 00289B98 4B D7 9B 8D */ bl func_80007AC4 -lbl_8028DF3C: -/* 8028DF3C 00289B9C 48 00 00 00 */ b lbl_8028DF3C -lbl_8028DF40: -/* 8028DF40 00289BA0 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028DF44 00289BA4 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028DF48 00289BA8 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028DF4C 00289BAC 41 82 00 14 */ beq lbl_8028DF60 -/* 8028DF50 00289BB0 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028DF54 00289BB4 4C C6 31 82 */ crclr 6 -/* 8028DF58 00289BB8 4B D7 9B 6D */ bl func_80007AC4 -lbl_8028DF5C: -/* 8028DF5C 00289BBC 48 00 00 00 */ b lbl_8028DF5C -lbl_8028DF60: -/* 8028DF60 00289BC0 7C 67 41 2E */ stwx r3, r7, r8 -/* 8028DF64 00289BC4 38 04 00 01 */ addi r0, r4, 1 -/* 8028DF68 00289BC8 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DF6C 00289BCC 91 26 00 04 */ stw r9, 4(r6) -/* 8028DF70 00289BD0 99 26 00 08 */ stb r9, 8(r6) -/* 8028DF74 00289BD4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028DF78 00289BD8 41 80 00 0C */ blt lbl_8028DF84 -/* 8028DF7C 00289BDC 38 00 00 00 */ li r0, 0 -/* 8028DF80 00289BE0 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028DF84: -/* 8028DF84 00289BE4 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DF88 00289BE8 3C A0 80 52 */ lis r5, lbl_8051B760@ha -/* 8028DF8C 00289BEC 54 84 28 34 */ slwi r4, r4, 5 -/* 8028DF90 00289BF0 38 03 00 01 */ addi r0, r3, 1 -/* 8028DF94 00289BF4 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l -/* 8028DF98 00289BF8 2C 00 00 04 */ cmpwi r0, 4 -/* 8028DF9C 00289BFC 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DFA0 00289C00 7F C5 22 14 */ add r30, r5, r4 -/* 8028DFA4 00289C04 41 80 00 0C */ blt lbl_8028DFB0 -/* 8028DFA8 00289C08 38 00 00 00 */ li r0, 0 -/* 8028DFAC 00289C0C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028DFB0: -/* 8028DFB0 00289C10 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DFB4 00289C14 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha -/* 8028DFB8 00289C18 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DFBC 00289C1C 38 80 00 E0 */ li r4, 0xe0 -/* 8028DFC0 00289C20 7C 83 01 AE */ stbx r4, r3, r0 -/* 8028DFC4 00289C24 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028DFC8 00289C28 7F CA F3 78 */ mr r10, r30 -/* 8028DFCC 00289C2C 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l -/* 8028DFD0 00289C30 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028DFD4 00289C34 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028DFD8 00289C38 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028DFDC 00289C3C 38 80 00 E0 */ li r4, 0xe0 -/* 8028DFE0 00289C40 54 00 28 34 */ slwi r0, r0, 5 -/* 8028DFE4 00289C44 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028DFE8 00289C48 7C A5 02 14 */ add r5, r5, r0 -/* 8028DFEC 00289C4C 38 C0 00 20 */ li r6, 0x20 -/* 8028DFF0 00289C50 39 00 00 20 */ li r8, 0x20 -/* 8028DFF4 00289C54 48 01 59 C5 */ bl func_802A39B8 -/* 8028DFF8 00289C58 2C 03 00 00 */ cmpwi r3, 0 -/* 8028DFFC 00289C5C 41 82 00 24 */ beq lbl_8028E020 -/* 8028E000 00289C60 7C 64 1B 78 */ mr r4, r3 -/* 8028E004 00289C64 38 7F 05 20 */ addi r3, r31, 0x520 -/* 8028E008 00289C68 4C C6 31 82 */ crclr 6 -/* 8028E00C 00289C6C 4B D7 9A B9 */ bl func_80007AC4 -/* 8028E010 00289C70 38 00 00 00 */ li r0, 0 -/* 8028E014 00289C74 38 60 00 00 */ li r3, 0 -/* 8028E018 00289C78 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E01C 00289C7C 48 00 00 08 */ b lbl_8028E024 -lbl_8028E020: -/* 8028E020 00289C80 38 60 00 01 */ li r3, 1 -lbl_8028E024: -/* 8028E024 00289C84 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E028 00289C88 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E02C 00289C8C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E030 00289C90 7C 08 03 A6 */ mtlr r0 -/* 8028E034 00289C94 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E038 00289C98 4E 80 00 20 */ blr - -.global hioEnumCallback -hioEnumCallback: -/* 8028E03C 00289C9C 90 6D AA B8 */ stw r3, lbl_8063FD78-_SDA_BASE_(r13) -/* 8028E040 00289CA0 38 60 00 01 */ li r3, 1 -/* 8028E044 00289CA4 4E 80 00 20 */ blr - -.global func_8028E048 -func_8028E048: -/* 8028E048 00289CA8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E04C 00289CAC 7C 08 02 A6 */ mflr r0 -/* 8028E050 00289CB0 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E054 00289CB4 39 20 00 01 */ li r9, 1 -/* 8028E058 00289CB8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E05C 00289CBC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E060 00289CC0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E064 00289CC4 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E068 00289CC8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E06C 00289CCC 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E070 00289CD0 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E074 00289CD4 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E078 00289CD8 54 88 28 34 */ slwi r8, r4, 5 -/* 8028E07C 00289CDC 7C C7 42 14 */ add r6, r7, r8 -/* 8028E080 00289CE0 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028E084 00289CE4 7C 05 00 D0 */ neg r0, r5 -/* 8028E088 00289CE8 7C 00 2B 78 */ or r0, r0, r5 -/* 8028E08C 00289CEC 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E090 00289CF0 28 00 00 01 */ cmplwi r0, 1 -/* 8028E094 00289CF4 40 82 00 20 */ bne lbl_8028E0B4 -/* 8028E098 00289CF8 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E09C 00289CFC 4C C6 31 82 */ crclr 6 -/* 8028E0A0 00289D00 4B D7 9A 25 */ bl func_80007AC4 -/* 8028E0A4 00289D04 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E0A8 00289D08 4C C6 31 82 */ crclr 6 -/* 8028E0AC 00289D0C 4B D7 9A 19 */ bl func_80007AC4 -lbl_8028E0B0: -/* 8028E0B0 00289D10 48 00 00 00 */ b lbl_8028E0B0 -lbl_8028E0B4: -/* 8028E0B4 00289D14 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028E0B8 00289D18 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028E0BC 00289D1C 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E0C0 00289D20 41 82 00 14 */ beq lbl_8028E0D4 -/* 8028E0C4 00289D24 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E0C8 00289D28 4C C6 31 82 */ crclr 6 -/* 8028E0CC 00289D2C 4B D7 99 F9 */ bl func_80007AC4 -lbl_8028E0D0: -/* 8028E0D0 00289D30 48 00 00 00 */ b lbl_8028E0D0 -lbl_8028E0D4: -/* 8028E0D4 00289D34 7C 67 41 2E */ stwx r3, r7, r8 -/* 8028E0D8 00289D38 38 04 00 01 */ addi r0, r4, 1 -/* 8028E0DC 00289D3C 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E0E0 00289D40 91 26 00 04 */ stw r9, 4(r6) -/* 8028E0E4 00289D44 99 26 00 08 */ stb r9, 8(r6) -/* 8028E0E8 00289D48 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E0EC 00289D4C 41 80 00 0C */ blt lbl_8028E0F8 -/* 8028E0F0 00289D50 38 00 00 00 */ li r0, 0 -/* 8028E0F4 00289D54 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E0F8: -/* 8028E0F8 00289D58 80 6D AA AC */ lwz r3, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E0FC 00289D5C 3C A0 80 52 */ lis r5, lbl_8051B760@ha -/* 8028E100 00289D60 54 84 28 34 */ slwi r4, r4, 5 -/* 8028E104 00289D64 38 03 00 01 */ addi r0, r3, 1 -/* 8028E108 00289D68 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l -/* 8028E10C 00289D6C 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E110 00289D70 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E114 00289D74 7F C5 22 14 */ add r30, r5, r4 -/* 8028E118 00289D78 41 80 00 0C */ blt lbl_8028E124 -/* 8028E11C 00289D7C 38 00 00 00 */ li r0, 0 -/* 8028E120 00289D80 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E124: -/* 8028E124 00289D84 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E128 00289D88 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028E12C 00289D8C 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E130 00289D90 38 80 00 8A */ li r4, 0x8a -/* 8028E134 00289D94 7C 83 01 AE */ stbx r4, r3, r0 -/* 8028E138 00289D98 7F CA F3 78 */ mr r10, r30 -/* 8028E13C 00289D9C 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028E140 00289DA0 38 80 00 8A */ li r4, 0x8a -/* 8028E144 00289DA4 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E148 00289DA8 38 C0 00 20 */ li r6, 0x20 -/* 8028E14C 00289DAC 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E150 00289DB0 38 E0 00 00 */ li r7, 0 -/* 8028E154 00289DB4 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E158 00289DB8 80 AD AA B8 */ lwz r5, lbl_8063FD78-_SDA_BASE_(r13) -/* 8028E15C 00289DBC 7C 63 02 14 */ add r3, r3, r0 -/* 8028E160 00289DC0 39 00 00 00 */ li r8, 0 -/* 8028E164 00289DC4 90 A3 00 04 */ stw r5, 4(r3) -/* 8028E168 00289DC8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E16C 00289DCC 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E170 00289DD0 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E174 00289DD4 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E178 00289DD8 7C A5 02 14 */ add r5, r5, r0 -/* 8028E17C 00289DDC 48 01 58 3D */ bl func_802A39B8 -/* 8028E180 00289DE0 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E184 00289DE4 41 82 00 24 */ beq lbl_8028E1A8 -/* 8028E188 00289DE8 7C 64 1B 78 */ mr r4, r3 -/* 8028E18C 00289DEC 38 7F 05 E0 */ addi r3, r31, 0x5e0 -/* 8028E190 00289DF0 4C C6 31 82 */ crclr 6 -/* 8028E194 00289DF4 4B D7 99 31 */ bl func_80007AC4 -/* 8028E198 00289DF8 38 00 00 00 */ li r0, 0 -/* 8028E19C 00289DFC 38 60 00 00 */ li r3, 0 -/* 8028E1A0 00289E00 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E1A4 00289E04 48 00 00 08 */ b lbl_8028E1AC -lbl_8028E1A8: -/* 8028E1A8 00289E08 38 60 00 01 */ li r3, 1 -lbl_8028E1AC: -/* 8028E1AC 00289E0C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E1B0 00289E10 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E1B4 00289E14 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E1B8 00289E18 7C 08 03 A6 */ mtlr r0 -/* 8028E1BC 00289E1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E1C0 00289E20 4E 80 00 20 */ blr - -.global func_8028E1C4 -func_8028E1C4: -/* 8028E1C4 00289E24 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E1C8 00289E28 7C 08 02 A6 */ mflr r0 -/* 8028E1CC 00289E2C 3D 00 80 52 */ lis r8, lbl_8051B760@ha -/* 8028E1D0 00289E30 39 60 00 01 */ li r11, 1 -/* 8028E1D4 00289E34 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E1D8 00289E38 39 08 B7 60 */ addi r8, r8, lbl_8051B760@l -/* 8028E1DC 00289E3C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E1E0 00289E40 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E1E4 00289E44 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E1E8 00289E48 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E1EC 00289E4C 81 4D AA B0 */ lwz r10, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E1F0 00289E50 99 6D AA A8 */ stb r11, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E1F4 00289E54 55 49 28 34 */ slwi r9, r10, 5 -/* 8028E1F8 00289E58 7C E8 4A 14 */ add r7, r8, r9 -/* 8028E1FC 00289E5C 88 C7 00 08 */ lbz r6, 8(r7) -/* 8028E200 00289E60 7C 06 00 D0 */ neg r0, r6 -/* 8028E204 00289E64 7C 00 33 78 */ or r0, r0, r6 -/* 8028E208 00289E68 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E20C 00289E6C 28 00 00 01 */ cmplwi r0, 1 -/* 8028E210 00289E70 40 82 00 24 */ bne lbl_8028E234 -/* 8028E214 00289E74 7D 44 53 78 */ mr r4, r10 -/* 8028E218 00289E78 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E21C 00289E7C 4C C6 31 82 */ crclr 6 -/* 8028E220 00289E80 4B D7 98 A5 */ bl func_80007AC4 -/* 8028E224 00289E84 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E228 00289E88 4C C6 31 82 */ crclr 6 -/* 8028E22C 00289E8C 4B D7 98 99 */ bl func_80007AC4 -lbl_8028E230: -/* 8028E230 00289E90 48 00 00 00 */ b lbl_8028E230 -lbl_8028E234: -/* 8028E234 00289E94 80 C7 00 0C */ lwz r6, 0xc(r7) -/* 8028E238 00289E98 3C 06 01 15 */ addis r0, r6, 0x115 -/* 8028E23C 00289E9C 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E240 00289EA0 41 82 00 14 */ beq lbl_8028E254 -/* 8028E244 00289EA4 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E248 00289EA8 4C C6 31 82 */ crclr 6 -/* 8028E24C 00289EAC 4B D7 98 79 */ bl func_80007AC4 -lbl_8028E250: -/* 8028E250 00289EB0 48 00 00 00 */ b lbl_8028E250 -lbl_8028E254: -/* 8028E254 00289EB4 7C A8 49 2E */ stwx r5, r8, r9 -/* 8028E258 00289EB8 38 0A 00 01 */ addi r0, r10, 1 -/* 8028E25C 00289EBC 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E260 00289EC0 91 67 00 04 */ stw r11, 4(r7) -/* 8028E264 00289EC4 99 67 00 08 */ stb r11, 8(r7) -/* 8028E268 00289EC8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E26C 00289ECC 41 80 00 0C */ blt lbl_8028E278 -/* 8028E270 00289ED0 38 00 00 00 */ li r0, 0 -/* 8028E274 00289ED4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E278: -/* 8028E278 00289ED8 80 AD AA AC */ lwz r5, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E27C 00289EDC 3C C0 80 52 */ lis r6, lbl_8051B760@ha -/* 8028E280 00289EE0 55 47 28 34 */ slwi r7, r10, 5 -/* 8028E284 00289EE4 38 05 00 01 */ addi r0, r5, 1 -/* 8028E288 00289EE8 38 C6 B7 60 */ addi r6, r6, lbl_8051B760@l -/* 8028E28C 00289EEC 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E290 00289EF0 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E294 00289EF4 7F C6 3A 14 */ add r30, r6, r7 -/* 8028E298 00289EF8 41 80 00 0C */ blt lbl_8028E2A4 -/* 8028E29C 00289EFC 38 00 00 00 */ li r0, 0 -/* 8028E2A0 00289F00 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E2A4: -/* 8028E2A4 00289F04 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E2A8 00289F08 3C E0 80 52 */ lis r7, lbl_8051B7E0@ha -/* 8028E2AC 00289F0C 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E2B0 00289F10 38 C0 00 E4 */ li r6, 0xe4 -/* 8028E2B4 00289F14 7C C5 01 AE */ stbx r6, r5, r0 -/* 8028E2B8 00289F18 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028E2BC 00289F1C 7F CA F3 78 */ mr r10, r30 -/* 8028E2C0 00289F20 38 E7 B7 E0 */ addi r7, r7, lbl_8051B7E0@l -/* 8028E2C4 00289F24 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E2C8 00289F28 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028E2CC 00289F2C 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E2D0 00289F30 38 C0 00 20 */ li r6, 0x20 -/* 8028E2D4 00289F34 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E2D8 00289F38 39 00 00 20 */ li r8, 0x20 -/* 8028E2DC 00289F3C 7C A5 02 14 */ add r5, r5, r0 -/* 8028E2E0 00289F40 90 65 00 04 */ stw r3, 4(r5) -/* 8028E2E4 00289F44 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E2E8 00289F48 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E2EC 00289F4C 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E2F0 00289F50 7C 63 02 14 */ add r3, r3, r0 -/* 8028E2F4 00289F54 90 83 00 08 */ stw r4, 8(r3) -/* 8028E2F8 00289F58 38 80 00 E4 */ li r4, 0xe4 -/* 8028E2FC 00289F5C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E300 00289F60 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E304 00289F64 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E308 00289F68 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E30C 00289F6C 7C A5 02 14 */ add r5, r5, r0 -/* 8028E310 00289F70 48 01 56 A9 */ bl func_802A39B8 -/* 8028E314 00289F74 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E318 00289F78 41 82 00 24 */ beq lbl_8028E33C -/* 8028E31C 00289F7C 7C 64 1B 78 */ mr r4, r3 -/* 8028E320 00289F80 38 7F 06 18 */ addi r3, r31, 0x618 -/* 8028E324 00289F84 4C C6 31 82 */ crclr 6 -/* 8028E328 00289F88 4B D7 97 9D */ bl func_80007AC4 -/* 8028E32C 00289F8C 38 00 00 00 */ li r0, 0 -/* 8028E330 00289F90 38 60 00 00 */ li r3, 0 -/* 8028E334 00289F94 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E338 00289F98 48 00 00 08 */ b lbl_8028E340 -lbl_8028E33C: -/* 8028E33C 00289F9C 38 60 00 01 */ li r3, 1 -lbl_8028E340: -/* 8028E340 00289FA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E344 00289FA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E348 00289FA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E34C 00289FAC 7C 08 03 A6 */ mtlr r0 -/* 8028E350 00289FB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E354 00289FB4 4E 80 00 20 */ blr - -.global func_8028E358 -func_8028E358: -/* 8028E358 00289FB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E35C 00289FBC 7C 08 02 A6 */ mflr r0 -/* 8028E360 00289FC0 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E364 00289FC4 39 40 00 01 */ li r10, 1 -/* 8028E368 00289FC8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E36C 00289FCC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E370 00289FD0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E374 00289FD4 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E378 00289FD8 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E37C 00289FDC 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E380 00289FE0 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E384 00289FE4 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E388 00289FE8 55 28 28 34 */ slwi r8, r9, 5 -/* 8028E38C 00289FEC 7C C7 42 14 */ add r6, r7, r8 -/* 8028E390 00289FF0 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028E394 00289FF4 7C 05 00 D0 */ neg r0, r5 -/* 8028E398 00289FF8 7C 00 2B 78 */ or r0, r0, r5 -/* 8028E39C 00289FFC 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E3A0 0028A000 28 00 00 01 */ cmplwi r0, 1 -/* 8028E3A4 0028A004 40 82 00 24 */ bne lbl_8028E3C8 -/* 8028E3A8 0028A008 7D 24 4B 78 */ mr r4, r9 -/* 8028E3AC 0028A00C 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E3B0 0028A010 4C C6 31 82 */ crclr 6 -/* 8028E3B4 0028A014 4B D7 97 11 */ bl func_80007AC4 -/* 8028E3B8 0028A018 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E3BC 0028A01C 4C C6 31 82 */ crclr 6 -/* 8028E3C0 0028A020 4B D7 97 05 */ bl func_80007AC4 -lbl_8028E3C4: -/* 8028E3C4 0028A024 48 00 00 00 */ b lbl_8028E3C4 -lbl_8028E3C8: -/* 8028E3C8 0028A028 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028E3CC 0028A02C 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028E3D0 0028A030 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E3D4 0028A034 41 82 00 14 */ beq lbl_8028E3E8 -/* 8028E3D8 0028A038 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E3DC 0028A03C 4C C6 31 82 */ crclr 6 -/* 8028E3E0 0028A040 4B D7 96 E5 */ bl func_80007AC4 -lbl_8028E3E4: -/* 8028E3E4 0028A044 48 00 00 00 */ b lbl_8028E3E4 -lbl_8028E3E8: -/* 8028E3E8 0028A048 7C 87 41 2E */ stwx r4, r7, r8 -/* 8028E3EC 0028A04C 38 09 00 01 */ addi r0, r9, 1 -/* 8028E3F0 0028A050 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E3F4 0028A054 91 46 00 04 */ stw r10, 4(r6) -/* 8028E3F8 0028A058 99 46 00 08 */ stb r10, 8(r6) -/* 8028E3FC 0028A05C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E400 0028A060 41 80 00 0C */ blt lbl_8028E40C -/* 8028E404 0028A064 38 00 00 00 */ li r0, 0 -/* 8028E408 0028A068 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E40C: -/* 8028E40C 0028A06C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E410 0028A070 3C A0 80 52 */ lis r5, lbl_8051B760@ha -/* 8028E414 0028A074 55 26 28 34 */ slwi r6, r9, 5 -/* 8028E418 0028A078 38 04 00 01 */ addi r0, r4, 1 -/* 8028E41C 0028A07C 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l -/* 8028E420 0028A080 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E424 0028A084 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E428 0028A088 7F C5 32 14 */ add r30, r5, r6 -/* 8028E42C 0028A08C 41 80 00 0C */ blt lbl_8028E438 -/* 8028E430 0028A090 38 00 00 00 */ li r0, 0 -/* 8028E434 0028A094 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E438: -/* 8028E438 0028A098 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E43C 0028A09C 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028E440 0028A0A0 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E444 0028A0A4 38 A0 00 DD */ li r5, 0xdd -/* 8028E448 0028A0A8 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028E44C 0028A0AC 54 65 87 BE */ rlwinm r5, r3, 0x10, 0x1e, 0x1f -/* 8028E450 0028A0B0 7F CA F3 78 */ mr r10, r30 -/* 8028E454 0028A0B4 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028E458 0028A0B8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E45C 0028A0BC 38 80 00 DD */ li r4, 0xdd -/* 8028E460 0028A0C0 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E464 0028A0C4 38 C0 00 20 */ li r6, 0x20 -/* 8028E468 0028A0C8 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E46C 0028A0CC 38 E0 00 00 */ li r7, 0 -/* 8028E470 0028A0D0 7C 63 02 14 */ add r3, r3, r0 -/* 8028E474 0028A0D4 39 00 00 00 */ li r8, 0 -/* 8028E478 0028A0D8 90 A3 00 04 */ stw r5, 4(r3) -/* 8028E47C 0028A0DC 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E480 0028A0E0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E484 0028A0E4 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E488 0028A0E8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E48C 0028A0EC 7C A5 02 14 */ add r5, r5, r0 -/* 8028E490 0028A0F0 48 01 55 29 */ bl func_802A39B8 -/* 8028E494 0028A0F4 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E498 0028A0F8 41 82 00 24 */ beq lbl_8028E4BC -/* 8028E49C 0028A0FC 7C 64 1B 78 */ mr r4, r3 -/* 8028E4A0 0028A100 38 7F 09 CC */ addi r3, r31, 0x9cc -/* 8028E4A4 0028A104 4C C6 31 82 */ crclr 6 -/* 8028E4A8 0028A108 4B D7 96 1D */ bl func_80007AC4 -/* 8028E4AC 0028A10C 38 00 00 00 */ li r0, 0 -/* 8028E4B0 0028A110 38 60 00 00 */ li r3, 0 -/* 8028E4B4 0028A114 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E4B8 0028A118 48 00 00 08 */ b lbl_8028E4C0 -lbl_8028E4BC: -/* 8028E4BC 0028A11C 38 60 00 01 */ li r3, 1 -lbl_8028E4C0: -/* 8028E4C0 0028A120 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E4C4 0028A124 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E4C8 0028A128 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E4CC 0028A12C 7C 08 03 A6 */ mtlr r0 -/* 8028E4D0 0028A130 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E4D4 0028A134 4E 80 00 20 */ blr - -.global func_8028E4D8 -func_8028E4D8: -/* 8028E4D8 0028A138 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E4DC 0028A13C 7C 08 02 A6 */ mflr r0 -/* 8028E4E0 0028A140 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E4E4 0028A144 54 60 06 FF */ clrlwi. r0, r3, 0x1b -/* 8028E4E8 0028A148 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E4EC 0028A14C 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E4F0 0028A150 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E4F4 0028A154 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E4F8 0028A158 41 82 00 18 */ beq lbl_8028E510 -/* 8028E4FC 0028A15C 38 7F 0A 0C */ addi r3, r31, 0xa0c -/* 8028E500 0028A160 4C C6 31 82 */ crclr 6 -/* 8028E504 0028A164 4B D7 95 C1 */ bl func_80007AC4 -/* 8028E508 0028A168 38 60 00 00 */ li r3, 0 -/* 8028E50C 0028A16C 48 00 01 64 */ b lbl_8028E670 -lbl_8028E510: -/* 8028E510 0028A170 81 6D AA B0 */ lwz r11, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E514 0028A174 3D 20 80 52 */ lis r9, lbl_8051B760@ha -/* 8028E518 0028A178 39 80 00 01 */ li r12, 1 -/* 8028E51C 0028A17C 55 6A 28 34 */ slwi r10, r11, 5 -/* 8028E520 0028A180 39 29 B7 60 */ addi r9, r9, lbl_8051B760@l -/* 8028E524 0028A184 7D 09 52 14 */ add r8, r9, r10 -/* 8028E528 0028A188 99 8D AA A8 */ stb r12, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E52C 0028A18C 88 E8 00 08 */ lbz r7, 8(r8) -/* 8028E530 0028A190 7C 07 00 D0 */ neg r0, r7 -/* 8028E534 0028A194 7C 00 3B 78 */ or r0, r0, r7 -/* 8028E538 0028A198 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E53C 0028A19C 28 00 00 01 */ cmplwi r0, 1 -/* 8028E540 0028A1A0 40 82 00 24 */ bne lbl_8028E564 -/* 8028E544 0028A1A4 7D 64 5B 78 */ mr r4, r11 -/* 8028E548 0028A1A8 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E54C 0028A1AC 4C C6 31 82 */ crclr 6 -/* 8028E550 0028A1B0 4B D7 95 75 */ bl func_80007AC4 -/* 8028E554 0028A1B4 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E558 0028A1B8 4C C6 31 82 */ crclr 6 -/* 8028E55C 0028A1BC 4B D7 95 69 */ bl func_80007AC4 -lbl_8028E560: -/* 8028E560 0028A1C0 48 00 00 00 */ b lbl_8028E560 -lbl_8028E564: -/* 8028E564 0028A1C4 80 E8 00 0C */ lwz r7, 0xc(r8) -/* 8028E568 0028A1C8 3C 07 01 15 */ addis r0, r7, 0x115 -/* 8028E56C 0028A1CC 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E570 0028A1D0 41 82 00 14 */ beq lbl_8028E584 -/* 8028E574 0028A1D4 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E578 0028A1D8 4C C6 31 82 */ crclr 6 -/* 8028E57C 0028A1DC 4B D7 95 49 */ bl func_80007AC4 -lbl_8028E580: -/* 8028E580 0028A1E0 48 00 00 00 */ b lbl_8028E580 -lbl_8028E584: -/* 8028E584 0028A1E4 7C C9 51 2E */ stwx r6, r9, r10 -/* 8028E588 0028A1E8 38 0B 00 01 */ addi r0, r11, 1 -/* 8028E58C 0028A1EC 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E590 0028A1F0 91 88 00 04 */ stw r12, 4(r8) -/* 8028E594 0028A1F4 99 88 00 08 */ stb r12, 8(r8) -/* 8028E598 0028A1F8 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E59C 0028A1FC 41 80 00 0C */ blt lbl_8028E5A8 -/* 8028E5A0 0028A200 38 00 00 00 */ li r0, 0 -/* 8028E5A4 0028A204 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E5A8: -/* 8028E5A8 0028A208 80 CD AA AC */ lwz r6, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E5AC 0028A20C 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E5B0 0028A210 90 8D AA BC */ stw r4, lbl_8063FD7C-_SDA_BASE_(r13) -/* 8028E5B4 0028A214 55 68 28 34 */ slwi r8, r11, 5 -/* 8028E5B8 0028A218 38 06 00 01 */ addi r0, r6, 1 -/* 8028E5BC 0028A21C 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E5C0 0028A220 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E5C4 0028A224 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E5C8 0028A228 7F C7 42 14 */ add r30, r7, r8 -/* 8028E5CC 0028A22C 41 80 00 0C */ blt lbl_8028E5D8 -/* 8028E5D0 0028A230 38 00 00 00 */ li r0, 0 -/* 8028E5D4 0028A234 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E5D8: -/* 8028E5D8 0028A238 80 CD AA C4 */ lwz r6, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E5DC 0028A23C 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028E5E0 0028A240 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E5E4 0028A244 38 E0 00 71 */ li r7, 0x71 -/* 8028E5E8 0028A248 7C E6 01 AE */ stbx r7, r6, r0 -/* 8028E5EC 0028A24C 7C 67 1B 78 */ mr r7, r3 -/* 8028E5F0 0028A250 7C 88 23 78 */ mr r8, r4 -/* 8028E5F4 0028A254 7F CA F3 78 */ mr r10, r30 -/* 8028E5F8 0028A258 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E5FC 0028A25C 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028E600 0028A260 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E604 0028A264 38 C0 00 20 */ li r6, 0x20 -/* 8028E608 0028A268 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E60C 0028A26C 7C 63 02 14 */ add r3, r3, r0 -/* 8028E610 0028A270 90 83 00 04 */ stw r4, 4(r3) -/* 8028E614 0028A274 38 80 00 71 */ li r4, 0x71 -/* 8028E618 0028A278 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E61C 0028A27C 80 6D AA C4 */ lwz r3, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E620 0028A280 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E624 0028A284 7C 63 02 14 */ add r3, r3, r0 -/* 8028E628 0028A288 90 A3 00 08 */ stw r5, 8(r3) -/* 8028E62C 0028A28C 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E630 0028A290 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E634 0028A294 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E638 0028A298 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E63C 0028A29C 7C A5 02 14 */ add r5, r5, r0 -/* 8028E640 0028A2A0 48 01 53 79 */ bl func_802A39B8 -/* 8028E644 0028A2A4 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E648 0028A2A8 41 82 00 24 */ beq lbl_8028E66C -/* 8028E64C 0028A2AC 7C 64 1B 78 */ mr r4, r3 -/* 8028E650 0028A2B0 38 7F 0A 4C */ addi r3, r31, 0xa4c -/* 8028E654 0028A2B4 4C C6 31 82 */ crclr 6 -/* 8028E658 0028A2B8 4B D7 94 6D */ bl func_80007AC4 -/* 8028E65C 0028A2BC 38 00 00 00 */ li r0, 0 -/* 8028E660 0028A2C0 38 60 00 00 */ li r3, 0 -/* 8028E664 0028A2C4 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E668 0028A2C8 48 00 00 08 */ b lbl_8028E670 -lbl_8028E66C: -/* 8028E66C 0028A2CC 38 60 00 01 */ li r3, 1 -lbl_8028E670: -/* 8028E670 0028A2D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E674 0028A2D4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E678 0028A2D8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E67C 0028A2DC 7C 08 03 A6 */ mtlr r0 -/* 8028E680 0028A2E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E684 0028A2E4 4E 80 00 20 */ blr - -.global func_8028E688 -func_8028E688: -/* 8028E688 0028A2E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E68C 0028A2EC 7C 08 02 A6 */ mflr r0 -/* 8028E690 0028A2F0 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E694 0028A2F4 39 40 00 01 */ li r10, 1 -/* 8028E698 0028A2F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E69C 0028A2FC 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E6A0 0028A300 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E6A4 0028A304 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E6A8 0028A308 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E6AC 0028A30C 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E6B0 0028A310 81 2D AA B0 */ lwz r9, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E6B4 0028A314 99 4D AA A8 */ stb r10, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E6B8 0028A318 55 28 28 34 */ slwi r8, r9, 5 -/* 8028E6BC 0028A31C 7C C7 42 14 */ add r6, r7, r8 -/* 8028E6C0 0028A320 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028E6C4 0028A324 7C 05 00 D0 */ neg r0, r5 -/* 8028E6C8 0028A328 7C 00 2B 78 */ or r0, r0, r5 -/* 8028E6CC 0028A32C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E6D0 0028A330 28 00 00 01 */ cmplwi r0, 1 -/* 8028E6D4 0028A334 40 82 00 24 */ bne lbl_8028E6F8 -/* 8028E6D8 0028A338 7D 24 4B 78 */ mr r4, r9 -/* 8028E6DC 0028A33C 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E6E0 0028A340 4C C6 31 82 */ crclr 6 -/* 8028E6E4 0028A344 4B D7 93 E1 */ bl func_80007AC4 -/* 8028E6E8 0028A348 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E6EC 0028A34C 4C C6 31 82 */ crclr 6 -/* 8028E6F0 0028A350 4B D7 93 D5 */ bl func_80007AC4 -lbl_8028E6F4: -/* 8028E6F4 0028A354 48 00 00 00 */ b lbl_8028E6F4 -lbl_8028E6F8: -/* 8028E6F8 0028A358 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028E6FC 0028A35C 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028E700 0028A360 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E704 0028A364 41 82 00 14 */ beq lbl_8028E718 -/* 8028E708 0028A368 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E70C 0028A36C 4C C6 31 82 */ crclr 6 -/* 8028E710 0028A370 4B D7 93 B5 */ bl func_80007AC4 -lbl_8028E714: -/* 8028E714 0028A374 48 00 00 00 */ b lbl_8028E714 -lbl_8028E718: -/* 8028E718 0028A378 7C 87 41 2E */ stwx r4, r7, r8 -/* 8028E71C 0028A37C 38 09 00 01 */ addi r0, r9, 1 -/* 8028E720 0028A380 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E724 0028A384 91 46 00 04 */ stw r10, 4(r6) -/* 8028E728 0028A388 99 46 00 08 */ stb r10, 8(r6) -/* 8028E72C 0028A38C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E730 0028A390 41 80 00 0C */ blt lbl_8028E73C -/* 8028E734 0028A394 38 00 00 00 */ li r0, 0 -/* 8028E738 0028A398 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E73C: -/* 8028E73C 0028A39C 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E740 0028A3A0 3C A0 80 52 */ lis r5, lbl_8051B760@ha -/* 8028E744 0028A3A4 55 26 28 34 */ slwi r6, r9, 5 -/* 8028E748 0028A3A8 38 04 00 01 */ addi r0, r4, 1 -/* 8028E74C 0028A3AC 38 A5 B7 60 */ addi r5, r5, lbl_8051B760@l -/* 8028E750 0028A3B0 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E754 0028A3B4 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E758 0028A3B8 7F C5 32 14 */ add r30, r5, r6 -/* 8028E75C 0028A3BC 41 80 00 0C */ blt lbl_8028E768 -/* 8028E760 0028A3C0 38 00 00 00 */ li r0, 0 -/* 8028E764 0028A3C4 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E768: -/* 8028E768 0028A3C8 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E76C 0028A3CC 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028E770 0028A3D0 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E774 0028A3D4 38 A0 00 AB */ li r5, 0xab -/* 8028E778 0028A3D8 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028E77C 0028A3DC 7F CA F3 78 */ mr r10, r30 -/* 8028E780 0028A3E0 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028E784 0028A3E4 38 80 00 AB */ li r4, 0xab -/* 8028E788 0028A3E8 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E78C 0028A3EC 38 C0 00 20 */ li r6, 0x20 -/* 8028E790 0028A3F0 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E794 0028A3F4 38 E0 00 00 */ li r7, 0 -/* 8028E798 0028A3F8 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E79C 0028A3FC 39 00 00 00 */ li r8, 0 -/* 8028E7A0 0028A400 7C A5 02 14 */ add r5, r5, r0 -/* 8028E7A4 0028A404 90 65 00 04 */ stw r3, 4(r5) -/* 8028E7A8 0028A408 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E7AC 0028A40C 80 AD AA C4 */ lwz r5, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E7B0 0028A410 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E7B4 0028A414 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E7B8 0028A418 7C A5 02 14 */ add r5, r5, r0 -/* 8028E7BC 0028A41C 48 01 51 FD */ bl func_802A39B8 -/* 8028E7C0 0028A420 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E7C4 0028A424 41 82 00 24 */ beq lbl_8028E7E8 -/* 8028E7C8 0028A428 7C 64 1B 78 */ mr r4, r3 -/* 8028E7CC 0028A42C 38 7F 0A 80 */ addi r3, r31, 0xa80 -/* 8028E7D0 0028A430 4C C6 31 82 */ crclr 6 -/* 8028E7D4 0028A434 4B D7 92 F1 */ bl func_80007AC4 -/* 8028E7D8 0028A438 38 00 00 00 */ li r0, 0 -/* 8028E7DC 0028A43C 38 60 00 00 */ li r3, 0 -/* 8028E7E0 0028A440 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E7E4 0028A444 48 00 00 08 */ b lbl_8028E7EC -lbl_8028E7E8: -/* 8028E7E8 0028A448 38 60 00 01 */ li r3, 1 -lbl_8028E7EC: -/* 8028E7EC 0028A44C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E7F0 0028A450 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E7F4 0028A454 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E7F8 0028A458 7C 08 03 A6 */ mtlr r0 -/* 8028E7FC 0028A45C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E800 0028A460 4E 80 00 20 */ blr - -.global func_8028E804 -func_8028E804: -/* 8028E804 0028A464 3C 60 80 52 */ lis r3, lbl_8051B7E0@ha -/* 8028E808 0028A468 38 63 B7 E0 */ addi r3, r3, lbl_8051B7E0@l -/* 8028E80C 0028A46C 80 63 00 04 */ lwz r3, 4(r3) -/* 8028E810 0028A470 4E 80 00 20 */ blr - -.global func_8028E814 -func_8028E814: -/* 8028E814 0028A474 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E818 0028A478 7C 08 02 A6 */ mflr r0 -/* 8028E81C 0028A47C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E820 0028A480 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E824 0028A484 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E828 0028A488 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E82C 0028A48C 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E830 0028A490 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E834 0028A494 38 04 00 01 */ addi r0, r4, 1 -/* 8028E838 0028A498 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E83C 0028A49C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E840 0028A4A0 41 80 00 0C */ blt lbl_8028E84C -/* 8028E844 0028A4A4 38 00 00 00 */ li r0, 0 -/* 8028E848 0028A4A8 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E84C: -/* 8028E84C 0028A4AC 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E850 0028A4B0 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E854 0028A4B4 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E858 0028A4B8 38 A0 00 7A */ li r5, 0x7a -/* 8028E85C 0028A4BC 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028E860 0028A4C0 39 20 00 01 */ li r9, 1 -/* 8028E864 0028A4C4 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E868 0028A4C8 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E86C 0028A4CC 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E870 0028A4D0 54 88 28 34 */ slwi r8, r4, 5 -/* 8028E874 0028A4D4 7C C7 42 14 */ add r6, r7, r8 -/* 8028E878 0028A4D8 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028E87C 0028A4DC 7C 05 00 D0 */ neg r0, r5 -/* 8028E880 0028A4E0 7C 00 2B 78 */ or r0, r0, r5 -/* 8028E884 0028A4E4 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028E888 0028A4E8 28 00 00 01 */ cmplwi r0, 1 -/* 8028E88C 0028A4EC 40 82 00 20 */ bne lbl_8028E8AC -/* 8028E890 0028A4F0 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028E894 0028A4F4 4C C6 31 82 */ crclr 6 -/* 8028E898 0028A4F8 4B D7 92 2D */ bl func_80007AC4 -/* 8028E89C 0028A4FC 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028E8A0 0028A500 4C C6 31 82 */ crclr 6 -/* 8028E8A4 0028A504 4B D7 92 21 */ bl func_80007AC4 -lbl_8028E8A8: -/* 8028E8A8 0028A508 48 00 00 00 */ b lbl_8028E8A8 -lbl_8028E8AC: -/* 8028E8AC 0028A50C 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028E8B0 0028A510 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028E8B4 0028A514 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028E8B8 0028A518 41 82 00 14 */ beq lbl_8028E8CC -/* 8028E8BC 0028A51C 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028E8C0 0028A520 4C C6 31 82 */ crclr 6 -/* 8028E8C4 0028A524 4B D7 92 01 */ bl func_80007AC4 -lbl_8028E8C8: -/* 8028E8C8 0028A528 48 00 00 00 */ b lbl_8028E8C8 -lbl_8028E8CC: -/* 8028E8CC 0028A52C 7C 67 41 2E */ stwx r3, r7, r8 -/* 8028E8D0 0028A530 38 04 00 01 */ addi r0, r4, 1 -/* 8028E8D4 0028A534 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E8D8 0028A538 91 26 00 04 */ stw r9, 4(r6) -/* 8028E8DC 0028A53C 99 26 00 08 */ stb r9, 8(r6) -/* 8028E8E0 0028A540 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E8E4 0028A544 41 80 00 0C */ blt lbl_8028E8F0 -/* 8028E8E8 0028A548 38 00 00 00 */ li r0, 0 -/* 8028E8EC 0028A54C 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028E8F0: -/* 8028E8F0 0028A550 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E8F4 0028A554 3C 60 80 52 */ lis r3, lbl_8051B760@ha -/* 8028E8F8 0028A558 54 85 28 34 */ slwi r5, r4, 5 -/* 8028E8FC 0028A55C 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E900 0028A560 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l -/* 8028E904 0028A564 3C E0 80 52 */ lis r7, lbl_8051B800@ha -/* 8028E908 0028A568 7F C3 2A 14 */ add r30, r3, r5 -/* 8028E90C 0028A56C 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E910 0028A570 3D 20 80 29 */ lis r9, lbl_8028D1D0@ha -/* 8028E914 0028A574 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028E918 0028A578 7C A4 02 14 */ add r5, r4, r0 -/* 8028E91C 0028A57C 7F CA F3 78 */ mr r10, r30 -/* 8028E920 0028A580 38 E7 B8 00 */ addi r7, r7, lbl_8051B800@l -/* 8028E924 0028A584 39 29 D1 D0 */ addi r9, r9, lbl_8028D1D0@l -/* 8028E928 0028A588 38 80 00 7A */ li r4, 0x7a -/* 8028E92C 0028A58C 38 C0 00 20 */ li r6, 0x20 -/* 8028E930 0028A590 39 00 00 20 */ li r8, 0x20 -/* 8028E934 0028A594 48 01 50 85 */ bl func_802A39B8 -/* 8028E938 0028A598 2C 03 00 00 */ cmpwi r3, 0 -/* 8028E93C 0028A59C 41 82 00 24 */ beq lbl_8028E960 -/* 8028E940 0028A5A0 7C 64 1B 78 */ mr r4, r3 -/* 8028E944 0028A5A4 38 7F 0B 30 */ addi r3, r31, 0xb30 -/* 8028E948 0028A5A8 4C C6 31 82 */ crclr 6 -/* 8028E94C 0028A5AC 4B D7 91 79 */ bl func_80007AC4 -/* 8028E950 0028A5B0 38 00 00 00 */ li r0, 0 -/* 8028E954 0028A5B4 38 60 00 00 */ li r3, 0 -/* 8028E958 0028A5B8 98 1E 00 08 */ stb r0, 8(r30) -/* 8028E95C 0028A5BC 48 00 00 08 */ b lbl_8028E964 -lbl_8028E960: -/* 8028E960 0028A5C0 38 60 00 01 */ li r3, 1 -lbl_8028E964: -/* 8028E964 0028A5C4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028E968 0028A5C8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028E96C 0028A5CC 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028E970 0028A5D0 7C 08 03 A6 */ mtlr r0 -/* 8028E974 0028A5D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028E978 0028A5D8 4E 80 00 20 */ blr - -.global func_8028E97C -func_8028E97C: -/* 8028E97C 0028A5DC 3C 60 80 52 */ lis r3, lbl_8051B7E0@ha -/* 8028E980 0028A5E0 80 63 B7 E0 */ lwz r3, lbl_8051B7E0@l(r3) -/* 8028E984 0028A5E4 4E 80 00 20 */ blr - -.global func_8028E988 -func_8028E988: -/* 8028E988 0028A5E8 38 60 00 01 */ li r3, 1 -/* 8028E98C 0028A5EC 4E 80 00 20 */ blr - -.global func_8028E990 -func_8028E990: -/* 8028E990 0028A5F0 38 60 00 01 */ li r3, 1 -/* 8028E994 0028A5F4 4E 80 00 20 */ blr - -.global func_8028E998 -func_8028E998: -/* 8028E998 0028A5F8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8028E99C 0028A5FC 7C 08 02 A6 */ mflr r0 -/* 8028E9A0 0028A600 90 01 00 14 */ stw r0, 0x14(r1) -/* 8028E9A4 0028A604 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8028E9A8 0028A608 3F E0 80 43 */ lis r31, lbl_804366A0@ha -/* 8028E9AC 0028A60C 3B FF 66 A0 */ addi r31, r31, lbl_804366A0@l -/* 8028E9B0 0028A610 93 C1 00 08 */ stw r30, 8(r1) -/* 8028E9B4 0028A614 80 8D AA AC */ lwz r4, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E9B8 0028A618 38 04 00 01 */ addi r0, r4, 1 -/* 8028E9BC 0028A61C 2C 00 00 04 */ cmpwi r0, 4 -/* 8028E9C0 0028A620 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028E9C4 0028A624 41 80 00 0C */ blt lbl_8028E9D0 -/* 8028E9C8 0028A628 38 00 00 00 */ li r0, 0 -/* 8028E9CC 0028A62C 90 0D AA AC */ stw r0, lbl_8063FD6C-_SDA_BASE_(r13) -lbl_8028E9D0: -/* 8028E9D0 0028A630 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028E9D4 0028A634 3C E0 80 52 */ lis r7, lbl_8051B760@ha -/* 8028E9D8 0028A638 54 00 28 34 */ slwi r0, r0, 5 -/* 8028E9DC 0028A63C 38 A0 00 86 */ li r5, 0x86 -/* 8028E9E0 0028A640 7C A4 01 AE */ stbx r5, r4, r0 -/* 8028E9E4 0028A644 39 20 00 01 */ li r9, 1 -/* 8028E9E8 0028A648 38 E7 B7 60 */ addi r7, r7, lbl_8051B760@l -/* 8028E9EC 0028A64C 80 8D AA B0 */ lwz r4, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028E9F0 0028A650 99 2D AA A8 */ stb r9, lbl_8063FD68-_SDA_BASE_(r13) -/* 8028E9F4 0028A654 54 88 28 34 */ slwi r8, r4, 5 -/* 8028E9F8 0028A658 7C C7 42 14 */ add r6, r7, r8 -/* 8028E9FC 0028A65C 88 A6 00 08 */ lbz r5, 8(r6) -/* 8028EA00 0028A660 7C 05 00 D0 */ neg r0, r5 -/* 8028EA04 0028A664 7C 00 2B 78 */ or r0, r0, r5 -/* 8028EA08 0028A668 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8028EA0C 0028A66C 28 00 00 01 */ cmplwi r0, 1 -/* 8028EA10 0028A670 40 82 00 20 */ bne lbl_8028EA30 -/* 8028EA14 0028A674 38 7F 02 18 */ addi r3, r31, 0x218 -/* 8028EA18 0028A678 4C C6 31 82 */ crclr 6 -/* 8028EA1C 0028A67C 4B D7 90 A9 */ bl func_80007AC4 -/* 8028EA20 0028A680 38 7F 02 50 */ addi r3, r31, 0x250 -/* 8028EA24 0028A684 4C C6 31 82 */ crclr 6 -/* 8028EA28 0028A688 4B D7 90 9D */ bl func_80007AC4 -lbl_8028EA2C: -/* 8028EA2C 0028A68C 48 00 00 00 */ b lbl_8028EA2C -lbl_8028EA30: -/* 8028EA30 0028A690 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 8028EA34 0028A694 3C 05 01 15 */ addis r0, r5, 0x115 -/* 8028EA38 0028A698 28 00 DA ED */ cmplwi r0, 0xdaed -/* 8028EA3C 0028A69C 41 82 00 14 */ beq lbl_8028EA50 -/* 8028EA40 0028A6A0 38 7F 02 80 */ addi r3, r31, 0x280 -/* 8028EA44 0028A6A4 4C C6 31 82 */ crclr 6 -/* 8028EA48 0028A6A8 4B D7 90 7D */ bl func_80007AC4 -lbl_8028EA4C: -/* 8028EA4C 0028A6AC 48 00 00 00 */ b lbl_8028EA4C -lbl_8028EA50: -/* 8028EA50 0028A6B0 7C 67 41 2E */ stwx r3, r7, r8 -/* 8028EA54 0028A6B4 38 04 00 01 */ addi r0, r4, 1 -/* 8028EA58 0028A6B8 2C 00 00 04 */ cmpwi r0, 4 -/* 8028EA5C 0028A6BC 91 26 00 04 */ stw r9, 4(r6) -/* 8028EA60 0028A6C0 99 26 00 08 */ stb r9, 8(r6) -/* 8028EA64 0028A6C4 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -/* 8028EA68 0028A6C8 41 80 00 0C */ blt lbl_8028EA74 -/* 8028EA6C 0028A6CC 38 00 00 00 */ li r0, 0 -/* 8028EA70 0028A6D0 90 0D AA B0 */ stw r0, lbl_8063FD70-_SDA_BASE_(r13) -lbl_8028EA74: -/* 8028EA74 0028A6D4 80 0D AA AC */ lwz r0, lbl_8063FD6C-_SDA_BASE_(r13) -/* 8028EA78 0028A6D8 3C 60 80 52 */ lis r3, lbl_8051B760@ha -/* 8028EA7C 0028A6DC 54 85 28 34 */ slwi r5, r4, 5 -/* 8028EA80 0028A6E0 80 8D AA C4 */ lwz r4, lbl_8063FD84-_SDA_BASE_(r13) -/* 8028EA84 0028A6E4 38 63 B7 60 */ addi r3, r3, lbl_8051B760@l -/* 8028EA88 0028A6E8 3D 20 80 29 */ lis r9, lbl_8028D118@ha -/* 8028EA8C 0028A6EC 7F C3 2A 14 */ add r30, r3, r5 -/* 8028EA90 0028A6F0 54 00 28 34 */ slwi r0, r0, 5 -/* 8028EA94 0028A6F4 7C A4 02 14 */ add r5, r4, r0 -/* 8028EA98 0028A6F8 80 6D 88 D0 */ lwz r3, lbl_8063DB90-_SDA_BASE_(r13) -/* 8028EA9C 0028A6FC 7F CA F3 78 */ mr r10, r30 -/* 8028EAA0 0028A700 39 29 D1 18 */ addi r9, r9, lbl_8028D118@l -/* 8028EAA4 0028A704 38 80 00 86 */ li r4, 0x86 -/* 8028EAA8 0028A708 38 C0 00 20 */ li r6, 0x20 -/* 8028EAAC 0028A70C 38 E0 00 00 */ li r7, 0 -/* 8028EAB0 0028A710 39 00 00 00 */ li r8, 0 -/* 8028EAB4 0028A714 48 01 4F 05 */ bl func_802A39B8 -/* 8028EAB8 0028A718 2C 03 00 00 */ cmpwi r3, 0 -/* 8028EABC 0028A71C 41 82 00 24 */ beq lbl_8028EAE0 -/* 8028EAC0 0028A720 7C 64 1B 78 */ mr r4, r3 -/* 8028EAC4 0028A724 38 7F 0B 74 */ addi r3, r31, 0xb74 -/* 8028EAC8 0028A728 4C C6 31 82 */ crclr 6 -/* 8028EACC 0028A72C 4B D7 8F F9 */ bl func_80007AC4 -/* 8028EAD0 0028A730 38 00 00 00 */ li r0, 0 -/* 8028EAD4 0028A734 38 60 00 00 */ li r3, 0 -/* 8028EAD8 0028A738 98 1E 00 08 */ stb r0, 8(r30) -/* 8028EADC 0028A73C 48 00 00 08 */ b lbl_8028EAE4 -lbl_8028EAE0: -/* 8028EAE0 0028A740 38 60 00 01 */ li r3, 1 -lbl_8028EAE4: -/* 8028EAE4 0028A744 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8028EAE8 0028A748 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8028EAEC 0028A74C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8028EAF0 0028A750 7C 08 03 A6 */ mtlr r0 -/* 8028EAF4 0028A754 38 21 00 10 */ addi r1, r1, 0x10 -/* 8028EAF8 0028A758 4E 80 00 20 */ blr - -.global lbl_8028EAFC -lbl_8028EAFC: -/* 8028EAFC 0028A75C 38 60 00 00 */ li r3, 0 -/* 8028EB00 0028A760 4E 80 00 20 */ blr - .global func_8028EB04 func_8028EB04: /* 8028EB04 0028A764 94 21 FF F0 */ stwu r1, -0x10(r1) diff --git a/obj_files.mk b/obj_files.mk index f615d40..31f91cd 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -178,6 +178,11 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/SDK/GX/GXPerf.o \ $(BUILD_DIR)/asm/SDK/DVD/dvdfs.o \ $(BUILD_DIR)/asm/SDK/DVD/dvd.o \ + $(BUILD_DIR)/asm/SDK/DVD/dvdqueue.o \ + $(BUILD_DIR)/asm/SDK/DVD/dvderror.o \ + $(BUILD_DIR)/asm/SDK/DVD/dvdidutils.o \ + $(BUILD_DIR)/asm/SDK/DVD/dvdFatal.o \ + $(BUILD_DIR)/asm/SDK/DVD/dvd_broadway.o \ $(BUILD_DIR)/asm/text_8_3.o \ $(BUILD_DIR)/asm/text_9.o \ $(BUILD_DIR)/asm/text_10.o \ |