home *** CD-ROM | disk | FTP | other *** search
/ RBBS in a Box Volume 1 #2 / RBBS_vol1_no2.iso / 014r / lharc10e.com / LHARC.MAN < prev    next >
Text File  |  1989-03-04  |  23KB  |  698 lines

  1.                                                            March 4, 1989
  2.  
  3.           USER's MANUAL for highly effective Archiving Program
  4.  
  5.                            LHarc version 1.00
  6.  
  7.             Copyright(c) Haruyasu Yoshizaki (Yoshi) ,1988-89
  8.  
  9.                                                     Nifty Serve PFF00253
  10.                                                     ASCII pcs   pcs02846
  11.  
  12.  
  13. 0. It came to pass one day..
  14.  
  15.    After reading "Harddisk Cookbook" from Shouei-Press, I had a strong
  16. desire to write my own archiving utility.  In the Nifty Serve network,
  17. I was first exposed to Mr. Miki's LARC which surpassed the well-known
  18. PKWARE in compression rates, as reported in the Forum Software Review
  19. and Deview.  The next shock came when I saw Mr. Okumura's LZARI which
  20. has even better compaction performance.  I started to rewrite LZARI in
  21. MASM trying to make it run faster, but I could find no way of speeding
  22. up the process of de-archiving..
  23.  
  24.    So, as an alternative, I used adaptive Huffman coding with an LZSS
  25. encoder to achieve a similar rate of compression with a faster
  26. decompression process.  This is the idea used in LHarc.
  27.  
  28.    No one can be sure of eradicating all possible bugs, yet if SPACE is
  29. more valuable than TIME for you, please give this program a try.  It may
  30. be slower in execution but it achieves the tightest compression rate of
  31. any archiver in the public domain.
  32.  
  33.  
  34. 1. How to use it:
  35.  
  36.       [Synopsis]
  37.  
  38. LHarc [command] [/<switch> [-|+|2|<option>]] <archive> <file_name>
  39.       [<Home directory_name>\|<Drive_Name>:] [<path_name>]
  40.  
  41.       You may place switch(es) at any place following the command(s).  A
  42.       sequence of switches can be specified.
  43.  
  44.       Just type LHarc to see the help menu.
  45.  
  46.  
  47. Commands:
  48. ========
  49.  
  50.     a   (Add)
  51.  
  52.             LHARC a Archive.LZH FILE1.EXT
  53.  
  54.         FILE1.EXT is archived and added to the Archive.LZH.
  55.         If the file 'Archive.LZH' does not exists, then LHarc creates it.
  56.         If 'file1.ext' is already in the archive, then LHarc replaces it
  57.         with the new file.
  58.  
  59.     u  (Update)
  60.  
  61.             LHARC u Archive.LZH FILE1.EXT
  62.  
  63.        'FILE1.EXT' is archived into 'Archive.LZH' the same as the 'a'
  64.        command.  But now, LHARC checks the date of 'FILE1.EXT' when
  65.        'FILE1.EXT' already exists in the archive.  LHARC keeps the newer
  66.        one and ignores the other.  With the /c switch on, the action
  67.        is the same as with the 'a' command.
  68.  
  69.     m   (Move)
  70.  
  71.             LHARC m Archive.LZH FILE1.EXT
  72.  
  73.         is equivalent to
  74.  
  75.             LHARC u Archive.LZH FILE1.EXT
  76.             DEL FILE1.EXT
  77.  
  78.         Beware of the fact that the second line is always active.  You
  79.         might lose the older 'FILE1.EXT' for eternity.
  80.  
  81.  
  82.     f   (Freshen)
  83.  
  84.             LHARC f Archive.LZH FILE2.EXT
  85.  
  86.         If FILE1.EXT was archived, then the file is replaced by new one.
  87.         The option will not do anything if FILE1.EXT does not exist in
  88.         the archive.
  89.  
  90.             LHARC f /c Archive.LZH FILE1.EXT
  91.  
  92.         will replace FILE1.EXT in the archive without checking, /c is
  93.         to suppress checking.
  94.  
  95.     e   (Extract) or x (eXtract)
  96.  
  97.             LHarc e Archive.LZH
  98.  
  99.         extracts all the files from Archive.LZH.
  100.  
  101.             LHarc e Archive.LZH FILE2.EXT
  102.  
  103.         extracts FILE2.EXT from the archive.  If there is a file
  104.         with the name FILE2.EXT in the target directory, then LHarc
  105.         refrains from extraction if the existing file has the same
  106.         time stamp or is newer.  The /c switch will force lharc to
  107.         ignore this time stamp checking.
  108.  
  109.             LHarc e Archive.LZS* [FILE.EXT]
  110.  
  111.         will extract [FILE.EXT] from .LZS* files archived with
  112.         LARC 3.xx.
  113.  
  114.             Note: LARC is another popular archiver in
  115.                   Japanese PDS's.
  116.  
  117.     p   (Print)
  118.  
  119.             LHarc p Archive.LZH [FILE2.EXT]
  120.  
  121.         will output un-archived file(s) to standard output.
  122.  
  123.             LHarc p /v Archive.LZH [FILE1.EXT FILE2.EXT ....]
  124.  
  125.         will usually activate the utility 'less' and will prompt for
  126.         the output.  A temporary file is created.  You must delete
  127.         this file later.  Or, you may redirect the output to the
  128.         "more" command of DOS.
  129.  
  130.  
  131.     d   (Delete)
  132.  
  133.             LHarc d Archive.lzh filed.ext
  134.  
  135.         Deletes filed.ext from the archive Archive.LZH.
  136.  
  137.  
  138.     l   (List)
  139.  
  140.             LHarc l Archive.LZH
  141.  
  142.         List to standard output [+] filename in Archive.LZH in two
  143.         columns.  '+' indicates a pathname exists with filename.
  144.  
  145.             LHarc l /x Archive.LZH
  146.  
  147.         List filenames in Archive.LZH in full detail standard output.
  148.         Each line consists of [pathname] '+' filename.  Similar to -l
  149.         switch in UNIX ls command.
  150.  
  151.  
  152.     v   (View)
  153.  
  154.             LHarc l /x Archive.LZH
  155.  
  156.         is equivalent to LHarc v Archive.LZH.
  157.  
  158.  
  159.     s   (Self-extract)
  160.  
  161.             LHarc s Archive.LZH
  162.  
  163.         Create self-extracting file "archive.com" from Archive.LZH.
  164.         If a home directory is specified, this file will be created
  165.         in the home directory.
  166.  
  167.  
  168.             LHarc Archive.LZH FILE1.EXT  .....no command specified.
  169.  
  170.          Lharc acts exactly as with l command.  This optional action
  171.          is temporary.  Don't count on it in the coming version.
  172.  
  173.  
  174. Switches:
  175. ========
  176.  
  177.      Specify switch(es) following the switch character /.  If you
  178.      want to specify more than one switch, type characters
  179.      continuously without any space between, like: /rxwa or / cxve.
  180.      When the switches r and v are used with another switch, they
  181.      must be specified at the end of the sequence as above.
  182.  
  183.      You may place a '+' or '-' sign after switches with the fol-
  184.      lowing meanings:
  185.  
  186.             '+' sets the switch on, and '-' sets the switch off.
  187.             '2' option will be explained later.
  188.             '++' means '-'.  That is, both '+' and '-' are toggles.
  189.  
  190.      Note: '2' creates a special attribute to /r and /v switches.  (See
  191.      below).
  192.  
  193.      You have to use small letters for switches.  Capital letters are
  194.      reserved for future use.
  195.  
  196.  
  197.      Extend file_names with directory names.
  198.  
  199.             /x[-|+] (eXtend)
  200.  
  201.             LHarc a Archive.LZH STAT.H
  202.  
  203.      will archive two files with the same name in two different
  204.      directories.
  205.  
  206.      Suppose if you are in the root directory \, and you have 2 files:
  207.  
  208.             \tc\include\sys\stat.h and
  209.             \stat.h in the same directory.
  210.  
  211.             LHarc a Archive.LZH STAT.H
  212.  
  213.      will archive STAT.H only.
  214.  
  215.             LHarc a /x Archive.LZH STAT.H
  216.  
  217.      will eXtend the search to the  depth  of  \tc\include\sys\  and
  218.      archive the other STAT.H with the name \tc\include\sys\stat.h.
  219.  
  220.             LHarc e /x Archive.LZH STAT.H
  221.  
  222.      extracts two STAT.H files, one on the root directory, and the
  223.      other in the directory \tc\include\sys.
  224.  
  225.      The /r switch always sets /x simultaneously.  If you want to do
  226.      without /x then please set /x- after specifying the /r switch.
  227.  
  228.             /p[-|+] (Precise)
  229.  
  230.      Give a precise distinction between filenames.  Suppose your archive
  231.      TC.LZH has both \stat.h and \sys\stat.h
  232.  
  233.             LHarc e TC STAT.H
  234.  
  235.      will extract both files and one with older date will be overwritten
  236.      by the other.
  237.  
  238.             LHarc e /p TC.LZH STAT.H
  239.  
  240.      will give you only \STAT.H.
  241.  
  242.             LHarc e TC.LZH SYS\STAT.H
  243.  
  244.      gives you SYS\STAT.H only.
  245.  
  246.  
  247.             /c[-|+] (ignore Comparison of time stamp)
  248.  
  249.             LHarc [efux] /c Archive.LZH [FILE1.EXT FILE2.EXT...]
  250.  
  251.      If a file with the same name is to be created, the default is
  252.      to compare the time stamp of two files and some are overwritten
  253.      and some are just ignored.  This switch forces overwriting of
  254.      existing files with the extracted one.
  255.  
  256.  
  257.             /m[-|+] (no Message)
  258.  
  259.             LHarc [commands] /m Archive.LZH [FILE1.EXT FILE2.EXT...]
  260.  
  261.      by default LHarc ask questions like "Overwrite y/n ?".  This
  262.      switch will suppress these prompts and processing continues
  263.      as if "y" is typed in.
  264.  
  265.  
  266.             /a[-|+] (any Attribute)
  267.  
  268.             LHarc a /a Archive.LZH FILE1.ARC
  269.  
  270.      adds FILE1.ARC to archive with compression.
  271.  
  272.      Normally, LHarc just stores files with archive bit set, this
  273.      switch forces it to add all files regardless of the attribute.
  274.  
  275.  
  276.             /r[-|+|2] (Recursive)
  277.  
  278.             LHarc a /r Archive.LZH *.C
  279.  
  280.      Adds to Archive.LZH all the files with the extension .C under
  281.      the specified directory.
  282.  
  283.      There are 3 modes in collecting files to be archived:
  284.  
  285.      (a) default or /r-.
  286.  
  287.             Archive files with specified names only.
  288.  
  289.      (b) File_name specified mode.  When you specify /r or /r+ switch.
  290.  
  291.          Disregards directory names, and adds all the files with the
  292.          file_name under the current working directory specified.
  293.          Normally, this is used to archive all the versions or all
  294.          files of similar nature.
  295.  
  296.  
  297.      (c) directory mode.  /r2
  298.  
  299.             LHarc a /r2 Documents.LZH \DOC\
  300.  
  301.          This is like unix -r switch.  All the files in a directory
  302.          specified by path_name \doc\ are archived into
  303.          Documents.LZH.  Normally used to archive a complete
  304.          directory.
  305.  
  306.          Switches /r and /r2 will invoke the /x switch simultane-
  307.          ously.  You may have to toggle /x switch off after /r or /
  308.          r2 specification, with /x-.  The switch /x is to disregard
  309.          directories.
  310.  
  311.  
  312.             /w[-|+|<working directory name>]
  313.  
  314.             LHarc a /w[ d:\tmp ] Archive.LZH [ File1.EXT File2.EXT....]
  315.  
  316.         All the temporary files are created on the drive d:\tmp.
  317.         In case no directory name is specified, the current directory
  318.         becomes the working directory.  All the temporary files
  319.         created in the process of archiving reside in this directory
  320.         and will be deleted later.
  321.  
  322.             SET LHarc.TMP d:\
  323.  
  324.         does exactly the same, but may be overridden by /w switch.
  325.  
  326.         Normally the switch is necessary when
  327.  
  328.         1 you have no room in the directory where the .LZH file is,
  329.  
  330.     or
  331.  
  332.         2 you want your work done silently and swiftly on a Ram Disk.
  333.  
  334.  
  335.             /v[-|+|2|< utility command redirection >] (View by page)
  336.  
  337.             LHarc p /v Archive.LZH > more
  338.  
  339.         when you want to read formatted output from print command of
  340.         LHarc.  The default utility is less.com.
  341.  
  342.             Note: LESS.COM is a tool similar to the DOS MORE.COM
  343.                   and something more, but it is less than the
  344.                   "less" in American Unix Networks.
  345.  
  346.         LHarc create an un-archived file LHARC.TMP and invokes the
  347.         utility.  Temporary files will normally be deleted after you
  348.         review the output.
  349.  
  350.             LHarc p /v2 [ <utility name> ] Archive.LZH
  351.  
  352.        LHarc suppress the output of path_name or file_name. The
  353.        switch is supplied for viewing binary files with a dump
  354.        command.
  355.  
  356.  
  357. Definition:  Archive Name(Path_name).
  358.  
  359.         All the archived files have the same format as Larc* except for
  360.         the extension .LZH while Larc uses .LZS.  When you use a different
  361.         extension for the path_name, LHarc will prompt you with that
  362.         extension.
  363.  
  364.         Wildcards are valid in e,x,p,l,v,s commands.
  365.  
  366.             LHarc e Archive.LZH *.C
  367.  
  368.         un-archive all the files with the extension .C.
  369.  
  370.  
  371. Definition: Home_directory.
  372.  
  373.         If you specify a home_directory then everything happens on this
  374.         directory as if it is the current directory.  Specify a
  375.         directory_name ending with either '\' or ':'.  In archived
  376.         files, there will be no record of this home directory name.
  377.  
  378.         Example.  In the following directory tree:
  379.  
  380.                            |-- BIN --
  381.                            |
  382.           |-- \ --|-- TC --|-- LIB --
  383.                            |
  384.                            |-- INCLUDE --|-- SYS --|-- STAT.H
  385.  
  386.         Type from your root directory \
  387.  
  388.             LHarc a /rx ex Archive.LZH tc\include\ STAT.H
  389.  
  390.         to have \tc\include\sys\stat.h archived in Archive.LZH with
  391.         name SYS\STAT.H .
  392.  
  393.  
  394. Definition:  File Name (a Path_name) to be archived.
  395.  
  396.         File_names or Path_names of files to be archived must be
  397.         specified or LHarc will automatically assume *.* with no
  398.         directory names. The wildcards behaves exactly as in MS-DOS.
  399.         You can not use them in specifying directories except in the
  400.         mode /r2, as UNIX -r option for cp, mv or rm.
  401.  
  402.  
  403. Terminology:
  404. ============
  405.  
  406.         Path name, Directory Name, File_name:
  407.  
  408.             a:\tc\include\stdio.h
  409.             |<---- path_name --->|
  410.             |<---------->||<--->|
  411.  
  412.         directory_name  file_name
  413.  
  414.  
  415.     SWITCH character:
  416.  
  417.         If you are using some other letter like '-' for the forward
  418.         slash '/' as switch delimiter from function call 37h, SET
  419.         VECTOR, you have to place your delimiter, say '-', in front
  420.         of our '/' like -/cx.  You may use '/' for a directory
  421.         delimiter, using the Unix convention.  You can always use
  422.         '-' as a switch character anyway.
  423.  
  424.         The above comment may not be true if you are not using MS-DOS
  425.         3.xx.
  426.  
  427.  
  428. 2.  Set switches in environmental variable.
  429.  
  430.      You may set switches by using the Environmental variable 'LHARC'.
  431.  
  432.      Example.
  433.      A>set LHarc=/we: /r2    ; Set work directory in drive e: and
  434.                              ; archive files in totally recursive mode.
  435.  
  436.      It is, also possible to specify the working directory with environ-
  437.      mental variable 'TMP', like:
  438.  
  439.             SET LHarc.TMP=e:
  440.  
  441.      but the /w switch override the setting.
  442.  
  443.  
  444. 3.  Self-Extracting Files.
  445.  
  446.      If a self-extracting file is executed, then it will try to extract
  447.      all of the archived files into the current directory.  Every
  448.      extracted file has the attribute  20h.  If a file with a name
  449.      of AUTOLARC.BAT exists, this batch file is activated immediately.
  450.  
  451.      It is possible to embed some jokes or even so-called viruses in
  452.      this autolarc.bat file.  The possibility exits even with other SFX
  453.      files from ARC or PKware.  So I have chosen to keep the batch file
  454.      option active in the present version because the world is now
  455.      well-prepared for those tricks.
  456.  
  457.  
  458. 4. Archive file header.
  459.  
  460.      Our header is compatible with that of Larc*.  There are two methods
  461.      of archiving:
  462.  
  463.             -lh0-    stored as it was,
  464.             -lh1-    compressed by LZHuf coding.
  465.  
  466.      Larc archived files with extension .LZS may be un-archived by LHarc,
  467.      if they belong to type 4 and 5.
  468.  
  469.          Note:  Larc is another Japanese archiver with source
  470.                 code published on a Journal.  [It will be
  471.                 uploaded to the American GEnie network soon].
  472.  
  473. 5. Result Codes.
  474.  
  475.      Dos returns the following results codes after batch files.
  476.  
  477.      0  normally finished.
  478.  
  479.      1  Process finished with ignoring the nonexistent filenames in
  480.         archiving.  Or, CRC error occurred during un-archiving.
  481.  
  482.      2  Process terminated by a fatal error.  No archives created nor
  483.         moved.
  484.  
  485.      3  Unable to write in the temporary files into archive.  Work
  486.         file renamed as LHARC.)2(.  Original archive was deleted.  Try
  487.         renaming LHARC.)2( as your archive, although it could be
  488.         damaged.
  489.  
  490.  
  491. 6.Temporary Files.
  492.  
  493.      LHARC.)1(  Old archive file renamed.
  494.      LHARC.)2(  Working file to create new archive file.
  495.  
  496.      LHARC.TMP  Work file to make a list of archived files inside
  497.                 cabinet.
  498.  
  499.      If a file with these names already exists, then the normal
  500.      action of LHarc is not guaranteed.
  501.  
  502.  
  503. 7. My Distribution Policy.
  504.  
  505.  
  506.    Under conditions which follow, you may freely copy and distribute
  507. this software.
  508.  
  509.    1.  Under all circumstances, 'Copyright by Haruyasu Yoshizaki'
  510.        must be attached to the copy.
  511.  
  512.    2.  This manual or its hardcopy should go together with the
  513.        software.
  514.  
  515.    3.  You may modify the program, but in that case, you must
  516.        distribute the complete source code for the program,
  517.        including your contribution, and you must make it clear that
  518.        you have made such modifications.
  519.  
  520.    4.  You must try to distribute the newest version available.
  521.  
  522.    5.  I assume no warranty for the claim of any damage you may
  523.        sustain by using this software.
  524.  
  525.    6.  I have no obligation to revise the program to correct any
  526.        fault in this software.
  527.  
  528.    7.  For the commercial use of this software, I add the following:
  529.  
  530.        a. The entire software made incorporating this program
  531.           should not be copy protected in the sense that
  532.           DISKCOPY command of MS-DOS makes a perfect copy.
  533.  
  534.        b. Every part of the package should print the name LHarc
  535.           and the copyright banner.
  536.  
  537.        c. The distribution policy of this software should be
  538.           printed either in the manual, in the package or on
  539.           the disk-label.
  540.  
  541. 8.  Acknowledgments.
  542.  
  543.     Special gratitude for H.Okumura who uploaded the code for LZARI
  544.     in PCVAN on which this LZHuf coding is based.  To K.Miki, who
  545.     re-posted LZARI to Nifty Serve, and who is the author of Larc I,
  546.     also, express my gratitude.  For those who contributed reports
  547.     and comments and information on bugs, I thank you very much.
  548.  
  549.     The "EXE" file for LHarc is nearly 2 KiloBytes smaller due to
  550.     use of pcs27162 by S. Takanami.  I honor the utility and thank him
  551.     for letting me use it in LHarc.
  552.  
  553.     I have made so many revisions to LHarc, yet I do not think I can
  554.     ever expel all the bugs dwelling inside.  I would appreciate
  555.     your comments and bug reports.  Please route them to me via the
  556.     SDR Forum of Nifty or SALON.PDS of ASCII Net.  [American users
  557.     of GEnie can send messages to the author via K.OKUBO].
  558.  
  559.  
  560. 9.  References.
  561.  
  562.     1) AP-Labo :A Harddisk Cook Book Shouei Press,(1987).
  563.  
  564.     2) Kurita,T:Jewlry Box of Computing 43, Huffman Coding, bit,
  565.        Vol.20, No.7, pp.100-101 (1988).
  566.  
  567.     3) Miki K, Document for Larc : Larc.man (to appear on GEnie).
  568.  
  569.  
  570. 10. History of Revisions.
  571.  
  572.  
  573. Ver. 0.07c
  574.  
  575.      1. Remove bug in detecting memory shortage.
  576.      2. Compacted self-extracting program.
  577.  
  578. Ver. 0.07a
  579.  
  580.      1. Ver. 0.05 ` 0.07 break down Heap areas.  Corrected.
  581.      2. Accept any directory names with any attributes.
  582.  
  583. Ver. 0.07
  584.  
  585.      1. Prohibition of actions to a write-protected archive.
  586.      2. 'm' command now removes files made by older versions.
  587.      3. Error handling routine revised in dealing with wild card
  588.         names for archive files.
  589.      4. No commands specified is now interpreted as l command
  590.         specified.
  591.      5. Error level 1 return when CRC checking detect an error in
  592.         un-archiving.
  593.      6. Program now halts when self-extracting process meets an
  594.         error.
  595.      7. Bug in CRC checking when a directory name is met in
  596.         un-archiving process.
  597.  
  598. Ver. 0.06b
  599.  
  600.      1. Removed possibility of a damaged cluster appearing in
  601.         failing to re-create(=freshen) an archive file.
  602.      2. Remove the "+" bug in redirecting with p command.
  603.  
  604. Ver. 0.06
  605.  
  606.      1. If a file transaction fails with u, m, or f commands, LHarc
  607.         will leave the archive file as it is.
  608.      2. File attributes were misunderstood by f commands sometime.
  609.         Possibility eliminated.
  610.  
  611. Ver. 0.05
  612.  
  613.      1. CRC checks extend to self-extracting files.
  614.      2. Completely recursive modes are made possible for a, u, m
  615.         commands.
  616.      3. Meet append.exe of MS-DOS version 3.3.
  617.      4. You don't have to add \ anymore to the end of working
  618.         directory name.
  619.  
  620. Ver. 0.04
  621.  
  622.      1. Support environmental string 'TMP'.
  623.      2. "LHarc p /v a.LZH a_file" used to delete 'a_file' in
  624.         case of an error.  Bug fixed.
  625.      3. Checks whether there exists a file with same name in making
  626.         a self-extracting file.
  627.      4. In a self-extracting archive file, if a file with the same
  628.         name with larger size exists, then LHarc kept difference
  629.         when overwritten by a smaller file.  This bug removed.
  630.  
  631. Ver. 0.03
  632.  
  633.      1. The environmental variable 'LHARC' sets some of the
  634.         switches.
  635.      2. Made it possible to specify '+', '-' by switches.
  636.      3. /v switch included.
  637.      4. Now wild cards can be used for archive names for explvs
  638.         commands.
  639.      5. Home directory names had some interactions with Kanji-code.
  640.         Fixed.
  641.      6. Fixed header file bugs of self-extracting .EXE files.
  642.  
  643. Ver. 0.02
  644.  
  645.      1. Support of m command.
  646.      2. LArc 3.xx compatibility. Type 4, 5 .LZS files are
  647.         un-archived.
  648.      3. Accept systems with different switch characters.
  649.      4. Minor bugs fixed with e command.
  650.      5. Revised format for l command.
  651.  
  652. Ver. 0.01
  653.  
  654.      1. Support of Self-extracting Files.
  655.      2. p command added.
  656.      3. /c switch applies for more combinations of commands and
  657.         switches.
  658.      4. Error handling revised.
  659.      5. Bug fixed in l command.
  660.      6. New algorithm introduced in sorting path-names.
  661.  
  662. Ver. 1.00
  663.  
  664.      1. Mode without working file added.
  665.      2. /r switch forces /x switch simultaneously.
  666.  
  667.  
  668. 11.Comments:
  669.  
  670. a. Some other algorithms I have in mind.
  671.  
  672.    For some specific files, the compression rates are not as good as
  673. PKware's PKZIP.  For such files, I may use LZSS compression with
  674. correlated arithmetic compression.  This is an effective method and My
  675. experiment shows that the rates are no less than PK's.  Yet, it takes
  676. too much time in both archiving and de-archiving processes, with much
  677. higher memory consumption.  Consequently, I intend to keep on working on
  678. this LZHuf algorithm.
  679.  
  680.    Naturally, I am ready to accept any comments and I continue to experi-
  681. ment.
  682.  
  683.  
  684. b. Naming of LH(arc)
  685.  
  686.    Some people expressed concerns that the string 'arc' is contained in
  687. the name LHarc.  I make the following statements for them.
  688.  
  689.    The crucial point in the case where Sea sued PK, is the way PK
  690. advertised and sold Pk(x)arc with an emphasis on arc-compatibility, with
  691. a certain amount of profits from shareware contributions.
  692.  
  693.    This is not the case with LHarc.  I used a different archiving
  694. method and made it a freeware program with a format not compatible with
  695. ARC.  I hope I will not be bothered by similar accusations.
  696.  
  697.                                 - end -
  698.