@DATABASE xDM Documentation
@AUTHOR "Adam Chapman"
@(c) "© 1995 Adam Chapman"
@$VER: v2.0 (29.9.95)
@WIDTH 78
@INDEX Main
@WORDWRAP

@NODE Main "xDM - The eXtended Disk Masher"
                           @{fg shadow}@{u}                       @{uu}@{fg text}
                           @{fg fill}@{u}                       @{uu}@{fg text}

                                     @{fg shine}@{b}xDM@{ub}
                          @{fg shine}@{b}The eXtended Disk Masher@{ub}
                                 @{b}Version 2.0@{ub}

                             @{b}© 1995 Adam Chapman@{ub}
                           @{u}@{fg fill}                       @{uu}@{fg text}
                           @{u}@{fg shadow}                       @{uu}@{fg text}


@{u}@{b}Contents:@{uu}@{ub}

@{"Introduction" link Introduction}             -   An introduction to xDM
@{"Features" link Features}                 -   An overview of features in xDM
@{"System Requirements" link SysReq}      -   What do you need to run xDM?
@{"Overview" link Overview}                 -   An overview of the xDM system
@{"Installation" link Installation}             -   How to install xDM
@{"Usage" link Usage}                    -   Using xDM
@{"Directory Utilities" link DirUtils}      -   Linking xDM to a Directory Utility
@{"Technical Information" link TechInfo}    -   What goes on behind the scenes?
@{"Hints and Tips" link Hints}           -   Hints and tips on using xDM
@{"Revision History" link History}         -   What happened between versions?
@{"Thanks and Salutations" link Thanks}   -   Cheers lads!
@{"Contacting the Author" link Contact}    -   Contact me!
@ENDNODE

@NODE Introduction
@{u}@{b}Introduction@{uu}@{ub}

Do you want to save yourself money when sending disk archives by modem?
Maybe you want to use fewer disks storing disk archives.

@{b}"Just use LZX!"@{ub}

Fine, but what if the disks are Non-DOS (such as demos)?

@{b}"Use DMS!"@{ub}

DMS isn't the answer.  It's slow, unstable and actually, pirated.

@{b}@{i}"You need xDM - The eXtended Disk Masher!"@{ub}@{ui}

Yes!  xDM supports both AmigaDOS and Non-DOS disks.  It can also compress
Non-AmigaDOS filesystems, such as MS-DOS disks.  xDM is a combination of
DMS-style disk reading then compression by LZX.

All of this in a 100% system friendly package, written in AmigaDOS Scripting
language for total compatibility, no matter what your system.  Because of
this, unlike other disk compressors, xDM doesn't crash when presented with
strange configurations.

xDM also allows you to get on with whatever other tasks you have in hand,
through it's fully multitasking design, which doesn't hog the system.
@ENDNODE

@NODE Features
@{u}@{b}Features@{uu}@{ub}

@{fg shine}°@{fg text}  Faster and better compression than DMS/XPK

@{fg shine}°@{fg text}  Special versions for registered LZX users ("-Qf" and "af" options)

@{fg shine}°@{fg text}  Supports Non-AmigaDOS filesystems (such as MS-DOS)

@{fg shine}°@{fg text}  Supports HighDensity disks (whether AmigaDOS or not!)

@{fg shine}°@{fg text}  Has a converter (DMx - the Disk Masher eXchange) for converting DMS
   archives to xDM format automatically

@{fg shine}°@{fg text}  Has a version with it's own, easy-to-use, mouse driven GUI and a version
   with a CLI interface for easy inclusion into a Directory Opus (or other
   directory utility)

@{fg shine}°@{fg text}  Supports packing and unpacking to the RAD: device for speedy results

@{fg shine}°@{fg text}  Fully multitasking and OS friendly

@{fg shine}°@{fg text}  No external libraries required

@{fg shine}°@{fg text}  Full error checking and handling within the script to stop problems before
   they even occur

@{fg shine}°@{fg text}  Extensive AmigaGuide documentation, written in plain, clear English

@{fg shine}°@{fg text}  Installer script that uses the official "Installer" program

@{fg shine}°@{fg text}  Established for some time now, with excellent future support

@{fg shine}°@{fg text}  Beta tested by 10 beta testers, on many different configurations, from
   Kickstart/Workbench 2.04 to Kickstart/Workbench 3.1

@{fg shine}°@{fg text}  Modular design, so it's easy to increase xDM's efficiency
@ENDNODE

@NODE SysReq "System Requirements"
@{u}@{b}System Requirements@{uu}@{ub}

@{u}Hardware:@{uu}

@{b}Any Amiga with...@{ub}

	@{fg shine}°@{fg text} Kickstart/Workbench v2.04 or above required for the CLI versions

	@{fg shine}°@{fg text} Kickstart/Workbench 2.1 or above required for the GUI versions

	@{fg shine}°@{fg text} At least 1mb of RAM - 2mb or more recommended.  If using 1mb of RAM
	  compression speed will suffer and you will need a harddisk or
	  second floppy drive.  If you want to compress HighDensity disks,
	  add 1mb of RAM to any total you arrive at.

@{u}Software:@{uu}

	@{fg shine}°@{fg text} ENV: assigned somewhere (normally done in the standard Amiga
	  Startup-Sequence, unless you have changed something).

	@{fg shine}°@{fg text} T: assigned somewhere (again, normally done in the standard Amiga
	  Startup-Sequence, unless you have changed something).

	@{fg shine}°@{fg text} The following programs in your C: directory or on a path somewhere.
	  (These are supplied with Workbench):

	  @{i}Assign   DiskChange      Eval          List       Mount@{ui}
	  @{i}Rename   RequestChoice   RequestFile   Resident   Type@{ui}

	  (Attention Workbench 2.04 users!  RequestChoice and RequestFile
	  are not included as part of your distribution.  The CLI versions of
	  xDM will work, but to get the GUI versions working, you will need
	  to obtain RequestChoice and RequestFile from somewhere (not
	  included due to copyright reasons).

	@{fg shine}°@{fg text} PackDev & "dd" -- These will be in installed by the installer
	  script, which uses the official "Installer" program.

	@{fg shine}°@{fg text} LZX (v1.20 or better, evaluation or registered edition) by Data   
	  Compression Technologies.  Remember to use the corresponding version of 
	  LZX for your CPU.


@{b}NOTE:@{ub}  xDM will check that all of the necessary external files (but not the
       system commands) exist on your system in a valid path before running.


@{u}@{b}Optional Requirements@{uu}@{ub}

@{u}Hardware:@{uu}

	@{fg shine}°@{fg text} MC68020 CPU or better recommended

@{u}Software:@{uu}

	@{fg shine}°@{fg text} DMS v1.x / v2.x CLI version
	  If you want to convert DMS archives to xDM format, using the
	  supplied DMx (Disk Masher eXchange) utility, then you must have a
	  CLI version of DMS installed in your C:  directory (or on a path
	  somewhere) - and it must be called "DMS".

	@{fg shine}°@{fg text} MFS (MultiFileSystem) v2.x
	  If you want to compress MS-DOS or Macintosh disks, you will require
	  MFS plus one of the following...

	  For MS-DOS disks:  @{i}CrossDOS@{ui} (Supplied with Workbench 2.1 and
	                     above.

	  For Macintosh disks:  @{i}CrossMAC@{ui} or @{i}MaxDOS@{ui} (available
	  separately - CrossMAC is commercial software, MaxDOS is Public
	  Domain).

	  @{b}NOTE:@{ub}  If you are using the full CrossDOS 6 Pro package and
	  not the Commodity supplied with Workbench, then be sure to use MFS
	  v2.2.
@ENDNODE

@NODE Overview
@{u}@{b}Overview@{uu}@{ub}

There has always been a need for people to archive whole disks for
distribution over the phone lines.  The problem arises when you have a
non-AmigaDOS standard disk (for example, a lot of demos).

Originally a program called Warp was written and used (mainly in the hacker
world) for converting these kind of disks into a single file which could then
be sent via a modem.  Although Warp achieved it's aims, it often produced
files larger than the total sum of the parts on disk!

Later on, a program called DMS (Disk MaSher) was developed.  Originally a
commercial concern with a give-away PD version which was slower and less
compressive than the full version, it was quickly adopted by the Amiga
community as the de-facto standard for archiving whole disks.

DMS was hi-jacked by software pirates who altered routines and the packing
process.  They also managed to introduced some incredible bugs which means
that these versions of DMS will hang on anything a little out of the
ordinary.  It also means there is no scheduled or co-ordinated development
programme.

In it's latest incarnation, it has been renamed to Device MaSher (it's still
DMS) and ParCon software have illegally taken over it's development.  It is,
however, still unstable at times and the compression engine is not quite up
to what it could be.

All of this leaves a hole in the market!

Enter xDM.

Version 1.0 used the most advanced compression engine on the market - LZX by
Data Compression Technologies in order to 'mash' it's output - the rest was
handled by a freeware device handler.  It was all gelled together with a
simple GUI created in AmigaDOS.

With the introduction of Version 2.0, xDM has abandoned the simple device
handler and has really come of age.  It now boasts many new features, all of
which are described in detail in the Usage section of this document, or
briefly in the Revision History section.
@ENDNODE

@NODE Installation
@{u}@{b}Installing xDM@{uu}@{ub}

To install xDM on your system, simply run the @{b}Install_xDM@{ub} file and follow on
screen prompts.  The installer uses the official "Installer" program for a
familiar interface to aid you.

The Installer script concept is courtesy of Lee Kindness, who wrote the
original beta version.

@{b}The installer will...@{ub}

@{u}Basics@{uu}

@{fg shine}°@{fg text} Copy "dd" to your C: directory
@{fg shine}°@{fg text} Copy PackDev to your C: directory

@{u}CLI@{uu}

@{fg shine}°@{fg text} Ask you where you want to install the CLI based programs
@{fg shine}°@{fg text} Ask you what CLI based programs you want to install
  (xDM CLI, xDM CLI for LZX Registered, DMx CLI)
@{fg shine}°@{fg text} Install the programs you chose

@{u}GUI@{uu}

@{fg shine}°@{fg text} Ask you where you want to install the GUI based programs
@{fg shine}°@{fg text} Ask you what GUI based programs you want to install
  (xDM GUI, xDM GUI for LZX Registered, DMx GUI)
@{fg shine}°@{fg text} Install the programs you chose

@{u}Documents@{uu}

@{fg shine}°@{fg text} Ask you whether you want to install the documentation
@{fg shine}°@{fg text} If you do, it will then copy the document to a directory you select

@{u}Temporary Files@{uu}

@{fg shine}°@{fg text} Ask you where you would like to store temporary files

  Temporary Files are the files created by the disk reader while it is
  running.  Setting these to a directory in RAM: (typically T: which is
  normally in RAM:) will increase reading speed, but increase the use of RAM:
  by upto 880k.

@{u}Virtual Memory@{uu}

@{fg shine}°@{fg text} Ask you where you would like virtual memory allocated

  Virtual Memory refers to that fact that xDM can send the packing files
  created by LZX while it is running to disk instead of a file in RAM:  This
  will decrease the amount of RAM used, but lead to an increase in packing
  time.

@{b}NOTE:@{ub}

Setting both the Temporary Files and Virtual Memory pointers to somewhere in
RAM: will create the fastest possible system for running xDM, while setting
both pointers to disk will save as much memory as possible (you should be
able to pack disks with 1mb of memory).

@{b}BOTH TEMPORARY FILES AND VIRTUAL MEMORY @{u}MUST@{uu} BE SET TO A DEVICE
                       AND @{u}NOT@{uu} A DIRECTORY!!

@{u}Automatic Directory Selection@{uu}

@{b}NOTE:@{ub}  This applies only to the GUI versions of xDM

@{fg shine}°@{fg text} Ask you where you want to automatically select to compress to

  When you compress disks into archives, there is frequently a directory you
  will store them all in (for example, Term:Uploads/).  By setting this
  choice to that directory, you will only have to enter the filename each
  time you want to compress a file - the directory will automatically be
  chosen for you.

@{fg shine}°@{fg text} Ask you where you want to automatically scan for archives to uncompress

  Similarly, when you want to uncompress an archive, there is often a common
  directory (for example, Term:Downloads/).  By setting this choice to that
  directory, you will only have to select the archive you want to uncompress,
  you won't have to worry about navigating directories.

@{b}NOTE:@{ub}

Even if you don't wish to make use of this feature, you @{b}must@{ub} set these
options up.  If you don't wish to use them, I suggest setting them both to
RAM:
@ENDNODE

@NODE Usage
@{u}@{b}Using xDM@{uu}@{ub}

There are 4 versions of xDM.

They are:

@{fg shine}°@{fg text} xDM with GUI interface (xDM_GUI)
@{fg shine}°@{fg text} xDM with GUI interface for LZX Registered users (xDM_GUIr)

@{"Information on using the GUI versions" link xDMGUI}

@{fg shine}°@{fg text} xDM for CLI use (xDM_CLI)
@{fg shine}°@{fg text} xDM for CLI use for LZX Registered users (xDM_CLIr)

@{"Information on using the CLI versions" link xDMCLI}


These programs are designed to be used via either their GUI on the Workbench
or from a CLI/Shell.

If you elect to run any of them by using the 'Right-Amiga E' "Execute A
Command" option from the Workbench, then be aware that the Tools Output
Window created will @{b}not@{ub} automatically close when you leave xDM.

With a little skill they could also be linked to buttons in a directory
utility such as Directory Opus, although it is advised to use the CLI
versions only for this.  (See the section elsewhere in the guide on this).
@ENDNODE

@NODE DirUtils "Linking xDM to a Directory Utility"
@{u}@{b}Linking xDM to a Directory Utility@{uu}@{ub}

As Directory Opus is probably the most common directory utility used, we
shall concentrate on linking xDM into it.

@{u}Linking xDM to Directory Opus@{uu}

Use xDM CLI.  Set up both a compress and decompress button.  Take the
following information and set the correct portions of DOpus Config up to
match.

@{b}Compression@{ub}

Name :  xDM Pack
Type :  Batch
Entry:  xDM A {RsPlease enter drive to pack} TRACKS {RsPlease enter what tracks to
        pack (DOS or ALL)} {RfPlease select output file}
Flags:  OUTPUT WINDOW
Stack:  4096
Close
Delay:  -1

For this entry, simply click on the button.  In the string requester that
follows, type in DF0:  DF1:  or DF2:  for the drive you wish to compress then
choose what tracks to pack - DOS (all AmigaDOS tracks) or ALL (every track)
using the DOpus filerequester, enter the name of the archive you wish to
create (you don't have to enter the ".xdm" extension)

@{b}Decompression@{ub}

Name:   xDM Unpack
Type:   Batch
Entry:  xDM X {RsPlease enter drive to unpack to} {f}
Flags:  DO ALL FILES
	OUTPUT WINDOW
Stack:  4096
Close
Delay:  -1

For this entry, highlight the .xdm archive you wish to unpack then click on
this button.  Then simply enter the destination device (DF0:  DF1:  or DF2:)
in the string requester that follows.
@ENDNODE

@NODE TechInfo "Technical Information"
@{u}@{b}Technical Information@{uu}@{ub}

xDM produces images of disks, in a compressed form.  It achieves this by
first reading every track from the disk then compressing it using LZX.

xDM uses a series of external utilities, called from a controlling AmigaDOS
script file to achieve this.  @{b}"dd"@{ub} and @{b}PackDev@{ub} are used to read the image
from the disk (depending on what mode is selected) and LZX is used to
compress it.  Apart from those utilities, everything else is part of the
standard Workbench v2.1+ distribution.

Writing to disk when PackDev was used to create the archive is marginally
slower than when using DMS as PackDev verifies every write to the disk (a
future version of PackDev may well change this, however, it's useful to have
it to be sure that the output disks are free from errors.

Unformatted disks can be written to easily, as PackDev allows us to format
the disk as we go along, allowing unprecedented ease-of-use.

Although xDM is fully multitasking savvy, you cannot run more than one copy
of xDM at a time.  This will be corrected in a future release.  Also, while
xDM is reading, writing or (de)compressing, operations elsewhere on your
system will slow slightly, because the TaskPriority of the component elements
is raised to increase productivity.
@ENDNODE

@NODE Hints "Hints and Tips"
@{u}@{b}Hints and Tips@{uu}@{ub}

@{b}Compressing Non-AmigaDOS disks@{ub}

	@{fg shine}°@{fg text} If you intend to use MS-DOS, PFS, DiskSpare or whatever other
	  non-AmigaDOS filesystem, then make sure you have MFS installed.
	  xDM will always look for an AmigaDOS DFx: or RAD: device and as
	  MFS merges all of the non-AmigaDOS filesystems into one of these
	  conventions you will be able to pack non-AmigaDOS disks.

	@{fg shine}°@{fg text} When unpacking a non-AmigaDOS diskette however, make sure that MFS
	  is @{b}not@{ub} on automatic filesystem detection.  Set it to whatever
	  filesystem the disk was originally packed with.  This does, of
	  course, mean that people without for example, PFS installed will
	  not be able to use those disks, but then that's the same as if you
	  posted the whole disks to them anyway!

@{b}Out of memory or memory shortage problems@{ub}

	@{fg shine}°@{fg text} Packing HighDensity disks requires at least 2mb of RAM.

	@{fg shine}°@{fg text} Re-run the installer and make sure that the Temporary Directory and
	  Virtual Memory paths are not in RAM:

	@{fg shine}°@{fg text} Buy extra RAM.

@{b}I'm unable to decompress an xDM image@{ub}

	@{fg shine}°@{fg text} Is the destination device's size the same as the original device?
	  (Example:  If the original was a HighDensity device, you can only
	  unpack to another HighDensity device or RAD:  drive with the
	  equivalent amount of cylinders.

@{b}PackDev fails when using Non-AmigaDOS (ie. PFS, MS-DOS) format disks and MFS@{ub}

	@{fg shine}°@{fg text} If you have an xDM archive which is a compressed non-AmigaDOS disk (for
	  example, a compressed PFS disk) and when trying to uncompress that image,
	  PackDev fails with a "PackDev failed return code 20" error message, then
	  you will need to pop up the MFS commodity and change the target drive from
	  AUTOMATIC to whatever format the image is (in our example, to PFS).

	  This is caused by MFS (correctly) recognising a previous format on the disk
	  and PackDev (also correctly) thinking that the 2 devices are different
	  sizes.  As discussed above, you cannot unpack one sized media onto another
	  (ie. a PFS disk at 948k onto an AmigaDOS disk at 880k).

@{b}My decompressed image doesn't work, but all the files are present on disk@{ub}

	@{fg shine}°@{fg text} It would seem that your disk is an AmigaDOS/Custom Filesystem
	  combination disk.  Some disks (although these are rare nowadays)
	  contain AmigaDOS information that you can see in the directory
	  structure and Custom Filesystem information that you can't.  If you
	  pack these disks on AmigaDOS Tracks mode then you don't also pack
	  the Custom Filesystem information.  To stop this, simply re-pack
	  the disk with the All Tracks option.

@{b}The compressed image appears to be larger than it should be@{ub}

	@{fg shine}°@{fg text} Take this example:  If your disk contains 600k of information and
	  you delete 500k then xDM the disk on All Tracks mode, then the
	  original 600k of information will be packed.  This is because when
	  AmigaDOS deletes files it actually only deallocates the used areas
	  on disk.  However, when you pack in All Tracks mode, it will pack
	  these deallocated (but not totally deleted) areas.

	  To stop this occurring, simply select the AmigaDOS Tracks only
	  option or work from a 'fresh' disk (copy the files you want onto a
	  newly formatted disk - it's a lot easier to use the AmigaDOS Tracks
	  only option though!)
@ENDNODE

@NODE History "Revision History"
@{u}@{b}Revision History@{uu}@{ub}

  This software is freeware although the copyright remains with the author.
   If you wish to make any modifications to it, please contact the author.


@{b}Version 1.0:@{ub}
Original launch.

	@{fg shine}°@{fg text} Works fine - no problems during beta testing.

@{b}Version 1.1:@{ub}
Illegal Update by Dirk Vael - never publicly released.

	@{fg shine}°@{fg text} Stopped xDM automatically quitting when it had finished.  Instead,
	  xDM now loops back on itself and starts over.
	@{fg shine}°@{fg text} No documentation included.

@{b}Version 1.2:@{ub}
Illegal Update by Dirk Vael - never publicly released.

	@{fg shine}°@{fg text} (De)Compress to RAD: option added.  Auto-mounting of RAD: if not
	  already present.
	@{fg shine}°@{fg text} RawDisk-Handler removed and replaced with 'dd' utility.
	@{fg shine}°@{fg text} LZX Options updated (redundant options removed, update rate more
	  precise)
	@{fg shine}°@{fg text} xDM now displays the resultant archive size on screen after
	  compression.
	@{fg shine}°@{fg text} Added a MagicWB icon, with proper WINDOW arguments in the TOOLTYPES
	@{fg shine}°@{fg text} Ordinary text documentation included.

@{b}Version 1.3:@{ub}
Illegal Update by Dirk Vael - released to Aminet then removed.

	@{fg shine}°@{fg text} "dd" removed and replaced with PackDev
	@{fg shine}°@{fg text} xDM now supports multiple filesystems
	@{fg shine}°@{fg text} Slightly faster (de)compression
	@{fg shine}°@{fg text} Added AmigaGuide documentation
	@{fg shine}°@{fg text} Option to clean BAM before packing
	@{fg shine}°@{fg text} Compatible with xDM archives from v1.0 to v1.2

@{b}Version 2.0:@{ub}
Major update.

	@{fg shine}°@{fg text} xDM now has selective track compression (ie. Compress a group of
	  tracks, not just a whole disk).
	@{fg shine}°@{fg text} A timer showing how long it took from start to end is displayed at
	  the end of the operation.
	@{fg shine}°@{fg text} The LZX operations now have the -P option used to boost LZX's
	  priority upto 5 so that it (de)crunches much faster and the -m
	  option to disable interactivity.
	@{fg shine}°@{fg text} At the end of the compression cycle, xDM now displays the
	  percentage saving over a normal 901120 byte disk image.
	@{fg shine}°@{fg text} Before 'dd' reads/writes a file to/from a disk, it's task priority
	  is raised to 5 via ChangeTaskPri to give faster read/writes.
	@{fg shine}°@{fg text} More secure error checking introduced.
	@{fg shine}°@{fg text} More (and more secure) checking that the component external
	  programs (such as LZX and dd) exist added.
	@{fg shine}°@{fg text} Header text changed from black text on a white background to just
	  white text, plus other various text changes to make things a
	  little clearer and friendlier.
	@{fg shine}°@{fg text} Various snippets of code changed to make the whole thing work
	  more efficiently and tightly.
	@{fg shine}°@{fg text} Installer script changed to take into account these changes and
	  the whole script changed into "Installer" format.
	@{fg shine}°@{fg text} AmigaGuide documentation updated.
	@{fg shine}°@{fg text} Replaced ANSI Escape character with "*e" for proper compatibility.
	@{fg shine}°@{fg text} Inserted checking for the non-existence for an xDM archive before
	  beginning to decompress.  If it doesn't, xDM now exits gracefully.
	@{fg shine}°@{fg text} Merge group limits of LZX down to 880k from 1024k - saving memory.
	@{fg shine}°@{fg text} Low memory option added.
	@{fg shine}°@{fg text} Decompression time added.
	@{fg shine}°@{fg text} DMS to xDM conversion utility (DMx - GUI and CLI versions).
	@{fg shine}°@{fg text} Various sections of code moved around for better operation.
	@{fg shine}°@{fg text} Amount of parenthesis in time taken routines for both packing and
	  unpacking reduced to reduce Eval errors.
	@{fg shine}°@{fg text} If Eval returns a "Mismatched parenthesis" error in the time taken
	  routines, this is now ignored and the time value isn't displayed.
	  Better to miss it that time round than to have a silly looking
	  display.
	@{fg shine}°@{fg text} Kickstart / Workbench v2.04 compatible (CLI version, GUI version
	  if RequestChoice & RequestFile are also copied, not included due
	  to copyright reasons).
	@{fg shine}°@{fg text} Now uses PackDev to compress.  "dd" is just included for early
	  release (v1.0) compatibility.
	@{fg shine}°@{fg text} Decompressing a non-xDM archive used to crash the program.  Now
	  fixed.
	@{fg shine}°@{fg text} On decompression, the file-extension is checked.  If it isn't
	  ".xdm" then the program exits.  (This was done using List and Echo
	  and not the LFORMAT %E construct, as this is Kickstart v2.1 and
	  above only, thus removing 2.04 compatibility from the CLI version).
	  Further to this, after attempting to decompress the image with LZX,
	  the "xdm" directory is checked for the existence of xDM.dsk or
	  xDM.image.  If these cannot be found then the operation is deemed a
	  failure - not an xDM archive and the program loops.
	@{fg shine}°@{fg text} An archive name of ".xdm" used to be accepted.  Not any more.
	@{fg shine}°@{fg text} xDM used to ask the user to make sure that a disk was inserted,
	  even when the device it referred to was RAD:  Now fixed.
	@{fg shine}°@{fg text} Another version of the scripts for LZX registered owners (-Qf/af
	  options, but not -9 because it takes too long and only reduces
	  archive size by a small amount).
	@{fg shine}°@{fg text} Far more extensive error checking (QUIT gadget is pressed) in the
	  GUI version.
	@{fg shine}°@{fg text} Far more extensive checking and more complex moving backwards (BACK
	  gadget is pressed) in the GUI version.
	@{fg shine}°@{fg text} CD's back to directory Workbench was pointing to rather than ENV:
	  when you quit the GUI version.
	@{fg shine}°@{fg text} The "Select Drive To (De)Compress To/From" requester in the GUI
	  version is now separated into 2 separate requesters for clarity.
	@{fg shine}°@{fg text} Default (De)Compress directories via an environment variable added
	  in the GUI version.
	@{fg shine}°@{fg text} The default tools window was being used in the GUI version, instead
	  of a custom IconX window.  Now fixed window appears, is named and
	  expands the whole width of the users' screen.
	@{fg shine}°@{fg text} When xDM GUI exited, the window was left on the screen.  Now it
	  closes automatically.
	@{fg shine}°@{fg text} Redundant routines in the CLI version removed and other
	  miscellaneous (GUI version only) references removed to shorten
	  code further and increase speed.
	@{fg shine}°@{fg text} Changed Compress/Extract options from (C and X respectively) to A
	  (for Add) and X (for eXtract).
	@{fg shine}°@{fg text} "Version 2.0" text included in the main scripts
@ENDNODE

@NODE Thanks "Thanks and Salutations"
@{u}@{b}Thanks and Salutations@{uu}@{ub}

@{b}Thank-You's go out to...@{ub}

	Alan Merritt		-  For being such a wonderful person

	Ian Wilson		-  For being the beta tester from hell and
				   hatching my stuff onto Aminet for me

	David Taylor		-  For sorting out problems quickly

	Calum Metcalfe		-  For being a drunk, overaged uni student

	Jonathan Forbes		-  For writing such a fast, compressive
				   archiver in LZX

	Bruno Costa		-  For writing 'dd' (e-mail: bruno@impa.br)

	Christian Wasner	-  For writing PackDev
				   (e-mail: crisi@blackbox.shnet.org)



@{b}Salutations go out to...@{ub}

Everyone at Commodore who has ever had anything to do with AmigaDOS
Everyone at Escom who will have something to do with AmigaDOS
Mark Smiddy for being my DOS Guru

@{b}This software would be riddled with bugs if it wasn't for...@{ub}

The great team of beta-testers that made sure every little thing they found
was stomped upon!  The beta-testing team consisted of:

@{i}Adrian Maggs	Andy Dalton	Chris Elsworth	Ian Chapman@{ui}
	@{i}Lee Kindness	Leigh Geary	Peter Dalling@{ui}

Cheers to each and every one of you for testing out xDM on as many different
(and odd!) configurations as possible!
@ENDNODE

@NODE Contact "Contacting the Author"
@{u}@{b}Contacting The Author@{uu}@{ub}

@{b}Postal Service@{ub}

Adam Chapman (xDM)
17, Duchess Grove
Wavendon Gate
Milton Keynes.
MK7 7DG

@{b}BBS@{ub}

The Concrete Cow BBS - (01908) 584961
All speeds to 33,600bps, v.34+ supported

FidoNet:  2:252/344.1

@{u}Other Contacts@{uu}

xDM's chief beta tester:

	Ian Wilson	- E-mail:  ian@iwilson.demon.co.uk
@ENDNODE

@NODE xDMGUI "Using xDM GUI Versions"
@{u}@{b}Using xDM GUI@{uu}@{ub}

@{b}NOTE:@{ub}  At any time, buttons marked "BACK" will take you to the
       previous dialog box.  Buttons marked "QUIT" will quit xDM.


@{fg shine}°@{fg text} After launching xDM GUI, you will be presented with the main options
  window.  Here, you must select an action to perform.  Possible options
  include

	Compress Disk		-  Will enter the @{"compression routine" link GUICompress}

	Decompress Disk		-  Will enter the @{"decompression routine" link GUIDecompress}
@ENDNODE

@NODE GUICompress "xDM GUI - Compression Routine"
@{u}@{b}Compression Routine@{uu}@{ub}

@{fg shine}°@{fg text} You will be asked to "Choose Special Mode (if any)".  This allows you to 
  switch in various special modes of operation, should you need them.  At the
  moment, the only supported special mode is "Low Memory".  Other Special
  modes will be added in future releases of xDM.  Possible options include:

	None		-  Proceed to compress in normal mode (faster)

	Low Memory	-  Proceed to compress in Low Memory mode (slower)


@{fg shine}°@{fg text} Now you need to select a drive to compress from.  AmigaDOS disk drives from
  DF0: to DF3: are supported, as well as the recoverable (RAD:) ram drive.
  If RAD: is not already mounted, it will be automatically called into life.


@{fg shine}°@{fg text} At this point a file requester will appear, which will initially point to
  whatever directory you set-up for compression during installation.  If
  necessary, select another directory, then enter the filename of the archive
  you want to create.  You do @{b}not@{ub} need to enter the ".xdm" extension.


@{fg shine}°@{fg text} Finally, xDM will ask you what tracks you want to compress.  Possible
  options include:

	All Tracks		-  Use this option for demos that will not
				   run from the Workbench, other custom
				   filesystem disks and 'foreign' filesystem
				   disks, such as MS-DOS, Macintosh and so on

	All AmigaDOS Tracks	-  Use this option for all standard AmigaDOS
				   disks to save a lot on the final archive
				   size.

	Certain Tracks		-  Use this option if you want to compress
				   just certain ranges of tracks.  I would
				   advise against using this option unless
				   you know a little about how the Amiga
				   stores information on a disk, but for
				   those power users, selecting this will
				   prompt you to enter a start and end track
				   number.  Simply enter what is required and
				   that is all that will be compressed.

  See the @{"Hints and Tips" link Hints} section for more information on this.


@{fg shine}°@{fg text} xDM will now go and read the appropriate information and compress it all to
  form the final archive.  It will inform you of this final size, how much
  saving this is from a normal, raw disk and how long it took to do the whole
  process, before going back to the main options window.
@ENDNODE

@NODE GUIDecompress "xDM GUI - Decompression Routine"
@{u}@{b}Decompression Routine@{uu}@{ub}

@{fg shine}°@{fg text} You need to select a drive to decompress to.  AmigaDOS disk drives from
  DF0: to DF3: are supported, as well as the recoverable (RAD:) ram drive.
  If RAD: is not already mounted, it will be automatically called into life.


@{fg shine}°@{fg text} At this point a file requester will appear, which will initially point to
  whatever directory you set-up for decompression during installation.  If
  necessary, select another directory, then select the archive you want to
  uncompress.  You @{b}must@{ub} enter the ".xdm" extension if you are typing
  the filename into the requester.

@{fg shine}°@{fg text} Once all this is done, xDM will put up a requester to make sure you have a
  disk inserted into the relevant drive.  Make sure that you do and select
  "Continue".

@{fg shine}°@{fg text} Now, xDM will decompress the archive, write the image to the disk and
  inform you of how long it took to perform the operation.  Your disk is now
  ready for use!
@ENDNODE

@NODE xDMCLI "Using xDM CLI Versions"
@{u}@{b}Using xDM CLI@{uu}@{ub}

The command template for xDM CLI is as follows:


ACTION/A,DRIVE/A,TRACKS/K,FILE/A,START/K,END/K,MODE/K

Where:

ACTION/A	This option determines the mode xDM works in.  Possible
		options are:

		A	-	Archive a disk
		X	-	eXtract (Decompress) a disk

DRIVE/A		This option sets which drive to use for (de)compressing.
		Possible options are as supported by AmigaDOS, so any valid
		AmigaDOS device can be used, such as:

		DF0:  DF1:  DF2:  DF3:  RAD:

TRACKS/K	This is an optional parameter and the keyword TRACKS must be
		specified.  It determines what xDM actually compresses.

		Possible options include:

		ALL, DOS, SOME

		ALL  -  this will compress all of the tracks on the disk
			(normally, you would use this for demos or
			non-AmigaDOS disks)

		DOS  -  this will compress only tracks containing something
			AmigaDOS can understand.  This means that if the disk
			isn't completely full then a much faster and smaller
			compression is possible.  Use this for any standard
			AmigaDOS disk.

		SOME -  this allows you to enter a START and END track number
			(details below).  When using SOME a START and END
			track number must both be defined.

		Not entering one of these options (ie - not specifying the
		TRACKS keyword) will make xDM default to TRACKS DOS.  You do
		not need to enter this keyword if you are just decompressing.
		It is required only for compression.

		For example:	TRACKS ALL

		Would force xDM to read all of the tracks from the disk.

FILE/A		This option means slightly different things for either
		Compress or Decompress mode.

		In Compress mode, whatever filename you enter here will
		become the destination file that the image of the disk is
		written to.

		In Decompress mode, whatever filename you enter here will be
		taken as being the source file (the archive you wish to
		decompress).

START/K		This is an optional parameter and the keyword START must be
		specified.  If this option is being used, then the TRACKS
		parameter must be set to SOME and an END track must also be
		specified.  See below.

		This allows you to select which track number to begin on
		rather than beginning at track 0.

		For example:    START 40

		Would start reading/compressing from track 40 on the disk.

END/K		This is an optional parameter and the keyword END must be
		specified.  If this option is being used, then the TRACKS
		parameter must be set to SOME and a START track must also be
		specified.  See above.

		This allows you to select which track number to end on rather
		than ending at track 79.

		For example:	END 50

		Would end reading/compressing at track 50 on the disk.

MODE/K		This is an optional parameter and the keyword MODE must be
		specified.  This option allows access to xDM's extended
		modes.

		The only current extended mode is LOWMEM which reduces memory
		overhead to 1mb (or less) of memory, but requires a harddrive
		to be present.  Useful for people who have little memory, but
		a large harddrive.  You could call this option "virtual
		memory".

		For example:	MODE LOWMEM

		Would switch on low-memory mode.

		This option will utilise both the "temporary directory" and
		the "virtual memory" settings you chose during installation.
		Setting both of these to point at a disk will reduce your
		memory overheads to 1mb or less.  It will impair performance
		slightly, but is not really noticeable.
@ENDNODE
