home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April (Special) / Chip-Special_1997-04_cd.bin / sonstige / arj250 / arj.doc < prev    next >
Text File  |  1995-10-30  |  169KB  |  4,287 lines

  1.  
  2.      User's Manual for the ARJ archiver program,              October 1995
  3.  
  4.  
  5.  
  6.         ARJ software and manual copyright (c) 1990-95 by Robert K Jung.
  7.     All rights reserved.
  8.  
  9.         ARJ version 2.50 release
  10.  
  11.  
  12.  
  13.      ** IMPORTANT NEWS ****************************************************
  14.  
  15.     Users of ARJ should read the WHATSNEW.DOC and UPDATE.DOC files
  16.     that contain information about the latest improvements to ARJ.
  17.  
  18.      **********************************************************************
  19.  
  20.  
  21.  
  22.      TOPICS COVERED IN THIS DOCUMENT
  23.      -------------------------------
  24.  
  25.      DEDICATION
  26.      INTRODUCTION
  27.      TERMINOLOGY
  28.      MAJOR FEATURES OF ARJ
  29.      ARCHIVER BENCHMARKS
  30.      RELEASE NOTES
  31.      TECHNICAL NOTES
  32.      ARJR AND DEARJ PROGRAMS
  33.      INSTALLATION
  34.      QUICK START TO USING ARJ
  35.      HOW TO CREATE AN EXECUTABLE SELF-EXTRACTING ARJ ARCHIVE
  36.      CONVERTING OTHER ARCHIVE FILES TO ARJ FORMAT
  37.      HOW TO USE ARJ
  38.      ARJ LIMITATIONS
  39.      IMPORTANT DIFFERENCES BETWEEN ARJ AND LHARC:
  40.      IMPORTANT NOTES
  41.      TIPS TO USING ARJ EFFICIENTLY
  42.      USING ARJ WITHIN OTHER PROGRAMS
  43.      ARJMENU PROGRAM
  44.      USING ARJ AS A BACKUP PROGRAM
  45.      BACKUP TYPE ARCHIVES AND BACKUP FILES
  46.      THE FILESPEC "..."
  47.      ARJ ERROR SITUATIONS
  48.      ARJ DOS ERRORLEVELS
  49.      ARJ USER ACTION PROMPTS
  50.      ARJ ENVIRONMENT VARIABLE
  51.      ARJ COMMAND LINE SYNTAX
  52.      ARJ RESPONSE FILE SYNTAX:
  53.      ARCHIVE NAME WILDCARDING
  54.      ARJ COMMANDS
  55.      ARJ SWITCH OPTIONS
  56.      ARJ COMMAND OPTIONS
  57.      SAMPLE ARJ COMMANDS
  58.      ARJ_SECURITY ENVELOPE
  59.      KNOWN ARJ ISSUES/PROBLEMS
  60.      ARJ ERROR MESSAGES
  61.      COMMONLY ASKED QUESTIONS
  62.      ARJ TECHNICAL SUPPORT
  63.      ARJ AVAILABILITY
  64.      ARJ INTERNET MAILING LIST
  65.      ARJ WEB SUPPORT
  66.      SDN EXTENSION FILES
  67.      DISTRIBUTORS
  68.      ACKNOWLEDGEMENTS
  69.      USAGE AND DISTRIBUTION POLICY
  70.      BRIEF BIOGRAPHY OF ARJ AUTHOR:
  71.      FINAL COMMENTS
  72.  
  73.  
  74.  
  75.      DEDICATION:
  76.  
  77.     The ARJ program is dedicated to God and to my family.
  78.  
  79.  
  80.      INTRODUCTION:
  81.  
  82.  
  83.     ARJ is the result of a desire to use my interest in compression
  84.     technology to produce an archiver for personal use on PCs and on
  85.     minicomputers that provides power and excellent flexibility.
  86.  
  87.     I expect to continue to improve ARJ in speed, compression, and
  88.     features.
  89.  
  90.     There are plans to port versions of ARJ to other platforms in the
  91.     future pending sufficient time and funding.
  92.  
  93.         This document is designed as an ARJ program reference manual and
  94.         is not appropriate for novices to ARJ.  The file named INTRO.DOC
  95.         is aimed at novices.
  96.  
  97.         Please note that the shareware versions of the ARJ programs may be
  98.         limited in functionality.  See the UPDATE.DOC for more information.
  99.  
  100.  
  101.      TERMINOLOGY:
  102.  
  103.     The following terms are used through this manual.
  104.  
  105.     ARCHIVE - This is a file containing one or more files in a
  106.     compressed or non-compressed state and containing file related
  107.     information such as filename and date-time last modified, etc.
  108.  
  109.     ARJ FILE - This is an archive created by ARJ, sometimes called an
  110.     arjive in slang terminology.
  111.  
  112.     BACKUP TYPE ARCHIVE - This is an ARJ archive that has the internal
  113.     backup flag turned on.    This causes all current and future updates
  114.     to the archive NOT to overwrite internal files in the archive when
  115.     adding files with the same names as ones already in the archive.
  116.     The older duplicate files in the archive will be marked as backups.
  117.  
  118.     COMPRESSION - The process of encoding redundant information into
  119.     data requiring less storage space.
  120.  
  121.     COMPRESSION PERCENTAGE/RATIO - The percentage compression reported
  122.     by ARJ is a variation of one of the TWO standard methods of
  123.     expressing compression ratio in the technical literature.  ARJ uses
  124.     the compressed size / original size ratio.  The other method is the
  125.     inverse ratio.    When ARJ reports 96% as the compression ratio, which
  126.     means that the compressed file is 96 percent of the original size
  127.     (very little compression).  Other archivers use their own methods.
  128.     LHARC uses the same ratio as ARJ.
  129.  
  130.         EXTRACTION or UNCOMPRESSION - The processing of recreating the
  131.     exact information that was previously compressed.
  132.  
  133.     SELF-EXTRACTION MODULE (SFX) - This is an archive that is an
  134.     executable file that is capable of extracting self-contained files.
  135.  
  136.     TEXT MODE - In text mode, ARJ inputs the file using the C library
  137.     text mode which translates the carriage return, linefeed control
  138.     characters of MS-DOS to a single linefeed character.  This saves
  139.     space and provides the option for cross platform file extraction.
  140.     On another platform, the host C library would change the single
  141.     linefeed to the host text newline separator sequence.  In addition,
  142.     for platforms such as PRIMOS which set bit 8 in ASCII text
  143.     characters, ARJ sets/resets bit 8 according to the platform
  144.     extracted to.  When extracting a text mode file to the same type
  145.     of platform archived from, ARJ will NOT strip the 8-bit text to
  146.     7-bit text.
  147.  
  148.     VOLUMES - These are ARJ archives that are in sequence and have been
  149.     created by a single ARJ command.  Files in the volumes may span
  150.     volumes in a split format.  These volumes are usable archives.
  151.  
  152.  
  153.      MAJOR FEATURES OF ARJ:
  154.  
  155.     Currently ranks as one of the best in compression in terms of size
  156.     reduction of the currently available archivers including PKZIP
  157.     1.10, PKZIP 2.04, PAK 2.51, ARC 7.0 (ARC PLUS), LHARC 1.13c, LHA
  158.     2.13 and the new ZOO 2.10.  ARJ is particularly effective with
  159.     database files and documents.
  160.  
  161.         The ability to process and archive up to 32,000 files at one time.
  162.  
  163.         Archive and individual file comments with the option of
  164.     inputting comments from a file.
  165.  
  166.     ARJ has MS-DOS 3.x international language support for the proper
  167.     casing of filenames and text.
  168.  
  169.         The ability to put the entire ARJ command line in a response type
  170.         file as in "ARJ @command.rsp".
  171.                                       
  172.         32 bit CRC file integrity check.
  173.  
  174.     DOS volume label support.
  175.  
  176.     Default storing of specified pathnames to allow recovery of a
  177.     directory structure.
  178.  
  179.     Empty directory support.
  180.  
  181.     File generation archive support where ARJ will allow the user to
  182.     keep several versions of the same file in an archive.
  183.  
  184.     Test new archive before overwriting the original archive option.
  185.  
  186.     Archives that can span diskettes.  This allows the user to backup
  187.     a full hard disk drive to multiple floppies.  Recovery of
  188.     individual files is convenient because each diskette archive is an
  189.     individual archive except for the split file portion.  No need to
  190.     use SLICE with ARJ.  In addition, ARJ in disk spanning mode can
  191.     support the use of 3.5 HD diskettes formatted at higher capacities
  192.     than 1.44 MBytes.  Moreover, ARJ can build these disk spanning
  193.     archives on the hard disk drive for later transfer to diskettes.
  194.  
  195.     Archive file re-ordering facility with the option of sorting by
  196.     file size, file extension, CRC value, date-time modified, filename,
  197.     pathname, compression ratio, file attribute and more.
  198.  
  199.     String searching with context display within archive files.
  200.  
  201.     Built-in facility to recover files from broken archives.
  202.  
  203.     Self-extraction feature that is internal to the ARJ runfile.  The
  204.     SFX module is full-featured with a built-in help screen.  ARJ also
  205.         includes a smaller SFXJR module with fewer features.
  206.  
  207.         Multiple volume self-extracting archives.
  208.  
  209.         The ability to embed command line type options inside
  210.         self-extracting archives.
  211.  
  212.         Internal string data integrity check in ARJ to resist hacking a la
  213.     LHARC to ICE.
  214.  
  215.         Archive security envelope "seal" feature to resist tampering with
  216.         secured archives.  This feature disallows ANY changes to a secured
  217.         archive. Even the archive comments can NOT be changed without
  218.         removing the "seal".
  219.  
  220.     Password option to encrypt archived files.
  221.  
  222.     Text mode data compression option to enable movement of text files
  223.     from one host machine to another.  Text mode also results in
  224.     slightly greater file size reduction on MS-DOS machines.
  225.  
  226.     File extraction to screen in a paged mode to permit browsing
  227.     through an archive.
  228.  
  229.     Specification of the files to be added to or exclude from an
  230.     archive via one or more list files.  In addition, ARJ can generate
  231.     a list file.
  232.  
  233.     Specification of files to be excluded from processing by ARJ.
  234.  
  235.     Sub-directory recursion during compression and extraction.
  236.  
  237.  
  238.      ARCHIVER BENCHMARKING:
  239.  
  240.     This is information for those who plan to publish benchmark test
  241.     results comparing ARJ with other file archivers.
  242.  
  243.     The ARJ -jm compression is intended to demonstrate the best that
  244.     ARJ can do in terms of size reduction.    However, the ARJ -jm1
  245.     compression is almost as good in terms of size reduction.  The ARJ
  246.     -m2 compression is intended to compete with LHA 2.12.  The ARJ -m3
  247.     compression is intended to compete with PKZIP 1.10.
  248.  
  249.     The ARJ -e option is necessary during size benchmarks because ARJ
  250.     by default stores the entire specified pathname in the archive as
  251.     opposed to other archivers which strip path specs.
  252.  
  253.     The very size of the ARJ runfile adds significantly to the
  254.     compression and extraction times when testing smaller archives.
  255.  
  256.  
  257.      RELEASE NOTES:
  258.  
  259.     The use of ARJ in a business, commercial, institutional, or
  260.     government environment requires a license.  However, business,
  261.     commercial, institutional and government users may use ARJ for
  262.     evaluation purposes for a period of 30 days.  See the LICENSE.DOC
  263.     for full details.
  264.  
  265.     The inclusion of any of the ARJ software (ARJ, ARJR, DEARJ,
  266.     ARJSFX, ARJSFXJR, REARJ) with software and/or hardware for
  267.     distribution requires a license.
  268.  
  269.     While evaluating ARJ, you should use the "-jt" (test archive)
  270.     option to verify new ARJ archives of your data.
  271.  
  272.     This version has been tested under DOS 2.11, 3.3, 4.01, 5.0, and
  273.     DOS 6.0.  It also runs under the DOS windows of Windows 3.x and
  274.     OS/2 2.0.
  275.  
  276.     Here is a suggested command that will test ARJ on all of your files:
  277.  
  278.     ARJ a testvol c:\ "-v360sdel testvol.*" -xtestvol.* -y -jf -jt1 -r
  279.  
  280.  
  281.      TECHNICAL NOTES:
  282.  
  283.     A detailed technical description of the ARJ archive format is
  284.     available in the UNARJ distribution archive.  This archive
  285.     contains a description of the archive header formats as well as C
  286.     source code for an ARJ archive extractor and lister program.  This
  287.     source code has been made portable to several platforms including
  288.     UNIX, NEXT, DOS, and AMIGA.
  289.  
  290.  
  291.      ARJR, DEARJ, and REARJ PROGRAMS:
  292.  
  293.     The new programs ARJR and DEARJ are available to registered and
  294.     licensed users of ARJ.    ARJR is the ARJ program without the help
  295.     screen and SFX modules.  DEARJ is the ARJR program without the
  296.     archive creation/modification functions, the "w" command, and
  297.     the "-jt1" and "-jt2" switches.
  298.  
  299.     There are two versions of REARJ, the shareware version and the
  300.     registered version.  The registered version contains a number of
  301.     additional enhancements including environment variable usage,
  302.     !listfile capability and selection by file date-time.
  303.  
  304.     See the LICENSE.DOC and ORDERFRM.DOC for more information.
  305.  
  306.     UNARJ and DEARJ are NOT the same program.
  307.  
  308.  
  309.      INSTALLATION:
  310.  
  311.     I assume that you have a copy of the self-extracting ARJ module
  312.     named ARJ###.EXE where "###" represents the ARJ version number.
  313.     Typing ARJ### [RETURN] at the DOS command prompt will initiate the
  314.     self-extraction feature.  ARJ### will by default extract its files
  315.     to the current directory.  When ARJ### starts, you will see
  316.     several lines of text describing ARJ and then a line asking if you
  317.     wish to continue extraction.  Entering "yes" or "y" will continue
  318.     the extraction.  If there are any duplicate filenames in the
  319.     current directory, the program will prompt you for overwriting.
  320.     You can enter "yes", "no", or "quit".
  321.  
  322.     To install the ARJ software, simply copy ARJ.EXE, REARJ.EXE,
  323.     REARJ.CFG, and ARJSORT.COM to one of the directories named in the
  324.     DOS PATH statement found in your AUTOEXEC.BAT.    On many PCs, this
  325.     directory may be C:\DOS or C:\BIN.  With MS-DOS 3.0 and above, you
  326.     can use path notation "\BIN\ARJ e archive" to use ARJ.
  327.  
  328.     You may, of course, prefer to use ARJ 1.00 or higher to extract
  329.     the contents of ARJ###.EXE file manually.
  330.  
  331.     Example:  ARJ e ARJ###.EXE \temp\
  332.  
  333.  
  334.      QUICK START TO USING ARJ:
  335.  
  336.     See the document INTRO.DOC.
  337.  
  338.  
  339.      HOW TO CREATE AN EXECUTABLE SELF-EXTRACTING ARJ ARCHIVE
  340.  
  341.     The command "ARJ y -je archive" will create a full featured
  342.     self-extracting archive from an already built archive.
  343.  
  344.     The command "ARJ y -je1 archive" will create a smaller
  345.     self-extracting archive.
  346.  
  347.     Syntax:  ARJ y -je archive    produces archive.exe
  348.  
  349.         The registered version of ARJ lets users create multiple volume
  350.         self-extracting archives,
  351.  
  352.         Under DOS systems other than 2.11, 3.2, 3.3, 4.0, 5.0, 6.0, and
  353.         6.2x, you may have to rename the self-extract module to ARJSFX.EXE
  354.         to do the extraction.
  355.  
  356.     See the "-je" option for more information.
  357.  
  358.  
  359.      CONVERTING OTHER ARCHIVE FILES TO ARJ FORMAT
  360.  
  361.     Included with this software is the program REARJ.  This program can
  362.     be used to individually or collectively convert archive files from
  363.     other formats to the ARJ format.
  364.  
  365.     REARJ *.ZIP *.ARC *.LZH   will convert all ZIP, ARC, and LZH
  366.     archives in the current directory to the ARJ format.  See the
  367.     REARJ.DOC for more information about REARJ.
  368.  
  369.  
  370.      HOW TO USE ARJ:
  371.  
  372.     If you type ARJ [return], you will see a simple help screen.
  373.  
  374.     If you type ARJ -? [return], you will see more detailed help
  375.     information.
  376.  
  377.  
  378.      ARJ LIMITATIONS:
  379.  
  380.     ARJ will accept up to:      64 filenames/wildnames on command line
  381.                                32000 filenames resulting from wildnames
  382.                                      unless the -hm option is specified
  383.                 8000 filenames/wildnames to exclude
  384.                 8000 ARJ filenames resulting from wildnames
  385.                 2048 character comments
  386.                      (up to 25 lines or 1 file)
  387.  
  388.     For compressing, ARJ requires approximately 300,000 bytes plus the
  389.     memory necessary to store all of the pathnames to be archived when
  390.     using the default compression method (-m1).
  391.  
  392.     For extracting, ARJ requires approximately 175,000 bytes plus.
  393.     The program DEARJ (available to registered users) requires
  394.     approximately 125,000 bytes plus.
  395.  
  396.         There is no limitation on the number of files that can be stored
  397.         in one archive.  However, each add command can only add a maximum
  398.         of 16,000 files at a time depending upon memory availability. I
  399.         expect that a normal maximum of 5,000 to 10,000 filenames can be
  400.         handled without running out of memory during the compress phase.
  401.         The new option "-hm" allows ARJ to archive up to 32,000 files at
  402.         one time by using disk space instead of memory.
  403.  
  404.     Example:
  405.  
  406.            ARJ a -r archive \*.* -hm
  407.  
  408.     ARJ currently does not see that wildnames like "C:*.*" and "C:\*.*"
  409.     can actually represent the same thing.    ARJ would expand each of
  410.     those two wildnames into a list that could be up to twice as long
  411.     as necessary.
  412.  
  413.     When updating an archive, ARJ creates a temporary file named
  414.         ARJTEMP.$nn in the current directory or special work directory if
  415.         specified (-hm!F:\).
  416.  
  417.     While ARJ is scanning a wildcard filespec, ARJ will change the name
  418.     of the target archive to ARJTEMP.$nn while the scan is proceeding
  419.     to avoid including the archive itself in an add or move command.
  420.     Also, as a result, you cannot add a file named ARJTEMP.$nn to an
  421.     ARJ archive.  Please note that the name of this temporary file may
  422.     change at a future revision of ARJ.
  423.  
  424.  
  425.      IMPORTANT DIFFERENCES BETWEEN ARJ AND LHARC:
  426.  
  427.     ARJ by default stores the full specified pathname of files
  428.     archived minus any drive letter and root symbol.
  429.  
  430.     The "e" and "x" commands will by default extract all of the files
  431.     in the archive without using date time stamps to select files.    You
  432.     should specify "-u -y" to duplicate LHARC functionality.
  433.  
  434.     The "f" command in ARJ requires the -r switch to be functionally
  435.     identical to the LHARC f command if the original archive were
  436.     created using the -r switch.
  437.  
  438.     ARJ uses the "!" symbol as a prefix character to indicate list
  439.     files.
  440.  
  441.  
  442.      IMPORTANT NOTES:
  443.  
  444.     When using the "-w" working directory switch, ARJ does not check on
  445.     space availability before overwriting the original archive if it
  446.     exists.  Be sure that you have enough disk space for the new
  447.     archive before using the "-w" switch.  If ARJ aborts in this
  448.     situation because of disk space, ARJ will keep the temporary
  449.     archive.
  450.  
  451.     By default, ARJ does not see hidden or system files.  ARJ will
  452.     process system and hidden files when you either specify the "-a"
  453.     switch.
  454.  
  455.     Like LHARC and PKZIP, ARJ requires extra disk space to UPDATE an
  456.     archive file.  ARJ will backup the original archive while it
  457.     creates the new archive, so enough room must be available for both
  458.     archives at the same time.
  459.  
  460.     Unlike PKZIP, ARJ does not require additional work space when
  461.     CREATING a new archive.
  462.  
  463.     Currently, ARJ will not extract overwriting a readonly file unless
  464.     the "-ha" option is specified.
  465.  
  466.  
  467.      TIPS TO USING ARJ EFFICIENTLY
  468.  
  469.     You should use a software or hardware disk cache to speed up ARJ
  470.     access.  Diskette drives should NOT be write-delay enabled.
  471.     Write-delay would prevent ARJ from verifying diskette writes.
  472.  
  473.     When archiving to diskettes, you should use the "-w" option to set
  474.     a working directory on your RAMDRIVE or hard disk drive to speed up
  475.     building the archive.
  476.  
  477.     You should use the "-jt" option when archiving to diskettes or when
  478.     you really want to be sure that ARJ will be able to extract what
  479.     you have archived.  There are cases where your hardware or memory
  480.     resident software will corrupt your work, so the "-jt" option is
  481.     excellent insurance.  If you have bad sectors on your diskettes and
  482.     verify is turned off, DOS will not tell you about diskette errors
  483.     until it is too late.  These errors are NOT RECOVERABLE.
  484.  
  485.         Using the "-js" option saves time by not compressing archives of
  486.         PKZIP, LHA, ARC, ZOO, ARJ, etc.
  487.  
  488.     You should use the "-e" option whenever you do not need to store
  489.     pathnames in an archive that you are creating.    This will save
  490.     space.
  491.  
  492.     Convert an ARJ archive into a self-extracting archive with a
  493.     command like the following:  ARJ y archive -je
  494.  
  495.     To capture a comment from an ARJ archive, use the following
  496.     command:  ARJ e archive ... -zcomment.txt  (the "..." is
  497.     significant).
  498.  
  499.     ARJ has several compression methods that provide size/time
  500.     tradeoffs.  Method 4 "-m4" is about twice as fast as method 1.    The
  501.         "-jm1" and "-jm" options modify the "-m1" option to provide even
  502.         greater compression at a cost in time.
  503.  
  504.  
  505.      USING ARJ WITHIN OTHER PROGRAMS
  506.  
  507.     Since ARJ uses over 300,000 bytes of memory during compression, it
  508.     is difficult to use ARJ in a large application program unless that
  509.     program swaps itself out of memory when it executes DOS commands
  510.     like ARJ.  However, there is at least one shareware program
  511.     available that will automatically swap your large application
  512.     program out of memory whenever it shells out to DOS to execute a
  513.     command.  The program SHROOM by Davis Augustine should be able to
  514.     solve this memory problem for you.  The latest version as of
  515.     03/11/92 is named SHROM19C.ZIP on Channel One BBS.  According to
  516.     the SHROOM documentation, you can reach the author at:
  517.  
  518.         CompuServe id 72230,3053
  519.  
  520.         Davis Augustine
  521.             P.O. Box 610
  522.             Sausalito, CA 94966-0610
  523.  
  524.     This is not an endorsement of the product SHROOM.
  525.  
  526.     The easiest way I have found to use this product is to type:
  527.     SHROOM COMMAND.COM
  528.  
  529.     SHROOM -v COMMAND.COM will let you see SHROOM in action when you
  530.     shell out to execute a DOS command.
  531.  
  532.  
  533.      ARJMENU PROGRAM
  534.  
  535.         A program called ARJMENU by Michael McCombs is available.  As far
  536.         as I know, it is the only menu-driven interface program that
  537.         supports ALL of the features of ARJ.  This program is aimed at
  538.         users who hate command line interfaces.  ARJMENU allows the user
  539.         to pick and choose ARJ options.  The user does not have to
  540.         remember the ARJ switch syntax.  The current version of the
  541.         program supports ARJ version 2.30.
  542.  
  543.  
  544.      ARJ HELP HYPERTEXT PROGRAM
  545.  
  546.     ARJ-Help is an electronic book (brand named Window Book (TM)) that
  547.     allows the user to discover easily how to use ARJ.  It runs under
  548.     DOS.  It is very fast and has a rich set of features which include
  549.     full-text search, hypertext links, a table of contents that can be
  550.     reorganized to your needs, a complete index, and much more. The
  551.     current version can be found on some BBSes as ARJHLP24.EXE.
  552.  
  553.         Window Book, Inc.
  554.             P.O. Box 390697
  555.             Cambridge MA 02139
  556.         USA
  557.  
  558.         TEL:   617-661-9515 or 800-524-0380.
  559.         FAX:   617-354-3961
  560.  
  561.  
  562.      ARCHIVER UTILITIES THAT SUPPORT THE ARJ FORMAT
  563.  
  564.     The following are some other utilities that facilitate the use of
  565.     ARJ.  This list is not all inclusive or is it meant as a personal
  566.     recommendation.
  567.  
  568.         ARCHIVE MANAGER PRO - Archiver shell
  569.         ARJMENU 1.x         - ARJ shell
  570.         SHEZ 8.x            - Archiver shell
  571.         ARCMASTER 6.x       - Archiver shell
  572.         ZGEN 1.x            - Archiver shell
  573.         ACZAR 1.x           - Archiver shell
  574.         ARJVIEW             - ARJ shell
  575.         AVIEW               - BBS archive viewer
  576.         WINZIP              - Windows archiver shell
  577.         WINDOWS COMMANDER   - WIndows archiver shell
  578.  
  579.         A particularly useful ARJ support utility is SARJ (latest version
  580.         is 1.12) by Frederic Taes.  It improves upon ARJ compression by
  581.         using ARJ to build "solid" archives.
  582.  
  583.  
  584.      USING ARJ AS A BACKUP PROGRAM
  585.  
  586.     ARJ can be used as a substitute for a backup program.  However, it
  587.     does not have the diskette critical error handling or data recovery
  588.     facilities of a FASTBACK, etc.    So you should be sure of the
  589.     reliability of your diskettes.    The most common cause of failure
  590.     is bad diskettes.  You should let ARJ test the archives ON the
  591.     diskettes.  Testing the archives before copying them to diskettes
  592.     is not enough.    Critical data should always be backed up two or
  593.     more times.  Please keep in mind that damage to compressed data
  594.     is many times more serious than damage to uncompressed data.
  595.  
  596.     WARNING:  You should never update multiple volume ARJ archives
  597.     especially backup archives.  Use a separate set of diskettes to
  598.     an incremental backup.
  599.  
  600.     The following partial command lines illustrate a full backup
  601.     command, an incremental backup command, and a restore command.    The
  602.     only parts missing are the names of the files to backup/restore.
  603.  
  604.     ARJ a A:backup -r -vvas -a1 -b2 -js -jt -jiC:\backup.inx -wC:\ -m3
  605.  
  606.     ARJ a A:backup -r -vvas -a1 -b1 -js -jt -jiC:\backup.inx -wC:\ -m3
  607.  
  608.     ARJ x A:backup -vv -y
  609.  
  610.     You should familiarize yourself with the above switches so that you
  611.     can modify the above command lines as needed.
  612.  
  613.     If you have a RAMDRIVE large enough, you should change the "-w"
  614.     option to point to the RAMDRIVE.
  615.  
  616.     If you have enough free hard disk space, you can build all of the
  617.     diskette volumes on the hard disk for later copying to diskette.
  618.     In this case, you will need to change the name of the archive to
  619.     "C:backup" or similar.    The "-vvas" option should be changed to
  620.     "-v360", "-v720" or whatever is appropriate for your diskette size.
  621.     Please note that 360, 720, 1200, and 1440 are abbreviations for the
  622.     standard diskette sizes.  Other sizes will require your entering
  623.     the entire number.  Another change is to add the option "-y" which
  624.     will turn off the "Ok to proceed ..." prompt.  Lastly, if the "-w"
  625.     option is pointing to the hard disk, you should remove the "-w"
  626.     option entirely.
  627.  
  628.     ARJ a C:backup -r -v360  <other options>   -m3 -y
  629.  
  630.     ***IMPORTANT*** Only a maximum of 100 volumes can be built on disk
  631.     at one time because of the volume suffix rolling over at *.A99 to
  632.     *.A00 when using default archive naming.  However, if you specify
  633.     the starting archive name with a suffix of ".000" or ".001", ARJ
  634.     will create up to 1000 or 999 uniquely named volumes.
  635.  
  636.     ARJ a C:backup.000 -r ...........
  637.  
  638.     Both backup commands will pause for a "system command".  You can
  639.     execute DOS commands at this point.  This is a suitable place to do
  640.     a "dir a:" to make sure that your disk is formatted and has enough
  641.     free space on it.  You may need to execute "format a:" or
  642.     "del a:\".  A very useful command might be "QDR A:".  QDR is a
  643.     utility from Vernon Buerg.  You will need to type "exit" to allow
  644.     ARJ to continue.
  645.  
  646.         If the backup fails after completing one or more diskettes, you
  647.         can restart at the next archive after the last successful volume.
  648.  
  649.     There are two methods to do this restart.  If you have specified an
  650.     index file with the "-ji" option during the failed backup, you can
  651.     restart by retyping the EXACT SAME command line as before and
  652.     adding the "-jn" option.  This will cause ARJ to scan the
  653.     previously written index file for the proper restart information.
  654.     ARJ will automatically set the correct volume name.
  655.  
  656.     Example:  ARJ a a:backup c:\ -r -vvas -jiINDEX.FIL
  657.           ARJ a a:backup c:\ -r -vvas -jiINDEX.FIL -jn
  658.  
  659.     The second method is more complicated.    Refer to the "-jn" and
  660.     "-jx" descriptions for more details.  For example, if the above
  661.     full backup command failed during diskette two, on filename
  662.     "DOS\MODE.COM" which was started at byte 125.  This would be the
  663.     correct command:
  664.  
  665.     ARJ a A:backup.A01 -r -vvas -a1 <other> -m4 -jx125 -jnDOS\MODE.COM
  666.  
  667.     The most error prone step is determining the correct "-jn" option.
  668.     A common error concerns the use of the root directory symbol "\"
  669.     with the "-jn" option.    Verify the presence or absence of the root
  670.     symbol "\" in the backup index file.
  671.  
  672.     If the restore fails after one or more diskettes, simply retype the
  673.     same command as before but add the right ".Ann" suffix to the
  674.     archive name.  If ARJ has aborted because of a disk full on a file
  675.     split between volumes, you will have to restart at the first volume
  676.     that contains that file.
  677.  
  678.  
  679.      BACKUP TYPE ARCHIVES AND BACKUP FILES
  680.  
  681.         New to ARJ 2.30 and above and ARJ archives is the concept of
  682.         "backup" type archives.  Normally, when adding duplicate files to
  683.         an ARJ archive, ARJ will overwrite the existing file.  However, at
  684.         ARJ 2.30 and above with a backup type archive, ARJ will keep the
  685.         existing file by marking it as a backup and inserting the new file.
  686.         This will make ARJ archives larger than normal.  It is possible to
  687.         have more than one duplicate backup file.  You can make an archive
  688.         a backup type by using the "-jb" option during the add or by typing
  689.         "ARJ y archive -jb".  Any further additions of already existing
  690.         files will result in more files marked as backups.  You may reset
  691.         that backup flag by specifying the "-jb1" option as in "ARJ y
  692.         archive -jb1".
  693.  
  694.     This feature is useful when backing up frequently modified files.
  695.     One archive can have several days worth of backups.
  696.  
  697.     The existence of backup files or the backup archive flag is
  698.     indicated when executing the "l" or "v" commands.  There will be a
  699.     message at the end of the display.  The backup files themselves can
  700.     be displayed by using the "-jg" or "-jg1" options with the "l" or
  701.     "v" commands.
  702.  
  703.     To extract a specific backup file, you have several options.  You
  704.     can execute "ARJ e archive filename -jg -q" and enter "yes" on the
  705.     specific instance that you wanted extracted.  You can specify the
  706.     exact modification date-time that you want as in "ARJ e archive
  707.     filename -jg -o910101120000 -ob910101130000".  You can specify the
  708.     sequence number of the file in the archive.  To extract the fifth
  709.     file in the archive, type "ARJ e archive 5 -jg -#".  The sequence
  710.     number is available in the "v" command display.  Or you can extract
  711.     all occurrences of the file with "ARJ e archive filename -jg -jo".
  712.     Duplicates will be renamed with numeric file extensions (.000).
  713.  
  714.     The "ARJ k archive *.*" command can be used to purge an archive of
  715.     all backup files.
  716.  
  717.     You can unmark backup files with "ARJ y archive -jb2".    You can
  718.     unmark specific files such as the fifth file in the archive with
  719.     "ARJ y archive -# -jb2 5".
  720.  
  721.     You should not use the "-e" option when adding files to a backup
  722.     type archive because ARJ will not have the ability to distinguish
  723.     between files with the same filespec and different pathspecs.  You
  724.     could end up with duplicate files in the archive as opposed to one
  725.     recent file and several backup files.
  726.  
  727.  
  728.      THE FILESPEC "..."
  729.  
  730.     Several times in this document and the UPDATE.DOC file, there is
  731.     mention of the filespec "...".    This filespec is chosen so as not
  732.     to match any existing filename.  ARJ will NOT generate an error
  733.     or warning for not matching "..." specifically.
  734.  
  735.         This is a problem when using ARJ on a NOVELL network as the
  736.         filespec "..." is a valid directory name.  A partial workaround
  737.         is to specify a non-existent filespec such as "@@@" in place of
  738.         "...".  Or you may use the "-hn" option to specify a name that is
  739.         not to match any filename.
  740.  
  741.  
  742.      ARJ ERROR SITUATIONS:
  743.  
  744.     ADD:
  745.  
  746.     If a user specified file is not found during an add, ARJ will
  747.     continue processing, and will keep the archive and terminate with
  748.     an error condition.  Note that files specified within an ARJ
  749.     listfile that are not found during an add will NOT trigger an
  750.     error unless the "-hl" option is also specified.
  751.  
  752.     In a disk full condition or any other file i/o error, ARJ will
  753.     promptly terminate with an error condition and delete the temporary
  754.     archive file unless the user has specified the "-jk" switch.
  755.  
  756.  
  757.     MOVE:
  758.  
  759.     ARJ will only delete files that have been successfully added to the
  760.     archive.  If you have specified the "-jt" (test) switch, ARJ will
  761.         abort on any error.  If you specify the "-jk" switch, ARJ will keep
  762.         the temporary archive upon an abort.
  763.  
  764.  
  765.     EXTRACT:
  766.  
  767.     In a disk full condition or any other file i/o error, ARJ will
  768.     promptly terminate with an error condition and delete the current
  769.     output file.
  770.  
  771.  
  772.     CRC ERRORS OR BAD FILE DATA:
  773.  
  774.     In the case where an ARJ archive has been corrupted, ARJ will
  775.     report a CRC error or a Bad file data error.  These corruptions
  776.     can be the result of an unreliable diskette, a computer memory
  777.     problem, a file transfer glitch, or incompatible CACHING software.
  778.     Most of these errors are the result of file transfer glitches and
  779.     bad diskettes.    A few are the result of an incompatible
  780.     interaction with SUPER PCKWIK 3.3 advanced diskette support or
  781.     Windows 3.x.
  782.  
  783.         Individual files in an archive that are affected by the CRC or Bad
  784.         file data errors CANNOT be recovered.  Other files in a damaged
  785.         archive can be recovered by extracting them using the "-jr"
  786.         option.
  787.  
  788.  
  789.     CRITICAL ERROR HANDLER:
  790.  
  791.     ARJ sets up an interactive critical error handler to handle DOS
  792.     critical errors like "sector not found" and "drive not ready".
  793.     When a critical error occurs, ARJ will prompt the user with the
  794.     message "Retry Y/N?".  The user may retry the failed operation by
  795.     pressing "Y".  Pressing "N" will fail the operation or abort to DOS
  796.     depending upon the version of DOS.  The user can press Control
  797.     BREAK to abort to DOS.
  798.  
  799.  
  800.      ARJ DOS ERRORLEVELS:
  801.  
  802.     ARJ returns a number of DOS errorlevels for different situations.
  803.  
  804.     0 ->   success
  805.     1 ->   warning (specified file to add to archive not found,
  806.             specified file to list, extract, etc., not found,
  807.             or answering negatively to "OK to proceed to next
  808.             volume..." prompt)
  809.     2 ->   fatal error
  810.     3 ->   CRC error (header or file CRC error)
  811.     4 ->   ARJ-SECURITY error or attempt to update an ARJ-SECURED archive
  812.     5 ->   disk full or write error
  813.         6 ->   cannot open archive or file
  814.     7 ->   simple user error (bad parameters)
  815.     8 ->   not enough memory
  816.     9 ->   not an ARJ archive
  817.  
  818.     Please note that DOS batchfiles have a unique method of testing
  819.     for a DOS errorlevel.  The batch statement IF ERRORLEVEL 0 ...
  820.     means if the errorlevel is EQUAL TO or GREATER THAN 0.    Generally,
  821.     one should test for the highest possible errorlevels first and
  822.     proceed lower as in:
  823.  
  824.     ARJ a archive *.*
  825.     if errorlevel 9 goto not_arj
  826.     if errorlevel 8 goto no_memory
  827.     .
  828.     .
  829.     .
  830.     if errorlevel 1 goto minor_error
  831.     type ARJ command successful
  832.  
  833.  
  834.      ARJ USER ACTION PROMPTS:
  835.  
  836.     ARJ prompts the user for action at certain times.  There are
  837.     several types of prompts.  One is for yes/no permission, another is
  838.     for a new filename, another is for archive comments, and one other
  839.     is for search strings.
  840.  
  841.     The ARJ yes/no user prompts provide a lot of flexibility.  In
  842.     addition to the normal yes and no responses, ARJ also accepts the
  843.     following responses: quit, always, skip, global, and command.
  844.  
  845.     "Global" sets ARJ to inhibit all subsequent user prompts by assuming
  846.     YES for all queries as if "-y" were specified.
  847.  
  848.     "Always" sets ARJ to assume YES for subsequent queries of the same
  849.         class.  For example, answering ALWAYS to the overwrite query will
  850.     assume YES for ALL subsequent overwrite queries.
  851.  
  852.     "Skip" sets ARJ to assume NO for ALL subsequent queries of the same
  853.     class.
  854.  
  855.     After "always" or "skip" responses, subsequent user prompt
  856.     messages will still be output to the screen but no user response
  857.     will be accepted.
  858.  
  859.     "Command" prompts for one DOS command and then executes it.  ARJ
  860.     then returns to expect an answer to the current yes/no query.  You
  861.     should keep the query in mind as ARJ does NOT always redisplay
  862.     the full query message.
  863.  
  864.     Since ARJ uses STDIN for user input, be careful about typing ahead
  865.     anticipating prompts.  ARJ may prompt you for an unexpected action
  866.     and use your earlier input.
  867.  
  868.     The "-jy" option lets you change the prompting modes to single
  869.     character query mode.  See the section on "-jy" for more
  870.     information.
  871.  
  872.  
  873.      ARJ ENVIRONMENT VARIABLE:
  874.  
  875.     ARJ will first look for an environment variable named ARJ_SW and
  876.     use its value as switch options for ARJ.  If ARJ finds such an
  877.     environment variable, it will display a message to that effect.
  878.  
  879.     You can inhibit ARJ from using this environment variable by using
  880.     the "-+" option.  You can also set the name of the environment
  881.     variable with the "-+" option as in ARJ a -+ARJ_SW2 archive.
  882.  
  883.     SET ARJ_SW=<switches>
  884.  
  885.     Example:  SET ARJ_SW=-w\temp -k -e
  886.  
  887.     Do NOT add any blanks after the variable name ARJ_SW.  As in LHARC,
  888.     command line switches can be selected to override ARJ_SW settings.
  889.  
  890.     ARJ will allow you to use a different switch character "-" or "/"
  891.     in ARJ_SW and in the command line except when using the "-ju"
  892.     (unix) option.
  893.  
  894.     If the ARJ_SW environment variable specifies a filename (text not
  895.     beginning with a switch character), ARJ will open that filename and
  896.     scan it looking for a line of text that begins in column 1 with the
  897.     same letter as the ARJ command being executed.    The following text
  898.     is processed as the ARJ_SW switches.  This allows each ARJ command
  899.     to have its own switch settings.  In addition, ARJ will also look
  900.     for the "+" (plus) symbol in column 1 to use as a miscellaneous
  901.     switch string.    This string will be added to any command switch
  902.     string found if any.  If no command switch string is found, ARJ
  903.     will use the miscellaneous switch string as the ARJ_SW switch
  904.     settings.  NOTE that the "+" switch settings will NOT be used
  905.     if the "+" string occurs below the command switch string.
  906.  
  907.     SET ARJ_SW=C:\ARJ\ARJ.CFG
  908.  
  909.     C:\ARJ\ARJ.CFG contains:
  910.     a -jm1 -jt -i1
  911.     c -zcomment.txt
  912.     + -jv
  913.     l -jp
  914.     e -i1
  915.  
  916.     AND is equivalent to:
  917.     a -jm1 -jt -i1
  918.     c -zcomment.txt
  919.     l -jp -jv
  920.     e -i1 -jv
  921.     f -jv
  922.     v -jv
  923.     all other commands
  924.     .
  925.     .
  926.     .
  927.  
  928.     In the above example, any ARJ "a" commands will use "-jm1 -jt -i1"
  929.     as the ARJ_SW switch options.
  930.  
  931.     The ARJ_SW variable or the ARJ_SW configuration file switch
  932.     settings may NOT have quoted switches such as "-vasformat a:".
  933.  
  934.  
  935.      ARJ COMMAND LINE SYNTAX:
  936.  
  937.     ARJ <command> [-<switch>[-|+|<option>]...] <archive_name>[.ARJ]
  938.     [<base_directory_name>\] [<!list_name>|<path_name>|<wild_name>...]
  939.  
  940.         or
  941.  
  942.         ARJ @response_filename [-&] | [-+] | [-+environment_variable]
  943.  
  944.  
  945.         Commands and switches can be entered in upper or lower case.
  946.     Switches can be placed anywhere after the command ARJ.
  947.  
  948.     ARJ supports the use of either "-" or "/" as the switch option
  949.     character.  The first occurrence of either "-" or "/" that ARJ
  950.     encounters in the ARJ_SW variable will determine the switch symbol
  951.     for processing ARJ_SW.    The first occurrence of either "-" or "/"
  952.     that ARJ encounters in the command line will determine the switch
  953.     symbol for processing the command line except when the "-ju" (unix)
  954.     option has been specified in ARJ_SW.  You may NOT mix and match
  955.     switch symbols.  Throughout this document, the symbol "/" may be
  956.     substituted for "-" in switch usage.
  957.  
  958.     Examples:  ARJ a A:archive *.* /va /r     is correct
  959.            ARJ a A:archive *.* /va -r     IS INCORRECT USAGE!
  960.  
  961.     Switches specified on the command line will either toggle or
  962.     override switches specified with the ARJ_SW environment variable.
  963.     Switch usage is identical to that of LHARC.
  964.  
  965.     "-s+"         turns on switch "s".
  966.     "-s-"         turns off switch "s".
  967.     "-s"         toggles the state of switch "s".
  968.     "-sname"     provides the name argument for switch "-s".
  969.     "--"         skip processing of any more switch options.
  970.  
  971.     Switch options CAN be combined to save command line length.
  972.     However, some switch options take optional string arguments and
  973.     therefore, must be the last option in a combined argument token
  974.     string because ARJ accepts the rest of the argument token as the
  975.     optional argument.  You can combine "-r" and "-i" to make "-ri".
  976.     You can combine "-wd:\" and "-i" with "-iwd:\", because the switch
  977.     option taking the string argument is last.  Please note that
  978.         switches that ONLY accept the "+", "-", "0", "1", "2" modifiers can
  979.         be combined in any order.  The following switches must be last in a
  980.         combined switch argument:  -g, -l, -m, -o, -t, -v, -w, -x, -z, -!,
  981.         -$, -h#, -hc, -hm, -hn, -hx, -jc, -jd, -jh, -ji, -jn, -jp, -js,
  982.         -jw, -jx, -jy, -jz.
  983.  
  984.     WARNING:  The "j" in "-jX" option switches is a SHIFT symbol.
  985.     Therefore, a combined "-jatv" is a combination of "-ja", "-jt", and
  986.     "-jv", since the "j" shifts the meaning of subsequent symbols in
  987.     the argument token string.  The use of more than ONE "j" shift
  988.     symbol per argument token string is NOT supported for future
  989.     versions.
  990.  
  991.     Examples:  -rijvta   <=>  -r -i -jv -jt -ja
  992.            -i1kwd:\  <=>  -i1 -k -wd:\
  993.  
  994.     ARJ will accept an ending "-" on most switches such as "-w-".  The
  995.     "-x" switch option is one exception.  The one caveat is that for
  996.     switches that support an optional argument such as "-wd:\" or
  997.     "-t1", that switch option must NOT be followed by a concatenated
  998.     switch option such as "-w-r".  An argument token string such is
  999.     "-rikw-" is acceptable because the "-w" option is the last one.
  1000.     One special switch combination is the "-jyyr" combination.  You can
  1001.     turn off the "y" and "r" modifiers with "-jyyr-".
  1002.  
  1003.     The switch option "--" tells ARJ that there are no more switch
  1004.     options to process in the current command line.  This is useful
  1005.     when you need to enter filenames beginning with "-".
  1006.  
  1007.     Example:  ARJ a archive -- -testfile
  1008.  
  1009.     The standard ARJ file suffix is ".ARJ".  Subsequent multiple volume
  1010.     archives end in ".A01", ".A02", etc, up to .A99, .A00, .A01.  It is
  1011.     possible to have multiple volumes start at ".001" and go up to
  1012.     ".999".
  1013.  
  1014.     The ARJ command must be the first non-switch argument after "ARJ".
  1015.     The ARJ archive name must be the first filename on the command
  1016.     line.  The base directory, if any, must be the second filename
  1017.     argument.  The switches and other filenames can be in any order.
  1018.     The base directory name should end with "\" (backslash) or ":"
  1019.     (colon).  However, ARJ will still accept directory names without
  1020.     the "\" character if the directory already exists.  This feature
  1021.     is limited to the add type and extract type commands.
  1022.  
  1023.     Wild_names follow MS-DOS convention.  "*.*" means all files.
  1024.     "*.DOC" means all files with an extension of ".DOC".  "?B*.*"
  1025.     means all files with a second character of "B".
  1026.  
  1027.     The default for <wild_name> for all commands except for "d" is
  1028.     "*.*".
  1029.  
  1030.     For the add, move, freshen and update commands, filename matching
  1031.     in the archive requires an exact path match depending upon the "-e"
  1032.     option.  For non-update commands, specified filenames with paths
  1033.     will force a full pathname match.
  1034.  
  1035.     You can supply one or more filenames for files containing lists of
  1036.     files to be added to an archive.  The filenames must be listed one
  1037.     per line with no leading or trailing blanks.  The list filename(s)
  1038.     must be prefixed with "!".  If you want to archive a filename
  1039.     beginning with !, you must use the "-!" option to set a new list
  1040.     file character.
  1041.  
  1042.     You can exclude filenames/wildnames from the list of filenames to
  1043.     be processed by ARJ.
  1044.  
  1045.     Example:  ARJ a software *.* -x*.exe -x*.obj   adds all files
  1046.     in the current directory except .EXE and .OBJ files.
  1047.  
  1048.  
  1049.      ARJ RESPONSE FILE SYNTAX:
  1050.  
  1051.         ARJ @response_filename [-&] | [-+] | [-+environment_variable]
  1052.  
  1053.         ARJ will now accept an ARJ command line from a response file as in
  1054.         "ARJ @command.rsp".  The "@" symbol indicates that the appended
  1055.         name is the name of the response file.  In this case, the file is
  1056.         command.rsp.  The response file symbol cannot be changed.  Only one
  1057.         ARJ command line can be processed per response file.
  1058.                                                             
  1059.         The response file should contain the ARJ command line minus the
  1060.         initial "ARJ".  The command line may be split over as many lines
  1061.         as necessary.  The response file feature will NOT accept QUOTED
  1062.         command line options.  Options with embedded blanks ("-vasTEST X")
  1063.         will not be processed as expected.  When using the response file
  1064.         feature, ARJ will accept only the "-+", and "-&" switch options on
  1065.         the DOS command line along with the response file name.  All other
  1066.         command options must be specified in the response file or in the
  1067.         ARJ environment variable.
  1068.  
  1069.         Please note that the ARJ command line whether or not in the
  1070.         response file is still limited to 64 filenames or wildnames.  The
  1071.         listfile feature should be used to specify more than 64 filenames
  1072.         or wildnames.
  1073.  
  1074.  
  1075.      ARCHIVE NAME WILDCARDING:
  1076.  
  1077.     You can specify a wildcard for the archive name such as "*.ARJ" for
  1078.     all ARJ commands except for the add commands (a, f, j, m, u).  If
  1079.     you also specify the "-r" switch,  ARJ will search subdirectories
  1080.     for ARJ archives (*.ARJ) also.
  1081.  
  1082.     Example:  ARJ l -r *         will list all of your *.ARJ files.
  1083.           ARJ c *.arj -zbbs.cmt  will comment all of your archives.
  1084.  
  1085.  
  1086.      ARJ COMMANDS:
  1087.  
  1088.     a: Add files to archive
  1089.  
  1090.        This is the basic command to add disk files to an ARJ archive.
  1091.        You can specify 0 to 64 filename arguments (one can be a
  1092.        destination directory).  The arguments can be wildnames.  If
  1093.        you specify the "-r" switch (recurse subdirectories), ARJ
  1094.        will add all of the files in all of the subdirectories that
  1095.        match the specified wildname.
  1096.  
  1097.        Example:  ARJ a archive subdir\*.*
  1098.              Archive all files in directory "subdir".
  1099.  
  1100.        For maximum compression, use the "-jm" switch option.
  1101.  
  1102.     b: execute Batch or DOS command
  1103.  
  1104.        The ARJ b command allows a user to execute a DOS command on
  1105.        selected files in an archive.  The ARJ b command will prompt for a
  1106.        DOS command string to execute per selected file.  By default ARJ
  1107.        will extract the selected files to the filename ARJTEMP.$$$.  This
  1108.        filename can be changed with the "-jw" option.  The base directory
  1109.        option is ignored by the ARJ b command.  The output file will be
  1110.        deleted by ARJ after the DOS command is executed.
  1111.  
  1112.        Examples:  ARJ b archive
  1113.               ARJ b archive file.exe -jwtemp\tempfile
  1114.  
  1115.        This option can substitute for a simple extract and run command
  1116.        where the file to be extracted is an executable.  You would specify
  1117.        a temporary executable name as the output name and use that name as
  1118.        the DOS command to be executed.
  1119.  
  1120.        Example:  ARJ b archive file.exe -jwTEMP.EXE
  1121.              TEMP arguments
  1122.  
  1123.        You can supply the DOS command string on the command line with
  1124.        the "-jq" option.  Switch options which have embedded blanks
  1125.        must be enclosed by double quote marks.
  1126.  
  1127.        Examples:  ARJ b archive file.exe -jwTEMP.EXE -jqTEMP
  1128.               ARJ b archive *.c "-jqgrep text ARJTEMP.$$$"
  1129.  
  1130.     c: Comment archive files
  1131.  
  1132.        This command allows you to comment the header and individual
  1133.        files.  ARJ will prompt you for each comment.  The user will be
  1134.        prompted for up to 25 lines for each comment.  A line containing
  1135.        only a [return] will terminate the comment.
  1136.  
  1137.        The user can choose to input comment data from a file by entering
  1138.        the comment filename preceded by an "!" as in "!archive.txt"
  1139.        starting in column 1 of the first comment line.  This file is
  1140.        read as a text file.  The lines in the text can be up to 2048
  1141.        bytes long.    Only the first 2048 bytes of the file will be
  1142.        accepted by ARJ.
  1143.  
  1144.        To erase a comment from an archive, type [space] [return] on the
  1145.        first comment line and [return] on the second comment line.
  1146.  
  1147.        To strip archive or file comments from an archive, you can use
  1148.        the NUL file feature of MS-DOS.
  1149.  
  1150.        Examples:  ARJ c archive -zNUL       strips archive comment
  1151.               ARJ c archive name -jzNUL    strips comment for "name"
  1152.               ARJ c archive -jzNUL       strips all file comments
  1153.               ARJ c archive -zNUL -jzNUL   strips all comments
  1154.  
  1155.        To add only the archive comment and not file comments, use the
  1156.        following command:
  1157.  
  1158.        ARJ c archive -z
  1159.  
  1160.        To add only the archive comment at the command line, use the
  1161.        following command:
  1162.  
  1163.        ARJ c archive -zcomment.txt
  1164.  
  1165.        You may also comment an archive with the "a", "f", "m", "u"
  1166.        commands.
  1167.  
  1168.        ARJ a -zcomment.txt archive *.txt
  1169.  
  1170.     d: Delete files from archive
  1171.  
  1172.        This command allows you to delete files from the archive.  When
  1173.        wildcard selection is not suitable, you can use the "-q" switch
  1174.        to set ARJ to prompt you for deletion for each file selected.
  1175.        These deleted files are physically removed from the archive.
  1176.  
  1177.        Example:  ARJ d archive *.c
  1178.              Delete all files in archive ending in ".c".
  1179.  
  1180.              ARJ d -q archive *.c
  1181.              Prompt before deleting each file ending in ".c".
  1182.  
  1183.            If specify "*.*" as the filespec, ARJ will prompt for permission
  1184.            to delete.  You can specify the "-y" or "-jyd" options to
  1185.            inhibit the delete prompt.
  1186.         
  1187.            If ARJ removes all files from an archive, it will delete the
  1188.            empty archive.
  1189.  
  1190.            The delete command normally only deletes non-backup files.  You
  1191.            must specify the "-jg" option to select backup files, too.
  1192.  
  1193.            You can specify the "-n" (new) option to delete the files in the
  1194.            archive that DO NOT EXIST on the disk.  You can use the same
  1195.            "-n" option with "ARJ l" to list the files that DO NOT EXIST on
  1196.            the disk.  This is useful in synchronizing an archive to a
  1197.            directory along with an update command.
  1198.  
  1199.            Examples:  ARJ d archive *.* -n
  1200.                       ARJ l archive temp\ *.doc -n
  1201.                       ARJ d archive temp\ *.doc -n
  1202.  
  1203.     e: Extract files from archive
  1204.  
  1205.        This command will extract one or more files from the archive to
  1206.        the current directory or base directory if specified.  ARJ will
  1207.        prompt the user before overwriting existing files unless the
  1208.        user specifies the "-y" switch.  If the user gives a "no"
  1209.        answer, ARJ will prompt for a new filename.    If the user enters
  1210.        a single [return] instead of a filename, ARJ will skip the
  1211.        current file extraction.
  1212.  
  1213.        Example:  ARJ e archive soft\ *.c
  1214.              Extract all files ending in ".c" to subdirectory
  1215.              "soft".
  1216.  
  1217.        When extracting a file located on multiple volumes, ARJ may
  1218.        prompt the user with an "Append? " prompt.  This will usually
  1219.        occur with files split across volumes.  You will also need to
  1220.        specify the "-v" switch to set ARJ to continue to the next
  1221.        volume of a series of volumes.  When extracting from one of a
  1222.        series of multiple volumes on a diskette, it is easier to use
  1223.        the wildcard "*.*" to specify the archive as in:
  1224.  
  1225.        ARJ e archive A:*.* filespecs
  1226.  
  1227.        If you wish to extract only a portion of an archive and that
  1228.        portion is a directory containing directories, you should use
  1229.        the "-p1" switch.  See the "-p" switch for more information.
  1230.  
  1231.        The ARJ e and ARJ x commands now accept the "-d" option to
  1232.        provide an extract and delete option.  This feature requires
  1233.        that you specify the files to extract and delete.  ARJ will NOT
  1234.        default to "*.*" for this option.  This option actually uses
  1235.        more disk space than a simple extraction because of the
  1236.        temporary archive that is created during the extraction process.
  1237.  
  1238.        ARJ e archive -d file1 file2
  1239.  
  1240.        If ARJ encounters a disk full during extraction, ARJ will abort
  1241.        with an error.  You can bypass the abort by using the "-jd"
  1242.        option.  Refer to the description of "-jd" for more information.
  1243.  
  1244.        If ARJ encounters a CRC or Bad file data error during
  1245.        extraction, ARJ will delete the corrupted extracted file unless
  1246.        the "-jr" option is used.
  1247.  
  1248.            With the "-ho" and "-ho1" options, you can extract files from an
  1249.            archive based upon the success or failure of a text string
  1250.            search.  Refer to the description of the "-ho" and
  1251.            "-ho1"options for details.
  1252.  
  1253.            Examples:  ARJ e archive -ho
  1254.                       ARJ e archive -ho -jq+3+textstring
  1255.  
  1256.         f: Freshen files in archive
  1257.  
  1258.        Update matching files in the archive that are OLDER than the
  1259.        selected disk files.
  1260.  
  1261.        Example:  arj f archive *.c *.h
  1262.  
  1263.        In freshening archives, you should use the same filename
  1264.        specifications that you used to create the archive.
  1265.  
  1266.        Example:  arj a archive \temp\ *.* -r
  1267.              arj f archive \temp\ *.* -r
  1268.  
  1269.        If no files or comments have been added to the archive, ARJ
  1270.        will not rewrite the archive at ARJ 2.20 and above.
  1271.  
  1272.            When updating a file in an archive with a file that is NOT
  1273.            newer and if the -jv option is selected, ARJ will display a
  1274.            message that there is "no change".
  1275.  
  1276.     g: Garble files in archive
  1277.  
  1278.        The ARJ "g" command allows a user to garble an already built ARJ
  1279.        archive.  Please note that only ungarbled files will be garbled
  1280.        by the ARJ "g" command.
  1281.  
  1282.        Example:  ARJ g archive -gdinosaur
  1283.  
  1284.     i: check Integrity of ARJ.EXE
  1285.  
  1286.        The "i" command allows the user to check the integrity of the
  1287.        ARJ.EXE program.  ARJ will report "CRC ERROR!" if the tested ARJ
  1288.        program does not pass its integrity check.  This indicates that
  1289.        the program is probably corrupted.  Please note that the "i"
  1290.        command should not be used on a compressed ARJ executable
  1291.        (DIETed, LZEXEd, etc.), since the "i" command will then ALWAYS
  1292.        report a CRC error.    If the program name is not specified, then
  1293.        ARJ will check the current program being executed.
  1294.  
  1295.        Syntax:  ARJ i ARJ.EXE
  1296.             ARJ i         at DOS 3.0 and up
  1297.  
  1298.     j: Join archives to archive
  1299.  
  1300.        The "j" command allows the user to merge several ARJ archives.
  1301.  
  1302.        Syntax:  ARJ j archive archive1.arj archive2.arj
  1303.             ARJ j archive *.arj -r
  1304.  
  1305.        Some switches NOT supported by the "j" command are:    -o, -ob,
  1306.        -f, -u, -c, -v.  Note that there is no error message displayed
  1307.        by ARJ when using an unsupported switch with the "j" command.
  1308.  
  1309.        The "-d" option IS supported by the "j" command.
  1310.  
  1311.        Note that switches that do work like "-x" select the archives to
  1312.        be merged and NOT the contents of the archives.
  1313.  
  1314.        This command can be used to convert an SFX module to a regular
  1315.        ARJ archive.
  1316.  
  1317.        Example:  ARJ j new_name arjsfx.exe
  1318.  
  1319.     k: pacK bacKup files in archive
  1320.  
  1321.        The ARJ k command works similar to the ARJ d command except that
  1322.        the ARJ k command only deletes files marked as backups.  The ARJ
  1323.        k command requires a wildname or filespec as a selection option.
  1324.  
  1325.        Examples:  ARJ k archive *.*
  1326.               ARJ k archive *.doc -q
  1327.  
  1328.     l: List contents of archive
  1329.  
  1330.        List contents of archive to standard output.  The display can be
  1331.        paused after each screenful with the "-jp" switch.  The files
  1332.        are listed in stored order.    There are no sort options
  1333.        currently.
  1334.  
  1335.        The last field on the display BTPMGVX stands for:
  1336.            B -> file has been marked as a backup
  1337.            T -> text/binary/directory type
  1338.            P -> path information available in "V" listing
  1339.            M -> compression method used
  1340.            G -> file has been garbled (encrypted)
  1341.            V -> archive has been continued to another volume
  1342.            X -> this file is an extended portion of a larger file
  1343.  
  1344.        Example:  arj l archive *.c *.h
  1345.  
  1346.        A "+" sign preceding the date-time field indicates that the date
  1347.        is a 21st century date (20nn).
  1348.  
  1349.        For text mode compression, the original file size reported by
  1350.        the "l" and "v" commands is the actual number of bytes input.
  1351.        This is usually the MS-DOS file size minus the number of
  1352.        carriage returns in the file, since C text mode strips a file of
  1353.        carriage returns.
  1354.  
  1355.        When ARJ has detected a set backup flag in an archive, there
  1356.        will be a message "[Backups ON]".  When ARJ has detected any
  1357.        backup files in an archive, there will be a message
  1358.        "[Backups found]".
  1359.  
  1360.        To indicate that files are marked as backups, ARJ will display
  1361.        a "*" in the column right after the file attributes.
  1362.  
  1363.        The "-jg" option is needed to set the "l" and "v" commands to
  1364.        display the names of backup files.
  1365.  
  1366.        Example:  ARJ l archive -jg
  1367.  
  1368.            You use the "-n" option with "ARJ l" to list the files that DO NOT
  1369.            EXIST on the disk.
  1370.  
  1371.            Example:  ARJ l archive temp\ *.doc -n
  1372.  
  1373.         m: Move files to archive
  1374.  
  1375.        This command is similar to specifying the "a" command with the
  1376.        "-d" switch.  The "m" commands adds the selected files to the
  1377.        archive.  If the adds are successful, then the added files are
  1378.        deleted.  The move command does not ask permission before
  1379.        deleting the files.    Use the "ARJ a -d" command for that
  1380.        feature.
  1381.  
  1382.        Example:  ARJ m archive soft\*.*
  1383.  
  1384.        The "m" command when used with "-f" and "-u" will delete any
  1385.        successfully added files as well as any files that are already
  1386.        up to date in the archive.  It is STRONGLY suggested that you
  1387.        always use the "-jt" option with move commands to set ARJ to
  1388.        verify the archive before deleting the input files.
  1389.  
  1390.            At ARJ 2.30 and above, ARJ will also attempt to delete any
  1391.            directories that are added to the archive.  Directories can ONLY
  1392.            be selected by using the "-a1" option.  Directories with
  1393.            UNSELECTED files will not be deleted.
  1394.  
  1395.        Example:  ARJ m archive -a1 soft\*.* soft   deletes soft
  1396.                      ARJ m archive -a1 soft\*.*        does not delete soft
  1397.  
  1398.     n: reName files in archive
  1399.  
  1400.        This command allows you to change the names of the files stored
  1401.        in an ARJ archive.  ARJ will prompt for the new name of each
  1402.        selected file.  You can skip changing the name of a particular
  1403.        file by entering a blank line.
  1404.  
  1405.        Example:  ARJ n archive *.c
  1406.  
  1407.        In the above example, ARJ prompts for new names for all *.c
  1408.        files.
  1409.  
  1410.     o: Order files in archive
  1411.  
  1412.        This command allows you to re-order the files within the
  1413.        archive.  You may specify the order of files on the command line
  1414.        or you can use one or more list files.  Any files in the archive
  1415.        that are not specified on the command line or in a list file
  1416.        will be placed at the end of the archive in the same relative
  1417.        order that they were originally.  No wildcard names can be used
  1418.        as order specifications.  The filenames in the list file must be
  1419.        entered one per line.
  1420.  
  1421.        Example:  ARJ o archive file1 file2 file3
  1422.  
  1423.        In the above example, the files "file1", "file2", and "file3"
  1424.        will be ordered first in the archive.  Any remaining files will
  1425.        follow those.
  1426.  
  1427.        Example:  ARJ o archive !list
  1428.  
  1429.        In the above example, the archive will be ordered according to
  1430.        the order of the names in the file "list".
  1431.  
  1432.        IMPORTANT:  For the "o"rder command, the list file option has
  1433.        one special feature.  If the list file is named ARJSORT.$$$, ARJ
  1434.        will expect the file to have been built with the ARJ v -jv1
  1435.        command.  This ARJSORT.$$$ list file may be specified with a
  1436.        pathspec.  See the ARJSORT.BAT batch file for an example of this
  1437.        special feature.
  1438.  
  1439.        To facilitate building list files, the "v" command in ARJ will
  1440.        produce special outputs with the "-jv" switch and the "-jv1"
  1441.        switch.
  1442.  
  1443.        The "-jv" switch will display only the pathnames stored within
  1444.        the archive.  No other listing data is displayed.  This output
  1445.        can be re-directed to a file for manual sorting into a list
  1446.        file.
  1447.  
  1448.        The "-jv1" switch will display the standard verbose display with
  1449.        a few modifications.  No sequential number field will be
  1450.        displayed.  No comment field will be displayed.  The pathname is
  1451.        appended to the archive file description data instead of being
  1452.        on a separate line.    Displayed just before the pathname field
  1453.        are the file extension and filename.  These fields are available
  1454.        so that the user can sort the text lines by date-time, file
  1455.        extension, CRC value, etc.  Text editors like Qedit and SLED
  1456.        allow the user to sort text lines via an embedded text field.
  1457.  
  1458.        At ARJ 2.20 and above, you cannot "o"rder a multiple volume
  1459.        archive and should not.
  1460.  
  1461.     p: Print files to standard output
  1462.  
  1463.        Output files to standard output.  This function works such that
  1464.        the output file will contain only the file data extracted.  This
  1465.        is important for UNIX-like usage.
  1466.  
  1467.        Example:  ARJ p archive manual.doc > output.fil
  1468.  
  1469.        In the above example, output.fil will be an exact copy of
  1470.        manual.doc.    There will be no extraneous header information in
  1471.        output.fil.    All extraction phase information is written to the
  1472.        STDERR device, which is normally the display screen.
  1473.  
  1474.        Example:  ARJ p archive manual.doc > LPT1
  1475.  
  1476.        In the above example, the standard output is redirected to the
  1477.        printer device.  This does not involve any intermediate disk
  1478.        files.  However, when redirecting to the printer, ARJ will
  1479.        translate binary files to text, causing possible loss of data.
  1480.        The ARJ command "ARJ e archive manual.doc -jwLPT1" will output a
  1481.        binary file to the printer without loss of data.
  1482.  
  1483.        ARJ sets the file date-time stamp of the output stream.  File
  1484.        viewing as in ARJ p archive name | LIST /s will display the
  1485.        correct file date and time.
  1486.  
  1487.        The "-jp" option can be used to pause the screen output as in the
  1488.        "s" command.  The "-jv" option will allow the display of IBM
  1489.        graphics characters with the "-jp" option.
  1490.  
  1491.        NOTE:  Because of a problem using fwrite() and STDOUT, errors
  1492.        occurring during redirection to serial and printer ports may not
  1493.        be detected.  Errors during redirection to disk files will be
  1494.        detected.
  1495.  
  1496.     r: Remove paths from filenames
  1497.  
  1498.        This command sets ARJ to remove the path component from the
  1499.        specified filenames stored in the archive.  The default is all
  1500.        filenames stored in the archive.  This command is useful if you
  1501.        forgot to specify "-e" to exclude paths.
  1502.  
  1503.     s: Sample files to screen with pause
  1504.  
  1505.        This command is similar to the "p" command except that one
  1506.        screenful of data is displayed to the user and a user action is
  1507.        then requested.  The action prompt can be suppressed with the
  1508.        "-y" switch.
  1509.  
  1510.        The "s" command filters the text to output by truncating at 79
  1511.        characters per line and displaying '?' for control characters.
  1512.        The "-jv" option will allow the display of IBM graphics
  1513.        characters.
  1514.  
  1515.     t: Test integrity of archive
  1516.  
  1517.        Test the contents of the selected files for the correct CRC
  1518.        value.  ARJ uses a 32 bit CRC to validate the contents of the
  1519.        files.  The use of 32 bit CRCs is many times better than the
  1520.        use of 16 bit CRCs for the detection of errors.
  1521.  
  1522.     u: Update files to archive
  1523.  
  1524.        Update older files in the archive and add files that are new to
  1525.        the archive.
  1526.  
  1527.        Example:  arj u software
  1528.  
  1529.            When updating a file in an archive with a file that is NOT
  1530.            newer and if the -jv option is selected, ARJ will display a
  1531.            message that there is "no change".
  1532.  
  1533.     v: Verbosely list contents of archive
  1534.  
  1535.        This command lists the full pathname and comments of the archive
  1536.        files as well as the same information as the "l" command.
  1537.  
  1538.        The "v" command now displays a sequence number preceding the
  1539.        pathname.  This number can be used with the "-#" option to
  1540.        access specific files within an archive.
  1541.  
  1542.        Example:  ARJ v archive -jg
  1543.              ARJ x archive -# 5 10
  1544.  
  1545.        Use the "-jp" switch to pause the output after each screen.
  1546.  
  1547.        The "-jv" switch will display only the pathnames to the screen.
  1548.  
  1549.        The "-jv1" switch will display the archive data in a manner
  1550.        suitable for sorting on various fields for use with the "o"
  1551.        command.
  1552.  
  1553.     w: Where are text strings in archive
  1554.  
  1555.        This command allows the user to search for text strings within
  1556.        archives.
  1557.  
  1558.        ARJ will prompt the user whether to ignore case when searching.
  1559.        This search option takes MS-DOS code pages into account so that
  1560.        casing of accented/umlauted characters will be done correctly.
  1561.  
  1562.        ARJ will also prompt the user for the number of lines of context
  1563.        of a match to display.  If a number greater than zero is chosen,
  1564.        ARJ will display the matched string and the surrounding context
  1565.        with all of the non-printable characters including newlines
  1566.        replaced by question marks.    The context lines displayed will be
  1567.        78 characters in length.  When the display context option is
  1568.        chosen, ARJ will inhibit the progress indicator.  If the "-jv"
  1569.        is set, IBM graphics characters (128 to 255) will be displayed.
  1570.  
  1571.        Then, this command will prompt the user for up to 20 text strings
  1572.        to search for within the archive.  A count of all matches will be
  1573.        displayed after each individual file is scanned.
  1574.  
  1575.        Search strings are limited to 79 characters.
  1576.  
  1577.        Matches that span archive volumes will not be detected by
  1578.        this string search.
  1579.  
  1580.        You can search multiple ARJ archives with a command like:
  1581.  
  1582.        ARJ w \docs\*.arj
  1583.  
  1584.        You may page pause the display with the "-jp" option.
  1585.  
  1586.        The "-jq" option can be used to supply the necessary parameters
  1587.        to the ARJ w command.
  1588.  
  1589.        The option string will be parsed as follows:
  1590.        1) the first character must be either "+" or "-" representing
  1591.           yes or no,
  1592.        2) the next character(s) represents the number of lines of
  1593.           context to display,
  1594.        3) the next character represents a non-digit separator,
  1595.        4) the next characters represent the search text.
  1596.  
  1597.        Examples:  ARJ w archive -jq+3+total    caseless search
  1598.                            display 3 context lines
  1599.                            search for "total"
  1600.               ARJ w archive "-jq-2-to be"  case sensitive search
  1601.                            display 2 context lines
  1602.                            search for "to be"
  1603.  
  1604.        You can use the "-hw" options to change the way ARJ displays
  1605.        the filenames being searched.
  1606.  
  1607.     x: eXtract files with full pathname
  1608.  
  1609.        This command extracts one or more files from the archive to
  1610.        their full paths in the current directory or to the base
  1611.        directory if specified.  ARJ normally stores pathnames as if
  1612.        they were children of the target directory.    Any drive or root
  1613.        directory specifications are stripped before extracting unless
  1614.        the "-jf" switch is specified with the "x" command.
  1615.  
  1616.        Example:  arj x archive *.c
  1617.  
  1618.        If you wish to extract only a portion of an archive and that
  1619.        portion is a directory containing directories, you should use
  1620.        the "-p1" switch.  See the "-p" switch for more information.
  1621.  
  1622.        The ARJ e and ARJ x commands now accept the "-d" option to
  1623.        provide an extract and delete option.  This feature requires
  1624.        that you specify the files to extract and delete.  ARJ will NOT
  1625.        default to "*.*" for this option.
  1626.  
  1627.        Refer to the description of the "e" command for more
  1628.        information about extraction.
  1629.  
  1630.     y: copY archive with new options
  1631.  
  1632.        The ARJ y command provides an easy interface to the -je and
  1633.        -je1 options as well as to the -jb, -jb1, and -jb2 options.
  1634.  
  1635.        Examples:  ARJ y archive -je1  convert an archive to an SFX
  1636.               ARJ y archive -jb   make an archive a backup type
  1637.               ARJ y archive -jb1  reset the backup flag
  1638.               ARJ y archive -jb2  unmark all backup files
  1639.  
  1640.  
  1641.      ARJ SWITCH OPTIONS:
  1642.  
  1643.     ?: Display full help screens
  1644.  
  1645.        The command "ARJ -?" displays several screens of help
  1646.        information with page pauses.  The command "ARJ -? -jp" displays
  1647.        the help screens without page pauses.  You can also redirect the
  1648.        output to a file as in:
  1649.  
  1650.        ARJ -? > help.txt
  1651.  
  1652.        ARJ may not detect network file redirection and will pause per
  1653.        screenful.
  1654.  
  1655.     -: skip any more switch options
  1656.  
  1657.        The switch option "--" will cause ARJ to stop looking for any
  1658.        more switch options on the command line.  This is useful for
  1659.        entering filenames beginning with "-".
  1660.  
  1661.        Example:  ARJ a archive -- -file
  1662.  
  1663.     +: inhibit ARJ_SW usage
  1664.  
  1665.        The switch option "-+" will inhibit ARJ from using the value of
  1666.        the ARJ_SW variable in ARJ switch processing.
  1667.  
  1668.        Example:  ARJ a archive -+ *.*
  1669.  
  1670.        The "-+" option can now be used to specify an environment variable
  1671.        name to use in place of the default "ARJ_SW".  This option can only
  1672.        be used on the command line.
  1673.  
  1674.        Example:  ARJ a archive -+ARJ_SW2
  1675.  
  1676.     &: install critical error handler
  1677.  
  1678.        By default, ARJ sets up a default interactive critical error
  1679.        handler to handle errors like "sector not found" and "drive not
  1680.        ready".  The user has the option of retrying the failed
  1681.        operation.  The user can press Control BREAK to abort to DOS.
  1682.  
  1683.        The "-&" option sets ARJ to install a non-interactive critical
  1684.        error handler.  This is designed for unattended ARJ use.  This
  1685.        handler will intercept errors that produce the "Abort, Retry ..."
  1686.        error messages like bad sector errors and file sharing
  1687.        violations.    It can be specified on the command line or via the
  1688.        environment variable.  Please note that if you specify "-&" on
  1689.        the command line, the handler is installed immediately before any
  1690.        files are processed.  If you specify "-&" in the environment, ARJ
  1691.        will not install the handler until all switches are processed.
  1692.  
  1693.     !: set list char
  1694.  
  1695.        This option allows the user to set the character used for list
  1696.        files.  The option "-!" with no specified character toggles
  1697.        (turns off) the current list file character (default "!").
  1698.  
  1699.        Syntax:  ARJ a archive -!@ @list.fil
  1700.             ARJ a archive -! !.bat
  1701.  
  1702.        The first example above sets the list file character to the one
  1703.        used by LHA and PKZIP.
  1704.  
  1705.     $: add/extract volume label
  1706.  
  1707.        This option allows the user to store or extract DOS volume
  1708.        labels in ARJ archives.  It is possible to have multiple labels
  1709.        in one archive.  At ARJ 2.10 and above, you can only add or
  1710.        extract volumes labels at DOS 2.0 and above.  The "-$" option
  1711.        may be specified with or without a drive specification.  The
  1712.        drive can be specified by appending the letter and optionally
  1713.        the ":" to "-$".  If none is specified, ARJ assumes the current
  1714.        drive unless a specified target base directory has a drive
  1715.        specification.
  1716.  
  1717.        WARNING:  Currently, ARJ allows more than one volume label and
  1718.        duplicate volume labels in the same archive.  You can delete one
  1719.        or more duplicate labels with the "ARJ d -q archive label"
  1720.        command.  ARJ will query you on each occurrence of "label".
  1721.        This "faulty" mechanism allows a file and label of the same name
  1722.        to be added to an archive.  The capability of having duplicate
  1723.        labels in the same archive MAY NOT be present in future versions
  1724.        of ARJ.
  1725.  
  1726.        The SFX and SFXJR modules DO NOT support volume label extraction!
  1727.  
  1728.        On the list screen, volume labels will be indicated by the "V"
  1729.        under the "T" column.
  1730.  
  1731.        Syntax:  ARJ a archive -$           add all files and the label
  1732.                            of the current drive.
  1733.             ARJ a archive ... -$B      add only the label of drive B
  1734.             ARJ a archive ... -$B:     add only the label of drive B
  1735.             ARJ u archive ... -$B:     add only the label of drive B
  1736.  
  1737.        To extract volume labels, you must select the label by setting
  1738.        "-$" and specifying a matching wildname/filename.
  1739.  
  1740.        Syntax:  ARJ e archive doslabel -$  extract the label named
  1741.                            doslabel to the current drive.
  1742.             ARJ e archive -$D:           extract all files to the
  1743.                            current drive and extract the
  1744.                            label to drive D:.
  1745.             ARJ e archive label B:\ -$ extract all files to B:\ and
  1746.                            the label to drive B.
  1747.  
  1748.        ARJ will display all labels over 8 characters with a "." in it
  1749.        like a normal DOS filename.    However, ARJ will not restore this
  1750.        extra "." when extracting.  ARJ will only create standard
  1751.        uppercase DOS volume labels.
  1752.  
  1753.        Volume labels created by utilities other than standard DOS
  1754.        commands like LABEL and FORMAT may cause label access problems
  1755.        for ARJ.  For example, Norton's VL.EXE can create labels with
  1756.        lowercase letters.  You will need to use LABEL.COM to delete
  1757.        these labels in order to let ARJ set a new label.  Programs that
  1758.        delete unusual labels must do absolute writes to disk or use a
  1759.        wildcard ("*.*") delete of files with the label attribute in the
  1760.        root directory.  A single bit corruption in the program can
  1761.        result in the deletion of ALL files in the root.  ARJ currently
  1762.        chooses not to take that risk.
  1763.  
  1764.     #: select files by order number
  1765.  
  1766.        The "-#" option allows the user to select files from an archive
  1767.        by their order number in the archive.  For example, the number 1
  1768.        selects the first file in the archive.  This option is useful in
  1769.        selecting files where there are duplicates in the archive.  It
  1770.        is also useful for batch type utilities that need to extract
  1771.        files sequentially from an archive for processing.  Archive menu
  1772.        programs should find this option very useful in processing
  1773.        archives with duplicate filenames.
  1774.  
  1775.        You can specify a series of files with the n1-n8 type syntax.
  1776.        No embedded spaces are allowed.
  1777.  
  1778.        ARJ e archive -# 1 4 12-25 40-100
  1779.  
  1780.        NOTE that the order number starts from 1 for each individual
  1781.        archive including multiple volume archives.    In other words, the
  1782.        first file in archive.a04 is number 1.
  1783.  
  1784.        Do NOT mix filenames with the numbers other than the base
  1785.        directory.
  1786.  
  1787.        Example:  ARJ e -# archive basedir\ 1 3 5 20 21
  1788.  
  1789.     a: allow any file Attribute
  1790.  
  1791.        By default ARJ will not select system or hidden files via
  1792.        wildcarding unless the "-a" option is specified.
  1793.  
  1794.        The "-a1" switch sets ARJ to add any directories in the selected
  1795.        set of matching filespecs to the archive being built.  This
  1796.        switch also selects hidden and system files as in the "-a"
  1797.        switch.  Even empty directories will be added.  The "l" command
  1798.        will display such directories with a "D" under the "T" (file
  1799.        type) header.
  1800.  
  1801.        Older releases of ARJ will skip over empty directory entries.
  1802.        The ARJSFX and ARJSFXJR modules CAN process empty directory
  1803.        entries.
  1804.  
  1805.        This option is useful for saving software directories with
  1806.        needed empty directories.
  1807.  
  1808.         b: Backup changed files
  1809.  
  1810.        The "-b" switch will select only files that have the archive bit
  1811.            set.  It will NOT reset archive bits.
  1812.  
  1813.            Example:  arj a a:backup c:\*.* -b -r -va   simulates FULL BACKUP
  1814.  
  1815.        b1: Backup changed files and reset archive bits
  1816.  
  1817.        If you specify the "-b1" option, files with the archive bit set
  1818.            will be selected AND the archive bits of all archived files will
  1819.        be reset after a successful archive has been built.
  1820.  
  1821.            Example:  arj a a:backup c:\*.* -b1 -r -va   simulates BACKUP
  1822.  
  1823.        b2: Only reset archive bits
  1824.  
  1825.            The "-b2" switch does NOT affect file selection.  It does cause
  1826.            ARJ to reset the archive bits of added files.  If the "-f" or
  1827.            "-u" option has been selected, ARJ will also reset the archive
  1828.            bits of files that are already duplicated in the archive.
  1829.  
  1830.        Example:  arj a e:archive c:\*.* -b2 -r    archives all files on
  1831.        the C drive and resets all archive bits.
  1832.  
  1833.        b3: reset archive bit during restore
  1834.  
  1835.        The "-b3" switch is used to reset the archive bits of files
  1836.        being extracted.  It is useful for setting the archive state so
  1837.        that a subsequent incremental backup will not backup these
  1838.        extracted files.
  1839.  
  1840.        b4: do not restore file attributes and reset archive bit
  1841.  
  1842.            The "-b4" switch is used to set ARJ to NOT restore any file
  1843.            attribute bits and to reset the archive bit of files being
  1844.            extracted.  It is useful for easing the cleanup/deletion of
  1845.            temporarily extracted archive files as in a virus scanning
  1846.            process.
  1847.  
  1848.        b5: do not restore any file attributes
  1849.  
  1850.            The "-b5" switch is used to set ARJ to NOT restore any file
  1851.            attribute bits and to allow the archive bit to stay set of
  1852.            files being extracted.
  1853.  
  1854.     c: skip time-stamp Check
  1855.  
  1856.        Normally with the "u" and "f" commands, ARJ will only update
  1857.        newer files to an archiver.    The "-c" switch will set ARJ to
  1858.        update the archive regardless of the date-time modified time
  1859.        stamps.
  1860.  
  1861.        When extracting files from an archive with the "-y" and "-f"
  1862.        switches set, ARJ would normally skip extracting older files.
  1863.        The "-c" switch will set ARJ to extract these older files.
  1864.  
  1865.     d: with Delete (move)
  1866.  
  1867.        This switch provides the standard MOVE command.  Successfully
  1868.        added files will be deleted.  When used with the "-f" or "-u"
  1869.        option, ARJ will also delete files that are already duplicated
  1870.        in the archive.  ARJ will prompt the user before deleting the
  1871.        files unless the "-y" switch is specified.  Also, you can use
  1872.        the "m" command which does not prompt before deleting the files.
  1873.            At ARJ 2.30 and above, when using the "-a1" to specify the
  1874.            selection of directories, ARJ will also delete the selected
  1875.            directories.
  1876.  
  1877.        ARJ a archive filename -d -y       is equivalent to
  1878.  
  1879.        ARJ m archive filename          and
  1880.  
  1881.        ARJ a archive filename
  1882.        delete filename
  1883.  
  1884.        The ARJ e and ARJ x commands now accept the "-d" option to
  1885.        provide an extract and delete option.  This feature requires
  1886.        that you specify the files to extract and delete.
  1887.  
  1888.        ARJ e archive -d file1 file2
  1889.  
  1890.     e: Exclude paths from filenames
  1891.  
  1892.        By default ARJ always stores the pathname of the archived file.
  1893.        This switch will set ARJ to store only the filename component.
  1894.  
  1895.        The "-e1" switch option sets ARJ to NOT store the base directory
  1896.        name with the filenames in the archive.
  1897.  
  1898.        Example:  ARJ a archive C:\SOFTWARE\ARJ\ *.* -r -e1
  1899.  
  1900.        In the above example, ARJ will NOT store the C:\SOFTWARE\ARJ\ as
  1901.        part of the filenames.
  1902.  
  1903.        When updating files within an archive, ARJ uses the full
  1904.        pathname to match against the full name of the selected files.
  1905.        The "-e" and "-e1" option affect this exact matching.  If "-e"
  1906.        is specified, only the filespecs of the selected files will be
  1907.        matched against the full pathname of the files in the archive.
  1908.        If "-e1" is specified, the full pathname minus the base
  1909.        directory of the selected files is used to match against the
  1910.        full pathname of the files in the archive.
  1911.  
  1912.        In other words, ARJ will only update a file within an archive if
  1913.        the name of the new file as stored in the archive would be
  1914.        identical to the name of the original file stored in the
  1915.        archive.
  1916.  
  1917.     f: Freshen existing files
  1918.  
  1919.        This switch used with the "e" or "x" commands sets ARJ to only
  1920.        extract newer files from the archive.
  1921.  
  1922.        This switch used with the "m" command sets ARJ to update only
  1923.        input files with newer dates than the ones in the archive.
  1924.        After the archive has been updated, all updated selected files
  1925.        and all up to date selected files will be deleted.
  1926.  
  1927.        The ARJ m -f command is very similar to the LHARC m command.
  1928.  
  1929.        f1: Freshen existing files (OLDER)
  1930.  
  1931.            This switch used with the "e" or "x" commands sets ARJ to only
  1932.            extract OLDER files from the archive.
  1933.  
  1934.         g: Garble with password
  1935.  
  1936.        This switch followed by a password "-gpassword" will encrypt or
  1937.        decrypt an archived file.  During a "l" or "v" command, a
  1938.        garbled file will display a "G" after the method number.
  1939.  
  1940.        Example:  ARJ e archive -gpassword
  1941.  
  1942.        If the "-g" option is followed by a question mark "?", ARJ will
  1943.        prompt the user for the password without displaying the password
  1944.        input.  The backspace key can be used to erase characters.
  1945.  
  1946.        Example:  ARJ a archive -g?
  1947.  
  1948.        Using the wrong password during extraction will result in a
  1949.        "Bad file data" or "CRC error" error message.
  1950.  
  1951.            Use the "g" command to garble an already existing ARJ archive.
  1952.  
  1953.            Please save your password in a safe place.  It may be nearly
  1954.            impossible to retrieve your garbled files if you forget your
  1955.            password.  There is no trick to recovering a lost password.
  1956.  
  1957.     i: with no progress Indicator
  1958.  
  1959.        Do not display the percentage progress indicator.  The progress
  1960.        indicator appears during the add, extract, search, and test
  1961.        operations.
  1962.  
  1963.        The "-i1" option provides a bar type graphical progress
  1964.        indicator for the compression, extraction, and testing type
  1965.        commands of ARJ.  This provides an alternative to the simple
  1966.        numeric increasing percentage progress indicator.
  1967.  
  1968.        The "-i2" option provides a combined percentage and bar progress
  1969.        display.
  1970.  
  1971.     j: selects alternate set of switch characters.
  1972.  
  1973.        This switch toggles the set of switch characters.  The toggle is
  1974.        reset at end at of each separate switch sequence back to the
  1975.        main set of switch characters.
  1976.  
  1977.        For example, "-ja" is not the same function as "-a".  However,
  1978.        "-jja" is the same as "-a" because of the double toggle.  Also,
  1979.        "-jaje" is NOT the same as "-ja -je".  The switch sequence
  1980.        "-jae" is the same as "-ja -je".
  1981.  
  1982.     k: Keep a .BAK of ARJ archive
  1983.  
  1984.        Create a ".BAK" of the original archive file during an update.
  1985.        The original archive will be suffixed with ".BAK".  Any existing
  1986.        ".BAK" file will be overwritten.
  1987.  
  1988.        This has no relation to "backup type" ARJ archives.
  1989.  
  1990.     l: create List_name file
  1991.  
  1992.        This switch will set ARJ to dump to the filename specified after
  1993.        the "-l" switch all of the filenames to be processed by this ARJ
  1994.        command.  For add type commands, this list contains all files
  1995.        that matched the file wildnames given on the command line.  For
  1996.        other commands, the file will contain only the original
  1997.        filenames and/or wildcard names.  Other options do NOT affect
  1998.        the output of filenames to this list file.  To get an index file
  1999.        for backup purposes, use the "-ji" option.
  2000.  
  2001.        This list file can be used as a listfile on the command line.
  2002.  
  2003.        Example:  ARJ a -lname.lst archive *.exe
  2004.  
  2005.        This example will create a file named "name.lst" with all *.exe
  2006.        files.
  2007.  
  2008.     m: with Method 0, 1, 2, 3, 4
  2009.  
  2010.        Method 0 = storing    (no compression)
  2011.        Method 1 = best compression for general use
  2012.                 (default compression method)
  2013.                 (requires 300,000 plus bytes memory)
  2014.        Method 2 = slightly less compression and faster
  2015.                 (requires 282,000 plus bytes memory)
  2016.        Method 3 = less compression and less memory and faster
  2017.                 (requires 250,000 plus bytes memory)
  2018.        Method 4 = fastest compression
  2019.                 (requires 235,000 plus bytes memory)
  2020.  
  2021.        Example:  ARJ a archive *.exe -m2
  2022.  
  2023.            The "-jm" option will usually improve the size reduction of
  2024.            method 1 at the cost of speed and memory.  The behavior of
  2025.            "-jm" with -m2, -m3 and -m4 is UNDEFINED.
  2026.  
  2027.        Method 4 uses a different decoder than 1 to 3.  Method 4 is
  2028.        almost twice as fast as method 1.
  2029.  
  2030.        During extraction, ARJ uses less memory than during compression.
  2031.        See the section on ARJ LIMITATIONS for more memory usage
  2032.        information.
  2033.  
  2034.     n: only New files (not exist)
  2035.  
  2036.        With the "e" or "x" commands, extract files that do not exist in
  2037.        the target directory.
  2038.  
  2039.        With the "a" or "m" commands, archive files that do not exist in
  2040.        the target archive.
  2041.  
  2042.            With the "d" or "l" commands, specify files that do not exist in
  2043.            the target directory.
  2044.  
  2045.     o: On or after date YYMMDDHHMMSS
  2046.  
  2047.        The switch "-o" by itself means select files modified today.  If
  2048.        "-o" is followed by a date and optionally a time, ARJ will only
  2049.        select files modified on or after that date-time.
  2050.  
  2051.        Example:  ARJ a test -o9001021700    means select files modified
  2052.        on or after Jan 2, 1990, 5:00 PM.
  2053.  
  2054.        Years less than "80" will be considered as 21st century years.
  2055.  
  2056.        There is no option for using other date-time formats.
  2057.  
  2058.        The switch "-ob" selects files modified before today.  If "-ob"
  2059.        is followed by a date and optionally a time, ARJ will only
  2060.        select files modified before that date-time.
  2061.  
  2062.        ARJ now accepts the use of "-o" and "-ob" options simultaneously
  2063.        to specify a range of selected dates.  This is useful for
  2064.        selecting files on a specific date.
  2065.  
  2066.        Example:  ARJ a archive *.* -o910101 -ob910102
  2067.  
  2068.        The "-o" option and/or the "-ob" option will default to today's
  2069.        date at midnight (0000 hrs) when specified without dates.
  2070.  
  2071.        The "-od" switch sets ARJ to select files no older than the
  2072.        specified number of days.  The days are calculated from
  2073.        midnight.
  2074.  
  2075.        Examples:  ARJ a archive -od0    select files modified today
  2076.               ARJ a archive -od1    select files modified yesterday
  2077.                         and today
  2078.  
  2079.     p: match using full Pathnames
  2080.  
  2081.        When "-p" is specified, ARJ looks for an exact pathname match.
  2082.        This can be modified by the "-e" option.
  2083.  
  2084.        For non-update commands and specified filenames with paths, ARJ
  2085.        will match the full path with or without the "-p" switch.
  2086.  
  2087.        To match directory paths that contain subdirectories, you should
  2088.        use the "-p1" switch.  This switch sets ARJ to match only the
  2089.        initial portion of the pathnames against the wildnames
  2090.        specified.  For example, if your archive contains the TURBOC++
  2091.        directory named TC and you wish to extract the INCLUDE
  2092.        subdirectory along with the subdirectory INCLUDE\SYS, you can
  2093.        use the following command:
  2094.  
  2095.        ARJ e archive TC\INCLUDE\*.* -p1
  2096.  
  2097.        If you wanted to extract all of the INCLUDE\S*.* files including
  2098.        the contents of the SYS subdirectory, you can use the following
  2099.        command:
  2100.  
  2101.        ARJ e archive TC\INCLUDE\S*.* -p1
  2102.  
  2103.     q: Query on each file
  2104.  
  2105.        This switch causes ARJ to prompt the user prior to acting upon
  2106.        each archived file for all but the "j", "l", "t", "v", and "w"
  2107.        commands.  This allows you selectively to delete, add, etc.
  2108.  
  2109.     r: Recurse subdirectories
  2110.  
  2111.        This switch will set ARJ to recurse any wildcards specified on
  2112.        the command line including ARJ archive filenames by traversing
  2113.        all subdirectories scanning for matches.
  2114.  
  2115.        ARJ will also recurse non-wildcard filenames as in:
  2116.        ARJ a archive FILE.BBS -r
  2117.  
  2118.     s: set archive time-Stamp
  2119.  
  2120.        This switch causes ARJ to set the date-time stamp of the archive
  2121.        to that of the newest file in the archive.
  2122.  
  2123.        This option will also work with non-update commands as in:
  2124.        ARJ l archive -s ...
  2125.  
  2126.        The "-s1" switch is used to keep the old archive date-time
  2127.        stamp.  The new archive will have the same timestamp as the
  2128.        original archive.
  2129.  
  2130.        The "-s2" switch is like the "-s" switch except that it only
  2131.        works for archive modification commands.  This makes it more
  2132.        suitable for use in the ARJ_SW environment variable.
  2133.  
  2134.     t: set file Type
  2135.  
  2136.        This switch causes ARJ to open and read the file to be archived
  2137.        in binary or text mode.  The default is binary mode (-t0).  To
  2138.        archive in text mode, use the -t1 switch.  The "-t" switch is
  2139.        equivalent to "-t0".
  2140.  
  2141.        If you specify the switch "-t0", ARJ will always use the binary
  2142.        mode even for freshening text mode files already in the archive.
  2143.  
  2144.        The file type "text" is only needed for future cross platform
  2145.        transfers of ARJ archives.  It enables ARJ to extract text files
  2146.        to the host file system with the text newline sequence that is
  2147.        correct for that operating system.
  2148.  
  2149.        However, this mode may produce slightly better size reduction.
  2150.        The "-t1" option combined with "-jh65000" can produce some of
  2151.        the best size reduction numbers.  Extraction of files compressed
  2152.        in text mode is slower than the extraction of binary files.
  2153.  
  2154.        You should NOT use the "-t1" switch while archiving in multiple
  2155.        volume mode.
  2156.  
  2157.            ****************************************************************
  2158.  
  2159.            DO NOT USE THE TEXT MODE ON NON-TEXT FILES!!!  Word processor
  2160.            format files are NOT TEXT FILES!  Text files are files like
  2161.            those created by EDLIN, EDIT, QEDIT, NOTEPAD, and BRIEF.  On
  2162.            non-text files ARJ will prematurely stop input if it finds an
  2163.            embedded EOF character (CTL Z).  This will produce a LOSS of
  2164.            data on binary files.  As of ARJ 2.30 and UNARJ 2.30, ARJ will
  2165.            extract text mode data in 8-bit format when extracted to the
  2166.            original type of platform. Only when the text file is extracted
  2167.            to a different type of platform will the 8-bit text be stripped
  2168.            to 7-bit text.
  2169.  
  2170.            ****************************************************************
  2171.  
  2172.        In "-t1" text mode, ARJ will look at the first 4096 bytes of the
  2173.        input file looking for non-text characters.    In "-t1g" text with
  2174.        graphics mode, ARJ will look at the first 4096 bytes of the
  2175.        input file looking for too many byte values over hex 7F.  If ARJ
  2176.        finds either condition it will automatically backtrack and
  2177.        switch to "-t0" (default) binary mode for that particular file.
  2178.        In addition at the end of compressing the input file, if ARJ
  2179.        finds that the input file size is not greater than 80 percent of
  2180.        the binary file size (size on disk), ARJ will backtrack and
  2181.        re-archive that file in binary mode.  This should help to avoid
  2182.        the problem of accidentally compressing executable files with
  2183.        the "-t1" option which results in lost data.  These tests are
  2184.        not foolproof.
  2185.  
  2186.        The original file size reported by the "l" and "v" commands is
  2187.        the actual number of bytes input during text mode compression.
  2188.        This is usually the MS-DOS file size minus the number of
  2189.        carriage returns in the file, since C text mode strips a file of
  2190.        carriage returns.  There can be problems with the file size
  2191.        because compressing in TEXT mode can be LOSSY (unnecessary
  2192.        characters may be lost).  This can cause problems for some
  2193.        archive conversion programs that check file sizes.
  2194.  
  2195.        The "-t" option has been modified to allow setting file type by
  2196.        suffix similar to "-js" option.  If you want to set the file type
  2197.        to text mode for .ASM and .C files, you would specify the option
  2198.        "-t1.asm.c".
  2199.  
  2200.        ARJ a archive *.* -t1.asm.c.h.doc
  2201.        ARJ a archive *.* -t1g.txt.doc
  2202.  
  2203.        Note that in the switch sequence "-t1f -t1f.doc.asm", the second
  2204.        switch does not override the first switch which specifies that
  2205.        all files are to archived in text mode.
  2206.  
  2207.        If you want to specify the binary file type by suffix, you must
  2208.        specify the default file type to text and then specify the type
  2209.        by suffix, because the default file type is normally binary.
  2210.  
  2211.        ARJ a archive *.* -t1 -t0.com.exe.obj
  2212.  
  2213.        Because of the way ARJ checks all files to be archived in text
  2214.        mode, some true text files will not pass the test.  In this
  2215.        case, you can specify the "f" modifier to force text mode.  This
  2216.        modifier can be combined with the "-t1." suffix option.  The "f"
  2217.        modifier must follow the "g" modifier if any.
  2218.  
  2219.        ARJ a archive *.bat -t1f
  2220.        ARJ a archive *.txt -t1gf
  2221.        ARJ a archive *.* -t1f.bat.asm.doc
  2222.  
  2223.        One trick that you can do with the -t1 option is to convert UNIX
  2224.        text files to MS-DOS text files.  If you have extracted the
  2225.        files out of the ZOO 2.10 archive and need to convert the
  2226.        linefeeds to carriage return/linefeed, you can use the following
  2227.        commands:
  2228.  
  2229.        ARJ a archive *.* -m0 -t1
  2230.        ARJ e archive *.* -y
  2231.  
  2232.     u: Update files (new and newer)
  2233.  
  2234.        This switch used with the "e" and "x" commands causes ARJ to
  2235.        extract newer and non-existing files.
  2236.  
  2237.        This switch used with the "m" command causes ARJ to update only
  2238.        input files with newer dates than the ones in the archive and
  2239.        add new files to the archive.  After the archive has been
  2240.        updated, all added files and updated selected files and all up
  2241.        to date selected files will be deleted.
  2242.  
  2243.         u1: Update files (non-existing and OLDER)
  2244.  
  2245.            This switch used with the "e" and "x" commands causes ARJ to
  2246.            extract OLDER and non-existing files.
  2247.  
  2248.         u2: Update different files
  2249.  
  2250.            This switch used with the "e" and "x" commands causes ARJ to
  2251.            extract CHANGED (different date-time or different size) and
  2252.            non-existing files.
  2253.  
  2254.     v: enable multiple Volumes
  2255.  
  2256.        This switch is required to put ARJ into multiple volume mode.
  2257.  
  2258.        This switch allows the creation of multiple volumes in the ADD
  2259.        mode.  The command "arj a a:arjvol \*.* -b -r -v360000" allows a
  2260.        user to backup up all files changed since the last backup to
  2261.        multiple floppy disks.  ARJ will pause between volumes to allow
  2262.        changing disks.  Subsequent volumes will be suffixed .A01, .A02,
  2263.        .A03, ... , .A99, .A00, .A01, etc.  You can start the volume
  2264.        series at .A01 by specifying the full name of the starting
  2265.        archive as "name.A01".
  2266.  
  2267.        After the pause to change diskettes, ARJ will check to make sure
  2268.        that the diskette has been changed.    However, this check is
  2269.            limited to 3 retries for the same volume.  This test can be
  2270.            inhibited with the "i" modifier.
  2271.  
  2272.            Example:  ARJ x a:archive -vi
  2273.  
  2274.        ARJ normally only creates volumes numbered up to .A99 for one
  2275.        hundred uniquely named volumes.  Then the numbers roll over to
  2276.        .A00.  When the archive name ends in .000, ARJ will create
  2277.        volumes numbered up to .999 for one thousand uniquely named
  2278.        volumes.  You can also start the series at .001.
  2279.  
  2280.        Example:  ARJ a -v720 -y -r archive.000 d:\
  2281.  
  2282.        Archived files can be split across volumes.    ARJ will try to
  2283.        fill each volume to within 200 to 1000 bytes of specified
  2284.        maximum size.
  2285.  
  2286.        The modifier "w" specifies to ARJ that files are NOT to be split
  2287.        across volumes except for one case.    That case is where the
  2288.        archived file would not fit in ONE whole volume.  This feature
  2289.        does not optimize the use of space in these type of volumes.
  2290.        With this feature, it is possible to have a volume of only 100
  2291.        or less bytes.
  2292.  
  2293.        An advantage to "w" type volumes is that updating of these
  2294.        volumes is supported for the "f"reshen command and other
  2295.        commands that do not add new files to the archive.  You can add
  2296.        files to these volumes only if you do NOT limit the volume size.
  2297.  
  2298.        The command "arj x a:arjvol -v" would restore files starting
  2299.        from arjvol.arj.  You must specify the entire ARJ volume name
  2300.        including the .Ann suffix when starting from the middle of a
  2301.        series of volumes or when the series starts with ".A01" or
  2302.        ".000", etc.
  2303.  
  2304.        You can suppress the next volume prompt with the "-jyv" option.
  2305.        When the multiple volume ARJ files to be used are located on
  2306.        drives with removable media (diskette drives, etc.), ARJ will
  2307.        ALWAYS PROMPT for the next diskette even with the "-y" option
  2308.        specified.  At DOS versions before 3.0, only drives A and B are
  2309.        considered removable.
  2310.  
  2311.        ARJ x a:arjvol -v -jyco
  2312.  
  2313.        The above example extracts in multiple volume mode and
  2314.        suppresses prompting for permission to create directories and to
  2315.        overwrite existing files.  ARJ will assume yes in these cases.
  2316.  
  2317.        Because of the splitting process, archived split files with a
  2318.        size of zero bytes are possible.  This is not an error.
  2319.  
  2320.        If you comment your archives with long comments, you should take
  2321.        that into account when specifying volume size.  You should
  2322.        specify a smaller volume size during the "a" command before
  2323.        adding the comments.
  2324.  
  2325.        The "-v" switch will accept the abbreviations 360, 720, 1200,
  2326.        and 1440.  These will be translated to 362,000, 730,000,
  2327.        1,213,000, and 1,457,000 bytes, respectively.  Please note that
  2328.        if the available disk space is less than the requested amount,
  2329.        ARJ will prompt the user for permission to continue.
  2330.  
  2331.        You can use the "K" modifier as a shortcut for "000".  For
  2332.        example, 100K means 100000.    "K" does NOT mean 1024.
  2333.  
  2334.        The "-vv" switch turns on the next volume beep option.  When you
  2335.        select this option, ARJ will sound a beep prior to the next
  2336.        volume.
  2337.  
  2338.        The "-va" switch sets the disk space auto-detect option.  ARJ
  2339.        will check for the disk space available on the target directory
  2340.        and try to use all or most of it.  This option is aimed at
  2341.        diskette usage.  Please note that this switch option detects
  2342.        free disk space.  It does not detect formatted disk space.
  2343.        If the space available is less than 10,000 bytes, ARJ will
  2344.        prompt the user for permission to continue.    Please note that
  2345.        ARJ can support the use of diskettes formatted at higher than
  2346.        normal capacities such as 3.5 inch HD diskettes formatted at
  2347.        1.6 MB.
  2348.  
  2349.        Examples:  ARJ a A:backup -b -va
  2350.               ARJ a backup -v360
  2351.  
  2352.        The "r" modifier allows the reservation of disk space on the
  2353.        first volume.  The number after the "r" specifies the space to
  2354.        reserve.  This is useful for software installation volumes.
  2355.  
  2356.        Example:  ARJ a install -v360r50K   make first volume 50000
  2357.                            bytes smaller than 360K.
  2358.  
  2359.        The switch modifier "s" can be used to make ARJ execute one
  2360.        specified system command prior to each volume or make ARJ pause
  2361.        for manual execution of system commands.  This is useful for
  2362.            purging target diskettes before ARJ writes to them.  Please note
  2363.            that when processing a large number of files, ARJ may not have
  2364.            enough free memory left to properly execute the system commands.
  2365.  
  2366.        The switch modifier "z" is identical to the "s" modifier except
  2367.        that the system command is NOT echoed to the screen.
  2368.  
  2369.        Optionally, after the "s" modifier, you can specify a system
  2370.        command or batch filename.  ARJ will automatically execute the
  2371.        command or batch file before each volume.  If the command has
  2372.        embedded blanks, then the entire switch option must be
  2373.        surrounded by double quotes.  The system command is executed
  2374.        before ARJ executes the auto-detect space option.
  2375.  
  2376.        Examples:  ARJ a A:backup -vas
  2377.               ARJ a A:backup -vvas
  2378.               ARJ a A:backup -v360s
  2379.               ARJ a A:backup -vvw360s
  2380.               ARJ a A:backup -vaspurge.bat
  2381.               ARJ a A:backup -v360sdelete.bat
  2382.               ARJ a A:backup "-vasFORMAT A:"
  2383.               ARJ a A:backup "-vasDIR C:\ "
  2384.  
  2385.        Note that the last example has a space before the last double
  2386.        quote mark.    If the last space is missing, the internal command
  2387.        line parser will make the double quote mark part of the DIR
  2388.        command.
  2389.  
  2390.        The "-v" switch now accepts its modifiers in any order.  The "s"
  2391.        and "z" modifiers must be last because any succeeding text is
  2392.        considered the system command to execute.
  2393.  
  2394.        Examples:  ARJ a volume -vavw    beep, autosize, whole files
  2395.               ARJ a volume -vavsDIR    beep, autosize, execute DIR
  2396.  
  2397.        Volume archives can be used as stand-alone archives for non-update
  2398.        commands except for the files that are split across volumes.
  2399.  
  2400.        It is recommended that the "-jt" (test archive) option be used
  2401.        with the "-v" switch to ensure perfectly built volumes as it is
  2402.        tedious to retest volumes after they are built.
  2403.  
  2404.        During ARJ operation in non-update commands, ARJ will not abort
  2405.        when it cannot open the correct sequential ARJ volume archive.
  2406.        It will report the open error and proceed to the "Ok to process
  2407.        the next volume?" prompt.  At this point it is possible to swap
  2408.        diskettes to put the correct volume in place.  This feature is
  2409.        disabled if the "next volume" prompt has been disabled.
  2410.  
  2411.        For those who have enough free hard disk space, the -v option
  2412.        can be used to make backing up the hard disk fairly easy.  ARJ
  2413.        can be set to create multiple floppy sized volumes on the hard
  2414.        disk for later copy to diskettes.  So even if ARJ is slow, you
  2415.        can fire up an ARJ backup and some time later, you can quickly
  2416.        copy the volumes to floppies.  Below are sample backup commands:
  2417.  
  2418.        arj a backup *.* -b2 -r -v360 -y -jt -js    full backup
  2419.        arj a backup *.* -b1 -r -v360 -y -jt -js    incremental backup
  2420.  
  2421.        *****************************************************************
  2422.  
  2423.            See the "-jn" and "-jx" options to see how to recover from an
  2424.            abort in the middle of a backup type operation.  ARJ will allow
  2425.            a restart in the middle of an aborted backup at the disk where
  2426.            the failure occurred.
  2427.  
  2428.        *****************************************************************
  2429.  
  2430.        WARNING:  Updating multiple volume archives with the "-v" switch
  2431.            set is NOT supported or recommended.  We cannot provide any
  2432.            technical support for this type of update.  By default, ARJ
  2433.            will not allow the updating of multiple volume archives.  You
  2434.            can specify the "-hu" option to bypass this protection.
  2435.  
  2436.        Example:  ARJ c archive -hu -zcomment.txt
  2437.  
  2438.        *****************************************************************
  2439.  
  2440.        TIP:
  2441.  
  2442.        To pre-determine the number of diskettes required to archive a
  2443.        set of data, you can take advantage of the "s" option of the
  2444.        "-v" switch.  The "s" option lets you execute a DOS command
  2445.        prior to each volume.  You can specify a command that deletes
  2446.        the previously created archive volume.  This lets you use the
  2447.        same floppy diskette/hard disk space to build the multiple
  2448.        volumes.
  2449.  
  2450.        Example:  ARJ a -r "-vasdel a:volume.a??" -y a:volume c:\*.*
  2451.  
  2452.     w: assign Work directory
  2453.  
  2454.        This switch option is HIGHLY recommended if you are archiving
  2455.        directly to diskettes or if you have a sufficient RAMDISK space.
  2456.  
  2457.        By default, ARJ builds a new ARJ archive file in the same
  2458.        directory as the old archive file.  By specifying the "-w"
  2459.        switch, you can specify the working directory where the
  2460.        temporary archive file will be built.  After the temporary
  2461.        archive file is built, it is copied over the original one and
  2462.        deleted.
  2463.  
  2464.        Normally ARJ requires enough disk space for the original archive
  2465.        and the new temporary archive.  Specifying the "-w" switch
  2466.        allows you to move some of that disk space requirement to
  2467.        another directory.
  2468.  
  2469.        When using the "-w" switch while archiving to multiple volumes,
  2470.        ARJ will check the available disk space in the work directory.
  2471.        If there is not enough space, ARJ will prompt for permission to
  2472.        continue.  This prompt can be suppressed with the "-y" and
  2473.        "-jyk" switches.
  2474.  
  2475.            If the copy of the temporary archive on top of the original
  2476.            archive aborts, you will have to do the copy manually.  ARJ will
  2477.            not delete the temporary archive in this error situation.
  2478.            If you press CTL BREAK during the copy process, ARJ will delete
  2479.            both the temporary archive and the target archive unless this
  2480.            was a modification of an existing archive.
  2481.  
  2482.        Example:  ARJ a -we:\temp\ archive *.c
  2483.  
  2484.        For speed reasons, you should always use the "-w" option when
  2485.        creating or modifying archives on diskettes.  You should specify
  2486.        a work directory on your hard disk or ramdrive.
  2487.  
  2488.        Example:  ARJ a -we:\ b:archive *.c
  2489.  
  2490.     x: Exclude filenames
  2491.  
  2492.        This switch is used to exclude filenames or wildnames from the
  2493.        list of filenames to be processed.
  2494.  
  2495.        Example:  ARJ a archive soft\*.* -r -x*.exe -x*.obj -xtest
  2496.  
  2497.        This example will archive all files in the soft directory and
  2498.        subdirectories with the exception of any files named "test"
  2499.        or ending in ".exe" and ".obj".
  2500.  
  2501.        You can also specify an exclude file list by preceding the
  2502.        filename with the list character "!".  The exclude file list
  2503.        must contain a list of filenames/wildnames one per line with no
  2504.        leading or trailing blanks.
  2505.  
  2506.        Example:  ARJ a archive soft\*.* -r -x!exclude.lst
  2507.  
  2508.        You can specify a pathname to exclude as in:
  2509.  
  2510.        ARJ a archive \dir\*.* -r -x\dir\*.*
  2511.  
  2512.        In the above example, ARJ will exclude all files in \dir
  2513.        but not the subdirectories in \dir.
  2514.  
  2515.        The "-x" option also allows you to exclude an entire path
  2516.        including subdirectories from being selected for processing.
  2517.  
  2518.        Syntax:  ARJ a archive C:\*.* -xC:\TEMP\
  2519.  
  2520.        The "\" after C:\TEMP indicates to ARJ that everything below
  2521.        C:\TEMP\ is to be excluded.
  2522.  
  2523.        Note that the exclude directory option requires that the
  2524.        directory be specified in the same relative path that the
  2525.        selected files use.
  2526.  
  2527.        Example:
  2528.  
  2529.        arj a archive \temp\*.* -x\temp\firstdir    is correct usage
  2530.        arj a archive \temp\*.* -xC:\temp\firstdir    is NOT correct because
  2531.                             of the C:
  2532.  
  2533.        The "-x" switch also works for non-update commands like
  2534.        "e"xtract and "l"ist.
  2535.  
  2536.        Examples:
  2537.  
  2538.        arj e archive -x*.exe       extract all files except *.exe files
  2539.        arj l archive -x*.exe -x*.obj   list all files except *.exe and *.obj
  2540.  
  2541.        A maximum of 8000 filenames or wildnames can be excluded.
  2542.  
  2543.        Note that the "-x" option is unaffected by the "-p" option.
  2544.  
  2545.     y: assume Yes on all queries
  2546.  
  2547.        Use this switch for batch type uses of ARJ.    This switch
  2548.        disables most of the normal user queries during ARJ execution.
  2549.        Use this switch to suppress overwrite queries in the "e" and "x"
  2550.        commands, to suppress the make new directory query in the "e"
  2551.        and "x" commands, to suppress the new filename prompt when an
  2552.        open file operation fails in the "e" and "x" commands, to
  2553.        suppress the pause during the "s" command and to suppress the
  2554.        next volume pause using the "-v" option to create volumes on the
  2555.        hard disk.
  2556.  
  2557.        The "-y" switch will NOT suppress the "-v" next volume prompt
  2558.        when the archive is located on a drive with removable media
  2559.        such as a diskette drive.
  2560.  
  2561.        Use this option with due caution, especially during extraction
  2562.        as this sets ARJ to overwrite files.  However, the "-n" option
  2563.        can be used to avoid any overwriting.
  2564.  
  2565.        As an alternative, you can use the "-jy" option which lets you
  2566.        suppress individual types of user queries.
  2567.  
  2568.     z: supply file for archive comment
  2569.  
  2570.        The "-z" switch has been provided to facilitate batch commenting
  2571.        of ARJ archives with the "c" command.  When the "-z" option has
  2572.        been specified with or without a comment file, ARJ will only
  2573.        process the archive header comment and will skip any file
  2574.        commenting unless the "-jz" switch has been specified.
  2575.  
  2576.        A comment file containing only a single blank can be used to
  2577.        erase comments from ARJ archives.
  2578.  
  2579.        Syntax:  arj c archive -z
  2580.             arj c archive -zcomment.txt
  2581.             arj a archive -zcomment.txt
  2582.  
  2583.        The "-z" option also allows one to dump the ARJ archive header
  2584.        comment to a file.  This will only extract the main archive
  2585.        comment and not the individual file comments.
  2586.  
  2587.        Syntax:  arj e archive ... -zcomment.txt  dumps only the comment
  2588.             arj x archive -zcomment.txt      dumps comment and files
  2589.  
  2590.        ja: show ANSI comments
  2591.  
  2592.        Display any ANSI escape sequences unaltered.  By default, escape
  2593.        characters in comments are not displayed.  Not displaying ANSI
  2594.        command is the default because of ANSI BOMBS.  Using ANSI
  2595.        commands, it is possible to redefine the keyboard of users using
  2596.        certain ANSI drivers.  For example, a key could be redefined to
  2597.        "echo y | del \*.*".
  2598.  
  2599.       ja1: inhibit the display of the archive comment
  2600.  
  2601.        The "-ja1" switch will suppress the display of the archive
  2602.        comment.
  2603.  
  2604.        jb: set archive Backup type
  2605.  
  2606.        If you modify an archive with the "-jb", ARJ sets the backup
  2607.        flag in the archive.  On adding, updating, or moving files to a
  2608.        backup type archive where a duplicate filename exist, ARJ marks
  2609.        the original file as a backup and inserts a copy of the
  2610.        duplicate filename.    The backup flag will stay set until reset
  2611.        with the "-jb1" option.
  2612.  
  2613.        These backup files take up space in the archive.  They can be
  2614.        purged with the ARJ k command.
  2615.  
  2616.        Examples:  ARJ a -jb archive dir\file1
  2617.               ARJ e -jb archive dir\file2
  2618.               ARJ k archive *.c
  2619.               ARJ y -jb archive       just sets the backup flag
  2620.  
  2621.        Normally, backup files will not be selected by ARJ commands.  In
  2622.        other words, an ARJ l archive command will not display backup
  2623.        files.  However, the "-jg" option will include backup files in
  2624.        the selection process.  For example, ARJ l archive -jg will
  2625.        display all files including backup files.
  2626.  
  2627.        This option is especially useful for backing up files.  You can
  2628.        maintain several generations of the same file in the same
  2629.        archive.
  2630.  
  2631.       jb1: reset Backup type archive
  2632.  
  2633.        This switch allows you to reset the backup flag in a backup type
  2634.        archive.  Addition of files to such an archive will no longer
  2635.        result in files being marked as backups.  However, this option
  2636.        does not remove already existing backup files.
  2637.  
  2638.        Example:  ARJ y archive -jb1
  2639.              ARJ a archive filename -jb1
  2640.  
  2641.       jb2: unmark backup file
  2642.  
  2643.        The "-jb2" option is used with the "y" command to unmark files
  2644.        marked as backups.  Note that this may produce duplicate files
  2645.        in the archive.
  2646.  
  2647.        Example:  ARJ y archive -jb2        unmark all backup files
  2648.              ARJ y archive *.doc -jb2  unmark all *.doc files
  2649.              ARJ y archive -# -jb2 5   unmark the 5th file
  2650.  
  2651.       jb3: mark as backup file
  2652.  
  2653.        The "-jb3" option is used with the "y" command to mark files as
  2654.        backups.
  2655.  
  2656.        Example:  ARJ y archive -jb3        mark all files as backups
  2657.              ARJ y archive *.doc -jb3  mark all *.doc files
  2658.              ARJ y archive -# -jb3 5   mark the 5th file
  2659.  
  2660.        jc: exit after Count of files
  2661.  
  2662.        The "-jc" option sets ARJ to exit early from an archive scan
  2663.        when the specified number of files have been extracted, listed,
  2664.        printed, etc.  If no number has been specified, ARJ will set
  2665.        that number to the number of filename arguments.
  2666.  
  2667.        Examples:  ARJ e -jc archive file1 file2 file3
  2668.               ARJ e -jc5 archive *.bat
  2669.  
  2670.        Note that "*.*" is considered a count of ONE argument.
  2671.  
  2672.        This option does NOT WORK when modifying an archive.
  2673.  
  2674.        jd: ensure free Disk space
  2675.  
  2676.        In extraction mode, this option causes ARJ always to ensure that
  2677.        it will leave the user specified amount of disk space available.
  2678.        ARJ will skip files that would exceed the disk space available
  2679.        limit.  Each file that is skipped will count as an error.  The
  2680.        default free space is zero bytes.
  2681.  
  2682.        Example:  ARJ e archive basedir\ *.doc -jd100K
  2683.  
  2684.        In the above example, ARJ will not extract any files that will
  2685.        cause the disk free space to be less than 100,000 bytes.  The
  2686.        "K" is a synonym for "000".    For example, 100K means 100000.
  2687.  
  2688.        In "l"ist or "v"erbose list mode, this option sets an error
  2689.        check at the end of the listing screen based upon the total of
  2690.        the original sizes of the files selected.  If the total size
  2691.        would exceed the user specified free space limit, ARJ will
  2692.        report an error at the end of the listing screen.
  2693.  
  2694.        Example:  ARJ l archive *.doc -jd10000
  2695.  
  2696.        In this example, ARJ will report an error if the current
  2697.        available disk space minus the total of the *.doc files is less
  2698.        than the specified minimum of 10,000 bytes.
  2699.  
  2700.        Example:  ARJ e archive *.* -jd0
  2701.  
  2702.        In this example, ARJ will skip extraction of any files that
  2703.        would result in a disk full error.
  2704.  
  2705.        je: create self-Extracting archive
  2706.  
  2707.        This option causes ARJ to create a self-extracting .EXE file
  2708.        instead of an .ARJ file.  This ARJSFX self-extractor is about
  2709.            16K bytes in size and supports full pathname extraction.
  2710.        The "-je1" switch creates a smaller self-extracting .EXE file.
  2711.            The ARJSFXJR module is about 6K bytes in size.  Both modules
  2712.        support display of the archive comment.  The ARJSFX module also
  2713.            provides a query to continue the extraction after the display of
  2714.            the archive comment.
  2715.  
  2716.            When the "-je" option is used with the "-v" option, the new
  2717.            ARJSFXV module is used. The ARJSFXV module supports multiple
  2718.            volume archives.  This is a very large module, about 27K bytes.
  2719.  
  2720.            The "-je -v" option combination requires DOS 3.0 and above to
  2721.            create the self-extracting archive.
  2722.  
  2723.            The suppress all messages option "-*" is only available to
  2724.            registered users in the commercial version of ARJ.
  2725.  
  2726.        Please note that including the SFX modules, DEARJ, or ARJ as
  2727.        part of a hardware and/or software package ALWAYS REQUIRES an
  2728.            ARJ distribution license EXCEPT when distributing between two
  2729.            computers already licensed for ARJ usage.
  2730.  
  2731.            As of ARJ 2.10, the SFX executable modules are pre-compressed
  2732.            using LZEXE.  This may cause false indications with EXE scanning
  2733.            programs showing that an ARJ SFX archive is a LZEXE compressed
  2734.            file.  Only the executable header module is LZEXE compressed.
  2735.            The actual archive is ARJ compressed, of course.  The LZEXE
  2736.            header is modified to avoid extraction by UNLZEXE type programs.
  2737.            UNLZEXE may truncate an ARJ self-extractor of its archive.
  2738.  
  2739.            All SFX modules have an identification string located in the
  2740.        first 1000 characters of the executable.  The identification
  2741.        string is "aRJsfX" without the quotes and in the exact case.
  2742.  
  2743.        The current commands ARJSFX supports are:
  2744.  
  2745.        Usage: ARJSFX [-command] [-switch(s)] [directory\] [file(s)]
  2746.  
  2747.        Commands:
  2748.        e: Extract files           v: Verbosely list contents
  2749.        l: List contents           x: eXtract files with pathname (default)
  2750.        t: Test contents
  2751.  
  2752.            Switches:
  2753.            a: show ANSI comments       m: Make directories
  2754.            b: prompt for directory     n: only New files
  2755.            c: skip time stamp Check    o: Overwrite files
  2756.            d: display program option   p: match with Pathname
  2757.            f: Freshen existing files   s: skip Security check
  2758.            g: unGarble with password   u: Update files
  2759.            i: no progress Indicator    w: skip extract prompt
  2760.            k: long extract messages    y: assume Yes on queries
  2761.            *: suppress all messages
  2762.  
  2763.        NOTE!!!  ARJSFX uses the "-" character before all commands and
  2764.        switches.  This is to allow extraction of files named e, l, etc.
  2765.  
  2766.        The default ARJSFX command is "-x" extract files with pathnames.
  2767.        At ARJSFX startup, the self-extracting archive will display any
  2768.        archive header comment followed by a query to "Continue
  2769.        extraction?".  This query can be suppressed by specifying the
  2770.            "-w" option on the command line.
  2771.  
  2772.            The "-b" option prompts the installing user for the name of the
  2773.            install directory.  If a target directory is specified on the
  2774.            command line, it is used as the default install directory which
  2775.            the installing user may change.  Note that the target directory
  2776.            must end in "\"; otherwise, it will be interpreted as a filename
  2777.            spec.
  2778.  
  2779.            Example:  ARJSFX C:\INST_DIR\ -b
  2780.  
  2781.        When extracting pathnames, ARJSFX will prompt for permission to
  2782.            create new directories unless the "-m" or "-y" option is
  2783.            specified. ARJSFX will create absolute or relative directories
  2784.            depending upon whether the root directory has been stored in the
  2785.            pathname in the archive.  Saving the root is done using the
  2786.            "-jf" option of ARJ.EXE.
  2787.  
  2788.        To avoid extracting to paths, the archive creator should use the
  2789.            ARJ "-e" option to exclude path specs.  The user extracting the
  2790.            SFX module can specify the "-e" command to extract to the
  2791.            current directory.
  2792.  
  2793.        ARJSFX does not support compression method 4.
  2794.  
  2795.            The ARJSFX module supports the ARJ-SECURITY envelope feature by
  2796.            itself.  The ARJ-SECURITY feature is only available as a
  2797.            licensed option.  It is intended as a feature for software
  2798.            developers.  The "-s" option allows the user to skip the testing
  2799.            of the ARJ-SECURITY envelope.
  2800.  
  2801.        ARJ will create a self-extracting module without an intermediate
  2802.        archive file.
  2803.  
  2804.        Example:  ARJ a software *.* -je
  2805.  
  2806.        If you want to make a self-extracting module from an ARJ
  2807.        archive, use the "y" command.
  2808.  
  2809.        Example:  ARJ y software -je
  2810.  
  2811.        IMPORTANT:  When executing an ARJSFX module on a system with the
  2812.        CONSOLE device set to RAW mode, the ARJSFX module will abort on
  2813.        user input to avoid hanging the system.  Use of the "-y" switch
  2814.        on the command line will avoid the problem.
  2815.  
  2816.        Example:  ARJ230 -y
  2817.  
  2818.        The ARJSFXJR module created with the "-je1" switch is a
  2819.        stripped-down version of ARJSFX.  ARJSFXJR does not support method
  2820.        4 or text mode "-t1" or garbled "-g" archives.  An ARJSFXJR
  2821.        module containing files with pathnames will extract to the paths.
  2822.        ARJSFXJR will automatically create directories as needed to build
  2823.        the paths.
  2824.  
  2825.        Example:  ARJ y software -je1
  2826.  
  2827.        The current commands ARJSFXJR supports are:
  2828.  
  2829.        Usage: ARJSFXJR [-switch(es)] [drive:][directory\]
  2830.  
  2831.        Switches:
  2832.        n: set ARJSFXJR to NOT count as an error the skipping of files
  2833.        o: set ARJSFXJR to overwrite existing files
  2834.            *: suppress all display messages
  2835.  
  2836.        You can specify a target_directory or drive or both.  However,
  2837.        you must specify the ending "\" or ":" symbol.
  2838.  
  2839.        ARJSFXJR -o C:\SOFT\  -> self-extract into directory "C:\SOFT\"
  2840.                     in overwrite mode.
  2841.  
  2842.        Both the ARJSFX and ARJSFXJR modules will by default extract to
  2843.        relative/absolute path specs if the archive contains
  2844.        relative/absolute path specs.
  2845.  
  2846.        More examples:
  2847.  
  2848.        Build an SFX module with absolute pathnames for extraction to
  2849.        the absolute pathnames:
  2850.  
  2851.        ARJ a -r -je -jf DISTRIB \product\*.*
  2852.  
  2853.        The user need only type "DISTRIB -y" to recreate automatically
  2854.        the "product" directory on the current drive.
  2855.  
  2856.        Build an SFX module with relative pathnames for extraction to
  2857.        relative pathnames:
  2858.  
  2859.        ARJ a -r -je DISTRIB \product\*.*
  2860.  
  2861.        The user need only type "DISTRIB -y" to recreate automatically
  2862.        the "product" subdirectory in the current directory.  The user
  2863.        can recreate the "product" subdirectory in another directory by
  2864.        typing the command "DISTRIB -y directory_name\".
  2865.  
  2866.        Build an SFX module with relative pathnames for extraction to
  2867.        relative pathnames excluding the base directory:
  2868.  
  2869.        ARJ a -r -e1 -je DISTRIB \product\    *.*
  2870.  
  2871.        The user need only type "DISTRIB -y" to recreate automatically
  2872.        the files and subdirectories of the "product" directory in the
  2873.        current directory.
  2874.  
  2875.        Build an SFXJR module with filenames (no path specs).
  2876.  
  2877.        ARJ a -e -je1 DISTRIB \product\*.*
  2878.  
  2879.        The user need only type "DISTRIB" to extract automatically the
  2880.        entire contents of "DISTRIB.EXE" to the current directory.
  2881.  
  2882.  
  2883.            The current commands that ARJSFXV supports are as follows:
  2884.  
  2885.            Usage: ARJSFXV [-command] [-switch(s)] [directory\] [file(s)]
  2886.  
  2887.            Commands:
  2888.            e: Extract files            v: Verbosely list contents
  2889.            l: List contents            x: eXtract files with paths (default)
  2890.            t: Test contents
  2891.  
  2892.            Switches:
  2893.  
  2894.            a: show ANSI comments       u: Update files
  2895.            b: prompt for directory     w: Write to filename
  2896.            c: skip time stamp Check    y: assume Yes on all queries
  2897.            d: check Disk space         z: assume yes for queries
  2898.            f: Freshen existing files      a - append file
  2899.            g: unGarble with password      c - create directory
  2900.            h: display this screen         k - disk space check
  2901.            i: no progress Indicator       m - ok to extract
  2902.            j: overwrite readonly          n - new filename prompt
  2903.            k: skip preset options         o - overwrite file
  2904.            n: only New files              r - erase type-ahead
  2905.            p: match with Pathname         v - proceed to next volume
  2906.            r: set Recover mode         #: start install at disk N
  2907.            s: disable file Share mode  $: extract volume label
  2908.  
  2909.            Please note that the switch options for ARJSFXV use different
  2910.            letters than ARJ.EXE does.
  2911.  
  2912.            The "-#" option assumes that the first diskette is number ONE.
  2913.  
  2914.            Build an ARJSFXV module with filenames (no path specs).
  2915.  
  2916.            ARJ a -e -je -va A:INSTALL c:\product\*.*
  2917.  
  2918.            It is strongly recommended that multiple volume self-extracting
  2919.            archives NOT be built by modifying an existing multiple volume
  2920.            archive.
  2921.  
  2922.  
  2923.            With this new release, users can control the behavior of the
  2924.            self-extracting modules by embedding the command line within the
  2925.            self-extracting archive.  This allows the builder to make
  2926.            self-extracting archives that create directories by default.
  2927.            The user may bypass the embedded command line by specifying
  2928.            any command line options at the DOS command prompt.
  2929.  
  2930.            Example: ARJSFX -x      bypasses any embedded command line
  2931.                     ARJSFX temp\   bypasses any embedded command line
  2932.  
  2933.            To implement this feature, you would insert the required command
  2934.            line as the first line of the ARJ archive comment.  The beginning
  2935.            of the command line must be preceded by the two characters "))".
  2936.            Only the first 80 characters of the embedded command line will
  2937.            be processed.
  2938.  
  2939.            Example:  )) C:\DIR\ -o -s         options for ARJSFX
  2940.  
  2941.            The registered version of this software will not display the
  2942.            customized command line demonstration message.  Please note that
  2943.            the specific switch letters may differ for the different ARJ
  2944.            self-extracting modules.
  2945.  
  2946.        jf: store/use Full specified path
  2947.  
  2948.        Normally, ARJ will strip all pathnames of drive letter and root
  2949.        symbol.  This switch disables this action.  When extracting with
  2950.        the "x" command from an archive that was built with this switch,
  2951.        ARJ will normally strip any drive letter and root symbol, unless
  2952.        the "-jf" option is specified again.
  2953.  
  2954.            Example: ARJ x archive -jf f:\data\1995\report.*
  2955.  
  2956.        The "-jf1" option will strip only the drive spec and NOT the
  2957.        root symbol.  You can use either the "-jf" or "-jf1" option
  2958.        during extraction to force use of the root directory.
  2959.  
  2960.            As of ARJ 2.42a, ARJ will always filename match using the full
  2961.            pathname even for extraction.
  2962.  
  2963.            Example: ARJ x archive d:\temp f:\data\1995\report.*
  2964.  
  2965.        jg: select backup files
  2966.  
  2967.        The "-jg" switch allows the user to include the selection of
  2968.        archive files that are marked as backups by the "-jb" option.
  2969.        Normally, backup files will not be processed by any commands
  2970.        except for the "k" and "y" commands.
  2971.  
  2972.        Examples:  ARJ l -jg archive
  2973.               ARJ e -jg -q archive name.c
  2974.               ARJ d -jg archive *.*
  2975.  
  2976.        jh: set Huffman buffer size
  2977.  
  2978.        ARJ has a default static Huffman buffer size of 16,384 bytes.
  2979.        This buffer size is better for compressing executable files.
  2980.  
  2981.        The buffer size in ARJ 0.15 and earlier was set to 65,500 bytes.
  2982.        That size is better for large text files.  You may specify a
  2983.        buffer size from 2,048 to 65,535 bytes.
  2984.  
  2985.        Example:  ARJ a archive *.txt -jh65500
  2986.  
  2987.        If you specify a Huffman buffer size, ARJ will use that size for
  2988.        all types of files specified by the archive command.
  2989.  
  2990.        ji: set Index filename
  2991.  
  2992.        The "-ji" switch is used to create an index file containing the
  2993.        filenames archived or meeting certain criteria.  This is
  2994.        especially helpful when using ARJ to do multiple floppy type
  2995.        archives.  This file SHOULD NOT be created on the floppy
  2996.        diskette if the floppy diskette is changed during the archival
  2997.        process.
  2998.  
  2999.        If the index file already exists, ARJ will append data to it.
  3000.  
  3001.        The index file contains three types of text lines.  The first
  3002.        type is the volume name record.  It contains the date, time,
  3003.        starting file position, and the archive name.  The second type
  3004.        is the filename record.  It contains only the filename.  The
  3005.        third type only occurs during archival with testing "-jt".  It
  3006.        is a line containing "Testing " and the archive name.
  3007.  
  3008.        This information is also useful for restarting "-v" multiple
  3009.        volume archives.  You need the filename and the starting file
  3010.        position.
  3011.  
  3012.        The "-ji" switch will log the following events:
  3013.  
  3014.        a, f, m, u - Log actual filenames added to archive and if testing
  3015.             is enabled, the actual filenames that failed testing.
  3016.        d          - Log archived filenames deleted.
  3017.        e, x       - Log archived filenames successfully extracted.
  3018.             Extracted files with CRC errors are NOT logged.
  3019.        j          - Log archived filenames added to archive.
  3020.        l, v       - Log archived filenames listed.
  3021.        t          - Log archived filenames that failed testing.
  3022.        w          - Log archived filenames that contain string matches.
  3023.  
  3024.        This logging function is especially helpful when testing and
  3025.        searching archives.
  3026.  
  3027.        The "-hi" option will set ARJ to write more details to the index
  3028.        file.
  3029.  
  3030.        jk: Keep temp archive on error
  3031.  
  3032.        When the "-jk" switch has been specified, ARJ will keep the
  3033.        temporary archive during an aborted archive build/update.
  3034.        During a failed build, ARJ will modify the temporary archive to
  3035.        make it usable by removing the broken portion.
  3036.  
  3037.        jl: display only filespecs
  3038.  
  3039.        The "-jl" option sets ARJ to display only the filespec of a
  3040.        filename during the progress displays.  This will simplify the
  3041.        display output.
  3042.  
  3043.        jm: set Maximum compression
  3044.  
  3045.        The "-jm" switch sets the maximum compression mode.    This mode
  3046.        is used with method 1 "-m1" to increase its compression.  This
  3047.        may increase compression time significantly.
  3048.  
  3049.        You can get a 1 to 5 percent improvement in compression with
  3050.        ARJ -m1 -jm.
  3051.  
  3052.        The "-jm1" option provides slightly less compression than "-jm"
  3053.        at a faster speed.  This can range from slightly faster to much
  3054.        faster.
  3055.  
  3056.        Use of "-jm" with "-m2", "-m3", or "-m4" is NOT SUPPORTED.
  3057.  
  3058.        jn: set restart Name
  3059.  
  3060.        The "-jn" switch is used to restart interrupted multiple volume
  3061.        archives in conjunction with the "-jx" switch.  All selected
  3062.        files are skipped up to but not including the named file.
  3063.  
  3064.        Example:  ARJ a volume -v360 -r -jn\BIN\TREE.COM -jx1230
  3065.  
  3066.        In the above example, all files scanned up to \BIN\TREE.COM are
  3067.        skipped.  Archiving will start at file position 1230 of file
  3068.        \BIN\TREE.COM.
  3069.  
  3070.        IMPORTANT!!!  The exact name of the starting file must be
  3071.        specified according to the wildnames/filespecs specified.  This
  3072.        name is the same as displayed by the Adding filename display and
  3073.        the same as written to the "-ji" index file.  Please note that
  3074.        \DOS\TREE.COM is not considered the same as DOS\TREE.COM with
  3075.        this option.
  3076.  
  3077.        New at ARJ 2.39 is the feature where ARJ will automatically
  3078.        scan the previously written index file ("-ji") to get the
  3079.        necessary restart information.  You only need append "-jn" to
  3080.        the previous backup command line.  This option will not work
  3081.        without the index file.  ARJ will automatically set the correct
  3082.        volume name.
  3083.  
  3084.        Example:  ARJ a a:backup c:\*.* -r -vvas -jiINDEX.FIL
  3085.              ARJ a a:backup c:\*.* -r -vvas -jiINDEX.FIL -jn
  3086.  
  3087.        jo: query when updating an archive file
  3088.  
  3089.        The "-jo" option has two flavors.
  3090.  
  3091.        The "-jo" switch is used to query the user when using the ARJ
  3092.        "a" or "m" commands to add files to an archive.  Before ARJ
  3093.        overwrites an existing internal archive file when using "-jo",
  3094.        ARJ will query the user with "Update <filename>? ".    Without
  3095.        this option, ARJ will overwrite the internal archive file
  3096.        without querying.
  3097.  
  3098.        jo: extract to unique Output names
  3099.  
  3100.        The "-jo" switch during extraction allows automated handling of
  3101.        duplicate filenames.
  3102.  
  3103.        On extraction with the "-jo" switch where the output file
  3104.        already exists in the target directory, ARJ will attempt to
  3105.        generate a unique filename by changing the file extension to a 3
  3106.        digit number from .000 to .999.  If ARJ cannot generate a unique
  3107.        name, it will skip extracting the file.
  3108.  
  3109.            Do not try to extract multiple volume split files in separate
  3110.            extraction sessions using the "-jo" option.  ARJ will not be
  3111.            able to determine the correct output filename.
  3112.  
  3113.        jp: Pause after each screenful
  3114.  
  3115.        This switch will cause ARJ to pause after listing each screenful
  3116.        of data for the "l", "p", "v", "w" commands.  Press the ENTER
  3117.        key to continue the listing.  You can also enter "quit" to exit
  3118.        ARJ.
  3119.  
  3120.        In one special case, "ARJ -? -jp", the use of the -jp switch
  3121.        toggles page pauses off, because by default in help mode,
  3122.        pausing is on.
  3123.  
  3124.        You can specify the page size with the "-jp" option as in
  3125.        "-jp50".  This also turns on the pause mode.  If you wish to use
  3126.        this in ARJ_SW, it is suggested that you use "-jp50 -jp-" to set
  3127.        the page size and to turn off the pause mode.
  3128.  
  3129.        jq: set string parameter
  3130.  
  3131.        The "-jq" option is used to supply additional parameters to the ARJ
  3132.        w and ARJ b commands.  If the parameters contain blanks, then the
  3133.        entire "-jq" option must be enclosed by two double quote marks.
  3134.  
  3135.        See the "w" and "b" commands for the correct "-jq" syntax.
  3136.  
  3137.        jr: Recover broken archive files
  3138.  
  3139.        This switch is used to access headers and files in an archive
  3140.        that has been corrupted either with bad data or missing data.
  3141.        This switch lets ARJ find the next valid header for listing,
  3142.        extraction or testing.  ARJ will continue to look for headers
  3143.        until it finds the end of archive marker.  If the archive is
  3144.        damaged, ARJ may display a message stating that it encountered
  3145.        the end of file unexpectedly.
  3146.  
  3147.        This switch also will allow extraction of files with CRC or
  3148.        Bad file data errors.  Normally, ARJ will delete such extracted
  3149.        files.
  3150.  
  3151.        If file header data has been corrupted, ARJ will be unable to
  3152.        recover any file data associated with that header.  As of ARJ
  3153.        2.30, "Bad file data" errors will not abort the recovery
  3154.        process.
  3155.  
  3156.        Example:  ARJ e archive -jr
  3157.  
  3158.        The "-jr1" version of this switch allows processing of damaged
  3159.        ARJ archives that have an end of archive mark in the middle of
  3160.        the archive.  However, the use of this switch will always cause
  3161.        ARJ to display an "unexpected end of file" error message and to
  3162.        return a non-zero errorlevel.
  3163.  
  3164.        js: Store archives by suffix
  3165.  
  3166.        This switch is used to set ARJ to store and not compress files
  3167.        with the following extensions: .ARJ, .ZIP, .LZH, .PAK, .ARC.
  3168.  
  3169.        The file extensions can be specified as follows:
  3170.  
  3171.        ARJ a archive -js.zoo.ice.gif
  3172.  
  3173.        The above command will store files with extensions ending in
  3174.        .ZOO, .ICE, and .GIF.  This overrides the defaults.
  3175.  
  3176.        You can use the environment variable ARJ_SW to set up your own
  3177.        defaults as follows:
  3178.  
  3179.        set arj_sw = -js.arj.zip.lzh -js-
  3180.  
  3181.        The "-js-" turns off the option by default so that when you
  3182.        specify the "-js" switch on the command line, ARJ will already
  3183.        know what extensions you want to store.
  3184.  
  3185.            The "-js" switch will recognize "." alone as a file extension
  3186.            indicating no file extension as in "-js." and "-js..arc"
  3187.  
  3188.        jt: Test temporary archive
  3189.  
  3190.        The "-jt" switch can used to set ARJ to execute an archive
  3191.        integrity check on an intermediate temporary archive before
  3192.        overwriting any pre-existing original archive.  If any error
  3193.        occurs, ARJ will not overwrite the original archive.  When used
  3194.        with the "-w" switch option, ARJ will also test the final
  3195.        archive file as well as the temporary archive before deleting
  3196.        any input files.
  3197.  
  3198.        Example:  ARJ m archive *.c -jt
  3199.  
  3200.        The "-jt" switch can be used with extract type commands to set
  3201.        ARJ to verify the archive before doing any extraction of files.
  3202.        If the archive fails verification, the extraction is NOT
  3203.        attempted.  This is useful for handling MAIL packets where
  3204.        archive corruption due to a bad file transfer is a fairly
  3205.        frequent event.
  3206.  
  3207.        Example:  ARJ e archive -jt
  3208.  
  3209.        The "-jt1" switch allows an actual file contents comparison in
  3210.        addition to the normal file CRC calculation check.  This option
  3211.        can also be used with the ARJ t (test) command.
  3212.  
  3213.        When used with the ARJ t command, ARJ "-jt1" will use the
  3214.        base_directory option and the filename stored in the archive to
  3215.        locate the original file.
  3216.  
  3217.        When used with the ARJ add/move/update type commands, ARJ will
  3218.        use only the filename stored in the archive to locate the
  3219.        original file.  Therefore, the "-jt1" option does NOT work with
  3220.        the "-e" option or when the original filename has a drive letter
  3221.        or root directory in it and you did not specify "-jf".
  3222.  
  3223.        Examples:  ARJ t -jt1 archive dir\
  3224.               ARJ a -jt1 archive e:\temp\*.*  -jf
  3225.  
  3226.        The "-jt2" switch allows the same features as "-jt1" except that
  3227.        the file compares are only done for the newly added/updated
  3228.        files.  This avoids the situation where the some of original
  3229.        input files are missing or have changed.  NOTE that a problem
  3230.        can occur with the "f" and "u" commands when files in the
  3231.        archive are NEWER than the files being added.  ARJ will
  3232.        considered the file up-to-date and added and will do a file
  3233.        compare.
  3234.  
  3235.        Example:  ARJ u -jt2 archive dir\
  3236.  
  3237.        ju: translate UNIX style paths
  3238.  
  3239.        This switch causes ARJ to translate any subsequently encountered
  3240.        pathnames to MS-DOS style from UNIX style.  This switch also
  3241.        causes translation of filenames entered as a result of ARJ
  3242.        prompts such as in comment filenames.
  3243.  
  3244.        Example:  ARJ a archive -ju /soft/*.c
  3245.  
  3246.        jv: set Verbose display
  3247.  
  3248.        This switch sets ARJ to display more information during the
  3249.        "t"est, "l"ist, and "ex"tract commands.
  3250.  
  3251.        Example:  ARJ t archive -jv
  3252.  
  3253.        The "-jv" switch causes the "v" command to display only the
  3254.        pathnames to the screen.
  3255.  
  3256.        The "-jv1" switch causes the "v" command to display the archive
  3257.        data in manner suitable for sorting on various fields.
  3258.  
  3259.        The "-jv" switch will set the "p", "s", and "w" commands to
  3260.        display IBM graphics characters (128 to 255).
  3261.  
  3262.            When updating a file in an archive with a file that is NOT
  3263.            newer and if the -jv option is selected, ARJ will display a
  3264.            message that there is "no change".
  3265.  
  3266.        jw: set extract output filename
  3267.  
  3268.        The "-jw" option allows you to specify the name of the
  3269.        extraction output file.  You should only select one file to
  3270.        extract when using this option.
  3271.  
  3272.        This is similar but not exactly the same as using the "p"
  3273.        command with DOS output redirection.  Using DOS redirection would
  3274.        cause all of the output of the extraction to be put into the
  3275.        output file.  Using "-jw" would set ARJ to prompt for
  3276.        overwrite permission per each file extracted to the output file.
  3277.  
  3278.        This option may be needed when trying to output binary data to
  3279.        a printer.
  3280.  
  3281.        Example:  ARJ e archive printer.dat -jwLPT1
  3282.  
  3283.        jx: start at eXtended position
  3284.  
  3285.        This switch is used to continue a file onto a new archive
  3286.        manually.  This switch is normally for use when a multiple
  3287.        volume "a" command has aborted.
  3288.  
  3289.        Example:  ARJ a arjvol.a01 manual.doc -jx100000
  3290.  
  3291.        This example archives manual.doc starting from file byte
  3292.        position 100,000 and on.
  3293.  
  3294.        In extraction mode, this sets ARJ to extract a file to an output
  3295.        file at a specified starting position.
  3296.  
  3297.        Example:  ARJ e -jx2000000 archive file1
  3298.  
  3299.        This example extracts the file "file1" to file1 starting at
  3300.        position 2,000,000 or at the end of the file.
  3301.  
  3302.            This is similar to using the command "ARJ p archive >> output".
  3303.            To duplicate this redirection with ARJ would require the
  3304.            following:
  3305.  
  3306.        ARJ e -jx2000K -jwoutput archive
  3307.  
  3308.        NOTE that the -jx option is NOT functional when adding a file to
  3309.        an archive that already contains one or more files.
  3310.  
  3311.        jy: suppress queries assuming YES
  3312.  
  3313.        This switch is used to suppress individual ARJ user prompts.
  3314.  
  3315.        Syntax:  ARJ e archive -jy<flags>
  3316.  
  3317.        where <flags> is one or more of the following characters: a, c,
  3318.        d, k, n, o, s, v.  For each flag selected, ARJ will act as if
  3319.        you had answered YES to the suppressed question.
  3320.  
  3321.        A - skip append query during a multi-volume extraction
  3322.        C - skip create directory query
  3323.        D - skip delete files query
  3324.        K - skip disk space availability query
  3325.        N - skip new filename prompt
  3326.        O - skip overwriting existing file query
  3327.        R - erase all typeahead before prompting
  3328.        S - skip scanned enough text query
  3329.        V - skip ok to proceed to next volume query
  3330.        Y - accept single character Y/N/A/Q inputs
  3331.  
  3332.        Example:  ARJ x volume -v -jyaco
  3333.              suppress append, create, and overwrite prompts.
  3334.  
  3335.        ARJ will allow you to specify individual "jy" options in
  3336.        separate switch strings as in "-jyy -jyr".  You may inhibit a
  3337.        switch as in "-jyr-".  As with other switches, the "jy" switches
  3338.        toggle as in "-jyr -jyr".
  3339.  
  3340.        jz: supply file for file comment
  3341.  
  3342.        The "-jz" switch has been provided to facilitate batch
  3343.        commenting of one or more files within an ARJ archive.  Only one
  3344.        comment file can be specified.  That file will be used to
  3345.        comment each file specified on the command line.
  3346.  
  3347.        A comment file containing only a single blank can be used to
  3348.        erase comments from ARJ archives.
  3349.  
  3350.        Syntax:  ARJ c archive file1 -jzcomment.txt
  3351.             ARJ c archive file1 -zheader.cmt -jzfile.cmt
  3352.  
  3353.        h#: append current date/time string
  3354.  
  3355.            The "-h#" switch sets ARJ to append the current date string in
  3356.            the form YYMMDD to the current archive name while keeping the
  3357.            file extension the same.
  3358.  
  3359.            The "-h#1" switch sets ARJ to append the current time string in
  3360.            the form HHMMSS to the current archive name while keeping the
  3361.            file extension the same.
  3362.  
  3363.            The "-h#2" switch sets ARJ to append the current date-time
  3364.            string in the form DHHMMSS to the current archive name while
  3365.            keeping the file extension the same.  In a ten day period, this
  3366.            option can be used to generate unique archive names.
  3367.  
  3368.            Examples:  ARJ a XX -h# *.c    creates archive name XX931209.ARJ
  3369.                       ARJ a YY -h#1       creates archive name YY123000.ARJ
  3370.                       ARJ a Y -h#2        creates archive name Y8123000.ARJ
  3371.  
  3372.            This function does NO checking for exceeding the proper filename
  3373.            length.  There are no options for rearranging the date/time
  3374.            formats.
  3375.  
  3376.        ha: ignore readonly Attribute
  3377.  
  3378.            The "-ha" switch sets ARJ to reset the attributes of a file to be
  3379.            overwritten or a file to be deleted.  This allows the overwrite
  3380.            or delete operation to proceed.
  3381.  
  3382.            A slight performance degradation may result from using this
  3383.            option.
  3384.  
  3385.        Examples:  ARJ e archive -ha
  3386.               ARJ m archive -ha dir\*.*
  3387.  
  3388.        hc: execute DOS Command at ARJ start
  3389.  
  3390.            The "-hc" switch sets ARJ to execute a DOS command at the start
  3391.            of the execution of ARJ immediately after the command line switch
  3392.            options have been processed, but before the wildcard search is
  3393.            started.  This can be used to clear the screen to hide the
  3394.            command line or to provide a pause option to allow swapping
  3395.            diskettes.
  3396.  
  3397.        Examples:  ARJ a -hcCLS archive -gpassword
  3398.               ARJ a -hcPAUSE archive *.*
  3399.  
  3400.        he: skip test of security Envelope
  3401.  
  3402.        The "-he" switch sets ARJ to skip the verification step when
  3403.        accessing an ARJ-SECURED ARJ archive.  If an ARJ archive has
  3404.        a damaged ARJ-SECURITY envelope, you will have to use the "-he"
  3405.        option to extract the archive.
  3406.  
  3407.       he1: set error on security Envelopes
  3408.  
  3409.            The "-he1" switch sets ARJ to abort with an error code of 4 when
  3410.            processing a possibly ARJ-SECURED archive.  This is useful as a
  3411.            REARJ.CFG option for ARJ.  This will prevent REARJ from
  3412.            converting an ARJ-SECURED archive to the same or another format.
  3413.  
  3414.        Examples:  ARJ l secured.arj -he1
  3415.  
  3416.        hi: full detail display in Index files
  3417.  
  3418.            The "-hi" switch when used with the "-ji" switch sets ARJ to
  3419.            include the file date-time stamp, the original file size, the
  3420.            compressed file size, the compression ratio, and the filename in
  3421.            the index file.
  3422.  
  3423.        Example:  ARJ a a:backup c:\*.* -r -va -jiINDEX -hi
  3424.  
  3425.        hl: return error for Listfile error
  3426.  
  3427.        The "-hl" switch sets ARJ to report the "file not found" type
  3428.        of errors when processing the filenames in an ARJ listfile
  3429.        during an "add" type command (a, f, m, u).  ARJ will
  3430.        subsequently return a non-zero DOS errorlevel when such an
  3431.        error has been found.  Previous versions of ARJ ignored these
  3432.        types of errors.
  3433.  
  3434.        Example:  ARJ a a:backup !listfile -va -hl
  3435.  
  3436.        hm: increase filename capacity
  3437.  
  3438.            The "-hm" switch sets ARJ to transfer the list of filenames to be
  3439.            archived from precious memory to file storage.  This allows a much
  3440.            larger number of files to be processed (over 32,000).  This option
  3441.            is ignored for all ARJ commands except "a", "f", "j", "m", "u".
  3442.  
  3443.            Normally, this switch sets ARJ to wait until it is out of memory
  3444.            storing filenames into a list before transferring that list to a
  3445.            temporary file.  That temporary file is put in the current
  3446.            directory or the special work directory if specified (-hm!F:\).
  3447.            However, there may be a few cases where ARJ will run out of
  3448.            memory doing other tasks while it is storing this list.  In
  3449.            these cases, ARJ will abort.  The user can specify a numeric
  3450.            argument to this switch to force ARJ to transfer the list to
  3451.            file storage sooner.  This argument specifies the maximum number
  3452.            of filename entries to store in memory.  If the list exceeds
  3453.            that number, the entries are transferred from memory to a
  3454.            temporary file.
  3455.  
  3456.            The "-hm" work directory is specified by appending a "!" to the
  3457.            "-hm" or "-hm5000" options and then appending the filename to
  3458.            the option.  See below.
  3459.  
  3460.            Examples:  ARJ a archive c:\*.* -r -hm
  3461.                       ARJ a a:archive c:\*.* -r -va -hm5000!F:\
  3462.                       ARJ a a:archive c:\*.* -r -hm!G:\temp\
  3463.  
  3464.            This feature has at least two disadvantages.  The checking for
  3465.            duplicate filename specifications may become disabled (ex: *.DOC
  3466.            and MANUAL.* duplicates MANUAL.DOC).  Updating archives will become
  3467.            slower.  Extra disk space is required for the temporary file list.
  3468.            The use of a RAMDISK directory will provide the fastest
  3469.            operation.
  3470.  
  3471.        hn: specify non-existent filespec
  3472.  
  3473.            The "-hn" switch sets the filespec that does NOT match any file.
  3474.            The default filespec is "...".  However, on some systems like
  3475.            using NOVELL, there is a valid filespec "...".  Since ARJ
  3476.            sometimes needs a filespec that is strictly a placeholder, this
  3477.            option should be used to specify some name that does not exist
  3478.            on disk.
  3479.  
  3480.            This option must be specified prior to any use of the
  3481.            non-matching filespec.  Setting it via the ARJ_SW variable is an
  3482.            excellent choice.
  3483.  
  3484.            Examples:  ARJ e -hn#### archive #### -zcomment.txt
  3485.                       SET ARJ_SW=-hn####
  3486.  
  3487.        ho: Only extract files with matches
  3488.  
  3489.            The "-ho" switch used with the "e" or "x" extract commands allows
  3490.            file extraction based upon a text search.  ARJ will prompt the
  3491.            user for text strings to search unless the "-jq" option has been
  3492.            specified.  See the "-jq" option in ARJ.DOC for detailed use
  3493.            information.  ARJ will extract a file within an archive if the
  3494.            file contains at least one occurrence of any of the specified
  3495.            search strings.
  3496.  
  3497.            Examples:  ARJ e archive -ho
  3498.                       ARJ e archive -ho -jq+3+textstring
  3499.  
  3500.        ho1: Only extract files without any matches
  3501.  
  3502.            The "-ho1" switch used with the "e" or "x" extract commands
  3503.            allows file extraction based upon a text search.  ARJ will
  3504.            prompt the user for text strings to search unless the "-jq"
  3505.            option has been specified.  See the "-jq" option in ARJ.DOC for
  3506.            detailed use information.  ARJ will extract a file within an
  3507.            archive if the file contain NO occurrences of any of the
  3508.            specified search strings.
  3509.  
  3510.            Examples:  ARJ e archive -ho1
  3511.  
  3512.        hr: force processing of successive archives through errors.
  3513.  
  3514.            The "-hr" switch sets ARJ to attempt to continue processing
  3515.            successive archives even when they contains errors.  This option
  3516.            is aimed at ARJ wildcard use such as in the "ARJ t *.ARJ -hr"
  3517.            command.
  3518.  
  3519.        hs: disable file Sharing
  3520.  
  3521.        The "-hs" switch sets ARJ to disable its file sharing feature.
  3522.        This may be necessary for some unusual applications.
  3523.  
  3524.        hu: allow the Updating of multiple volume archives
  3525.  
  3526.            The "-hu" switch sets ARJ to allow the updating of multiple
  3527.            volume archives.  At this version, by default, ARJ does not allow
  3528.            updating of multiple volume archives because of the possibility
  3529.            of losing data.
  3530.  
  3531.        Example:  ARJ c archive -hu -zcomment.txt
  3532.  
  3533.        hv: verify the ARJ version number
  3534.  
  3535.            The "-hv" switch is used to verify the ARJ version number and/or
  3536.            whether the ARJ program is registered.  If the "-hv" option is
  3537.            specified by itself or with an appended "R", an unregistered ARJ
  3538.            will abort with an errorlevel of 1.  If a version number string
  3539.            is appended to the "-hv" option, a lower version numbered ARJ
  3540.            will abort with with an errorlevel of 1.
  3541.  
  3542.            Examples:  ARJ a archive -hv         check if registered
  3543.                       ARJ a archive -hvr        check if registered
  3544.                       ARJ a archive -hv2.50     check for version >= 2.50
  3545.                       ARJ a archive -hvr2.50    check if registered and
  3546.                                                 version 2.50 or greater
  3547.  
  3548.        hw: modify search filename display
  3549.  
  3550.        The "-hw" switch sets the ARJ w command to display the
  3551.        "Searching ..." filenames messages in a scroll saving format.
  3552.        Filenames of files that do not contain string matches will be
  3553.        overwritten on the screen.
  3554.  
  3555.        The "-hw1" switch sets the ARJ w command to display ONLY the
  3556.        "Searching ..." filenames messages for files that contain string
  3557.        messages.
  3558.  
  3559.        hx: specify archive file extensions
  3560.  
  3561.        The "-hx" switch allows the user to specify what the default
  3562.        file extension or extensions that are to be used by ARJ to
  3563.        access archive names that are not specified with file
  3564.        extensions.    ARJ will assume that the first extension specified
  3565.        will be the main default extension.
  3566.  
  3567.        Examples:  ARJ a archive *.* -hx.SDN   assumes default .SDN
  3568.                           file extension
  3569.               ARJ l archive -hx.SDN.ARJ   looks for archive.SDN and
  3570.                           if not found, then looks
  3571.                           for archive.ARJ
  3572.  
  3573.  
  3574.      ARJ COMMAND OPTIONS:
  3575.  
  3576.     Some of the following options have variations such as -s as in
  3577.     -s, -s1, -s2.
  3578.  
  3579.     The following options work for ALL ARJ commands.
  3580.  
  3581.     !names.lst
  3582.     -o
  3583.     -ob
  3584.     -od
  3585.     --
  3586.     -+
  3587.     -&
  3588.     -!
  3589.     -i
  3590.     -l
  3591.     -r   this affects wildcarded archive names, too.
  3592.     -s
  3593.     -x
  3594.     -y
  3595.     -ja
  3596.     -jl
  3597.     -jt
  3598.     -ju
  3599.     -jy
  3600.         -h#
  3601.         -h#1
  3602.         -hc
  3603.     -he
  3604.     -he1
  3605.         -hn
  3606.         -hr
  3607.     -hs
  3608.         -hv
  3609.         -hx
  3610.  
  3611.     The following options work for all ARJ commands that modify
  3612.     ARJ archives.
  3613.  
  3614.     -k
  3615.     -s
  3616.     -w
  3617.     -z
  3618.     -jb
  3619.     -je
  3620.     -jk
  3621.     -jz
  3622.     -hu
  3623.  
  3624.  
  3625.     In addition the following options work for ARJ a, f, m, u commands.
  3626.  
  3627.     -a
  3628.     -b
  3629.     -m
  3630.     -r
  3631.     -t
  3632.     -jh
  3633.     -ji
  3634.     -jm
  3635.     -jn
  3636.     -js
  3637.     -hi
  3638.     -hl
  3639.         -hm
  3640.  
  3641.  
  3642.     The following options work for ARJ y command.
  3643.  
  3644.     -jb
  3645.     -je
  3646.  
  3647.  
  3648.     The following options work for ALL but the ARJ a, f, m, u commands.
  3649.  
  3650.     The name of the archive can be a wildspec.
  3651.     -#
  3652.     -d
  3653.     -e
  3654.     -p
  3655.     -jg
  3656.     -jr
  3657.  
  3658.  
  3659.     The following options work for the ARJ a, f, m, u, e, x
  3660.     commands.
  3661.  
  3662.     -$
  3663.     -c
  3664.     -f
  3665.     -g
  3666.     -n
  3667.     -u
  3668.     -jf
  3669.     -ji
  3670.     -jx
  3671.     -hi
  3672.  
  3673.  
  3674.     The following options work for the ARJ e, x commands.
  3675.  
  3676.     -d
  3677.     -jc
  3678.     -jw
  3679.         -ho
  3680.         -ho1
  3681.  
  3682.  
  3683.     The following options work for the ARJ l, v commands
  3684.  
  3685.     -n
  3686.     -jp
  3687.  
  3688.  
  3689.     The following options have limited use.
  3690.  
  3691.     -q   - works for all commands except j, l, n, o, t, v, w, y
  3692.     -v   - works for l, v, w commands
  3693.     -jc  - works for e, x, l, v commands
  3694.     -jp  - works for l, v, w commands
  3695.     -jq  - works for b, w, commands
  3696.     -jv  - works for most commands
  3697.     -hw  - works for w command
  3698.  
  3699.  
  3700.      SAMPLE ARJ COMMANDS:
  3701.  
  3702.     a: Add files to archive
  3703.  
  3704.        ARJ a archive
  3705.        ARJ a archive -n
  3706.        ARJ a archive -f
  3707.        ARJ a archive -jt
  3708.        ARJ a archive -jt1
  3709.        ARJ a archive -jt2
  3710.        ARJ a archive -q
  3711.        ARJ a archive -r
  3712.        ARJ a archive dir\ -o
  3713.        ARJ a archive dir\
  3714.        ARJ a archive dir\ *.doc *.exe
  3715.        ARJ a archive !names.lst
  3716.        ARJ a archive -- -name-.txt
  3717.        ARJ a archive name1 name2 name3
  3718.        ARJ a a:archive -we:\ -vas c:\ -r -b2
  3719.        ARJ a a:archive.001 -we:\ -vvw360 c:\ -r -b1
  3720.        ARJ a archive -vw360 c:\ -r -y
  3721.        ARJ a archive c:\ *.* -r -jt1 -jf
  3722.  
  3723.  
  3724.     b: execute Batch or DOS command
  3725.  
  3726.        ARJ b archive name.txt
  3727.        ARJ b archive -jwOUT.NAM
  3728.        ARJ b archive SHEZ.EXE -jwSHEZ.EXE
  3729.        ARJ b archive *.exe -jwTEMP.EXE "-jqTEMP -help"
  3730.  
  3731.  
  3732.     c: Comment archive files
  3733.  
  3734.        ARJ c archive
  3735.        ARJ c archive -z
  3736.        ARJ c archive -zcomment.txt
  3737.        ARJ c archive -zNUL
  3738.        ARJ c archive file1 -jzcomment.txt
  3739.        ARJ c archive *.doc -jzNUL
  3740.  
  3741.  
  3742.     d: Delete files from archive
  3743.  
  3744.        ARJ d archive *.doc
  3745.        ARJ d archive *.* -jg
  3746.        ARJ d archive *.* -n
  3747.        ARJ d archive *.* -y
  3748.        ARJ d archive !names.lst
  3749.  
  3750.  
  3751.     e: Extract files from archive
  3752.  
  3753.        ARJ e archive *.doc
  3754.        ARJ e archive *.doc -d
  3755.        ARJ e archive -jd50000
  3756.        ARJ e archive -jo
  3757.        ARJ e archive -c
  3758.        ARJ e archive dir\ *.doc -jt
  3759.        ARJ e archive *.doc -y
  3760.        ARJ e archive -# 10 15 20-40
  3761.  
  3762.  
  3763.     f: Freshen files in archive
  3764.  
  3765.        ARJ f archive
  3766.        ARJ f archive -r
  3767.        ARJ f archive dir\ -r
  3768.        ARJ f archive dir\ *.doc -r
  3769.        ARJ f archive dir\ -r -jt2
  3770.  
  3771.  
  3772.     g: Garble files in archive
  3773.  
  3774.        ARJ g archive -gpassword
  3775.        ARJ g archive *.doc -gpassword
  3776.        ARJ g archive -g?
  3777.  
  3778.  
  3779.     i: check Integrity of ARJ.EXE
  3780.  
  3781.        ARJ i
  3782.        ARJ i c:\bin\arj.exe
  3783.  
  3784.  
  3785.     j: Join archives to archive
  3786.  
  3787.        ARJ j archive name1.arj name2.arj name3.arj
  3788.        ARJ j archive *.arj
  3789.        ARJ j archive arjsfx.exe
  3790.        ARJ j archive *.arj -o911201
  3791.        ARJ j archive *.arj -r
  3792.  
  3793.  
  3794.     k: pacK bacKup files in archive
  3795.  
  3796.        ARJ k archive *.*
  3797.        ARJ k archive *.* -y
  3798.        ARJ k archive *.doc -n
  3799.  
  3800.  
  3801.     l: List contents of archive
  3802.  
  3803.        ARJ l archive
  3804.        ARJ l archive *.doc
  3805.        ARJ l archive -o911201
  3806.        ARJ l archive -o911201 -ob911231
  3807.        ARJ l archive -n
  3808.        ARJ l archive -jg
  3809.        ARJ l archive -jp
  3810.  
  3811.  
  3812.     m: Move files to archive
  3813.  
  3814.        ARJ m archive
  3815.        ARJ m archive *.doc
  3816.        ARJ m archive dir\ *.doc
  3817.        ARJ m archive dir\ *.doc -o
  3818.        ARJ m a:archive.001 dir\ -r -vvwas -jt2
  3819.  
  3820.  
  3821.     n: reName files in archive
  3822.  
  3823.        ARJ n archive
  3824.        ARJ n archive *.doc
  3825.        ARJ n archive !names.lst
  3826.        ARJ n archive -o911201
  3827.  
  3828.  
  3829.     o: Order files in archive
  3830.  
  3831.        ARJ o archive !names.lst
  3832.        ARJ o archive *.bat *.exe *.doc
  3833.        ARJ o archive file1 file2 file3
  3834.  
  3835.  
  3836.     p: Print files to standard output
  3837.  
  3838.        ARJ p archive
  3839.        ARJ p archive -jp
  3840.        ARJ p archive *.doc
  3841.        ARJ p archive -o911201
  3842.        ARJ p archive name.txt > PRN
  3843.  
  3844.  
  3845.     r: Remove paths from filenames
  3846.  
  3847.        ARJ r archive
  3848.        ARJ r archive *.doc
  3849.        ARJ r archive -o911201 -ob911231
  3850.  
  3851.  
  3852.     s: Sample files to screen with pause
  3853.  
  3854.        ARJ s archive
  3855.        ARJ s archive *.doc -y
  3856.        ARJ s *.arj -y -r
  3857.  
  3858.  
  3859.     t: Test integrity of archive
  3860.  
  3861.        ARJ t archive
  3862.        ARJ t archive *.exe
  3863.        ARJ t archive !names.lst
  3864.        ARJ t archive -jt1
  3865.  
  3866.  
  3867.     u: Update files to archive
  3868.  
  3869.        ARJ u archive *.doc
  3870.        ARJ u archive *.doc -jo
  3871.  
  3872.  
  3873.     v: Verbosely list contents of archive
  3874.  
  3875.        ARJ v archive
  3876.        ARJ v archive *.doc
  3877.        ARJ v archive -jv
  3878.        ARJ v archive -jv1
  3879.        ARJ v archive -jp
  3880.        ARJ v archive -jg
  3881.  
  3882.  
  3883.     w: Where are text strings in archive
  3884.  
  3885.        ARJ w archive
  3886.        ARJ w archive -hw
  3887.        ARJ w archive -jp
  3888.        ARJ w *.arj -jp
  3889.        ARJ w *.arj *.doc
  3890.        ARJ w *.arj *.txt -jq+5+string
  3891.        ARJ w archive "-jq-3-to be or not"
  3892.  
  3893.  
  3894.     x: eXtract files with full pathname
  3895.  
  3896.        ARJ x archive *.doc
  3897.        ARJ x archive *.doc -d
  3898.        ARJ x archive -jd50000
  3899.        ARJ x archive -jo
  3900.        ARJ x archive -c
  3901.        ARJ x archive dir\ *.doc
  3902.        ARJ x archive -jf
  3903.        ARJ x archive *.doc -jyc
  3904.  
  3905.  
  3906.     y: copY archive with new options
  3907.  
  3908.        ARJ y archive -je
  3909.        ARJ y archive -je1
  3910.        ARJ y archive -jb
  3911.        ARJ y archive -jb1
  3912.        ARJ y archive -jb2
  3913.        ARJ y archive *.bat -jb2
  3914.  
  3915.  
  3916.      ARJ_SECURITY ENVELOPE:
  3917.  
  3918.         The ARJ-SECURITY ENVELOPE feature provides a facility similar to
  3919.         other archivers.  This feature disallows any type of modification,
  3920.         even commenting, to an ARJ-SECURE sealed archive by ARJ.  Moreover,
  3921.         there are additional internal checks to determine if the ARJ-SECURE
  3922.         sealed archive has been modified in any way.  This EXTRA cost
  3923.         feature is intended for use by software developers who distribute
  3924.         their software in archived format and is only available for a
  3925.         special fee.  However, there can be no guarantee that this
  3926.         mechanism cannot be defeated.
  3927.  
  3928.         When accessing an ARJ-SECURED archive, ARJ will display a message
  3929.         indicating that ARJ is verifying the security envelope.  If the
  3930.         envelope is damaged, a message will be displayed indicating so. If
  3931.         the envelope is intact, then the ARJ-SECURITY signature of the user
  3932.         "sealing" the archive will be displayed.
  3933.  
  3934.         If the security envelope has been tampered with or the archive has
  3935.         suffered data corruption, ARJ will display a message stating that
  3936.         the security envelope has been damaged.  In addition, ARJ will
  3937.         abort processing the archive.  The ARJ "-he" option and the ARJSFX
  3938.         "-s" option will skip the envelope verification.  The most likely
  3939.         causes of an invalid envelope are that the file was corrupted in
  3940.         transmission or that the archive was tampered with.
  3941.  
  3942.  
  3943.      KNOWN ARJ ISSUES/PROBLEMS:
  3944.  
  3945.         Apparently ARJ.EXE and LHA.EXE (possibly other archivers) will
  3946.         NOT function properly in a WINDOWS DOS box while the REMOVEIT 2
  3947.         Smart Custodian (July 7, 1995, Vertisoft) is running.
  3948.  
  3949.     Under MS-DOS 4.01, ARJ may not extract LARGE (greater than 32MB)
  3950.     files from multiple volume archives properly.  The "dir" reported
  3951.     size may be incorrect.    A simple "CHKDSK /f" will correct the size.
  3952.         This problem is due to a BUG in MS-DOS 4.01.  Microsoft Corp. has
  3953.     fixes available for several DOS 4.01 bugs including this one.
  3954.  
  3955.         Due to the inner workings of the compiler Turbo C++, ARJ may run
  3956.         out of memory if your computer is configured with thousands of
  3957.         bytes of environment variables.
  3958.  
  3959.         The "-vs" option of ARJ may not function properly when ARJ is
  3960.         trying to archive several thousands of files.  This is due to a
  3961.         lack of free memory to execute any external commands.  The use of
  3962.         the "-hm" option will free up memory.
  3963.  
  3964.     When using a working directory, ARJ does not check for disk space
  3965.     before overwriting the original archive.  Be sure you have enough
  3966.     space before updating an archive using the "-w" switch.
  3967.  
  3968.     Because of a bug with extended archive header processing, you
  3969.     should convert to ARJ 2.10 and above as soon as practical.  This
  3970.     bug is NOT a current problem because no version of ARJ supports the
  3971.     use of the extended header.
  3972.  
  3973.     If you have garbled (-g) ARJ archives that were created by ARJ 2.21
  3974.     and the garbled files were stored (-m0) by ARJ, you may need to
  3975.     refer to ARJ 2.30 to extract those files without getting a CRC
  3976.     error.
  3977.  
  3978.     TSRs that activate via HOT KEYS may be inhibited by ARJ during
  3979.     user keyboard input.  This is a "feature" of the Turbo C++ getc()
  3980.     function.  A partial workaround is to use the ARJ "-jyry" option
  3981.     to go to single key query mode.
  3982.  
  3983.     A similar problem occurs with HYPERDISK and staged writes.
  3984.     HYPERDISK's timer delay appears to be inhibited during ARJ user
  3985.     keyboard input such as during "Ok to ... volume/diskette?".  This
  3986.     causes an error when you swap to the next diskette.  The workaround
  3987.     is to use the ARJ "-jyry" option to go to single key query mode.
  3988.  
  3989.     There is a reported problem using ARJ and floppy disk drives when
  3990.     using the disk cache program SUPER PCKWIK 3.30 with advanced
  3991.     diskette support (/D+).  The system may occasionally hang when ARJ
  3992.     attempts to read/write the diskette.  You may also get CRC or
  3993.     Bad file data errors.  Disabling the SUPER PCKWIK option with /D-
  3994.     appears to remove this problem.  Other programs have similar
  3995.     problems with this feature of SUPER PCKWIK.
  3996.  
  3997.  
  3998.      ARJ ERROR MESSAGES:
  3999.  
  4000.     See the document ERRORS.DOC.
  4001.  
  4002.  
  4003.      COMMONLY ASKED QUESTIONS:
  4004.  
  4005.         1) I have forgotten my password to an important garbled ARJ
  4006.         archive.  Is there an easy way to recover my lost files?
  4007.  
  4008.         Answer:  Sorry.  Generally speaking, there is no easy way.  There is
  4009.         brute force trial and error.
  4010.  
  4011.         2) During extraction, ARJ aborts with a "Bad header" or "Bad file
  4012.         data" error message.  How do I recover my files?
  4013.  
  4014.         Answer:  Using the -jr option of ARJ, you should be able to recover
  4015.         the uncorrupted files in the archive.  The corrupted files are
  4016.         unrecoverable.
  4017.  
  4018.         3) How do I backup a directory and its subdirectories and files to
  4019.         multiple diskettes?
  4020.  
  4021.         Answer:  You should use a command as follows:
  4022.         ARJ a a:archive c:\dir\*.* -va -r -a1
  4023.         The -va option assumes that you are using formatted blank
  4024.         diskettes.  The -r option sets ARJ to recurse subdirectories. The
  4025.         -a1 option sets ARJ to store empty directories.
  4026.  
  4027.         4) Do I have to register ARJ if I use it at home for my personal
  4028.         computer activities (BBSing, backup, sharing files)?
  4029.  
  4030.         Answer:  No, you do not have to register ARJ for such activities.
  4031.         Instead, please share ARJ with a friend as a way of showing your
  4032.         appreciation.
  4033.  
  4034.         5) Can I distribute ARJ self-extracting archives or ARJ.EXE without
  4035.         a license?
  4036.  
  4037.         Answer:  You may share these files with others for personal use.
  4038.         However, you cannot distribute self-extracting files publicly
  4039.         without a license.  You cannot distribute ARJ.EXE to install
  4040.         software without a license.  The UNARJ.EXE program is freely
  4041.         available to install software.
  4042.  
  4043.         6) Can I distribute ARJ archives freely?
  4044.  
  4045.         Answer:  Any ARJ archives (not self-extracting) can be distributed
  4046.         freely.
  4047.  
  4048.         7) ARJ displayed an error message indicating it ran out of memory
  4049.         backing up my disk with 20,000 files on it.  How can I proceed?
  4050.  
  4051.         Answer:  You should specify the -hm option to set ARJ to use disk
  4052.         space to handle all of the filenames.
  4053.  
  4054.         8) I am trying to extract a multiple volume archive.  How do I get
  4055.         ARJ to prompt for the second diskette?
  4056.  
  4057.         Answer:  You need to specify the -v option to set ARJ to prompt for
  4058.         subsequent diskettes.
  4059.  
  4060.         9) How do I extract an ARJ archive recovering the original
  4061.         pathnames?
  4062.  
  4063.         Answer:  Use the "x" command as in "ARJ x archive".
  4064.  
  4065.         10) How do I create a self-extracting archive?
  4066.  
  4067.         Answer:  Use the -je or -je1 options as in "ARJ a archive *.* -je".
  4068.  
  4069.         11) How do a save empty directories in an archive?
  4070.  
  4071.         Answer:  Use the -a1 option.
  4072.  
  4073.  
  4074.      ARJ TECHNICAL SUPPORT:
  4075.  
  4076.     I have received many useful suggestions from users all over the
  4077.     world.    Many of those suggestions are in this version or will be
  4078.     incorporated in later versions of ARJ.
  4079.  
  4080.         I will try to resolve software problems with ARJ as they are made
  4081.         known to me.  Please notify me of any ARJ problems by mail, email,
  4082.         fax, or via the ARJ support BBSes mentioned below.  I will strive
  4083.         to keep ARJ a robust, stable and useful product.
  4084.  
  4085.         I will try to support unregistered users during their evaluation
  4086.         period, but please read the ARJ documentation first.  Registered
  4087.         users will be eligible to receive technical support by mail,
  4088.         telephone, fax, or electronic mail.
  4089.  
  4090.         ***************************************************************
  4091.         DO NOT ASK FOR TECHNICAL SUPPORT IN THE CASE OF LOST PASSWORDS!
  4092.         ***************************************************************
  4093.  
  4094.  
  4095.      ARJ AVAILABILITY:
  4096.  
  4097.     The latest version of ARJ can be obtained from the following
  4098.     sources:
  4099.  
  4100.     ARJ SUPPORT BBSes:  See ARJ_BBS.DOC
  4101.  
  4102.     ARJ is available from a number of other BBSes, but I can only vouch
  4103.     for the integrity of the archive if the ARJ###.EXE verifies its
  4104.     ARJ-SECURITY envelope as valid.  If no security envelope exists,
  4105.     then the data has been re-archived and there is no assurance of
  4106.     data integrity.
  4107.  
  4108.     If none of the above sources are suitable, you may order a copy of
  4109.         the latest version of ARJ directly from the author.  Send a check
  4110.         or money order for five dollars (US) to cover the costs of shipping
  4111.         and handling.  Please specify diskette size (3.5 or 5.25 inch);
  4112.         otherwise, a 3.5 inch diskette will be shipped.  Please allow a few
  4113.         weeks for delivery, longer for foreign deliveries.
  4114.  
  4115.     Our address is at the end of this document.
  4116.  
  4117.  
  4118.      ARJ INTERNET MAILING LIST
  4119.  
  4120.         New information announcements about ARJ is now available via an
  4121.         Internet mailing list. You can subscribe (and unsubscribe) by
  4122.         sending an email message to:
  4123.  
  4124.         majordomo@Dunkel.de
  4125.  
  4126.         and writing in THE BODY of the message (not in the subject):
  4127.  
  4128.         subscribe arj-info
  4129.  
  4130.         You'll be sent a message stating that you were included in the
  4131.         mailing list together with information, how to unsubscribe. If you
  4132.         just state "help" (without the quotes) in the message, you'll get
  4133.         more information on the available commands.
  4134.  
  4135.  
  4136.      ARJ WEB SUPPORT
  4137.  
  4138.         ARJ on WWW!  You can reach ARJ support information at:
  4139.  
  4140.         http://www.Dunkel.de/ARJ                      (German and English)
  4141.  
  4142.         http://www.info.fundp.ac.be/~fta/arj.html     (French and English)
  4143.  
  4144.         These are ARJ Web sites set up by authorized ARJ agents.
  4145.  
  4146.  
  4147.      SDN EXTENSION FILES
  4148.  
  4149.     SDN International(sm) is a FidoNet hobby organization which makes
  4150.     available for distribution author-direct shareware files to FidoNet
  4151.     capable bulletin board systems world wide.  ARJ has been chosen by
  4152.     SDN sysops' consensus as its official compression utility.
  4153.  
  4154.     Program files distributed via SDN have a copyright ".SDN"
  4155.     extension.  Files distributed by SDN after February 1993 can be
  4156.     decompressed by ARJ.  Files dated earlier can be decompressed if
  4157.     the compression utility SDN previously used is on PATH.
  4158.  
  4159.     SDN files are security sealed with their own exclusive security
  4160.     seal, FSecure, created by Pacesoft.  This security may be verified
  4161.     using the FileTest utility available at the SDN Project AuthorLine
  4162.     BBS 203-634-0370 or at most SDN participating BBS sites.
  4163.  
  4164.     Shareware authors wishing to distribute shareware by release
  4165.     through SDN may contact the same SDN Project AuthorLine BBS.
  4166.  
  4167.  
  4168.      DISTRIBUTORS:
  4169.  
  4170.         A list of authorized ARJ agent/distributors are found in the
  4171.         file AGENTS.DOC.  They provide local registration and technical
  4172.         support for ARJ.  Other distributors only provide the evaluation
  4173.         version of ARJ.
  4174.  
  4175.  
  4176.      ACKNOWLEDGEMENTS:
  4177.  
  4178.     LHARC is the name of an archiver by Haruyasu Yoshizaki.
  4179.     PKZIP and ZIP are trademarks of PKWare, Inc.
  4180.     PAK is the trademark of NoGate Consulting.
  4181.  
  4182.     I wish to express my gratitude to Haruyasu Yoshizaki (Yoshi) for
  4183.     developing LHARC and distributing its source code.  LHARC gave me
  4184.     the impetus to start studying data compression.  I also wish to
  4185.     thank Haruhiko Okumura for providing additional ideas.    His AR001
  4186.     and AR002 program provided the basic design for the early versions
  4187.     of ARJ.
  4188.  
  4189.     I also wish to thank Fabrice BELLARD for LZEXE which is used to
  4190.     squish the ARJ SFX modules.
  4191.  
  4192.     And my thanks also go to Paul Kocher who contributed the design of
  4193.     the new ARJ SECURITY envelope mechanism.
  4194.  
  4195.     I wish to thank those who have contributed significantly to the
  4196.     development of ARJ.  Those include:
  4197.  
  4198.     Soeren Pingel Dalsgaard
  4199.     Axel Dunkel
  4200.     Jonathan Forbes
  4201.     Ron Freimuth
  4202.     Brian Godette
  4203.     Robb Hufalt
  4204.     Arkady Kleyner
  4205.     Michael Lawler
  4206.     Ken Levitt
  4207.     Eberhard Mattes
  4208.     Mike McCombs
  4209.     Alexander Pruss
  4210.     Joseph Teller
  4211.  
  4212.     And to the many others who have helped, provided messages of
  4213.     support, or provided financial support, THANKS!!!  Because of
  4214.     you, I am able to provide FULL-TIME support to ARJ!
  4215.  
  4216.     I wish to thank my wife, Susan, and my son, Timothy, for putting
  4217.     up with this ARJ obsession.  Their encouragement and support have
  4218.     been invaluable.
  4219.  
  4220.     But my greatest thanks goes to Almighty God for His inspiration
  4221.     and great salvation.  For apart from Him, ARJ could not have been
  4222.     done.  John 15:5
  4223.  
  4224.         It is our prayer that this product not be used in any way to
  4225.         infringe or attack our freedom to worship.
  4226.  
  4227.  
  4228.      USAGE AND DISTRIBUTION POLICY:
  4229.  
  4230.     See LICENSE.DOC file for license policy.
  4231.  
  4232.  
  4233.      BRIEF BIOGRAPHY OF THE AUTHOR OF ARJ:
  4234.  
  4235.     Robert Jung grew up in Catonsville and Baltimore, Maryland.  He
  4236.     graduated from the University of Maryland in 1970.  After a short
  4237.     stint in the U.S. Army, he taught chemistry for six years.  From
  4238.     teaching he entered the computer programming profession where he
  4239.     was employed as a programmer analyst, a network analyst, and a
  4240.         software engineer.  In late 1990, he developed the ARJ archive
  4241.         format and program to meet a personal need in archiving.  In
  4242.         February of 1991, he released ARJ 1.00 as a shareware product.
  4243.         The author currently supports ARJ full-time and resides in Norwood,
  4244.         Massachusetts with his wife Susan, and son Timothy.
  4245.  
  4246.  
  4247.      FINAL COMMENTS:
  4248.  
  4249.     I do hope that you find this program as useful as I have.  I would
  4250.     appreciate any suggestions to improve this archiver.
  4251.  
  4252.     You can reach me at:
  4253.  
  4254.     Internet address:  robjung@world.std.com
  4255.  
  4256.     CompuServe userid: 72077,445
  4257.  
  4258.         Robert Jung at Channel One BBS      617-354-8873
  4259.     Join the mailbox conference with "j mailbox" to send email to me.
  4260.  
  4261.     Robert Jung at FIDONET address:  1:16/390.7
  4262.  
  4263.     Robert Jung in the ARJ echo conference available from the Fidonet
  4264.     echo backbone.
  4265.  
  4266.     Robert Jung in the RIME/RELAYNET ARJ conference.  The national
  4267.     number of the ARJ conference is 275.
  4268.  
  4269.     ARJ users are encouraged to use the above echoes to submit
  4270.     questions, problems, and new features requests.
  4271.  
  4272.         ***** UPDATED MAILING ADDRESS *****
  4273.  
  4274.     Robert and Susan Jung
  4275.         ARJ Software
  4276.         P.O. Box 249
  4277.         Norwood MA 02062
  4278.     USA
  4279.  
  4280.         Fax number: 617-769-4893
  4281.  
  4282.         ***********************************
  4283.  
  4284.  
  4285.       End of document
  4286.  
  4287.