      A BRIEF INTRODUCTION TO ARC
             26 SEPT 1986
             CHRIS SMEETS
             [76337,2216]

  ARC is  a  utility  program  for  the
Commodore 64 computer which can be used
to create  and maintain  file archives,
as well as do routine disk maintenance.

  An archive  is  a  single  disk  file
representing the  contents  of  one  or
more other  files. They  are identified
by a  name which ends in ".arc" and can
be extracted to obtain exact duplicates
of the files that went into it.

  When creating  an archive,  ARC  uses
advanced data compression techniques to
compress each  file being archived. ARC
will   first    analyze    each    file
individually, and  then  based  on  the
files characteristics,  ARC chooses one
of five  different methods  to compress
the file.  The result  is almost always
significantly smaller than the original
file.

  The amount  of savings you can expect
varies with  the  type  of  file  being
archived, and ranges between 10-15% for
machine language programs to as much as
60%  or  more  for  graphics  and  text
files.

  There are  many advantages  to  using
ARC.

  One  archive  can  represent  several
different files.  Programs, or data can
be organized  into logical  groups  and
archived making  it quite  a bit easier
to transfer  the information  by modem,
and  helps   to   keep   your   backups
organized. You save alot of time by not
having to figure out if you in fact got
all the  files you  needed to  get  the
program to work!

  ARC keeps  track of  file  names  and
file types.  This saves alot of trouble
when  transferring   data  to/from  non
Commodore systems  (like CIS,  RBBS  or
FIDO) which  do not support Commodore's
non  standard   ASCII,   16   character
filenames, or file types.

  ARC calculates  a two  byte  checksum
for each file being archived. Most file
transfer protocols  have some  type  of
error  checking,   but  the  occasional
error does  get through  undetected. If
this should  happen then  ARC will most
likely detect  a  checksum  error  when
verifying or extracting the archive.

  ARC  handles  relative  files.  These
babies are  difficult  enough  just  to
copy let  alone transfer  them over the
phone!

  ARC also  supports a number of useful
commands   for   viewing   directories,
moving files  between  drives,  viewing
the contents  of files, renaming files,
and editing simple text files. For more
details,  you'll   have  to   read  the
documentation for  ARC which  is  quite
complete.

  First of all there are several ARCs.

  ARCXYZ.4 is for a standard C-64.

  ARCXYZ.8 is  for a C-64 equipped with
            a BI-80 eighty column video
           adaptor.

  XYZ is the version number. The higher
the number,  the more  up to  date  the
program.    Archives    are    downward
compatible. This  means  that  any  ARC
program will  be  able  to  handle  any
archive  created   by  any   other  ARC
program  provided   that  its   version
number is  equal to  or higher than the
one that created the archive.

  Note also  that archives  created  on
MS/PC-DOS machines  are of  a different
format  than   Commodore  archives.  At
present ARC can only view the directory
of an  MS-DOS archive but thats all. We
should be able to expand on this in the
future.

  When you  first run  ARC, all you get
is a  brief message  and you're back at
the READY prompt.

  ARC is  written as a wedge. It adds a
number  of   commands  to   the   basic
interpreter, one of which is ARC. We'll
just  briefly  summarize  some  of  the
commands you  will need  to know to get
started using  ARC.  For  more  details
read   the    complete    documentation
provided elsewhere on this system.

  1) DOS WEDGE.

  This should  be familiar.  Syntax  is
the same  as used in "DOS 5.1", SYSRES,
or whatever other wedge you use.

  >$0       - view directory
  >i0       - initialize drive 0
  
  And so on and so forth...

  2) DISK DRIVES

  ARC refers  to disk drives by letter,
not number.  It takes  a bit of getting
used  to  but  its  more  accurate  and
convenient once you're used to it. Thus
A: is  unit 8  drive 0,  B: is  unit  8
drive 1, C: is unit 9 drive 0 and so on
up to H: which is unit 11 drive 1.

  Thus:

    LOAD"C:ARC220.4"

  Could be used in place of:

    LOAD"0:ARC220.4",9

     If you  do  not  specify  a  drive
letter in  a filename,  then  ARC  will
assume you  meant  the  default  drive.
(normally A:) You set the default drive
simply by typing its letter followed by
a colon.

    C:  <return>

     Sets the  default drive  to unit 9
drive 0.  All wedge  commands (>$ etc.)
and  filenames  will  default  to  this
drive. If  you just  typed  the  above,
then:

    LOAD"ARC

    Is the same as:

    LOAD"0:ARC",9

  3) The ARC Command.

  The ARC command is quite flexible and
was designed to emulate the same syntax
as used  on  an  IBM  PC.  The  general
format is:

ARC/XY/Z D:ARCFILE D:PATRN1 D:PATRN2...

  D:ARCFILE is  the name of the archive
being created  or extracted.  You don't
have to  give the  ".arc" at the end of
the filename,  ARC will  fill it in for
you if you leave it out.

  D:PATRN  is   a  filename,   and  may
contain wildcards.  A:BAID64, D:*,  and
ARC220.4 are  all legal  names. *if you
don't specify a drive, then the default
drive is  assumed! Note..spaces are not
allowed in  filenames. If  you need  to
specify a  space, use  a shifted  space
and ARC  will change it to a space. (or
better yet...use a ? )

  X, Y  and Z are switches and can take
on a number of values. We'll just touch
on the most important ones here.

  X=L ... Lists an archive directory

  ARC/L A:TEST

  Will type  to the  screen a directory
of the  archive "TEST.ARC".  If all you
get is  garbage or  an  error  message,
then either the file is not an archive,
its a  higher version than your copy of
ARC, or its been corrupted somehow. You
should get  a neat  list of  filenames,
types,  lengths  and  storage  formats,
with a summary at the end.

  X=C ... Creates an archive.

  ARC/C A:TEST B:GAME* B:*=S

  Creates an  archive names  "TEST.ARC"
on drive  8,0 and  includes  all  files
from drive  8,1 that  begin with "GAME"
or are sequential.

  Note:  There   can  be  up  to  eight
different  filenames  specified  to  be
included in the archive.

  X=X ... Extracts an archive.

  ARC/X A:TEST

  This will  extract all files from the
archive "TEST.ARC"  on  drive  8,0  and
place them on the default drive.

  ARC/X A:TEST B*

  Same as  the above, but only extracts
files whose names begins with "B"

  X=V ... Verify an archive

  Syntax is  identical to ARC/X, except
the files  are not written to disk. ARC
simply expands  them  and  recalculates
the checksum. It then compares the just
calculated checksum with the one stored
in the  archive when it was created. If
they don't  match  then  an  error  has
occured somewhere.

  Thats about  all you  need to get you
going. All  of this  and more  is  delt
with  in   much  more   detail  in  the
documentation for ARC 2.20.

  

