Initial bytes:

CI - CompressIt! (ASCII characters)
X - High byte represents major version low byte represents minor
0 major denotes experimental version

Binary processing:

1/0 - Start in compressed/decompressed mode

The Huffman table told how many to go next in the same mode (compressed or decompressed). After the initial mode start, finishing your Huffman value switched modes with exception to #14.

Huffman style table used in file format

 

00 1
11 2
010 3
101 4
0110 5
1001 6
01110 7
10001 8
011110 9
100001 10
0111110 11
1000001 12
01111110 13
10000001 * (reserved for specified length)

 

Easy squeezy

An Explanation of the Huffman Compression Technique

Again, the Huffman value tells how many blocks of 8 bits to read and in compressed mode, the bits represent the pattern mode while in decompressed they represent actual data. The length 14 is reserved. If it occurs, the next binary value (1/0) denotes the type of the forwarding variable. 0 for 1 word and 1 for 2 unsigned long. That type is read in and the program advances with that value. Completing the Huffman value simply switches modes.