                          ZIP/JAZ Tool 1.4.0

1. General
----------

ziptool is based on the genuine work of Grant R. Guenther and Bob
Willmot. As there are still quite some things to do, I decided to
adopt this tool and maintain it. For copyrights and conditions of
use see the source file ziptool.c.

    Mirko Kraft (Mirko.Kraft@ixos.de)

Disclaimer: This software comes as is, without any expressed or
            implied warranty. Use it at your own risk - the author
            can't be hold liable for any damage that might be done
            to your system as an effect of using this software.


2. About jaztool/ziptool
------------------------

The JAZ and ZIP are removable media drives developed by Iomega.
These drives, however, differ from other removable media devices:
Read/write protection isn't done with a little switch etc. on the
media but in software. You even can protect your disks with a
password. ziptool makes most of these features available to Linux
JAZ/ZIP users (see my personal notes in the 'Change Log' section
below for more information).

A thing you can't do at the moment is changing the password of a
disk in one step as I still don't know how to do this. A workaround
here is a two step procedure: First change the protection mode from
password write protected to plain write protected and then - with
your new password - back from write protected into password write
protected mode. Another thing that will probably never work is the
read and write password protected mode. Linux requires at least
read access to a disk in order to be able to work with it.

This version of jaztool/ziptool only supports the SCSI and parallel
port drives. The IDE drives are _NOT_ supported and - as far as I'm
concerned - will not be supported in the future, unless someone
supplies me with information about these drives (most wanted are
the commands used for the password protection features).


3. How to install
-----------------

Get yourself a copy of the ziptool package (latest version is 1.2)
from sunsite.unc.edu or any mirror: it is located in the utils/disk-
management directory. Extract the tar archive with

# tar xvzf ziptool-1.4.0.tar.gz

into your local working directory. This will create a directory
named ziptool-1.4.0 which contains the following files:

- ziptool.c                  source
- Makefile                   :-)
- ziptool.1.gz               man-page (needs more work ...)
- README                     this file

   1. Edit Makefile to match your setup.
   2. Do a 'make'.
   3. If you want to have the binary and manpage installed, do
      a 'make install'. This will also create symlinks named
      jaztool and jaztool.1.gz in the specified directories.

4. Change Log
-------------

Version 1.4.0 09/25/2002 (Tara Milana)
----------------------------------


Version 1.3 09/25/99 (Aaron Segura)
----------------------------------
Nobody seems to be updating this thing, so *I* have taken
the liberty to add 2GB Jaz Support, as well as the
-u -m -ld -ud options.  I really wanted them, and I'm sure
somebody else wants them too.  Aaron Segura

-> Added -u -m -ld -ud options
-> Added support for 2G Jaz Drives

Version 1.2 06/24/97 (Mirko Kraft)
----------------------------------
-> Created a README file.
-> Added a kernel patch to ged rid of that #@'? eject after each
   protection mode change.
-> Changed the command line interface. I hope it now is easier
   to understand. The new CLI looks like that:
   ziptool -e <device>    eject disk (same as 1.1b)
   ziptool -s <device>    report protection mode (same as 1.1b)
   ziptool -ro <device>   make disk read-only (was -w in 1.1b)
   ziptool -rp <device>   make disk read-only, protect mode with
                          password (was -p in 1.1b)
   ziptool -rw <device>   remove any protection (was -r in 1.1b)
-> Update to my personal note from Version 1.1b:

   Please Iomega,
   support developers! Releasing tech manuals won't hurt, but it
   will pay back! I'm sure you are aware of the number of Linux
   users that already bought a JAZ/ZIP. Imagine how many more
   buyers there will be if the JAZ/ZIP are fully supported under
   Linux (both IDE & SCSI).

   So please, everyone: Please ask Iomega very kindly to support
   the Linux community - BUT DON'T FLAME THEM!!! Point out that
   there are a lot of JAZ/ZIP and DITTO tape users out there who
   would appreciate Linux support.

Version 1.1b 05/23/97 (Mirko Kraft)
-----------------------------------
-> Berkeley auto mounter daemon (amd) adds entries with mount type
   "auto" to /etc/mtab, thus causing jaztool/ziptool to fail when it
   checks mount points. As "auto" is a mount type not included in
   mntent.h, it has to be hardcoded. Many thanks to Mark Blair
   (Mark.Blair@tus.ssi1.com) who discovered this bug.
-> Update to my personal note from Version 1.1:
   Iomega will not release any tech manuals (at least that's what
   they told me), so I have to take the hard way to find out more
   about JAZ/ZIP drives' SCSI commands.
   Note to Iomega: This does not mean I am going to reverse engineer
                   your software (i.e. ziptools). But I will use an
                   ASPI manager that allows me to see what is going
                   on on the SCSI bus - and maybe I can learn a little
                   bit more about your drives from that information.

Version 1.1a 04/24/97 (Mirko Kraft)
-----------------------------------
-> Boy, did I ever hear of a thing called proc filesystem? Although
   I use this thing, I entirely forgot it when skipping mount types
   when checking for a jaz/zip drive. So people with an fstab entry
   'none /proc proc' will endup in a stat(none), which will fail of
   course (note that my entry is '/proc /proc proc', so I didn't see
   this error when testing). Many thanks to Gerald A. Peters
   (gapeters@worldnet.att.net) who discovered this bug. He also
   improved error reporting in this case.

Version 1.1 04/17/97 (Mirko Kraft)
----------------------------------
-> Code cleanup
-> Improved device checks.
   NOTE: This tool was originally written for Iomega ZIP and JAZ
         drives. But now there seem to be more of these drives on
         the market. If you want a new drive to be supported, add
         its model signature to the appropriate list (see below).
         Please e-mail me any changes so I can keep an up-to-date
         version of ziptool.
-> Changed mount check to handle symlinks and multiple names for
   the same device correctly. Up to now the following was possible
   (assumed ZIP drive is /dev/sda, medium out of a box):

   # mknod zip b 8 4
   # mount -t msdos /dev/zip /mnt
   # ziptool -r /dev/sda

   This would allow to modify a mounted ZIP disk.
-> Created a man page
   Do an 'man ziptool' or 'man jaztool' for more information.

!! This tool is based on kernel 2.0.30, libc 5.4.7.
!! Personal note:
   I'm really no SCSI and Iomega hardware expert. I just took over
   the SCSI calls as found in Grant's original ziptool because they
   are working. Maybe some day I can get my hands on some SCSI and
   Iomega specs to see what is really going on here.


++ I had no problem compiling this on Kernel 2.2.5+, libc 6
++   Aaron Segura
