CONTENT
=======

LZW.FOR        implementation of LZW-algorithm written in "almost standard"
               FORTRAN
HSH.FOR        hash-table routines written in "almost standard"
               FORTRAN
BF.MAR         bit-manipulation routines written in MACRO-32 assembler
               for VMS VAX (se documentation below)
STR.MAR        string routines written in MACRO-32 assembler
               for VMS VAX (se documentation below)
TST.FOR        test-program for testing the routines  written in
               "almost tandard" FORTRAN
TST.COM        shell-script for building the test-program on a VMS system

The mysterious term "almost standard" FORTRAN mean that even though I
expect it to compile on almost any FORTRAN compiler, then it violates
the F77 standard in a few ways:
  - too long names
  - the use of INTEGER*4 type declarations
  - mixing integers and characters in COMMON blocks

The needed support routines supplied in assembler for VMS VAX (and VMS AXP)
has the following functionality:

  BF_PACK ( CHARSTRING, FROMBIT, NOBIT, VALUE )
     -         c*(*)      i*4     i*4    i*4
  BF_UNPACK ( CHARSTRING, FROMBIT, NOBIT, VALUE )
     -           c*(*)      i*4     i*4    i*4
  STR_INIT ( CHARSTRING, SINGLECHAR )
     -          c*(*)       c*1
  STR_HASH ( CHARSTRING, MODULUSVAL )
     i*4       c*(*)        i*4

I expect the meaning of the arguments to be rather obvious. The two STR_
routines could easily be written in FORTRAN.
