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