h6. [[CDFS]] h6(. » CDFS Technical Details h2. CDFS Technical Details h3(#controlblock). CDFS Control Block See [[CDFS Control Block]] h3(#datamodes). Data Modes The following table details the different data modes that CDFS currently understands. |_<^{width:4em}. Mode |_<^. Meaning | |<^. 0 |<^. Audio | |<^. 1 |<^. Data Mode 1 | |<^. 2 |<^. Data Mode 2 format 1 | |<^. 3 |<^. Data Mode 2 format 2 | h3(#addressingmode). Addressing Mode Addresses have different meaning depending on the addressing mode: |_<^{width:4em}. Mode |_<^. Meaning | |<^. 0 |<^. Logical block addressing (Offset in blocks from the start of a CD's data area) | |<^. 1 |<^. Red Book addressing (A time offset from a CD's first frame, in the form detailed below this table) | |<^. 2 |<^. Physical block addressing (offset in blocks from the first block on the CD) | h4. Red Book Addressing Details |_<^{width:4em}. Byte |_<^. Label|_<^. Meaning | |<^. 0 |<^. FF |<^. Frame number (0 - 74) (75 frames in one second) | |<^. 1 |<^. SS |<^. Seconds (0-59) | |<^. 2 |<^. MM |<^. Minutes (0-99) | |<^. 3 |<^. |<^. Reserved | CDFSDriver assumes that all discs have a lead-in period of 2 seconds (150 blocks). The [[CD_ConvertToLBA]] and [[CD_ConvertToMSF]] SWIs know to apply this offset; the conversion is such that LBA 0 and MSF 00:00:00 both correspond to physical block 150. Attempting a mode 0 or mode 1 access to addresses below physical block 150 may result in an error. h3(#drivestatus). CD Drive Status |_<^{width:4em}. Value |_<^. Meaning | |<^. 1 |<^. OK | |<^. 2 |<^. Busy | |<^. 4 |<^. Not Ready (e.g. Drive empty) | |<^. 8 |<^. Unavailable | h3(#16trackblock). 16 Byte Track Block The following block is used by [[CD_SetParameters]] and [[CD_GetParameters]]. |_<^{width:4em}. Offset |_<^. Contents | |<^. 0 |<^. Log spin-down delay 0-15 (0 equivilent to 16, 1 = shortest) | |<^. 4 |<^. Number of retries | |<^. 8 |<^. Read mode (0, 1 and 3 for data, 2 for audio) | |<^. 12 |<^. Speed in multiples of 'standard' speed | h4. See also * [[CDFSDriver Technical Details]]