LibA2   Release 0.003
Copyright 1996 Christopher J. Madsen

LibA2 provides both end-user utilities and library modules for
accessing files on Apple II ProDOS disk images for use with most Apple
II emulators.

This is a BETA release of LibA2.  There's some documentation, but it's
not complete.  If you want to see the rest of the documentation, then
send email!  Otherwise, I'll probably never get around to writing it.
Until then, use the source, Luke!  There are still probably some bugs,
and the interfaces might still change.  Use at your own risk.  Keep a
recent backup handy.  Wait sixty minutes before swimming.

All this having been said, I'm not aware of any serious bugs in LibA2
(besides the ones listed in the BUGS section below).  Good luck!
I would very much like to hear from everyone who tries LibA2.  The
more comments I get, the more likely I am to do more work on it.
Please send comments, questions, bug reports, and patches to me.
You'll find my email address at the end of this file.

The included utilities are:
   prodos.pl           version 0.010
       `prodos.pl' is the main end-user utility.  It provides a
       Unix-style shell for accessing ProDOS volumes.  This allows
       you to list the contents of disk images, create
       subdirectories, and copy files to & from disk images.  If you
       have installed the Term::ReadKey and Term::ReadLine modules,
       the shell will have better editing, command & filename
       completion, and a command history.

       The parameters for prodos.pl are:
               prodos IMAGE_FILE

   pro_fmt.pl          version 0.003
       `pro_fmt.pl' creates blank ProDOS disk images.  The images are
       NOT bootable, because they lack the necessary code in the boot
       blocks.  You can copy blocks 0 and 1 from a bootable disk to
       fix this.  The parameters for pro_fmt.pl are:
               pro_fmt VOLUME_NAME  SIZE_IN_BLOCKS  IMAGE_FILE
       This is likely to change in the future.

   pro_opt.pl          version 0.004
       `pro_opt.pl' removes unused space from ProDOS disk images.  This
       is most useful for reducing the size of hard disk images.  It
       doesn't use any form of compression; it simply moves
       everything to the beginning of the disk, squashing out empty
       space caused by deleting files.  Be careful with this, as it's
       likely to have some bugs left.  The parameters for pro_opt.pl are:
               pro_opt SOURCE_IMAGE_FILE  DESTINATION_IMAGE_FILE

   awp2txt.pl          version 0.005
       `awp2txt.pl' converts AppleWorks word processor files into text
       files.  This is a bit out of place in LibA2, because it has
       nothing to do with disk images, but I included it because
       users of LibA2 may find it useful.  The parameters for awp2txt are:
               awp2txt FILE ...

   var_display.pl      version 1.004
       `var_display.pl' lists the contents of an Applesoft BASIC VAR file.
       Currently, it can only display string variables and string arrays.
       Like awp2txt, you must first extract the VAR file from the disk
       image.  The parameters for var_display are:
               var_display FILE

For people interested in writing their own utilities in Perl, LibA2
provides Perl 5 modules that supply classes for accessing ProDOS disk
images.  DOS 3.3 disks are not currently supported (except by
AppleII::Disk, which doesn't care what kind of data is on the disk).

The included modules are:
   AppleII::Disk       version 0.009
       `AppleII::Disk' provides block-level access to disk images.
       It's useful because there are two main formats for Apple disk
       images:  ProDOS order and DOS 3.3 order.  These formats do not
       refer to the operating system used on the disk, but to the
       order in which the data appears.  AppleII::Disk takes care of
       the differences for you.

   AppleII::ProDOS     version 0.026
       `AppleII::ProDOS' provides tools for accessing files on ProDOS
       disk images.  `prodos.pl' is basically just a wrapper around
       AppleII::ProDOS.

CHANGES
   Here's what's new in version 0.003 of LibA2:
   (See the file `Changes' for the full revision history.)

       First beta release of LibA2

       New utilities:
         var_display.pl      version 1.004

       Updated utilities:
         awp2txt.pl          version 0.005
           Includes documentation

         prodos.pl           version 0.010
           Includes documentation
           Supports an external pager for long text displays

         pro_opt.pl          version 0.004
           Includes documentation
           Now runs much faster

       Updated modules:
         AppleII::Disk       version 0.009
           Includes documentation
           Added blocks method to get/set disk size

         AppleII::ProDOS     version 0.026
           Includes documentation (still incomplete)
           Adding a file to a full subdirectory automatically expands the
             subdirectory.
           Allocating free blocks is now much more efficient.  This make
             the volume optimizer (pro_opt.pl) much much faster.

LICENSE
       LibA2 is free software; you can redistribute it and/or modify
       it under the same terms as Perl itself.

       LibA2 is distributed in the hope that it will be useful, but
       WITHOUT ANY WARRANTY; without even the implied warranty of
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
       either the GNU General Public License or the Artistic License
       for more details.

BUGS
   If you use Unix or a similar operating system
       The utilities don't have the executable attribute set.  Sorry,
       but I use OS/2 and can't figure out how to create tar archives
       with the executable bit set.  Please change into the `bin'
       directory and type `chmod a+x *.pl'.  If you know of a better
       way of fixing this, please let me know.

   Documentation
       There isn't enough.  Yet.  If you'd like to read it, send
       email.  If I think people want to read it, I'm far more likely
       to write it. :-)  Until then, use the source, Luke.

   prodos.pl
       There's no way to copy a file from a disk image under another
       name.  This may cause problems under MS-DOS when extracting
       files that don't meet its 8.3 filename limitations.
       Solution: Upgrade to OS/2 and use HPFS. :-)

   pro_fmt.pl
       The disk images it creates aren't bootable unless you copy the
       boot blocks from a bootable disk.

AUTHOR
       Christopher J. Madsen <[email protected]>