		Xpk File System Handler
		=======================

Copyright:
----------

      © Copyright 1992, Freeware, All rights reserved

   Distribution EXCLUSIVELY permitted to the XPK authors as part of their XPK
   package. Other forms of distribution need the permission of the author.

   No guarantee of any kind is made that this program is 100% reliable.
   You use it on your own risk.

Notes:
------

   This package contains a file system handler similar to Kristian Nielsen's
   XFH. Due to the similarities only the differences to XFH will be stated
   here. For a detailed description of the basics consult the XFH.doc.

   The xpk-handler needs arp.library v39+ in libs: to run.

   Complete source code for Aztec C v5.2a included.

Differences to XFH:
-------------------

   The xpk-handler uses another mechanism as XFH to pass the option the
   handler needs to run. Instead of external config files a special field of
   the mountlist entry is used (heavy magic). This field (Startup) contains
   an argument string as ONE WORD with all necessary data the handler needs
   to know at startup time. All spaces MUST be represented by an underscore
   due to the limitations of the mount comand. To insert an underscore as
   normal character in the parameter string you have to use two underscores.
   This command line will be parsed according to the following standard
   AmigaDOS template:

	ROOTDIR/A,VOLUMENAME/K,AUTOCOMPRESS/S,STEPDOWN/S,XPKPRIORITY/K,
	PACKMETHOD/K,PASSWORD/K

   The available options are detailed below:

      Option ROOTDIR:
	This option is used to set the path to the root directory for the
	handler. For example `ROOTDIR_"ram:"' will cause the handler to use
	the ram disk as root directory.

      Option VOLUMENAME:
	This option is used to set the volume name for the handler. This
	name will be shown by the AmigaDOS command Info and the workbench
	uses it for the handler's icon. For example `VOLUMENAME_"Xpk_Test"'
	causes the volume `Xpk Test:' to appear.
	Default: `Xpk handler'

      Option AUTOCOMPRESS:
	This option enables the handler to compress files written through it.
	Default: turned off
	
      Option STEPDOWN:
	This option enables XPK to reduce the pack efficieny if necessary to
	save memory.
	Default: turned off
	
      Option XPKPRIORITY:
	This option is used to set the task priority the handler should use
	when doing XPK operations (pack, unpack, ...).
	Default: 0

      Option PACKMETHOD:
	This option is used to select the mode XPK should use for compressing
	files. For example `PACKMETHOD_"BLZW.12"'will cause the handler to
	use 12-bit BLZW compression.
	Default: `NUKE'

      Option PASSWORD:
	This option is used to set the password that the handler should pass
	to XPK when compressing or decompressing. For example
	`PASSWORD_"Magic_word"' will cause the handler to use the password
	`Magic word'.
	Default: none

   So the startup field could looks like:

	Startup = ROOTDIR_"ram:"_VOLUMENAME_"Xpk_Test"_AUTOCOMPRESS_PACKMETHOD_"NUKE"

   In the `c' subdirectory a small tool called `kill' can be found to remove
   the handler from within memory and unlink the device node from AmigaDOS
   device list.

   Syntax: kill <device name>
   Example: kill xpk:

Caveats:
--------

   Due to the (mis)usage of the startup field some tools, eg. DiskX or
   DosList, misinterprets this as a pointer to an FileSysStartupMsg structure.
   So an invalid device name, unit number and environment vector will be used.

Author:
-------

   Torsten Jürgeleit
   Am Sandberg 4
   W-5270 Gummersbach
   Germany

   Phone: ++49 2261 27400

   eMail: bj030@aix370.rrz.uni-koeln.de   (Fast, but matter of change)
	  mike@miba.obb.sub.org           (Slow and unsafe)

   Bug reports, flames, donations etc. are welcome !

History:
--------

v1.0 - first public release
