Changes

Jump to navigation Jump to search

FF7/LZSS format

1 byte added, 19:28, 17 November 2008
Example
0x03, 0x53, 0x12 .....
We read in a control byte: $030xFC. In binary, that's 0000001111111100. That informs us that the current block of data has two compressed offsets (@ 2 bytes each), followed by 6 literal data bytes. Once we'd read in the next 10 bytes (the compressed data plus the literal data), we'd be ready to read in our next control byte and start again.
Looking at the first compressed reference, we read in $53 $12. That gives us a base offset of $153 (the 53 from the first byte, and the '1' from the second byte makes up the higher nybble). The base length is $2 (we just take the low nybble of the second byte).
Anonymous user

Navigation menu