Changes

114 bytes added ,  22:34, 3 September 2019
DVDLowReadDiskBca and DVDLowSerMeasControl are DMA commands (I wrote the length requirements, but not the actual writing of the length). Also misc typos
Line 228: Line 228:  
=== <s>0x92 DVDLowGetNoDiscBufferSizes</s> ===
 
=== <s>0x92 DVDLowGetNoDiscBufferSizes</s> ===
   −
<strong>Dummied out</strong>; always returns 0x80.  However, still usable as an Ioctl (which is probably unintended).  System menu 4.3U (among other titles) still has a PPC-side implementation (815502b8) but this is not used{{check}}. but this is not used (the higher-level function that calls it is gone due to not being referenced).  This does allow determination of the inputs, though:
+
<strong>Dummied out</strong>; always returns 0x80.  However, still usable as an Ioctl (which is probably unintended).  System menu 4.3U (among other titles) still has a PPC-side implementation (815502b8) but this is not used (the higher-level function that calls it is gone due to not being referenced).  This does allow determination of the inputs, though:
    
{| class="wikitable"
 
{| class="wikitable"
Line 1,271: Line 1,271:     
  DICMDBUF0 = 0xDA000000
 
  DICMDBUF0 = 0xDA000000
  DICR = TSTART
+
DILENGTH = 0x40
 +
DIMAR = dest
 +
  DICR = TSTART | DMA
    
{| class="wikitable"
 
{| class="wikitable"
Line 1,350: Line 1,352:  
=== 0xDF DVDLowSerMeasControl ===
 
=== 0xDF DVDLowSerMeasControl ===
   −
Unknown{{check}}.
+
Unknown{{check}}.  Possibly "sensor measurement control" or "servo measurement control".
    
The output buffer size must be &ge; 0x20, or DIMAR and DILENGTH will not be written.  The output buffer also needs to be 32-byte aligned, or else the driver will hang.
 
The output buffer size must be &ge; 0x20, or DIMAR and DILENGTH will not be written.  The output buffer also needs to be 32-byte aligned, or else the driver will hang.
    
  DICMDBUF0 = 0xDF000000 | ((flag1 & 1) << 17) | ((flag2 & 1) << 16) // DF030000, DF010000, DF020000, DF000000
 
  DICMDBUF0 = 0xDF000000 | ((flag1 & 1) << 17) | ((flag2 & 1) << 16) // DF030000, DF010000, DF020000, DF000000
  DICR = TSTART
+
DILENGTH = 0x20
 +
DIMAR = dest
 +
  DICR = TSTART | DMA
    
{| class="wikitable"
 
{| class="wikitable"
303

edits