DICommands

From GC-Forever Wiki
Jump to: navigation, search

Originally from: http://tmb.elitedvb.net/dvd-game/index.php/DICommands

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, bit1=enable)  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  DvdVideoRead
D1 XX 00 00 YY YY YY YY ZZ ZZ ZZ ZZ  DvdVideoConfig (Doesn't seem to actually do anything)
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