[comp.sys.tandy] Part 2 of documentation for XARC4/CMD

7gmadiso@pomona.bitnet.UUCP (04/07/87)

                          LISTING ARCHIVE ENTRIES

   You can obtain a list  of the contents of an archive by using the "L" (List)
command or the "V" (Verbose list) command. Both commands display exactly the
same thing in XARC4.
   For example, to see what is in an archive named "JUNK/ARC", you could type:

XARC4 L JUNK:1

or

XARC4 V JUNK

   XARC4 prints a listing of an archive's contents like this:

Name          Length    Stowage    SF   Size now  Date       Time    CRC
============  ========  ========  ====  ========  =========  ======  ====
ARC4.C           27318  Squeezed   45%     15248  28 Dec 86   1:23p  69e4
ARC42.C          20620  Crunched   44%     11617  28 Dec 86   1:26p  6d9e
ARC42.H           5245  crunched   38%      3265  28 Dec 86   1:28p  2f7f
ARC43.C          23682  Squeezed   43%     13538  28 Dec 86   1:28p  2a53
ARC43.JCL          161   Packed     1%       155  28 Dec 86   1:30p  4fd8
COMPARC.JCL        249     --       0%       249  28 Dec 86   1:31p  c134
        ====  ========            ====  ========
Total      7     82514             43%     47272

"Name" is simply the name of the file.

"Length" is the unpacked file length. In other words, it is the number of bytes
of disk space which the file would take up if it were extracted.

"Date" is the date on which the file had last been added to the archive.

"Total" is pretty obvious, I think.

"Stowage" is the compression method used. The following compression methods are
currently employed:

   --     No compression.
 Packed   Runs of repeated byte values are collapsed.
Squeezed  Huffman squeeze technique employed.
Crunched  Dynamic Lempel-Zev compression technique.
crunched  Old Style L-Z not supported in XARC4.

"SF" is the stowage factor. In other words, it is the percentage of the file
length which was saved by compression. The total stowage factor is the stowage
factor for the archive as a whole, not counting archive overhead.

"Size now" is the number of bytes the file is occupying while in the archive.

"Time" is the time of last addition to the archive, and is associated with the
date of last addition.

"CRC" is the CRC-16 check value which has been stored with the file. Another
CRC-16 value will be calculated when the file is extracted to ensure data
integrity. There is no especially good reason for displaying this value.

   Note that you can pause the display of a list by pressing <SHIFT><@>.
Pressing any key will resume the display. Pressing <BREAK> during the display
will exit to TRSDOS.

                                  XARC4 OPTIONS

   This section describes the options which are available to modify how XARC4
works. These options can be combined with any of the commands, though the
result may not always be something you'd want to do.

                                   DECRYPTION

   Archive entries may be decrypted by using the "G" (Garble) option. The
Garble option takes the remainder of the command string as the password to use,
so it must be the last option.
   When you want to extract a file from an archive in which the password
"DEBRIS" had been used, you would type:

XARC4 O:2GDEBRIS JUNK:1

   The password you supply is used to decrypt the archive entry by performing
an exclusive OR between each byte of the packed data and each byte of the
password. The password can be any length, and each of its bytes is used in
rotation. The password is converted to uppercase before it is used, so it is
not case sensitive. Since the encryption was performed on the packed data, it
has no effect on stowage factors.
   This is not a particularly sophisticated means of encryption, and it is
theoretically possible to crack. Still, since it is performed on the packed
data, the result should be quite sufficient for casual use.
   It is possible to list the entries in an encrypted archive using the "L" and
"V" commands without giving the password, but nothing else will work properly.
   It is advisable that you use this option sparingly, if at all. If you should
forget or mistype your password, it is highly unlikely that you will ever
recover your data.

                                 NEW LINE MODE

   XARC4 automatically removes line feeds after carriage returns when
extracting files. These line feeds are a normal part of MS-DOS text files, but
just clutter up a TRSDOS/LS-DOS file. If you would like to keep the line feeds
in the file, specify a "N" to suppress their removal on the command line as
follows:

XARC4 O:2N JUNK:1

                          MS-DOS ARC File Compatibility

   XARC4 uses the exact same conventions in its file extractions as does MS-DOS
XARC for archives created by MS-DOS ARC using version 5.0 or greater. The
current version of MS-DOS ARC is 5.1.2. Any archive created by version 5.1.2
can have all of its files extracted by XARC4.
   If you are attempting to extract from old archives, however, XARC4 will not
extract files using the "old" version of Lempel-Zev crunching. These files can
be identified in a "L" or "V" listing as having a "Stowage" of "crunched". Note
the lower case "c". The current version of Lempel-Zev, called Dynamic Lempel-
Zev is indicated by the upper case "C" as in "Crunched". XARC4 will skip a
"crunched" file (after letting you know why it can't be extracted).
   Since archives created by ARC4 are compatible with MS-DOS ARC, they, too,
can be extracted by XARC4.

                               OVERLAYS IN XARC4

   XARC4 uses a number of overlay files which are read in by the "root" file
XARC4/CMD. Overlays were used in order to obtain the maximum amount of memory
in the Model 4. The overlays and their functions are described below:

OVERLAY        FUNCTION
-------        --------
XARC4/CMD      "root" calls in overlays performs I/O
XARC4HLP/OVR   Displays the help screen
XARC4DLZ/OVR   Performs the Dynamic L-Z decompression
XARC4USQ/OVR   Performs Unsqueezing
XARC4LST/OVR   Lists contents of archives

   It is conceivable that an error could occur while using one of these
overlays. Since the errors are somewhat cryptic, the following should be of
help:

ERROR #   MEANING
-------   -------
10        can't open overlay file
20        can't read overlay header record
30        invalid header record
40        overlay area overlaps with heap
50        error reading overlay

   The above error numbers would be displayed in a message like:

Error # loading overlay <filespec>

                                TECHNICAL SUPPORT

   It should be obvious by now that SEA cannot provide technical support even
though they wrote the original XARC that XARC4 is based on. They do not have
access to the source code, nor do they have a Model IV Tandy computer. XARC4 is
NOT in the public domain and can only be modified with the permission of the
original copyright holders of ARC and myself. Except for providing
contributions or obtaining a noncommercial or a commercial site license, you
should not be contacting SEA for support for XARC4.
   Please address all inquiries concerning XARC4 technical matters to:

David Huelsmann
3308 Delamar NE
Albuquerque, NM 87107

or to

SSE BBS
(505) 821-7379
1200/2400 bps anytime
300 bps after 2400 Mountain

or to

CompuServe PPN  71525,1363|

                                 VERSION NUMBERS

The version number of XARC4 is given as follows XX.YY.ZZ.

XX = a major revision, such as adding a new packing algorithm.

YY = a minor revision that is not essential, but which may be desired.

ZZ = a trivial revision that will probably only be  desired by specific
     individuals or by die-hard "latest version" fanatics.

   XARC4 also displays its date of last edit. A change of the date without a
corresponding change in version number indicates a truly trivial change, such
as fixing a spelling error.