AppleII::LibA2 - Apple II emulator & file utilities
This document describes version 0.201 of AppleII::LibA2, released September 12, 2015 as part of AppleII-LibA2 version 0.201.
AppleII-LibA2 (formerly called LibA2, and still called that informally) is a collection of 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 and questions to me. Bug reports and patches should go to the CPAN RT for LibA2: bug-AppleII-LibA2 AT rt.cpan.org, or through the web interface:
You'll find my email address at the end of this file.
The included utilities are:
prodos 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 are:
pro_fmt creates blank ProDOS disk images. The images are NOT bootable, because they lack the necessary code in the boot blocks. You can copy blocks from a bootable disk image to fix this. The parameters for pro_fmt are:
pro_fmt [options] IMAGE_FILE
pro_opt 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 are:
pro_opt SOURCE_IMAGE_FILE DESTINATION_IMAGE_FILE
awp2txt 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 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:
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 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 provides tools for accessing files on ProDOS disk images. prodos is basically just a wrapper around AppleII::ProDOS.
AppleII::LibA2 requires no configuration files or environment variables.
No bugs have been reported.
Christopher J. Madsen <perl AT cjmweb.net>
<perl AT cjmweb.net>
Please report any bugs or feature requests to <bug-AppleII-LibA2 AT rt.cpan.org> or through the web interface at http://rt.cpan.org/Public/Bug/Report.html?Queue=AppleII-LibA2.
<bug-AppleII-LibA2 AT rt.cpan.org>
You can follow or contribute to AppleII-LibA2's development at https://github.com/madsen/perl-libA2.
This software is copyright (c) 2015 by Christopher J. Madsen.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENSE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
To install AppleII::LibA2, copy and paste the appropriate command in to your terminal.
perl -MCPAN -e shell
For more information on module installation, please visit the detailed CPAN module installation guide.