+---------------------------------------------------------+
| Archivers Control Panel v4.00 (c) 1992-1999 T. Godefroy |
+---------------------------------------------------------+


A.- LEGAL STUFF
    ~~~~~~~~~~~
a.- Copyright notice:
    ~~~~~~~~~~~~~~~~
 "Archivers control panel"  is a freeware,  it is NOT in the
 public domain.  This software  is copyright  (c)  1992-1999
 Thierry Godefroy, all rights reserved in all countries.

 You are granted a restrictive and limited license to:
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  - use  this  software  free of charge  for your  own usage
    and/or  in your  own programs  (including commercial and
    shareware programs);

  - make as many copies of this software as you like;

  - give  to others  as many copies  of this software as you
    like,  by any  means  you like  (BBS,  Internet,  disks,
    CD-ROM, software libraries, etc...);

 provided however that:
 ~~~~~~~~~~~~~~~~~~~~~
  - when you  incorporate  my software  into yours,  this is
    mentioned;

  - any  copy   given  to  another   person  be  entire  and
    unmodified,  i.e.  contains all the unmodified  files of
    this software, including this copyright notice;

  - any copy given  to another person  be so on a non-profit
    and no benefit basis  (i.e. you may charge for the media
    and mailing cost ONLY);

  - you  do  not  claim  for  any  ownership/rights  on this
    software  and you  do not place  any restriction  on its
    further distribution.

b.- Disclaimers:
    ~~~~~~~~~~~
 The author  cannot be held  liable for any  loss  or damage
 -direct or not-  resulting from the use  of this program or
 its documentation.  Although carefully tested, this program
 is not guaranteed  being bug free.  This software  is free,
 use it at your own risks or just don't use it at all.

c.- Misc.:
    ~~~~~
 Although some parts of this documentation are quite similar
 to  the user's manuals of  "arc", "lha",  "lhq", "zip"  and
 "zoo" the user  should read the original manuals if genuine
 information is sought.

 Archivers Control  Panel has been compiled  with Qliberator
 v3.36  (c) 1991  Liberation Software.  The menus have  been
 created with EasyPtr v3.06 (c) 1991 Albin Hessler Software.
 This  program runs  under "Qjump extended environment"  (c)
 QJUMP Ltd  and  uses "Qmenu"  (c) 1989-96  Jochen  Merz and
 FileInfo II (c) 1993 Thierry Godefroy if they are present.


B.- GENERAL FEATURES & REQUIREMENTS:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 "Archivers Control Panel" is  an interface designed to ease
 the use of the archivers  "arc", "lha", lhq", "zip", "zoo",
 and "tar".

 To run, this  program needs  both the  Extended Environment
 (PTR_GEN,  WMAN and  HOT_REXT)  and Qlib_run  (v3.36mod  at
 least).  These files must either  be in ROM  or loaded once
 for  all as resident extensions.  SMSQ/E users  do not need
 of  PTR_GEN/WMAN/HOT_REXT  as these  extensions are already
 part of the operating system.  As ACP uses  its own  exten-
 sions, it does not need of Toolkit II.

 Version "3.36mod(ified)"  of Qlib_run rectifies two bugs of
 v3.36  which prevented  to  get the  error code with  ERNUM
 (ERNUM was  in fact  equivalent  to ERLIN !).  ACP will not
 work  properly  without  this  version 3.36mod  which  will
 replace  any former versions with benefit  (total ascending
 compatibility).  You  can check  the  version  of  Qlib_run
 installed by typing the Super Basic command "Q_L".

 Although the Qmenu extensions (MENU_REXT) can  be dispensed
 with,  they greatly  ease the use  of the program thanks to
 the data & file select features they have.  The "MENU_REXT"
 file can  be found  in some  commercial software  ("QD" for
 instance) or bought from Jochen Merz Software.


C.- USING ACP:
    ~~~~~~~~~
1.- The help sub-menu:
    ~~~~~~~~~~~~~~~~~
 The help menu entitles you to view this help file from ACP.
 The four buttons in this menu allow:

  - to exit from the help menu.
  - to read again the help file from start,
  - to read the next page,
  - to read the next line.

2.- The main menu:
    ~~~~~~~~~~~~~
 The main menu of ACP got eigtheen buttons and four windows.

2.1.- The buttons:
      ~~~~~~~~~~~
 The four top left buttons allow (from left to right):

 - to move the menu around,
 - to invoke this help menu (see 1),
 - to put ACP to sleep (only active is QPAC 2 is loaded),
 - to terminate ACP.

 The four top right buttons invoke the "OPTIONS", "ACTIONS",
 "TOOLS" and "CONFIGURATION" menus (see 3 to 6).

 Any  event on  one of  the five  buttons located  below the
 title bar, selects the archiver software in force.

 The "All"  buttons  allow  to select  and unselect  all the
 files listed  in either the archive  (left "All" button) or
 the current directory (right "All" button).

 The "Extract"  button triggers  the extraction  of selected
 files from the archive to the current directory.

 The "Add" button triggers the opposite operation, adding to
 the archive  file all  the files  selected  in the  current
 directory.

2.2.- The small windows:
      ~~~~~~~~~~~~~~~~~
 The  two small windows  are aimed  to hold  the name of the
 archive  file  (left  window)  and the name  of the current
 directory (right window).

 A hit event  on one  of these  windows will entitle  you to
 change  their contents with the keyboard,  while a do event
 will, if QMenu is loaded, pop up the file selector (for the
 left  window)  or the  directory  selector  (for  the right
 window).  If QMenu is not available then a do event has the
 same effect as a hit event.

 Please note that these windows  only accept full path names
 (no DATA_USE nor PROG_USE defaults here).

2.3.- The big windows:
      ~~~~~~~~~~~~~~~
 The two  big windows  reflect  the contents  of the archive
 file (left window) if it already exists, and of the current
 directory (right window).

 The rightmost window entitles you to select the name of the
 files that must be processed  by the archiver for a storing
 operation (adding, moving, updating, refreshing).
 If a directory name  is selected in this window  (directory
 names got " ->" appended to their name), then all the files
 it holds (and, depending on the archiver used, all its sub-
 directories)  will be taken  into  account  for the storing
 operation.

 The leftmost window entitles you to select the names of the
 files to process for all  the other operations (extraction,
 verification, deletion, rebuilding, catalogue, viewing).

 Each time  the contents  of a small window is changed,  the
 corresponding big window is updated accordingly and,  for a
 moment, a small dialog box appears ("Reading the catalogue/
 directory, please wait...").
 When the catalogue  is updated  the words  "<ESC> to abort"
 are also  displayed  in this dialog box.  If for any reason
 (corrupted archive file hanging  the archiver for instance)
 the dialog box is kept displayed forever, then pressing the
 <ESC> key will return you back the control of ACP  (the big
 left window will then stay empty).

 These two big windows  are also automatically updated after
 each call to the archiver.  If you wish, you may trigger an
 update manually by issuing, on the associated small window,
 a hit event  immediately  followed  with a do event.  Under
 SMSQ/E (v2.84+), it is also possible  to force an update of
 these windows  by sending  job  events  to ACP  (SEND_EVENT
 "ACP",1 to refresh the leftmost window,  SEND_EVENT "ACP",2
 to refresh  the rightmost  window  or SEND_EVENT "ACP",3 to
 refresh both windows).

 The names  of the  files  listed  in these  windows  may be
 (un)selected either individually  (with a hit on each name)
 or all together (thanks to the corresponding "All" button).

 A do on one of the name listed  in the left window triggers
 the archiver execution and the viewing of all  the selected
 files in this window.  ACP will only  allow for  the  first
 3000 lines  of each file to be viewed,  if you want to view
 the entire file,  then you may use  the "View files" button
 of the "ACTIONS" sub-menu.
 This feature  does not work  with "tar" when the  "GNU tar"
 compatibility  option is  not in  force (the  "tar" version
 currently  available  for  QDOS/SMS does  not  support  the
 extraction to a console).

 (Un)Selecting a file  in the right  window also  stuffs its
 (full path) name into the HOT_STUFF buffer, making it ready
 to be recalled  in the  keyboard  queue with  <ALT>+<SPACE>
 keypress.

 A do on  any of  the file names listed in  the right window
 triggers:

  - a call to  FileInfo II  if it is loaded  and if ACP  was
    configured so to use it.  If FileInfo II knows about the
    type of the selected files,  then they will be processed
    each one in their turn by their associated programs.

  - a call to the view file menu  if QMenu is loaded  and if
    ACP  was  configured  so  to  ignore  FileInfo II (or if
    FileInfo II  did not recognize  the file type).  All the
    selected files will then be viewed in their turn.

  - the pop up of an error box if QMenu is not loaded and if
    FileInfo II is either unavailable, ignored by ACP, or if
    it did not recognize the file type.

 A do on one  of the  directory  names  listed  in the right
 window  (names with  " ->" appended)  allows  to go  down a
 level in the directory tree and the contents of the windows
 are  updated accordingly.  The special  file name "/"  that
 appears as the first  item  in the  right window  (when the
 current directory  is not the root directory)  entitles you
 to go up to the root directory  by isuing  a do event on it
 (the  "/"  item  is not  selectable,  only  a do  event  is
 possible on it).

 If no file name is selected in the window associated with a
 given  operation  and  if QMenu  is loaded,  then  an input
 window automatically appears when you trigger the operation
 (either with "Add" and  "Extract" buttons  of the main menu
 or with the buttons  of the "ACTIONS" sub-menu).  It allows
 you to enter  the names  of the files  to process manually,
 using the  "jokers" characters  ("*",  "?" and  "[ - ]") if
 you wish. With  "lhq", "zip", "zoo" and "tar"  you may also
 enter  the name  of a  file holding  the list  of files  to
 process, prefixed with "<".
 Example: if "ram1_list" holds the names:
          file1
          file2
          file3
          ...
          fileN
 then entering "<ram1_list"  into the manual input window is
 equivalent to entering "file1 file2 file3 ... fileN".  Such
 a list may be build  thanks to QPac2  "Print/List of files"
 item of  the  "Files"  menu,  or with  UNIX-like  utilities
 ("tree" for instance).

3.- The "OPTIONS" sub-menu:
    ~~~~~~~~~~~~~~~~~~~~~~
 This sub-menu entitles you to choose which archiver options
 to use. It got eleven buttons and two windows.
 The EXIT button taken appart, the ten other buttons let you
 select the following options:

 - "QDOS archive format": QDOS compatibility.  With "arc" if
   you select this button the file header  will be saved  in
   the archive  (in this  case  the  executable  files  data
   space will be  restored  when  extracting  them  from the
   archive  file).  If you  do not select it,  archive files
   from other operating systems may be processed.
   With "zip",  if this button is not selected,  the archive
   file header  will be compatible with "PKZIP"  file header
   but archived file names will be truncated (8 characters +
   3 characters for extension).

 - "Include directories":  with this option set and provided
   that you got level 2 (or 3) device drivers,  the archiver
   will take care  of (sub-)directory  names and will store/
   extract them together whith the files to process.

 - "Overwrite files":  When selected  this button will allow
   the archiver to overwrite files with same names,  even if
   the extracted files  is older  than the  already existing
   file.
 
 - "Keep original":  allows  to keep  the extracted files in
   the archive file when extracting them (for "arc";  unlike
   the other  archivers,  "arc" deletes the extracted  files
   from  the archive  file if  this option  is unset),  or a
   backup copy of the archive file itself when storing files
   into the archive.
   
 - "Confirmations":  if  this  button  is  unselected,   the
   archiver  will  overwrite   the  already  existing  files
   without the user confirmation.
 
 - "Display messages":  enables/disables the report messages
   generation by the archiver program.

 - "Compress files":  enables/disables the compression  when
   storing files into the archive file.
   
 - "lh5 compression" (with "lha" and "lhq"): to use the more
   efficient "lh5"  compression method instead of  the older
   (but compatible with older archive files) "lh1" method.
   "Compress faster" (with "zip"):  use a faster compression
   algorithm at the cost of a lower compression ratio.
   "Use "compress""  (with "tar"):  orders "tar" to  use the
   older and less efficient "compress" compressor instead of
   "gzip"  (which is  the default  compressor when  only the
   "Compress files" button is selected).

 - "Maximum compression":  will  enable  the most  efficient
   (but often more time and/or memory consuming) compression
   algorythm of the archiver  program. With "tar", selecting
   this item will make "bzip2" to be used during the archive
   compression phase instead of "gzip" or "compress".

 - "Encrypt  archive":   with  "arc"  this  button  enables/
   disables  the  encryption  of the stored files  using the
   "Encrypt/decrypt key" (without this key you  will only be
   entitled  to view  the archive file catalogue).  You must
   select  this button  to store,  extract or view a crypted
   file.
   With "zip" (v2.0.1 onwards)  this button enables/disables
   the  password  protection.  When this button  is selected
   "zip" asks you for  a password  when you want  to store a
   file into the archive file.
   When extracting password  protected files,  "unzip"  will
   automatically ask  you for  the password  whatever is the
   button state.

 The first window  is used to enter  the encrypt/decrypt key
 for encrypted "arc" archives.

 The second window  entitles you  to add advanced options to
 the command  line of the archiver built and passed  by ACP.
 If you want  to use it,  please  read  first  the  archiver
 manual carefully;  mis-use  of some  options  could destroy
 your data...
 For zip/unzip,  this window  holds both  the user  advanced
 options  strings  for zip  and unzip.  The two strings  are
 separated with "|" character like this:
 <zip options>|<unzip options>
 The advanced options are added before the options needing a
 parameter  in the  command  line built  by  ACP. E.g.  with
 "tar":  entering "k"  in the  advanced options  window will
 result, for an extraction, in the following command line:
 -xvk -f <archive> <files>
 "xv" and " -f <archive> <files>" are the command line parts
 built by ACP.  Because the "f" option needs  for a filename
 parameter to follow, you option was added just before.

4.- The "ACTIONS" sub-menu:
    ~~~~~~~~~~~~~~~~~~~~~~
 The EXIT button taken appart, the ten other buttons of this
 menu  trigger  all  the possible  actions  allowed  by  the
 current archiver.

 The fisrt four buttons trigger a storing operation into the
 archive file and the list of files to process is then built
 from  the selected file names  into the main menu rightmost
 big window  (current  directory  contents).  All the  other
 buttons trigger  operations dealing  with the files already
 stored into the archive file  (the list of files to process
 is then built from the main menu leftmost big window).

 The ten possible actions are:

 - "Add files":  adds the selected files to the archive file
   (same action as for the "Add" button of the main menu).

 - "Move files":  as "Add" but erases  the stored files from
   the current directory.

 - "Update archive": adds the selected files if they  do not
   already  exist into the archive file  or if they are more
   recent than the versions  which are already stored in the
   archive file.
 
 - "Freshen archive":  adds  the  selected  files  if  older
   versions of them were already stored in the archive file.

 - "Extract files":  extracts  the selected  files  from the
   archive file  and  puts them  into the current directory.
   (same  action  as for the  "Extract"  button  of the main
   menu).

 - "Verify archive": checks  the archive file integrity. For
   "tar",  this will  consist  in  reporting any  difference
   between the archived  files and the files  in the current
   directory. 

 - "Delete files":  deletes  the  selected  files  from  the
   archive file.

 - "Rebuild archive": rebuilds the archive file, compressing
   again the selected files with a newest compression method
   (with "arc" and "lhq"), or erasing the "deleted" files in
   the archive file (with "zoo").

 - "View catalogue":  lists the files stored  in the archive
   file. The files  displayed  are only  the  ones  of which
   the name corresponds  to one  of the selected  names from
   the main menu leftmost big window. The catalogue presents
   all  the details  about each selected file  (size,  date,
   compression method, compression ratio, CRC, etc...).
 
 - "View files": view all the selected files (this action is
   equivalent to  issuing a do event  on a file name  of the
   main  menu  leftmost big  window  but  all lines  of  the
   extracted file are shown instead of just the first 3000).

5.- The "Tools" sub-menu:
    ~~~~~~~~~~~~~~~~~~~~
 With the help of this sub-menu, you may use gzip, bzip2 and
 compress on  any number  of individual files  (whether they
 are archive  files or not) and  to split (and glue  back) a
 single  file in  multiple  volumes  (therefore allowing  to
 exchange  files  bigger  than   the  room  available  on  a
 single floppy disk between two computers).

 The top window  is aimed at holding the  file(s) to process
 name(s). When the sub-menu is poped up, it holds either:

 - the  name of  the  current  archive  file  (held  in  the
   leftmost window of the main menu), if any;
 - the names of the files of the current directory which are
   selected into the  rightmost big window of  the main menu
   (if any).
 - nothing  (if  they are  no  current archive  file and  no
   selected files in the current directory).

 A hit on this window allow to edit the filename(s), while a
 do makes  the QMenu file  selector to  pop up (if  QMenu is
 installed).
 To make the selected file names of the current directory to
 appear in this window, just enter an empty string in it.

 The "Split file on:" button is available when a single file
 name  (with full  path)  is showing  into  the "File(s)  to
 process"  window.  The  "flp1",  "flp2"  and  "Fixed  unit"
 buttons allow  to choose  on which  unit the  splitted file
 fragments will be written. The  "Max size of each fragment"
 window is  used when the fragments  are to be written  on a
 fixed unit  (the size  of the  fragments written  on floppy
 disks is automatically adjusted to the available free space
 on each floppy disk).

 The splitting  process starts  as soon  as the  "Split file
 on:"  button  is selected  (it  is  therefore necessary  to
 choose,  before selecting  this button,  on which  unit the
 splitting must  take place as  well as to set  the fragment
 max size if  the destination is a fixed unit).  If a "Fixed
 unit"  was  choosed,   then  ACP  will  ask   you  for  the
 destination  unit and  directory  (using  either the  QMenu
 directory selector if Qmenu is  loaded or an input window).
 When a floppy  unit is choosed, ACP asks you  to change the
 disk  in the  floppy unit  after each  fragment is  written
 (please wait  until the  floppy unit stops  before changing
 the disk !). It is possible to write the fragments on a DOS
 floppy disk provided that the file being splitted obeys the
 DOS file naming conventions (8 characters name maximum with
 an extension  of no  more 3  characters separated  from the
 name with a dot. E.g. MYFILES.ZIP). Finally, when splitting
 a  file on  floppy disks,  you may  abort the  operation by
 pressing  <ESC>  when ACP  displays  the  window asking  to
 change the disk.

 The  "Glue the  fragments  of a  splitted  file" button  is
 available when  a the "File(s)  to process" window  holds a
 filename (with full path) ending  with either the "_000" or
 the ".000" extension. The gluing  process begins as soon as
 this  button is  selected.  The source  unit and  directory
 where ACP reads  the fragment are the ones  where the first
 fragment  (the   file  ending  with  "000")   resides.  The
 destination unit  and directory (where the  glued file will
 be written) is asked by  ACP via either the QMenu directory
 selector  or an  input window.  When the  source unit  is a
 floppy  disk, ACP  asks  to  change the  disk  each time  a
 fragment  has  been read  (you  may  abort the  process  by
 hitting the <ESC> key at this point).

 Note  1: the  file splitting  and gluing  implies that  the
 biggest fragment  can fit the contiguous  available memory.
 If this  is not the case,  then ACP will report  an "out of
 memory error".

 Note  2: When  splitting a  file, the  QDOS file  header is
 saved into  the first fragment  and the file type  and data
 space are restored by ACP when gluing back the fragments of
 the file  (the original file version  and modification time
 are  not  restored though).  It  is  therefore possible  to
 transfer the fragments through a  medium that does not keep
 track of  the QDOS files  header while still being  able to
 recover  the main  file attributes  when the  fragments are
 glued back together.

 The "Compress",  "Uncompress" and "View" buttons  allow, as
 their names  say it by themselves,  to compress, uncompress
 and view  files with either "gzip",  "bzip2" or "compress".
 When  a file  is (un)compressed,  it is  replaced with  its
 (un)compressed version. BEWARE:  unlike "gzip" and "bzip2",
 "compress"  does not  saves the  QDOS file  header !  While
 "gzip"  and   "bzip2"  do  save  this   header,  the  saved
 information is still held into  the QDOS file header of the
 compressed file.

6.- The "Configuration" sub-menu:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 This sub-menu got three sub-sections.

 The first two ones deal  with the current archiver (the one
 being selected into  the main ACP menu). They  allow you to
 change   the  filename   for  the   current  archiver,   to
 (de)activate the  "Debug" option  of ACP for  this archiver
 and to choose the archiver's temporary files directory (for
 "lha" and "zoo",  this directory is always the  same as the
 current directory and cannot  be edited from this sub-menu;
 the same is true for  "arc" if the "Encrypt archive" option
 is selected in the "Options" sub-menu).
 For "zip/unzip",  four more  buttons appear in  between the
 first  two sections.  "zip"  and "unzip"  buttons make  the
 corresponding "Archiver filename" to appear in the top most
 window,  while  the  two   "Info"  buttons  will  make  ACP
 compatible  with Info-ZIP/UNZIP  (ported under  QDOS/SMS by
 Jonathan Hudson).
 For "tar",  the second  sub-section is different;  as "tar"
 does  not use  temporary files,  the "Temporary  directory"
 window is  replaced by  the "Compressor directory"  one and
 four  buttons appear  between  the  first two  sub-sections
 ("gzip",  "bzip2", "compress"  and  "GNU  tar"). The  first
 three buttons allow to make their associated directories to
 appear in the "Compressor  directory" window where they can
 be edited. The fourth button  allow to enable the "GNU tar"
 compatibility (more  actions are  available when  using GNU
 tar, such as deleting files from an archive or adding files
 to an existing archive). 

 The third  sub-section allows  to (de)activate  several ACP
 optional characteristics  such as  the filename  sorting in
 the main menu windows, the  usage of the archivers messages
 history,   the  usage   of   FileInfo  II,   and  the   ACP
 configuration saving  in the environment variables  on exit
 (note that  the FileInfo II usage  and configuration saving
 options    are   only    available   when,    respectively,
 "FileInfo2_bin" and "env_bin" are loaded in your system).

7.- Control of the archiver or compressor program by ACP:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 When ACP EXecutes an archiver or a compressor, it redirects
 screen inputs and outputs to one of its own window, part of
 its "display" menu.

 The  display menu  may be  moved and/or  resized while  the
 archiver/compressor is running (the screen resizing is only
 active if you  use EGA or greater screen  resolution as the
 "small"  size of  the display  menu already  uses the  full
 standard QL screen...).

 It is  also possible to "kill"  the archiver/compressor job
 (by  hitting  the   "gun"  button  or  the   <CTRL  X>  key
 combination); BE CAREFULL when  using this feature: killing
 the  archiver or  compressor job  while it  is updating  or
 (un)compressing a  file may  corrupt this  file -  YOU HAVE
 BEEN WARNED !  To avoid any unwanted  dangerous killing  of
 the   archiver/compressor  job,   ACP   will   ask  for   a
 confirmation if this job is modifying a file.

 The "exit"  button of the  display menu is active  once the
 archiver/compressor job is terminated  (either by itself or
 after a "kill"); if you  use this button while the archiver
 job is still running, ACP  will protest by emitting a short
 "beep".  When the  archiver/compressor program  terminates,
 the message "End of processing !" is displayed by ACP.

 If you configured ACP so to keep an history of all archiver
 messages (see D), then moving the pointer onto the display
 window once "End of processing !"  as been displayed,  will
 turn this window into  a application sub-window holding the
 list of all the issued messages.  You will then be entitled
 to scroll trough this list.
 Using the history is a matter of:
 - personal taste,
 - amount of available memory,
 - processor speed.
 I.e. if you got little available memory or a slow processor
 you will probably prefer not to use ACP history (by default
 ACP is configured so).
 Please note that because  of a bug  in "arc" (see E),  ACP
 automatically disables the history if "arc" is used and the
 "Debug" option is set for "arc".

8.- Keyboard shortcuts:
    ~~~~~~~~~~~~~~~~~~
 To make the  use without mouse easier, the  buttons and the
 windows can be selected by hitting the key corresponding to
 the underlined letter of  their name/title. For buttons and
 windows  without a  name/title, the  following keys  may be
 used as a shortcut:

   All menus:
   ~~~~~~~~~
    "Exit" button. . . . . . . . . . . . . : ESC
    "Move" button. . . . . . . . . . . . . : CTRL F4

   Help menu:
   ~~~~~~~~~
    "Flash" button . . . . . . . . . . . . : CTRL F2
    "Page" button. . . . . . . . . . . . . : P
    "Line" button. . . . . . . . . . . . . : L

   Main menu:
   ~~~~~~~~~
    <Zzz> button . . . . . . . . . . . . . : CTRL F1
    <?> button (help). . . . . . . . . . . : F1
    <OPTIONS> button . . . . . . . . . . . : F2
    <ACTIONS> button . . . . . . . . . . . : F3
    "TOOLS" button . . . . . . . . . . . . : F4
    <CONFIG.> button . . . . . . . . . . . : F5
    <Archive file> (contents) window . . . : TAB
    <Current directory> (contents) window. : SHIFT TAB

   Display menu:
   ~~~~~~~~~~~~
    "Kill" button. . . . . . . . . . . . . : CTRL X
    "Resize" button. . . . . . . . . . . . : CTRL F3

9.- Error trapping:
    ~~~~~~~~~~~~~~
 When an error occurs an alert box appears.  You can exit it
 by hitting the "OK" button.  If you failed to load an ERNUM
 bug  free  version  of QLib_run  (v3.36mod),  then ACP will
 remind it to you  and will be unable  to tell you  what was
 the exact type of the error.


D.- CONFIGURATION:
    ~~~~~~~~~~~~~
 "Archivers  Control  Panel"  is configurable  with "CONFIG"
 (level 1) which is the configuration software common to the
 most of the programs running under the Pointer Environment.

 Moreover if you got the  C68 environment  variables support
 (env_bin)  loaded in your system,  you may then dynamically
 configure  ACP  by  defining  the  appropriate  environment
 variables  (they are  all starting  with "ACP_"  and  their
 exact   names   are  given   below   together   with   each
 corresponding configurable item). Each time it is executed,
 ACP checks  for environments  variables  and their contents
 takes precedence over ACP default configuration.

 If  you  replied  "yes"  for  the  "Save  ACP  config  into
 environment  variables"  configurable  item,  or if you set
 "ACP_SAVECONFIG=Y",  then ACP  will also  save its  current
 configuration  before exiting  so that  the next time it is
 executed,  you will find ACP in the same state  as when you
 left it.

 The "ACP_OPTIONS" environment  variable does not correspond
 to any configurable  item  but holds the state  of the  ten
 buttons   of  the  "OPTIONS"  sub-menu   ("0"  stands   for
 "unselected"   or  "unavailable"   while  "1"   stands  for
 "selected").

 The configurable parameters are the following:

     - The  help  filename  (when  prefixed  with  "@",  the
       filename gets the PROGD$ default added in front of it
       at runtime).

     - The default  current  directory  (leave this empty to
       use  the DATA_USE  default  at runtime).  Environment
       variable "ACP_CURDIR".

     - The default archive path (leave this empty to use the
       DATA_USE default  at runtime).  Environment  variable
       "ACP_ARCHDIR".

     - The temporary directory  (leave this empty to use the
       DATA_USE default  at runtime).  Environment  variable
       "ACP_TMPDIR".

     - The sort filenames option  for the two big windows of
       the    main   ACP    menu.   Environment    variables
       "ACP_SORTARCH"  and  "ACP_SORTDIR", possible  values:
       "Y" (for "yes") or "N" (for "no").

     - The display menu default size.  Environment  variable
       "ACP_BIGDISPLAY", possible values: "Y" or "N".

     - The  ACP  history  activation.  Environment  variable
       "ACP_HISTORY", possible values: "Y" or "N".

     - The   FileInfo   II   usage.   Environment   variable
       "ACP_FI2USAGE", possible values: "Y", "N" or "?" (for
       "querry").

     - The current  configuration  saving  into environments
       variable.   Environment   variable  "ACP_SAVECONFIG",
       possible values: "Y" or "N".

     - The default archiver  in force.  Environment variable
       "ACP_ARCHIVER", possible values: "arc", "lha", "lhq",
       "zip", "zoo" or "tar".

     - The  archivers  file names  ("@" prefix  = PROGD$  at
       runtime).  Environment  variables "ACP_xxxNAME"  with
       "xxx" = "ARC", "LHA", "LHQ", "ZIP", "UNZIP", "ZOO" or
       "TAR".

     - The names of  the directories holding the compressors
       used by "tar". Environment variables "ACP_xxxDIR with
       "xxx"  =  "GZIP",  "BZIP2"  or  "COMPRESS",  possible
       values: name of the directory with "_" appended.

     - The  archivers  user  advanced  options.  Environment
       variables  "ACP_xxxOPT"  with  "xxx" = "ARC",  "LHA",
       "LHQ", "ZIP", "UNZIP", "ZOO" or "TAR".

     - The "Debug" activation for each archiver. Environment
       variables   "ACP_xxxBUG"  with   "xxx"="ARC",  "LHA",
       "LHQ", "ZIP", "ZOO" or "TAR", possible values: "Y" or
       "N".

     - The  InfoZIP,   InfoUNZIP  and  GNUtar  compatibility
       modes.    Environment     variables    "ACP_INFOZIP",
       "ACP_INFOUNZIP" and ACP_GNUTAR,  possible values: "Y"
       or "N".

 Moreover,  ACP accepts an archive  file name passed  in the
 command  line, example:  EX ACP_obj;"ram1_MyFile_zip"  will
 execute ACP, will put "ram1_MyFile_zip" in the the "Archive
 file"  window  and  will  automatically  select  the  "zip"
 archiver.
 For  "tar",   ACP  recognizes  files  with   the  following
 extensions (separated from the  filename with either "." or
 "_"):
        - "tar" for uncompressed tar files.
        - "taz" and "z", for "COMPRESSed" tar files.
        - "tgz" and "gz", for "GZIPed" tar files.
        - "tbz" and "bz2", for "BZIPed" tar files.


E.- KNOWN ARCHIVERS AND COMPRESSORS BUGS:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 - arc v5.12c: The  archived  filenames  are  limited  to 12
               characters.  This is a  limitation  and not a
               bug as "arc" was designed first for MS-DOS...

               When the temporary files directory is located
               on a different device  than the device of the
               archive file, "arc" still tries to rename its
               temporary archive file (instead of moving it)
               and of course does not succeed doing so...
               The net  result  is that  it looks  like your
               archive file  disappeared (in fact it is kept
               into the temporary directory with a name like
               ".ArcXXXX_arc").
               If the "Fix bugs"  feature of ACP  is set for
               "arc",  then ACP will  take care  of this and
               will move  the archive file  (and give it the
               right name) after "arc" finished its work.

               The stdout  channel  of "arc"  is not flushed
               before  a request  is  done  on  stdin.  This
               results  in delayed  message  displaying when
               the ACP history is used (in fact the user has
               to  answer   a  question   that  is  not  yet
               displayed !!!).  ACP  will then automatically
               desactivate  its history  feature if "arc" is
               used with the "Fix bug" feature enabled.

- lha        : Although  "lha"  does make  use  of "\"  as a
               directory name separator in its catalogue, it
               does not allow for  this separator to be used
               into the  filenames  passed  in  its  command
               line (only the "_" is allowed).
               If the "Fix bugs"  feature of ACP  is set for
               "lha", then ACP will replace all the "\" with
               "_" in the  filenames  passed into  the "lha"
               command line.

 - lhq       : "lhq" does not process  the "*" joker correc-
               tly (it should  be understood as  "all files"
               but "lhq" understands "no file" instead !!!).
               ACP takes care  of this situation if its "Fix
               bugs" feature is set for "lhq".

               Another  big  problem  with "lhq"  is that it
               corrupts any existing archive file if you try
               to store new files  in it  (you then can only
               create new  archive files with  "lhq" but NOT
               expand them) !
               ACP  therefore  prevents you  from adding any
               new file to an existing "lhq"  archive if the
               "Fix bugs" feature is set for it.

 - zoo v2.1  : Using  both  "Confirmations"  and  "Overwrite
               files"  options  at the same time  will cause
               "zoo"  to  fall in  an endless  loop  (asking
               "Overwrite Y/N ?" forever) whenever a file is
               about to be overwritten  (moreover "zoo" will
               then grab the  keyboard queue  and it will be
               impossible to kill it with the "gun" button).
               If the "Fix bugs" feature  of ACP  is set for
               "zoo", then you will not be allowed to select
               these two options at the same time.
               Zoo  does not  accept  any archive  name with
               "_zoo"  appended  in its command  line (!!!).
               If  the "Fix bugs"  feature of ACP is set for
               "zoo"  then  ACP   passes  the  archive  name
               without its extension.

 - InfoZIP &
   InfoUNZIP : this is not really  a bug but rather a pretty
               useless and  annoying feature;  when one asks
               to zip to "Include  directories",  it creates
               catalogue entries with the directory names as
               the  file names  and a length  of zero bytes.
               Thereafter,  unzip  ("Info" or not) will list
               these entries whenever a catalogue is reques-
               ted.
               If the "Fix bugs" feature  of ACP  is set for
               "zip/unzip"  then the directory names  (names
               ending  with "/")  are  suppressed  from  the
               archive contents  presented  in the main menu
               leftmost big window.

 - tar       : only tar v0.05  and later is fully compatible
               with ACP v4.00. This tar version was debugged
               and extended  by me. v0.04 may  eventually be
               used with  ACP v4.00 but the  "Debug" mode of
               ACP must  be enabled for "tar"  in this case.
               Earlier version to tar  v0.04 are not "bzip2"
               aware.

- gzip       : only gzip v1.2.4 30/12/1999 release and later
               may be used with ACP v4.00.

- bzip2      : only bzip2 v0.9.5d 30/12/99  release an later
               may be used with ACP v4.00.

- compress   : compress does not keep track of the QDOS file
               header.

 Of course in future releases of the archivers the described
 bugs might be  corrected  and then  the "Fix bugs"  feature
 will not be needed anymore.


F.- ARCHIVERS PERFORMANCES:
    ~~~~~~~~~~~~~~~~~~~~~~~
+----------------+-----------------------------------------+
|                |             S O F T W A R E             |
|                +-----+-----+-----+-----+-----+-----+-----+
|                | arc | lha | lhq | zip | zoo | tar | tar+|
|                |     |     |     |unzip|     |+gzip|bzip2|
+----------------+-----+-----+-----+-----+-----+-----+-----+
| Data encryption| yes | no  | no  | yes | no  | no  | no  |
| ACP_obj c.rate | 32% | 59% | 59% | 60% | 59% | 60% | 59% |
| ACP_help c.rate| 50% | 65% | 65% | 67% | 65% | 67% | 70% |
| Total c.rate(*)| 38% | 61% | 61% | 62% | 61% | 61% | 62% |
+----------------+-----+-----+-----+-----+-----+-----+-----+
Notes: - "c.rate" is  the  compression  rate  calculated  as
~~~~~    follow:     100-100*Final_size/Initial_size    (the
         greater,  the better...).  This is  the compression
         rate  within the  archive  file,  i.e. without  the
         compressed file header overhead (but for "tar" that
         compresses everyting: header+file).
       - With "zip"  and  "zoo"  the  <Maximum  compression>
         option was used  and with "lha" and  "lhq" the <lh5
         compression>  option   was  selected.   The  "Info"
         version of zip was used.
       - Because  with tar, both  the files and  the headers
         are  compressed, "tar/gzip"  usually gets  a better
         total  compression ratio  than  "zip" with archives
         holding a lot of  files. "tar/bzip2" is usually the
         best in  term of compression ratio  in almost every
         case but at  the cost of a  huge memory consumption
         and a very slow operation.
     (*) This is the actual archive file size  compared with
         the total size of ACP_obj + ACP_help.


G.- HISTORY OF ACP:
    ~~~~~~~~~~~~~~~
v1.0 to 1.x: ACP="Arc Control  Panel".  These  releases were
             supporting  "arc" only.  I do not remember what
             "x" was (probably 1 or 2).
v1.y to 1.8: ACP="Archivers  Control Panel".  These releases
             did support  "arc",  "har",  "LHx"  and  "zoo".
             y=x+1 (see above).
v2.0 to 2.3: Support  for "arc",  "lha",  "lhq",  "zip"  and
             "zoo".
v2.4       : Support for InfoZIP/UNZIP added.
v3.0 to 3.5: Full  re-write  of  ACP  with  new  menus:  the
             archive and current  directory contents are now
             displayed in application  sub-windows where the
             filenames are  directly selectable.  Many other
             improvements (too many to be listed here).
v4.00      : - tar/gzip/bzip2/compress support added.
             - New "tools" sub-menu allowing to split large
               files into several fragments.
             - Extended "Configuration" sub-menu.      
             - Partly  re-written  software with  many small
               improvements (too many to be listed here) and
               some minor bug fixes.


THANKS !
~~~~~~~~
 I want to thank all of those who helped me in improving ACP
 thanks  to  their  suggestions  and/or  bug  reports,   and
 especially (in alphabetic order):

 Jean-Louis DIANOUX
 Ron        DUNNETT
 Tony       FIRSCHMAN
 Chris      FOWLER
 Alain      GRENET
 Peter      JAEGER
 Dilwyn     JONES
 Phil       JONES
 Wolfgang   LENERZ
 Jochen     MERZ
 Davide     SANTACHIARA
 Peter      SULZER
 Roy        WOOD


For any suggestions or remarks about ACP, you can contact me
on QLCF BBS (FidoNet  addresses 2:2503/402.2 and 2:257/67.7,
I am the sysop)  or on Internet (email: godefroy@imaginet.fr
and QL support Web site at: http://qdos.cjb.net/english).


                                           Thierry Godefroy.
