public class NufxLzw2InputStreamextends InputStream
The NufxLzw2InputStream reads a data fork or
resource fork written in the NuFX LZW/2 format.
The layout of the LZW/2 data is as follows:
"Fork" Header
+0
Byte
Low-level volume number used to format 5.25" disks
+1
Byte
RLE character used to decode this thread
Each subsequent 4K chunk of data
+0
Word
Bits 0-12: Length after RLE compression
Bit 15: LZW flag (set to 1 if LZW used)
+2
Word
If LZW flag = 1, total bytes in chunk
Else (flag = 0) start of data
The LZW/2 dictionary is only cleared when the table becomes full and is indicated
in the input stream by 0x100. It is also cleared whenever a chunk that is not
LZW encoded is encountered.