This is a rewrite of the Unix compress utility.  It is *not*
switch-compatible with Unix compress, however it is (almost)
file-compatible (when compiled on Unix, or when "export" mode
is selected on VMS Version 4).

The advantages of this version are as follows:

1. Compress and decompress are separate programs, simplifying the
   problems of the small system implementor.  Both run on an
   unmapped PDP-11 (with a maximum of 12 bits).

   The command interface is just

	lzcomp input compressed_output
	lzdcmp compressed_input output

   Input files are not deleted.

2. The compression algorithm and I/O design is intended to simplify
   embedding the programs (as subroutines) in some other task.
   (for example, in a database package.)

3. On non-Unix systems, the I/O design should be significantly
   faster.  It should be slightly faster on Unix.

The only disadvantage is that, as noted, it is not command (option)
compatible with Unix compress.  Also, some peripheral functionality
(such as the deletion of input files and the output file naming
conventions) have not been implemented.

On Unix (i.e., in "export" mode), the compressed data file is
identical to the Unix file, *except* that lzcomp writes two
CLEAR codes in a row to signal end-of-file (and lzdcmp treats
two CLEAR codes in a row as signalling end-of-file).  This
means that, if you compress a file using lzcomp and decompress
it using Unix compress, there will be a couple of extra bytes
added at the end of the decompressed output file.

lzcomp and lzdcmp have been added to the Decus C distribution.

Martin Minow
decvax!minow,
minow%rex.dec@decwrl.arpa

