========================== Flat-Handler 1.3 ==========================
======================================================================
A  zany  disk  filing  system, written by Olaf 'Olsen' Barthel of MXM.
Copyright,  ©  1990  by  MXM.   Shareware,  all  rights  reserved.  No
guarantee  of  any  kind is made that the program(s) described in this
document are 100% reliable.  You use this material on your own risk.

============================== Purpose ===============================
======================================================================
The  university  I  am  studying  at  has  just got rid of its old IBM
mainframe  monster  which  has  been replaced by set of Sun4 Sparc IPC
workstations.  Each station has its own disk drive built into the main
unit.   Transfer  of data to and from the disk is easy if you know how
to  accomplish  it.   Standard  3˝"  disks can be formatted in vanilla
MS-DOS format (double sided, 9 sectors, 512 bytes each) and read using
MessyDOS/CrossDOS.   Unfortunately,  `pcfs'  is  not  available on the
machines  I am working at, still using `tar' makes it easy to exchange
files between both computers.
   The  Amiga does not support block mapped files in the same way Un*x
does.   My  first  attempt  to read tar archives written to disk would
therefore  consist  of creating a disk-like file on my harddisk (using
Matt Dillon's fmsdisk.device) and reading the disk-file with tar.
   This  being  not the ideal solution I immediately started writing a
custom  filing  system  to  map  all  block-oriented filing devices to
virtual files.

=============================== Usage ================================
======================================================================
Copy  `Flat-Handler' to  your L:  directory (copy Flat-Handler L:) and
add  the  supplied  `MountList'  file  to  your  DEVS:MountList  (type
>>DEVS:MountList MountList).  After that, the FLAT:-device is ready to
be mounted (mount FLAT:).
   Listing `FLAT:' will display something like the following:

                 MSH   737280 ----r--- Today 16:42:01
                 DF0   901120 ----rw-- Today 16:42:01
                 DF1        0 -------- Today 16:42:01
                 DH0 10948608 ----rw-- Today 16:42:01
                 DH1 10616832 ----rw-- Today 16:42:01

   Each  one  of  these  `files' represents a disk-like block-oriented
filing  device  (which has the same name, only the colon is left out).
You  can  copy, type, read and write each device just like an ordinary
file.   Each  read/write  call is mapped to a disk access which allows
archiving  whole  disks  with  LhArc  or  diskcopy'ing  with  the  CLI
copy-command.   The  protection  bits  refer  to the state of the disk
drive and the data media within:

                r - There is a disk in the disk drive.
                w - The disk is write-enabled.

   All  the other protection bits are by default cleared (you won't be
able  to  delete a disk drive, set the `archived' bit or other foolish
bits).   The  file  creations  dates are fake, and the file sizes will
never  change (never say never:  if there is no disk in the approriate
drive  the  size  of  a  file  will drop to zero).  The handler itself
supports  only  the  basic command set a simple filing system needs to
supply (read, write, open, close, lock, unlock, duplock, die).

================ Transferring files from/to the Sun4 =================
======================================================================
To  transfer files from/to the Sun4 workstation you will need MessyDOS
or CrossDOS and the Amiga implementation of the `tar' program.
   The  disk  format  on  the  Amiga  (MSH:,  DI0:, etc.) side must be
configured  for a double-sided, 80-track disk with 9 blocks per track.
These   settings   represent   the   `factory   settings' with   which
MessyDOS/CrossDOS  are shipped, so there is probably no need to change
them.
   Now  it's time to initialize a disk, this can either be done on the
Amiga  (using  "format  drive msh:  name Blank noicons") or on the Sun
(using "fdformat -l").
   Here  are  the basic commands to get tar to create and extract disk
archives  (tar  offers a lot more options which you will probably want
to study later):

                        To create an archive:

                  Sun4:  tar -cf /dev/fd0 <Files...>
                  Amiga: tar -cf flat:msh <Files...>

                  To extract files from an archive:

                  Sun4:  tar -xf /dev/fd0 <Files...>
                  Amiga: tar -xf flat:msh <Files...>

      To eject the disk from the Sun4 disk drive enter `eject'.

=============================== Author ===============================
======================================================================
This  program was written by Olaf Barthel of MXM.  All files have been
placed in the public domain.  You may freely distribute this material,
even  a  small  copy  fee  is  okay  but  everything  which looks like
commercial distribution is forbidden.  Still you may use this material
for software development without giving credit to the original author.

Send   new   program  revisions,  comments,  bug  reports,  donations,
unmarried   sisters,   non-poisoned   candy,  home-grown  palm  trees,
horoscopes, promising capital investments, etc.  to:

                          Olaf Barthel, MXM
                          Brabeckstrasse 35
                          D-3000 Hannover 71

                     Federal Republic of Germany

============ Revision history (most recent change first) =============
======================================================================

V1.3    Added support for ACTION_COPY_DIR packet.
        Added GnuTar-Support. (JD)
V1.2    You  couldn't  change  the  current  directory  to `FLAT:' and
        examine  the  virtual  files  without having to specify a full
        path name (such as `flat:df0'), this has been fixed.

V1.1    Extended   release  supporting  all  available  block-oriented
        filing devices.

V1.0    First simple release supporting only a single disk drive.
