Open main menu

Difference between revisions of "RAC file"

299 bytes added ,  08:51, 27 August 2010
Fascination TODO - RAC file: Add details on header
(Fascination TODO- Add first elements of RAC file structure)
 
(Fascination TODO - RAC file: Add details on header)
 
Line 2: Line 2:
it contains, for all the missing file, their name, address and size (between others).
it contains, for all the missing file, their name, address and size (between others).


The structure of the file is the folowing:
The structure of the file is the following:


'''Header:'''
'''Header:'''
18 bytes, contains a version, arraysize1 and arraysize2
18 bytes, contains a version, arraysize1 and arraysize2
* 2 bytes: magic number, must be equal to 0x0300
* 2 bytes: arraySize1
* 2 bytes: arraySize2
* 4 bytes: dummy, overwritten in memory by array1 address (unused for Fascination)
* 4 bytes: dummy, overwritten in memory by array2 address
* 4 bytes: unused ?


'''Body:'''
'''Body:'''
* Unknown array: arraysize1 * 14 bytes (unused for Fascination)
* unknownArray: arraySize1 * 14 bytes (unused for Fascination), not encrypted
* Missing file array : arraysize2 * 30 bytes
* missingFileArray : arraySize2 * 30 bytes, encrypted


The encryption of the missing file array is a simple XOR.
The encryption of the missing file array is a simple XOR.
Line 16: Line 22:
       missingFileArray[i] ^= (i * i);
       missingFileArray[i] ^= (i * i);


The structure of this array is then, for each 30 bytes in it:
The structure of this array is then, for each 30 bytes block in it:
* 14 bytes: filename
* 14 bytes: filename
* 10 bytes: unknown (containing the offset on the CDROM ?)
* 10 bytes: unknown (containing the offset on the CDROM ?)
Line 23: Line 29:


It's interesting to notice that, in this RAC file,
It's interesting to notice that, in this RAC file,
* Coktel used 'intro.stk' name instead of 'disk0.stk' in the other versions
* Coktel used 'intro.stk' name instead of 'disk0.stk' in the other versions of Fascination
* the track audio is present and named 'FASCI1N.SON'. Of course, We don't need this file.
* the track audio is present and named 'FASCI1N.SON'. Of course, We don't need this file.