+==========================================================================================+ |Jazz Jackrabbit RLE Compression: | +==========================================================================================+ Jazz's compression is a modified form of RLE. An RLE block wil start with a word giving the size of the block to follow, excluding the two sze bytes. This is not necessary, but Jazz needs it to tell it where the next block of data is. Decompression starts at the next byte after this and follows these rules: 1.) Get a byte 2.) If this byte is zero, stop decompressing 3.) Is the value of this byte larger than 127? -> If yes, then: -> Get the next byte and copy it [Value - 127] times -> Move forward a byte and go to 1 -> If no then: -> Get the next [Value] bytes -> Move forward [Value] bytes and go to 1