User talk:Ramaster
Street Rod library files are composed of a header that includes the FAT followed by the files ( that are all graphics in plane mode ) with RLE of 0x00 and 0xFF, each "compressed/encrypted" with a "dictionary".
The first two bytes are used for file checking.
The FAT includes 30 bytes for each file: 2 bytes for width, 2 bytes for height, 3 bytes for palette, the next 16 bytes are the "dictionary" that contain the values that will be written as 0x00 or 0xFF certain number of times, then 4 bytes with the offset of the start of the file, then 3 bytes with the lenght of the file, these last two have an algorithm to get the correct value, different for each lib file.
The template of the replacing that will be done by each "dictionary" is located in the data segment of the exe file at offset 0x45b1e (285,470) and is the following:
01010203040203050606040707050808
00FF000000FFFF00FF00FFFF00FFFF00
In the first line are the number of times that the value on the second line will be written to memory.
The cars have a fifth plane for transparency masking.