home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / utility / archiver / arc602 / arc.doc next >
Text File  |  1989-12-21  |  57KB  |  2,101 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                    ARC
  14.  
  15.                       File Archive Utility
  16.                           Version 6.00
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.                    COPYRIGHT 1985,86,87,88,89
  43.                                by
  44.                System Enhancement Associates, Inc.
  45.                        ALL RIGHTS RESERVED
  46.  
  47.  
  48.  
  49.  
  50.  
  51.      This document describes version 6.00 of the ARC file
  52.      utility, which was created by System Enhancement
  53.      Associates, Inc. in January of 1989.
  54.  
  55.  
  56.        LIMITED WARRANTY
  57.  
  58.  
  59. IMPORTANT NOTICE:IMPORTANT NOTICE: Any use of this software for any
  60. period of time for any purpose whatsoever constitutes
  61. your unqualified acceptance of this LICENSE and
  62. subjects you to all of the terms and conditions set
  63. forth below:
  64.  
  65. System Enhancement Associates, Inc. ("SEA") warrants
  66. to any Licensee that acquires the program from SEA or
  67. an authorized SEA representative ONLY that:
  68.  
  69.  1) All diskettes SEA provides constitute an accurate
  70.     duplication of the software and SEA will replace
  71.     any diskette found to be defective within 30 days
  72.     from date of acquisition.  SEA will not honor this
  73.     warranty if the diskette has been subjected to
  74.     physical abuse, or used in defective or non-
  75.     compatible equipment.
  76.  
  77.  2) SEA's software will perform substantially as
  78.     described in the documentation SEA regularly
  79.     supplies with that software, if operated as
  80.     prescribed in such documentation including the
  81.     hardware and software environment specified.
  82.  
  83.  3) If a significant defect in any program is found,
  84.     Licensee's only remedy shall be to receive refund
  85.     of the actual fee Licensee paid for such defective
  86.     program.  In no event will such a refund exceed
  87.     the fee SEA charges for such program.
  88.  
  89.  4) SEA makes no warranty or representation that the
  90.     software will be error free nor that its use by
  91.     Licensee will be uninterrupted.
  92.  
  93. Except as provided above, SEA disclaims all other
  94. warranties, either express or implied, including but
  95. not limited to any implied warranty of merchantability
  96. or fitness for any particular purpose.
  97.  
  98. Licensee agrees to take full responsibility for the
  99. selection of and any use whatsoever made of the
  100. software.
  101.  
  102. IN NO EVENT WILL SEA BE LIABLE FOR ANY DAMAGES
  103. WHATSOEVER (INCLUDING WITHOUT LIMITATION DAMAGES FOR
  104. LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS
  105. OF BUSINESS INFORMATION OR THE LIKE) ARISING OUT OF
  106. THE USE OF, INTERRUPTION IN THE USE OF, OR INABILITY
  107. TO USE THIS SOFTWARE, EVEN IF SEA HAS BEEN ADVISED OF
  108. ANY POSSIBILITY OR LIKELYHOOD OF SUCH DAMAGES.
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.             TABLE OF CONTENTS
  120.  
  121.  
  122.      _______                                           ____     Section                                           Page
  123.  
  124.      Introduction  ....................................   1
  125.      Using ARC  .......................................   3
  126.      ARC commands  ....................................   5
  127.          Adding files  ................................   5
  128.          Extracting files  ............................   8
  129.          Deleting files  ..............................   9
  130.          Listing archive entries  .....................   9
  131.          Running files  ...............................  12
  132.          Printing files  ..............................  13
  133.          Testing an archive  ..........................  13
  134.          Converting an archive  .......................  14
  135.      ARC options  .....................................  15
  136.          Directories  .................................  15
  137.          Level 5 compatibility  .......................  15
  138.          Verbose mode  ................................  16
  139.          Backup retention  ............................  16
  140.          Suppressing compression  .....................  17
  141.          Message suppression  .........................  18
  142.          Encryption/Decryption  .......................  19
  143.      Indirection  .....................................  21
  144.      RAMdisk support  .................................  22
  145.      Version numbers  .................................  23
  146.      Common questions and answers  ....................  24
  147.      Maintenance contracts  ...........................  26
  148.      Revision history  ................................  27
  149.          Changes in version 5  ........................  27
  150.          Changes in version 5.3  ......................  29
  151.          Changes in version 6.0  ......................  29
  152.      Program history and credits  .....................  31
  153.      Bulletin boards  .................................  33
  154.      Site licenses  ...................................  34
  155.      
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.           BLANK PAGE
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228. ARC                                              Page 0
  229.               INTRODUCTION
  230.  
  231.  
  232.  
  233.      ARC is the copyrighted property of System Enhancement
  234.      Associates, Inc.  You are granted a limited license to
  235.      use ARC, and to copy it and distribute it, provided
  236.      that the following conditions are met:
  237.  
  238.      1) No fee may be charged for such copying and
  239.         distribution.
  240.  
  241.                 ____     2) ARC may only be distributed in its original,
  242.         unmodified state.
  243.  
  244.                 ___     3) ARC may not be distributed, in whole or in part, as
  245.         part of any commercial product or service without
  246.         the express written permission of System
  247.         Enhancement Associates.
  248.  
  249.  
  250.      Contributions for the use of this program will be
  251.      appreciated, and should be sent to:
  252.  
  253.                System Enhancement Associates, Inc.
  254.                   21 New Street, Wayne NJ 07470
  255.  
  256.      You may not use this product in a commercial
  257.      environment or a governmental organization without
  258.      paying a license fee of $35.  Site licenses and
  259.      commercial distribution licenses are available.  A
  260.      program disk and printed documentation are available
  261.      for $50.  See the order form enclosed with this manual
  262.      for more details.
  263.  
  264.  
  265.  
  266.      ARC is user supported software.  This means that you
  267.      may copy it freely and give the copies away to anyone
  268.      you wish, at no cost.  They are in turn requested to
  269.      send in a contribution if they decide to use it.
  270.  
  271.      The user supported software concept (often referred to
  272.         _________     as shareware) is an attempt to provide software at low
  273.      cost.  The cost of offering a new product by
  274.      conventional means is staggering, and hence dissuades
  275.      many independent authors and small companies from
  276.      developing and promoting their ideas.  User supported
  277.      software is an attempt to develop a new marketing
  278.      channel where products can be introduced at low cost.
  279.  
  280.  
  281.  
  282.  
  283.      ARC                                         Page 1
  284. If user supported software works, then everyone will
  285. benefit.  The user will benefit by receiving quality
  286. products at low cost, and by being able to "test
  287. drive" software thoroughly before purchasing it.  The
  288. author benefits by being able to enter the commercial
  289. software arena without first needing large sources of
  290. venture capital.
  291.  
  292. But it can only work with your support.  We're not
  293.                                        ___just talking about ARC here, but about all user
  294. supported software.  If you obtain a user supported
  295. program from a friend or colleague, and are still
  296. using it after a couple of weeks, then it is obviously
  297. worth something to you, and a contribution should be
  298. sent.
  299.  
  300.  
  301.  
  302. And now, back to ARC:
  303.  
  304. ARC is used to create and maintain file archives.  An
  305. archive is a group of files collected together into
  306. one file in such a way that the individual files may
  307. be recovered intact.  ARC automatically compresses the
  308. files being archived so that the resulting archive
  309. takes up a minimum amount of space.
  310.  
  311. When ARC is used to add a file to an archive it
  312. analyzes the file to determine which of three storage
  313. methods will result in the greatest savings.  These
  314. three methods are:
  315.  
  316. 1) No compression; the file is stored as is.
  317.  
  318. 2) Repeated-character compression; repeated sequences
  319.    of the same byte value are collapsed into a three-
  320.    byte code sequence.
  321.  
  322. 3) Dynamic Lempel-Ziv compression;  the file is stored
  323.    as a series of variable size bit codes which
  324.    represent character strings, and which are created
  325.    "on the fly".
  326.  
  327. Note that since one of the three methods involves no
  328. compression at all, the resulting archive entry will
  329. never be larger than the original file.
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338. ARC                                              Page 2
  339.                 USING ARC
  340.  
  341.  
  342.  
  343.      ARC is invoked with a command of the following format:
  344.  
  345.          ARC <x> <arcname> [<template> . . .]
  346.  
  347.      Where:
  348.  
  349.          <x> is an ARC command letter (see below), in
  350.          either upper or lower case.
  351.  
  352.          <arcname> is the name of the archive to act on,
  353.          with or without an extension.  If no extension is
  354.          supplied, then ".ARC" is assumed.  The archive
  355.          name may include path and drive specifiers.
  356.  
  357.          <template> is one or more file name templates.
  358.          The "wildcard" characters "*" and "?" may be used.
  359.          A file name template may include a path or drive
  360.          specifier, though it isn't always meaningful.
  361.  
  362.  
  363.      If ARC is invoked with no arguments (by typing "ARC",
  364.      and pressing "enter"), then a brief command summary is
  365.      displayed.
  366.  
  367.  
  368.  
  369.      Following is a brief summary of the available ARC
  370.      commands:
  371.  
  372.          a   = add files to archive
  373.          m   = move files to archive
  374.          u   = update files in archive
  375.          f   = freshen files in archive
  376.          d   = delete files from archive
  377.          x,e = extract files from archive
  378.          r   = run files from archive
  379.          p   = copy files from archive to standard output
  380.          l   = list files in archive
  381.          v   = verbose listing of files in archive
  382.          t   = test archive integrity
  383.          c   = convert entry to new storage method
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.      ARC                                         Page 3
  394. Following is a brief summary of the available ARC
  395. options, which may alter how a command works:
  396.  
  397.     m   = move files to archive
  398.     z   = include subdirectories in archive
  399.     v   = verbose mode
  400.     b   = retain backup copy of archive
  401.     s   = suppress compression (store only)
  402.     w   = suppress warning messages
  403.     n   = suppress notes and comments
  404.     o   = overwrite existing files when extracting
  405.     5   = produce only level 5 compatable archives
  406.     g   = encode or decode archive entry
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448. ARC                                              Page 4
  449.               ARC COMMANDS
  450.  
  451.  
  452.  
  453.      This section describes each of the commands.  ARC will
  454.      accept any one command at a time.  If no commands are
  455.      given, then a brief command list is displayed.
  456.  
  457.  
  458.  
  459.      ____________     ADDING FILES
  460.  
  461.      Files are added to an archive using the "A" (Add), "U"
  462.      (Update), or "F" (Freshen) commands.
  463.  
  464.      Add always adds the file.
  465.  
  466.      Update differs from Add in that the file is only added
  467.      if it is not already in the archive, or if it is newer
  468.      that the corresponding entry in the archive.
  469.  
  470.      Freshen is similar to Update, except that new files
  471.      are not added to the archive; only files already in
  472.      the archive are updated.
  473.  
  474.  
  475.      For example, if you wish to add a file named
  476.      "TEST.DAT" to an archive named "MY.ARC", you would use
  477.      a command of the form:
  478.  
  479.          ARC a my test.dat
  480.  
  481.      If you wanted to add all files with a ".C" extension,
  482.      and all files named "STUFF" to an archive named
  483.      "JUNK.ARC", you could type:
  484.  
  485.          ARC a junk *.c stuff.*
  486.  
  487.      If you have an archive named "TEXT.ARC", and you
  488.      wanted to add to it all of your files with an
  489.      extension of ".TXT" which have been created or changed
  490.      since they were last archived, then you would type:
  491.  
  492.          ARC u text *.txt
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.      ARC                                         Page 5
  504. If you have a bunch of files in your current
  505. directory, with backup copies being stored in an
  506. archive named "SAFE.ARC", then if you wanted to make
  507. sure that every file in the archive is the latest
  508. version of that file, you would type:
  509.  
  510.     ARC f safe
  511.  
  512.  
  513. A word about Update and Freshen:  These are similar in
  514. that they look at the date and time of last change on
  515. the file, and only add it if the file has been changed
  516. since it was last archived.  They differ in that
  517. Update will add new files, while Freshen will not.
  518.  
  519. In other words, Update looks for the files on disk,
  520. and adds them if they are new or have changed, while
  521. Freshen looks in the archive, and tries to update the
  522. files which are already there.
  523.  
  524.  
  525. The Add, Update, and Freshen commands may be modified
  526. by the "M" (Move) option.  The Move option tells ARC
  527. to delete the file on disk once it is safely tucked
  528. away in the archive.  For example, if you wanted to
  529. move all files in your current directory into an
  530. archive named "SUM.ARC", you could use a command of
  531. the form:
  532.  
  533.     ARC am sum *.*
  534.  
  535. When Move is combined with Update or Freshen, it
  536. deletes the files that are in the archive, even if it
  537. does not need to compress them again.  For example,
  538. suppose you extracted several files from an archive
  539. named "STUFF.ARC" and then made changes to a few of
  540. them.  Now you want to pack away the new versions of
  541. what you changed, and clean up the mess (that is,
  542. delete all the files you extracted).  You can do it
  543. easily by using the command:
  544.  
  545.     ARC fm stuff
  546.  
  547.  
  548. If the Move option is given by itself, it acts like an
  549. "Add and Move".  So in our earlier example of moving
  550. everything in your current directory into an archive
  551. named "SUM.ARC", you could also use the command:
  552.  
  553.     ARC m sum *.*
  554.  
  555.  
  556.  
  557.  
  558. ARC                                              Page 6
  559.      If you don't say which files to add, ARC adds
  560.      everything in your current directory.  So we could
  561.      shorten that to:
  562.  
  563.          ARC m sum
  564.  
  565.  
  566.      Archive entries are always maintained in alphabetic
  567.      order.  Archive entries may not have duplicate names.
  568.      If you add a file to an archive that already contains
  569.      a file by that name, then the existing entry in the
  570.      archive is replaced.  Also, the archive itself and its
  571.      backup will not be added.
  572.  
  573.      You may also add a file which is in a directory other
  574.      than your current directory.  For example, it is
  575.      perfectly legal to type:
  576.  
  577.          ARC a junk c:\dustbin\stuff.txt
  578.  
  579.      You cannot add two files with the same name.  In other
  580.      words, if you have a file named "C:\DUSTBIN\STUFF.TXT"
  581.      and another file named "C:\BUCKET\STUFF.TXT", then
  582.      typing:
  583.  
  584.          arc a junk c:\dustbin\*.* c:\bucket\*.*
  585.  
  586.      will not work.
  587.  
  588.  
  589.      ARC does not save the path name in this case.  In
  590.      other words, if you specify a drive and/or path when
  591.      adding a file, only the actual file name is stored in
  592.      the archive.
  593.  
  594.                   ___     However, you can store a subdirectory in an archive,
  595.      but you have to tell ARC that you want to do that.
  596.      When you add the "Z" option to an Add, Update, or
  597.      Freshen, ARC will store subdirectories and their
  598.      contents in such a way that it can later recreate
  599.      them.
  600.  
  601.      For example, suppose you have a directory name
  602.      C:\WASTE that you wish to place in an archive named
  603.      "TRASHCAN.ARC".  You could do this with the command:
  604.  
  605.          ARC az trashcan c:\waste
  606.  
  607.      This would cause ARC to place the C:\WASTE directory
  608.      (and all of its contents, including any subdirec-
  609.      tories) into the TRASHCAN.ARC archive.  The directory
  610.  
  611.  
  612.  
  613.      ARC                                         Page 7
  614. is stored in such a way that it can be extracted
  615. anywhere.  It could, for example, be extracted as
  616. D:\JUNKYARD\WASTE if you so desired.
  617.  
  618. If you combine the "Z" and "M" options, then the
  619. directories are removed from your disk once they are
  620. safely stored in the archive.
  621.  
  622.  
  623. ARC will not add an archive to itself, nor will it add
  624. the temporary copy or a backup copy of the archive.
  625.  
  626.  
  627. An interesting note:  It has been brought to our
  628. attention that BASIC programs compress to a smaller
  629.                    ___size when they are not tokenized.  If you are more
  630. concerned with space than speed, you may wish to
  631. convert your BASIC programs to ASCII form before
  632. adding them to an archive.  Your BASIC manual should
  633. give instructions on how to do this.
  634.  
  635.  
  636.  
  637. ________________EXTRACTING FILES
  638.  
  639. Archive entries are extracted with the "E" (Extract)
  640. or "X" (eXtract) commands.  For example, if you had an
  641. archive named "JUNK.ARC", and you wanted all files in
  642. it with an extension of ".TXT" or ".DOC" to be
  643. recreated on your disk, you could type:
  644.  
  645.     ARC x junk *.txt *.doc
  646.  
  647. If you wanted to extract all of the files in an
  648. archive named "JUNK.ARC", you could simply type:
  649.  
  650.     ARC x junk
  651.  
  652. Whatever method of file compression was used in
  653. storing the files is reversed, and uncompressed copies
  654. are created in the current directory.
  655.  
  656. You can also specify a path name, in which case the
  657. decompressed copy is placed in the specified
  658. directory.  For example, if you had an archive named
  659. "JUNK.ARC", and you wanted all files in it with an
  660. extension of ".TXT" to be placed in the directory
  661. "C:\WASTE\LAND", then you could type:
  662.  
  663.     ARC x junk c:\waste\land\*.txt
  664.  
  665.  
  666.  
  667.  
  668. ARC                                              Page 8
  669.      If you wanted to put the file "TRASH.TXT" on your A:
  670.      drive, and the file "LITTER.TXT" on your B: drive, you
  671.      could type:
  672.  
  673.          ARC x junk a:trash.txt b:litter.txt
  674.  
  675.      If you give more than one path for a file, then only
  676.      the first one is used.  For example, if you typed:
  677.  
  678.          ARC x junk a:trash.txt b:trash.txt
  679.  
  680.      then TRASH.TXT will be placed on your A: drive.
  681.  
  682.  
  683.  
  684.      ______________     DELETING FILES
  685.  
  686.      Archive entries are deleted with the "D" (Delete)
  687.      command.  For example, if you had an archive named
  688.      "JUNK.ARC", and you wished to delete all entries in it
  689.      with a filename extension of ".C", you could type:
  690.  
  691.          ARC d junk *.c
  692.  
  693.  
  694.  
  695.      _______________________     LISTING ARCHIVE ENTRIES
  696.  
  697.      You can obtain a list of the contents of an archive by
  698.      using the "L" (List) command or the "V" (Verbose list)
  699.      command.  For example, to see what is in an archive
  700.      named "JUNK.ARC", you could type:
  701.  
  702.          ARC l junk
  703.  
  704.      If you are only interested in files with an extension
  705.      of ".DOC", then you could type:
  706.  
  707.          ARC l junk *.doc
  708.  
  709.  
  710.      ARC prints a short listing of an archive's contents
  711.      like this:
  712.  
  713.          Name          Length    Date
  714.          ============  ========  =========
  715.          ALPHA.TXT         6784  16 May 85
  716.          BRAVO.TXT         2432  16 May 85
  717.          COCO.TXT           256  16 May 85
  718.                  ====  ========
  719.          Total      3      9472
  720.  
  721.  
  722.  
  723.      ARC                                         Page 9
  724. "Name" is simply the name of the file.
  725.  
  726. "Length" is the unpacked file length.  In other words,
  727. it is the number of bytes of disk space which the file
  728. would take up if it were extracted.
  729.  
  730. "Date" is the date on which the file had last been
  731. modified, as of the time when it was added to the
  732. archive.
  733.  
  734. "Total" is pretty obvious, I think.
  735.  
  736.  
  737. ARC prints a verbose listing of an archive's contents
  738. like this:
  739.  
  740. Name          Length    Stowage    SF   Size now  Date       Time    CRC
  741. ============  ========  ========  ====  ========  =========  ======  ====
  742. ALPHA.TXT         6784  Crunched   35%      4413  16 May 85  11:53a  8708
  743. BRAVO.TXT         2432  Crunched   41%      1438  16 May 85  11:53a  5BD6
  744. COCO.TXT           256   Packed     5%       244  16 May 85  11:53a  3AFB
  745.         ====  ========            ====  ========
  746. Total      3      9472             27%      6095
  747.  
  748.  
  749. "Name", "Length", and "Date" are the same as for a
  750. short listing.
  751.  
  752. "Stowage" is the compression method used.  The
  753. following compression methods are currently known:
  754.  
  755.        --          No compression.
  756.  
  757.      Packed        Runs of repeated byte values are
  758.                    collapsed.
  759.  
  760.     Crunched       Lempel-Ziv compression technique
  761.                    employed.
  762.  
  763.     Squeezed       Huffman encoding compression
  764.                    technique, as employed by an
  765.                    earlier version of ARC.
  766.  
  767.     Deviant        A nonstandard variant of Lempel-Ziv
  768.                    was employed.  Files compressed
  769.                    with this method should be
  770.                    converted (with the "C" command).
  771.  
  772.     Subdir         A subdirectory.  The files within
  773.                    the subdirectory may be viewed by
  774.                    using the "Z" option.
  775.  
  776.  
  777.  
  778. ARC                                             Page 10
  779.      "SF" is the stowage factor.  In other words, it is the
  780.      percentage of the file length which was saved by
  781.      compression.  The total stowage factor is the stowage
  782.      factor for the archive as a whole, not counting
  783.      archive overhead.
  784.  
  785.      "Size now" is the number of bytes the file is
  786.      occupying while in the archive.
  787.  
  788.      "Time" is the time of last modification, and is
  789.      associated with the date of last modification.
  790.  
  791.      "CRC" is the CRC check value which has been stored
  792.      with the file.  Another CRC value will be calculated
  793.      when the file is extracted or tested to ensure data
  794.      integrity.  There is no especially good reason for
  795.      displaying this value.
  796.  
  797.  
  798.      ARC follows a verbose listing with a report giving the
  799.      overall compression for everything in the archive and
  800.      for anything specific you selected, along with a
  801.      prediction of whether or not the files would fit on
  802.      your disk if you tried to extract them.
  803.  
  804.      For example, if you wanted to know if all of the files
  805.      with an extension of ".TXT" in an archive named
  806.      "WASTE.ARC" would fit on your D: drive, you would give
  807.      the command:
  808.  
  809.          ARC v waste d:*.txt
  810.  
  811.      At the end of the listing ARC would give its
  812.      prediction of whether or not your D: drive has room
  813.      for those files.
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.      ARC                                        Page 11
  834. _____________RUNNING FILES
  835.  
  836. Archive entries may be run without being extracted by
  837. use of the "R" (Run) command.  For example, if you had
  838. an archive named "JUNK.ARC" which contained a file
  839. named "LEMON.COM", which you wished to run, you could
  840. type:
  841.  
  842.     ARC r junk lemon
  843.  
  844. You can run any file from an archive which has an
  845. extension of ".COM", ".EXE", ".BAT", or ".BAS".  You
  846. do not have to specify the extension, but all matching
  847. files are run if you do not.  In other words, if you
  848. had an archive named "JUNK.ARC" which contained the
  849. files "LEMON.COM", "LEMON.EXE", and "LEMON.BAS", and
  850. you typed:
  851.  
  852.     ARC r junk lemon
  853.  
  854. Then all three programs will be run.  You can avoid
  855. this by specifying an extension in this case.
  856.  
  857. You can give arguments to the program you are running
  858. by appending them to the command line.  For example,
  859. if you have an archive named "JUNK.ARC" which contains
  860. a program named "LEMON.COM", and you wanted to run it
  861. giving it the argument "JUICE", you would type:
  862.  
  863.     ARC r junk lemon juice
  864.  
  865. You will need a fair amount of memory to run a program
  866. from an archive.  It probably cannot be done with less
  867. than 256k.
  868.  
  869. In practice, the file to be run is extracted, run, and
  870. then deleted.  In other words, the above example is
  871. equivalent to:
  872.  
  873.     ARC x junk lemon.com
  874.     lemon juice
  875.     erase lemon.com
  876.  
  877. If you have an archive which contains a program that
  878. you will be running often, then you should probably
  879. extract the program from the archive and use it
  880. normally.
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888. ARC                                             Page 12
  889.      ______________     PRINTING FILES
  890.  
  891.      Archive entries may be examined with the "P" (Print)
  892.      command.  This works the same as the Extract command,
  893.      except that the files are not created on disk.
  894.      Instead, the contents of the files are written to
  895.      standard output.  For example, if you wanted to see
  896.      the contents of every ".TXT" file in an archive named
  897.      "JUNK.ARC", but didn't want them saved on disk, you
  898.      could type:
  899.  
  900.          ARC p junk *.txt
  901.  
  902.      If you wanted them to be printed on your printer
  903.      instead of on your screen, you could type:
  904.  
  905.          ARC p junk *.txt >prn
  906.  
  907.  
  908.  
  909.      __________________     TESTING AN ARCHIVE
  910.  
  911.      The integrity of an archive may be tested by use of
  912.      the "T" (Test) command.  This checks to make sure that
  913.      all of the file headers are properly placed, and that
  914.      all of the files are in good shape.
  915.  
  916.      This can be very useful for critical archives, where
  917.      data integrity must be assured.  When an archive is
  918.      tested, all of the entries in the archive are unpacked
  919.      (without saving them anywhere) so that a CRC check
  920.      value may be calculated and compared with the recorded
  921.      CRC value.
  922.  
  923.      For example, if you just received an archive named
  924.      "JUNK.ARC" over a phone line, and you want to make
  925.      sure that you received it properly, you could type:
  926.  
  927.          ARC t junk
  928.  
  929.      It defeats the purpose of the T command to combine it
  930.      with N or W.
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.      ARC                                        Page 13
  944. _____________________CONVERTING AN ARCHIVE
  945.  
  946. The "C" (Convert) command is used to convert an
  947. archive entry to take advantage of newer compression
  948. techniques.  This is occasionally desirable when a new
  949. version of ARC is released.  Please refer to the
  950. revision history section for details on when new
  951. compression methods were implemented.
  952.  
  953. For example, if you had an archive named "JUNK.ARC",
  954. and you wanted to make sure that all files with an
  955. extension of ".DOC" were encoded using the very latest
  956. methods, you could type:
  957.  
  958.     ARC c junk *.doc
  959.  
  960. Or if you wanted to convert every file in the archive,
  961. you could type:
  962.  
  963.     ARC c junk
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998. ARC                                             Page 14
  999.                ARC OPTIONS
  1000.  
  1001.  
  1002.  
  1003.      This section describes the options which are available
  1004.      to modify how ARC works.  Any of these options can be
  1005.      combined with any of the commands, though the result
  1006.      may not always be something you'd want to do.
  1007.  
  1008.  
  1009.  
  1010.      ___________     DIRECTORIES
  1011.  
  1012.      The "Z" option tells ARC that you wish to act on
  1013.      directories as well as files.  When combined with Add,
  1014.      Update, Freshen, or Move it tells ARC to add
  1015.      directories to the archive.  When combined with List
  1016.      or Verbose it tells ARC to list directory contents.
  1017.      (The Extract command will always extract directories,
  1018.      and does not need to be told to do so.)
  1019.  
  1020.      A directory is treated as a unit by ARC.  This means
  1021.      that when you add a directory to an archive you add
  1022.      the whole thing, including all of its files and
  1023.      subdirectories.  Likewise, when you extract a
  1024.      directory from an archive you get all of it.
  1025.  
  1026.      If you wish to make a change to a directory that is in
  1027.      an archive, you should extract it, then make whatever
  1028.      changes you want on disk, and then put the directory
  1029.      back into the archive.
  1030.  
  1031.  
  1032.  
  1033.      _____________________     LEVEL 5 COMPATIBILITY
  1034.  
  1035.      The "5" (level 5 compatibility) option can be combined
  1036.      with any comand that alters an archive.  It tells ARC
  1037.      that the resulting archive should be fully compatible
  1038.      with ARC version 5.  This is mostly necessary for
  1039.      creating archives that are to be extracted on other
  1040.      operating systems where the version of ARC available
  1041.      for that system does not yet support the ARC version 6
  1042.      extensions.
  1043.  
  1044.      When given the level 5 compatibility option, ARC will
  1045.      ensure that the resulting archive does not contain any
  1046.      directories, comments, or any extended data fields for
  1047.      non-MS-DOS operating systems.
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.      ARC                                        Page 15
  1054. ____________VERBOSE MODE
  1055.  
  1056. The "V" (Verbose) option can be used with any command,
  1057. though it isn't always meaningful.
  1058.  
  1059. When used with the List command it causes ARC to
  1060. display a "verbose listing" of the archive contents.
  1061. In fact, this is its most common use, so you can use
  1062. the Verbose option as a command for this purpose.
  1063.  
  1064. When used with any command that creates a new archive
  1065. (generally during an Add or a Move), it tells ARC to
  1066. add a note to the archive saying which version of ARC
  1067. created the archive.  This note is then automatically
  1068. updated every time the archive is modified, and is
  1069. displayed during a verbose listing.
  1070.  
  1071. Normally when ARC adds files to an archive or deletes
  1072. files from an archive it doesn't say anything about
  1073. the files it isn't changing.  When you use the verbose
  1074. option ARC will report them.
  1075.  
  1076.  
  1077.  
  1078. ________________BACKUP RETENTION
  1079.  
  1080. When ARC changes an archive (during an Add, Move,
  1081. Update, Freshen, Delete, or Convert) it creates a new
  1082. archive with the same name, but with an extension of
  1083. ".$$$".  For example, if you add a file to an archive
  1084. named STUFF.ARC, then ARC will create a new archive
  1085. named STUFF.$$$.  ARC will read from your existing
  1086. archive and write out the new archive with any changes
  1087. to the ".$$$" copy.
  1088.  
  1089. Normally when ARC is finished it deletes the original
  1090. and renames the new archive to the original name (ie.
  1091. STUFF.ARC goes away, and STUFF.$$$ becomes the new
  1092. STUFF.ARC).  Among other things, this means that if
  1093. anything goes wrong and ARC is unable to finish, then
  1094. your original archive will still be intact.
  1095.  
  1096.  
  1097. In some circumstances you may wish to retain the
  1098. original version of the archive as a backup copy.  You
  1099. can do this easily by using the Backup option.  Add
  1100. the letter "B" to your command, and ARC will rename
  1101. your original archive to have an extension of ".BAK"
  1102. instead of deleting it.
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108. ARC                                             Page 16
  1109.      In other words, if you wanted to add "WASTE.TXT" to an
  1110.      archive named "JUNK.ARC", but wanted to keep a backup
  1111.      copy, then you would type:
  1112.  
  1113.          ARC ab junk waste.txt
  1114.  
  1115.      Your original archive would become "JUNK.BAK", while
  1116.      "JUNK.ARC" would contain the new "WASTE.TXT" file.
  1117.  
  1118.  
  1119.      If you keep a backup of an archive which already has a
  1120.      backup, then the older backup copy is deleted.
  1121.  
  1122.  
  1123.  
  1124.      _______________________     SUPPRESSING COMPRESSION
  1125.  
  1126.      The "S" (Suppress compression) option can be combined
  1127.      with any command that updates archive entries.  These
  1128.      include Add, Move, Update, Freshen, and Convert.  The
  1129.      effect of the S option is to prevent any compression
  1130.      techniques from being employed.  This is intended to
  1131.      allow you to add a few files at a time to an archive
  1132.      quickly, and then later convert the archive to
  1133.      compress everything at once.
  1134.  
  1135.      For example, over the course of a day you might give
  1136.      each of the following commands:
  1137.  
  1138.          ARC as junk *.txt
  1139.          ARC as junk *.mac
  1140.          ARC as junk *.doc
  1141.  
  1142.      At the end of the day, when you have finished adding
  1143.      things to the archive, you could have all of the
  1144.      archive entries compressed at once by typing:
  1145.  
  1146.          ARC c junk
  1147.  
  1148.      You could also decompress the archive by typing:
  1149.  
  1150.          ARC cs junk
  1151.  
  1152.      though I can't imagine why you'd want to.
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.      ARC                                        Page 17
  1164. ___________________MESSAGE SUPPRESSION
  1165.  
  1166. ARC prints three types of messages: warnings,
  1167. comments, and errors.
  1168.  
  1169. Warnings are messages about suspected error
  1170. conditions, such as when a file to be extracted
  1171. already exists, or when an extracted file fails the
  1172. CRC error check.  Warnings may be suppressed by use of
  1173. the "W" (Warn) command.  You should use this command
  1174. sparingly.  In fact, you should probably not use this
  1175. command at all.
  1176.  
  1177. Comments (or notes) are informative messages, such as
  1178. naming each file as it is added to the archive.
  1179. Comments and notes may be suppressed by use of the "N"
  1180. (Note) command.
  1181.  
  1182. Errors are actual system problems, such as running out
  1183. of disk space.  You cannot suppress errors.
  1184.  
  1185.  
  1186. For example, suppose you extracted all files with an
  1187. extension of ".BAS" from an archive named "JUNK.ARC"
  1188. Then, after making some changes which you decide not
  1189. to keep, you decide that you want to extract them all
  1190. again, but you don't want to be asked to confirm every
  1191. one.  In this case, you could type:
  1192.  
  1193.     ARC xw junk *.bas
  1194.  
  1195. Or, if you are going to add a hundred files with an
  1196. extension of ".MSG" to an archive named "TRASH.ARC",
  1197. and you don't want ARC to list them as it adds them,
  1198. you could type:
  1199.  
  1200.     ARC an trash *.msg
  1201.  
  1202. Or, if you want to extract the entire contents of an
  1203. archive named "JUNK.ARC", and you don't want to hear
  1204. anything, then type:
  1205.  
  1206.     ARC xnw junk
  1207.  
  1208.  
  1209. A special case is provided when extracting files from
  1210. an archive.  One of the various warnings that can
  1211. occur is when a file being extracted already exists on
  1212. disk.  Normally, ARC will stop and ask you if you want
  1213. to overwrite the file.  This can be suppressed with
  1214. the "W" command, but that will also suppress any
  1215.  
  1216.  
  1217.  
  1218. ARC                                             Page 18
  1219.      warnings about other things, like failed CRC checks
  1220.      and such.
  1221.  
  1222.                                            ____     The "O" (Overwrite) option suppresses only the warning
  1223.      that the file already exists.  For example, in our
  1224.      earlier case of extracting all the ".BAS" files from
  1225.      "JUNK.ARC", a much safer way to do it is to type:
  1226.  
  1227.          ARC xo junk *.BAS
  1228.  
  1229.  
  1230.  
  1231.      _____________________     ENCRYPTION/DECRYPTION
  1232.  
  1233.      Archive entries may be encrypted and decrypted by
  1234.      using the "G" (Garble) option.  The Garble option
  1235.      takes the remainder of the command string as the
  1236.                                         ____     password to use, so it must be the last option.
  1237.  
  1238.  
  1239.      For example, if you wanted to add a file named
  1240.      "WASTE.TXT" to an archive named "JUNK.ARC", and you
  1241.      wanted to encrypt it using the password "DEBRIS", then
  1242.      you would type:
  1243.  
  1244.          ARC agdebris junk waste.txt
  1245.  
  1246.      Later on, when you want to extract it again, you would
  1247.      type:
  1248.  
  1249.          ARC xgdebris junk waste.txt
  1250.  
  1251.      The password you supply is used to encrypt (or
  1252.      decrypt) the archive entry by performing an exclusive
  1253.      OR between each byte of the packed data and each byte
  1254.      of the password.  The password can be any length, and
  1255.      each of its bytes is used in rotation.  The password
  1256.      is converted to uppercase before it is used, so it is
  1257.      ___     not case sensitive.  Since the encryption is performed
  1258.      on the packed data, it has no effect on stowage
  1259.      factors.
  1260.  
  1261.      This is not a particularly sophisticated means of
  1262.      encryption.  Still, since it is performed on the
  1263.      packed data, the result should be quite sufficient for
  1264.      casual use.
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.      ARC                                        Page 19
  1274. You can, if you wish, use different passwords for
  1275. different files in an archive, but we advise against
  1276. it.  If you are going to encrypt an archive, we
  1277. suggest you use the same password for every file, and
  1278. give the password whenever you do anything at all with
  1279. the archive.  It is possible to list the entries in an
  1280. encrypted archive using the "L" and "V" commands
  1281. without giving the password, but nothing else will
  1282. work properly.
  1283.  
  1284.  
  1285. We advise that you use this option sparingly, if at
  1286. all.  If you should forget or mistype your password,
  1287. it is highly unlikely that you will ever recover your
  1288. data.
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328. ARC                                             Page 20
  1329.                INDIRECTION
  1330.  
  1331.  
  1332.  
  1333.      The list of filenames given to ARC may include
  1334.      indirect references.  If a filename begins with an "at
  1335.      sign" ("@"), it is taken to be the name of a file
  1336.      which contains a list of file names.  The list of file
  1337.      names may include further indirection.  For example,
  1338.      the command:
  1339.  
  1340.          arc a waste junk.txt @trash
  1341.  
  1342.      would cause ARC to add JUNK.TXT plus all files listed
  1343.      in the file TRASH to an archive named WASTE.ARC.  If
  1344.      no file is specified, then the list is read from
  1345.      standard input.
  1346.  
  1347.      When the N option (suppress Notes) is used with the L
  1348.      (List files) command, it causes a terse listing of
  1349.      filenames only, suitable for use with pipes and
  1350.      redirection.  This can be combined with indirection to
  1351.      easily perform many tasks.
  1352.  
  1353.      For example, the command:
  1354.  
  1355.          arc ln waste | arc a trash @
  1356.  
  1357.      would cause ARC to add files to TRASH.ARC based on the
  1358.      names of the files stored in WASTE.ARC.
  1359.  
  1360.      If by some chance you want to archive a file whose
  1361.                  ____     name really does begin with an at sign, then preceed
  1362.      the name with a forward slash ("/").  For example, to
  1363.      add a file named "@DUST.DAT" to an archive named
  1364.      "TRASHCAN.ARC", you would type:
  1365.  
  1366.          arc a trashcan /@dust.dat
  1367.  
  1368.  
  1369.      The MARC program also allows for indirection.
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.      ARC                                        Page 21
  1384.         RAMDISK SUPPORT
  1385.  
  1386.  
  1387.  
  1388. If you have a RAMdisk, or other high-speed storage,
  1389. then you can speed up ARC somewhat by telling it to
  1390. put its temporary files on the RAMdisk.  You do this
  1391. by setting the ARCTEMP environment string with the
  1392. MS-DOS SET command.  For example, if drive B: is your
  1393. RAMdisk, then you would type:
  1394.  
  1395.     set ARCTEMP=B:
  1396.  
  1397. Refer to the MS-DOS manual for more details about the
  1398. SET command.  You need only set the ARCTEMP string
  1399. once, and ARC will use it from then on until you
  1400. change its value or reboot your system.
  1401.  
  1402.  
  1403. If ARC does not find an environment string named
  1404. ARCTEMP, then it looks for one named TEMP to use
  1405. instead.  Several packages already use the TEMP string
  1406. for exactly this purpose.  If you have need of an
  1407. environment string named TEMP for something else, then
  1408. you should be sure to define ARCTEMP.
  1409.  
  1410.  
  1411. There are a limited number of temporary files created
  1412. by ARC.  The Convert command uses a file named
  1413. "$ARCTEMP.CVT" to hold each file as it is being
  1414. converted.  The Run command also creates a temporary
  1415. file, which has the name "$ARCTEMP", and whose
  1416. extension matches that of the file being run.
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438. ARC                                             Page 22
  1439.              VERSION NUMBERS
  1440.  
  1441.  
  1442.  
  1443.      There seems to be some confusion about our version
  1444.      numbering scheme.  All of our version numbers are
  1445.      given as a number with two decimal places.
  1446.  
  1447.      The units indicate a major revision, such as adding a
  1448.      new packing algorithm.
  1449.  
  1450.      The first decimal place (tenths) indicates a minor
  1451.      revision that is not essential, but which may be
  1452.      desired.
  1453.  
  1454.      The second decimal place (hundredths) indicates a
  1455.      trivial revision that will probably only be desired by
  1456.      specific individuals or by die-hard "latest version"
  1457.      fanatics.
  1458.  
  1459.      ARC also displays its date and time of last edit.  A
  1460.      change of the date and time without a corresponding
  1461.      change in version number indicates a truly trivial
  1462.      change, such as fixing a spelling error.
  1463.  
  1464.  
  1465.      To sum up: If the units change, then you should get
  1466.      the newer version as soon as you can.  If the tenths
  1467.      change, then you may want to get the newer version,
  1468.      but there's no hurry.  If anything else changes, then
  1469.      you probably shouldn't bother.
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.      ARC                                        Page 23
  1494.  COMMON QUESTIONS AND ANSWERS
  1495.  
  1496.  
  1497.  
  1498. Here are some of the more common questions we've
  1499. received about ARC, along with their answers:
  1500.  
  1501.  
  1502. Q: Why does ARC run out of room if I make an archive
  1503.    bigger than about 180k?
  1504.  
  1505. A: Because you are working on a floppy disk.  ARC
  1506.    creates a copy of your archive, incorporating any
  1507.    new files as it goes.  When it is done, it deletes
  1508.    the original and renames the new one.  There are a
  1509.    number of reasons for doing it this way, one being
  1510.    that your original archive is still intact if
  1511.    anything happens while ARC is running.
  1512.  
  1513.    You can save some space by using drive specifiers
  1514.    and having the archive and the files to add on
  1515.    separate disks, but you still won't be able to make
  1516.    an archive larger than about 180k.  If you need to
  1517.    make a larger archive, and if you have a fixed
  1518.    disk, then you can create the archive on the fixed
  1519.    disk and then copy it to the floppy.
  1520.  
  1521.  
  1522. Q: I've seen an ARC.COM and an ARC.EXE.  Which one is
  1523.    the right one?
  1524.  
  1525. A: ARC.EXE.  One or more people have been running ARC
  1526.    through a utility that converts an ".EXE" file to a
  1527.    ".COM" file.  But this utility is designed to save
  1528.    _____   space, not speed.  On ARC it saves about 250 bytes,
  1529.    and makes no measurable difference in program
  1530.    speed.  We've decided that the savings are not
  1531.    worth the extra step in development in this case.
  1532.  
  1533.  
  1534. Q: How can I get the latest version of ARC?
  1535.  
  1536. A: ARC updates are distributed through normal
  1537.    shareware channels.  We also ship a program update
  1538.    disk on every order of $50 or more.  Also, please
  1539.    refer to the next section for information about our
  1540.    maintenance contracts.
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548. ARC                                             Page 24
  1549.      Q: Can I distribute my public domain or shareware
  1550.         program in an ARC format archive?
  1551.  
  1552.      A: Yes, of course.
  1553.  
  1554.  
  1555.      Q: Can I use ARC to distribute my commercial software
  1556.         package?
  1557.  
  1558.      A: Yes, provided that you obtain a commercial
  1559.         distribution license from us.  Please contact us
  1560.         for details.
  1561.  
  1562.  
  1563.      Q: Why not allow me to select which method of
  1564.         compression I want ARC to use?
  1565.  
  1566.      A: It would needlessly complicate ARC, both internally
  1567.         and in use.  The exact nature of the compression
  1568.         methods used are complex, and quite different.  The
  1569.         only sure way to tell which will be best in any
  1570.         given case is to analyze the data, as ARC does.
  1571.         The method chosen may not always be what you
  1572.         expect.
  1573.  
  1574.  
  1575.      Q: ARC keeps giving me an odd error message.  It says
  1576.         "Drive not ready.  Abort, Retry, Ignore?"  What
  1577.         does this mean?
  1578.  
  1579.      A: Close the latches ("doors") on your floppy disk
  1580.         drives, then press the "R" key.
  1581.  
  1582.  
  1583.      Q: How can I tell ARC to make an archive that goes on
  1584.         more than one floppy disk?
  1585.  
  1586.      A: Create the archive on your fixed disk, and then use
  1587.         the BACKUP command (or other backup utility).
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.      ARC                                        Page 25
  1604.      MAINTENANCE CONTRACTS
  1605.  
  1606.  
  1607.  
  1608. Registered users of ARC receive 30 days of telephone
  1609. support at no extra charge.  If you wish, you can
  1610. extend this by purchasing a maintenance contract.
  1611.  
  1612. A maintenance contract costs $50 per year.  In
  1613. addition to telephone support you also receive free
  1614. updates to ARC as soon as they are available, and a
  1615.                      ______ _____free subscription to Making Waves, the SEA customer
  1616. support newsletter.
  1617.  
  1618.  
  1619.  
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.  
  1658. ARC                                             Page 26
  1659.             REVISION HISTORY
  1660.  
  1661.  
  1662.  
  1663.      ____________________     CHANGES IN VERSION 5
  1664.  
  1665.      The Move command used to delete the files as it went.
  1666.      It now waits until it is finished updating the
  1667.                                                   ___     archive, and deletes them all at once.  (You did know
  1668.      that Move is just an Add where the file gets deleted,
  1669.      didn't you?)  This, along with the changes made in
  1670.      version 4.5, means that it is now much safer to
  1671.      interrupt ARC while it is working.
  1672.  
  1673.      The Print command no longer prints the name of each
  1674.      file.  Instead, it prints a formfeed after each file.
  1675.  
  1676.      The Run command now supports BASICA programs.  Also,
  1677.      the filename extension is no longer required on the
  1678.      Run command.
  1679.  
  1680.      The Garble option was added.  It provides a convenient
  1681.      means of low level data security for the casual user.
  1682.      Use it sparingly, if at all.
  1683.  
  1684.      ARC no longer tests for the presence of $ARCTEMP.CRN
  1685.      before creating a new one.  If you interrupt ARC a
  1686.      lot, you'll find this much more convenient.  If you
  1687.      happen to have a file named $ARCTEMP.CRN which you
  1688.      want to keep, too bad.
  1689.  
  1690.      Improved error recovery was added when reading an
  1691.      archive.  ARC now has a good chance of recovering the
  1692.      data from a corrupted archive (the corrupted entry is
  1693.      still lost, of course).
  1694.  
  1695.      Path support has been added for all commands, though
  1696.      it doesn't do anything on most of them.  For example,
  1697.      there isn't much we can do with a path in the List
  1698.      command.  But many users will be glad to know that a
  1699.      path can be used when extracting a file, and specifies
  1700.      where the file is to be placed.
  1701.  
  1702.      Support for the TEMP environment string was added.  If
  1703.      ARC doesn't find an environment string named ARCTEMP,
  1704.      then it looks for one named TEMP to use instead.
  1705.      Several packages already use the TEMP string for
  1706.      exactly this purpose.
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.  
  1713.      ARC                                        Page 27
  1714. ARC is now using a different variation of Lempel-Ziv
  1715. coding, courtesy of Kent Williams, who found it on
  1716. USENET and adapted it to the IBM PC.  The new method
  1717. differs from the old in several respects.  The most
  1718. significant differences are:
  1719.  
  1720. 1) Where our previous implementation used a fixed code
  1721.    size of twelve bits, the new one starts with a code
  1722.    size of nine bits and increases it as it needs to.
  1723.  
  1724. 2) The earlier method tended to "choke" on large files
  1725.    when its string table filled up.  The new method
  1726.    has a rather ingenious scheme its authors call
  1727.    ______________   adaptive reset.  When it notices that its string
  1728.    table has filled, and its compression ratio is
  1729.    starting to suffer, it clears the table and starts
  1730.    defining new strings.
  1731.  
  1732. The previous implementation of Lempel-Ziv coding is no
  1733. longer used to pack files.  The "V" (Verbose listing)
  1734. command distinguishes between the two by referring to
  1735. the older method as "crunched" (with a lower-case
  1736. "c"), and the newer method as "Crunched" (with a
  1737. capital "C").
  1738.  
  1739. Rick Moore discovered that ARC was occasionally adding
  1740. an archive to itself.  This would only happen when the
  1741. archive is in the same directory as the files being
  1742. added, and its name comes last.  This bug has been
  1743. fixed, though it is still possible to fool ARC into
  1744. adding an archive to itself by getting tricky with
  1745. path names.
  1746.  
  1747. Dana Montgomery found the upper limit on how many
  1748. files can be added to an archive.  There's always been
  1749. an upper limit, but it depends on memory, and used to
  1750. be larger than anyone could possibly want (knock on
  1751. wood).  However, the added memory requirements as of
  1752. version 5.0 lowered this limit into the realm of
  1753. possibility, somewhere around 300 files.  We change
  1754. some things around, and effectively, there is no
  1755. longer a limit on how many files you can add at once.
  1756. ARC will add the files in batches of as many as it can
  1757. handle at one time.
  1758.  
  1759. The Run command has been modified to allow passing
  1760. command line arguments to the program being run.
  1761.  
  1762. Indirection was added, and the List command was
  1763. modified to give a terse listing suitable for use with
  1764. indirection when the N option is employed.
  1765.  
  1766.  
  1767.  
  1768. ARC                                             Page 28
  1769.      A bug was found that would keep an archive entry from
  1770.      being encrypted if it was stored without compression.
  1771.      This has now been fixed.
  1772.  
  1773.      If changes are made to a corrupted archive, the
  1774.      corrupted entries are discarded.  This makes it
  1775.      possible to lose data accidentally.  ARC will now only
  1776.      make changes to a corrupted archive if the W (suppress
  1777.      Warnings) option has been given.
  1778.  
  1779.      Support for a nonstandard variation of Lempel-Ziv was
  1780.      added.
  1781.  
  1782.      Two new utilities, SCANDISK and SQDIR, were added to
  1783.      the ARC program disk.  Full program sources for both
  1784.      are included in UNDEL.ARC on the ARC source disk.
  1785.  
  1786.  
  1787.  
  1788.      ______________________     CHANGES IN VERSION 5.3
  1789.  
  1790.      A minor bug caused earlier versions of ARC to output
  1791.      an extra carriage return on an end of line when
  1792.      dumping text to standard output with the "P" command.
  1793.      This has now been fixed.
  1794.  
  1795.      Greatly enhanced error recovery has been added to deal
  1796.      with corrupted or partially damaged archives.  The
  1797.      corrupted data itself is still lost, of course, but
  1798.      ARC will recover everything possible.
  1799.  
  1800.      ARC has been fully ported to Microsoft C version 5.1.
  1801.      This has resulted in a small speed improvement, and
  1802.      should make it easier to port ARC to other operating
  1803.      systems.
  1804.  
  1805.      A new utility, MKSARC, was added to the ARC program
  1806.      disk.  Regretfully, we cannot release the program
  1807.      sources for MKSARC.
  1808.  
  1809.  
  1810.  
  1811.      ______________________     CHANGES IN VERSION 6.0
  1812.  
  1813.      Version 6.0 is a major upgrade for ARC.  It is a
  1814.      substantial rewrite that greatly improves overall
  1815.      performance.  ARC is now as fast as any comparable
  1816.      program, or faster.  The changes are primarily in
  1817.      internal organization of the code, so that versions
  1818.      ported to other operating systems should experience a
  1819.      substantial performance boost as well.
  1820.  
  1821.  
  1822.  
  1823.      ARC                                        Page 29
  1824. We've also added support for directories, allowing
  1825. entire directory trees to be added or moved into an
  1826. archive, and later extracted.
  1827.  
  1828. We've also designed and implemented a method whereby
  1829. versions of ARC ported to other operating systems can
  1830. record system-specific information in a compatible
  1831. manner.  This includes provisions for longer
  1832. filenames, more date/time stamps, and even icon
  1833. bitmaps.  Contact us for details or see the comments
  1834. in the ARC sources if you are interested in using this
  1835. capability in a version of ARC for a different
  1836. operating system.
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878. ARC                                             Page 30
  1879.        PROGRAM HISTORY AND CREDITS
  1880.  
  1881.  
  1882.  
  1883.      In its short life thus far, ARC has astounded us with
  1884.      its popularity.  We first wrote it in March of 1985
  1885.      because we wanted an archive utility that used a
  1886.      distributive directory approach, since this has
  1887.      certain advantages over the then popular central
  1888.      directory approach.  We added automatic squeezing in
  1889.      version 2 at the prompting of a friend.  In version
  1890.      2.1 we added the code to test for the best compression
  1891.      method.  In less than a year we found that our humble
  1892.      little program had spread across the country, and
  1893.      seems to have become a new institution.
  1894.  
  1895.      We are thankful for the support and appreciation we
  1896.      have received.  We hope that you find this program of
  1897.      use.
  1898.  
  1899.  
  1900.      If we have achieved greatness, it is because we have
  1901.      stood upon the shoulders of giants.  Nothing is
  1902.      created as a thing unto itself, and ARC is no
  1903.      exception.  Therefore, we would like to give credit to
  1904.      the following people, without whose efforts ARC could
  1905.      not exist:
  1906.  
  1907.  
  1908.      Brian W. Kernighan and P. J. Plauger, whose book
  1909.      "Software Tools" provided many of the ideas behind the
  1910.      distributive directory approach used by ARC.
  1911.  
  1912.      Dick Greenlaw, who wrote the public domain SQ and USQ
  1913.      programs, in which the Huffman squeezing algorithm was
  1914.      first developed.
  1915.  
  1916.      Kent Williams, who graciously allowed us to use his
  1917.      LZWCOM and LZWUNC programs as a basis for our Lempel-
  1918.      Ziv compression logic, and who continues to make
  1919.      valuable contributions.
  1920.  
  1921.      David Schwaderer, whose article in the April 1985
  1922.      issue of PC Tech Journal provided us with the logic
  1923.      for calculating the CRC 16 bit polynomial.
  1924.  
  1925.      Terry A. Welch, whose article "A Technique for High
  1926.      Performance Data Compression", IEEE Computer Vol 17 No
  1927.      6 (June 1984) seems to have started all the research
  1928.      on Lempel-Ziv coding.
  1929.  
  1930.  
  1931.  
  1932.  
  1933.      ARC                                        Page 31
  1934. Spencer W. Thomas, Jim McKie, Steve Davies, Ken
  1935. Turkowski, James A.  Woods, and Joe Orost, who are the
  1936. authors of the UNIX compress utility.
  1937.  
  1938. Karl Schinke, who is the friend that suggested that we
  1939. add compression to ARC.
  1940.  
  1941. Alex Jacobs, who in June of 1985 sent us the very
  1942. first shareware contribution we ever received.
  1943.  
  1944.  
  1945. And many, many others whom we could not identify.
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  
  1952.  
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988. ARC                                             Page 32
  1989.              BULLETIN BOARDS
  1990.  
  1991.  
  1992.  
  1993.      ARC is distributed mainly through shareware channels.
  1994.      Among other things, this means that ARC is available
  1995.      from many bulletin board systems.  In fact, the system
  1996.      operators (sysops) of many bulletin boards have taken
  1997.      to storing almost all of their downloadable files in
  1998.      archives to save themselves disk space and to save
  1999.      their users time.
  2000.  
  2001.      This also makes things more convenient for the
  2002.      bulletin board users, since one archive may contain
  2003.      several programs, any related data files, and the
  2004.      documentation.  Many shareware authors have taken to
  2005.      distributing their software in archives to help ensure
  2006.      that the users receive everything.
  2007.  
  2008.      Obviously, we can't do that with ARC.  As a result,
  2009.      many of our users have ARC, but don't have the manual.
  2010.      Most of our customer support calls come from people
  2011.      who have never seen the manual, and in many cases
  2012.      didn't even know that one exists!
  2013.  
  2014.      To solve this problem we developed what is in essence
  2015.      a self-unpacking archive.  We distribute this as
  2016.      "ARCxxx.EXE", where "xxx" is the current version
  2017.      number.  For example, ARC version 6.00 would be
  2018.      distributed as "ARC600.EXE".  This program, when run,
  2019.      unpacks itself into a copy of ARC plus its
  2020.      documentation.
  2021.  
  2022.      Now that we've gone to all that work, we'd really
  2023.      appreciate it if you would use this program when you
  2024.      distribute ARC.
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.      ARC                                        Page 33
  2044.          SITE LICENSES
  2045.  
  2046.  
  2047.  
  2048. Corporate users may wish to obtain a site license for
  2049. the use of ARC.  Please use the order form in this
  2050. manual to order a site license.  Site licenses are
  2051. granted as of when we receive your payment.  License
  2052. fees vary depending on the number of computers on
  2053. which ARC will be used, as follows:
  2054.  
  2055.  
  2056.              1 machine            $50
  2057.      2  to   9 machines           $35 per machine
  2058.     10  to  24 machines           $25 per machine
  2059.     25  to  49 machines           $20 per machine
  2060.     50 or more machines           $15 per machine
  2061.  
  2062.     100 or more machines at one location    $1500
  2063.  
  2064.  
  2065.  
  2066. Enclosed is a site license agreement, which should be
  2067. signed and sent with your payment when ordering a
  2068. commercial site license.
  2069.  
  2070.  
  2071. A commercial site license does not include additional
  2072. copies of the ARC program disk and the ARC manual.
  2073. Instead, you make your own copies of the disk and
  2074. manual as you need them.  If you wish, you can order
  2075. additional program disks and manuals from us.
  2076.  
  2077.  
  2078.  
  2079.  
  2080.  
  2081.  
  2082.  
  2083.  
  2084.  
  2085.  
  2086.  
  2087.  
  2088.  
  2089.  
  2090.  
  2091.  
  2092.  
  2093.  
  2094.  
  2095.  
  2096.  
  2097.  
  2098. ARC                                             Page 34
  2099.  
  2100.  
  2101.