Eric MacDonald WBIP 32 Date Initiated: 2/14/00 Date Last Modified: 1/14/00 WebTV Disk Structure Revisited The theory I posed about using a disk editor to get to the data on the WebTV hard drive, was correct and has been proven to work. The first person I know of to get a look at the raw HD data was Grimio. As he had a extra drive. However he formatted the drive and put 600MBs of personal data onto the drive. 600MBs is nearly 60% of the total about of data that can me allocated on the drive, you mite think he wrote over the entire selection of significant data on the drive however there was some significant data found by Grimio. WebTV drives work on the LBA (Logical Block Addressing) translation mode. This means that instead of addressing the data on the drive through Clusters, Heads, and Sectors (Known as CHS) it labels each sector on the drive with a number (Hex) and the data can be accessed through one address instead of three different location identifiers. These addresses are called blocks, you would pronounce the address as "Block h0001" ect.. The second piece of data found was the way the drive was written to. As noticed the drive does not write to the drive in a byte-to-byte fashion instead it writes its data to the HD as follows: Code to write: 0123456789 Code Sequenced on drive: 1032547698 To put it easy you can find the sequence on the drive very fast mentally by croses: 0 1 |__| | | 1 0 Each cross is done in 2 byte intervals. For programing terms: For non-two devisable counts the byte is buffered and appended to the end of the final string if a count from a true two devisable count number at this condition the buffer is reset. Perl Equivilent: $buffer = ""; $output = ""; $count = 0; foreach ( split (/|/,$ToBeWrittenToHD) ) { $count++; if( $count%2 ) { $output .= "$_$buffer"; $buffer = "" } else { $buffer = $_; } } and essentially $output will be written to the HD. From this code a inverse can be written.