Standard Drive Commands
Bytes Description
12 Identify
A8 00 00 x0 rr rr rr rr ll ll ll ll Read Sector
AB 00 00 00 rr rr rr rr Seek/Precache
E0 00 00 00 Read Status
E1 Audio Stream
E2 Request Audio Status
E3 Motor Stop
E4 AudioBufferConfig
FE Debug Command
FF Debug Enable
The NPDP-Cartridge have several more commands, including the 'NPDP-ID' and Fx for direct read/write access
to the harddisk plus firmware flashing and probably more stuff. It's not covered here.
Cobra Addons
The following commands are added by the Cobra firmware.
Bytes Description Versions
1E Start swap method 1.0
55 Disable drive code 1.0
A9 00 00 00 rr rr rr rr Set offset for multigame disks to r 1.0
Qoob Addons
The following commands are added by the Qoob firmware.
Bytes Description Versions
10 Post event 0x01 to the backend thread? start drive? 1.3c
11 Set drive status to allow read disc id 1.3c
20 00 00 00 xx Set drive code flags to x (bit0=audio fix, bit1enable) 1.3c
A9 00 00 00 rr rr rr rr Set offset for multigame disks to r 1.3c
E1 00 00 00 rr rr rr rr Add r to offset for multigame disks 1.3c
XenoGC Addons
The following commands are added by the XenoGC firmware.
Bytes Description Versions
21 Disable audio fix 1.0
22 Disable DRE recovery 1.0
25 unload drive code/disable reset logic/Request credits binary 1.0
Wii Addons
The following commands are added by the firmware used on the wii drive.
Bytes Description
A4 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ DvdReportDiscKey requires medium up
AD 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ DvdReadPhyscalInfo requires medium up
AD 01 00 00 YY YY YY YY ZZ ZZ ZZ ZZ DvdReadCopyrightInfo requires medium up
AD 02 00 00 YY YY YY YY ZZ ZZ ZZ ZZ ??? requires medium up
D0 XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ ??? doesnt require medium up
D1 XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ ??? doesnt require medium up
D2 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ standby (spins down drive until next access) requires medium up
D9 XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ lba offset requires medium up
XX:00 set lba offset (YY)
XX:01 get lba offset (IMM)
DA 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ reads some 0x40 bytes (bca?) (DMA) requires medium up
DB 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ ??? doesnt require medium up
DC 00 00 00 YY YY YY YY ZZ ZZ ZZ ZZ ??? doesnt require medium up
DD XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ SetDriveSpeed requires medium up
XX:00-02
DF XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ reads some 0x20 bytes
XX:00-03
= old
+ = new for Wii
Wii SDK name
--------------------
=12 DVDLowInquiry
70 DVDLowReadDiskID
71 DVDLowRead
79 DVDLowWaitForCoverClose
7A DVDLowPrepareCoverRegister
7A DVDLowGetCoverReg
7E DVDLowNotifyReset
80 DVDLowReadDvdPhysical
81 DVDLowReadDvdCopyright
82 DVDLowReadDvdDiscKey
86 DVDLowClearCoverInterrupt
88 DVDLowGetCoverStatus
8A DVDLowReset
8B DVDLowOpenPartition
8C DVDLowClosePartition
8D DVDLowUnencryptedRead
8E DVDLowEnableDvdVideo [[removed in later SDK version]]
+A4 DVDLowReportKey
=A8
=AB DVDLowSeek
+AD
+D0 DVDLowReadDvd
+D1 DVDLowReadDvdConfig
+D2 DVDLowStopLaser
D9 DVDLowOffset
DA DVDLowReadDiskBca
+DB DVDLowRequestDiscStatus
+DC DVDLowRequestRetryNumber
+DD DVDLowSetMaximumRotation
+DF DVDLowSerMeasControl
=E0 DVDLowRequestError
=E1
=E2
=E3 DVDLowStopMotor
=E4 DVDLowAudioBufferConfig
=FE
=FF