AppleII-LibA2 version 0.200, released August 1, 2015 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 and questions to me. Bug reports and patches should go to the CPAN RT for LibA2: <bug-LibA2 AT rt.cpan.org>, or through the web interface: http://rt.cpan.org/Public/Bug/Report.html?Queue=LibA2 You'll find my email address at the end of this file. The included utilities are: prodos version 0.200 `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: prodos IMAGE_FILE pro_fmt version 0.200 `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 version 0.200 `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 version 0.200 `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 version 0.200 `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: 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.200 `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.200 `AppleII::ProDOS' provides tools for accessing files on ProDOS disk images. `prodos' is basically just a wrapper around AppleII::ProDOS. INSTALLATION To install this module, run the following commands: perl Build.PL ./Build ./Build test ./Build install If you do not want to install the utility scripts (AppleII:: modules only), then use "perl Build.PL --no-scripts" instead of "perl Build.PL". DEPENDENCIES Package Minimum Version --------------- --------------- perl 5.6.0 Carp Exporter 5.57 File::Glob Getopt::Long 2.10 IO::File POSIX Term::ReadLine CHANGES Here's what's new in version 0.200 of LibA2: (See the file "Changes" for the full revision history.) - Distribution renamed from LibA2 to AppleII-LibA2 - No functional changes [NEW MODULE] [AppleII::LibA2] - Placeholder module matching distribution name to comply with the Lancaster Consensus BUGS 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 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 a real operating system. pro_fmt The disk images it creates aren't bootable unless you copy the boot blocks from a bootable disk. AUTHOR Christopher J. Madsen <perl AT cjmweb.net> COPYRIGHT AND LICENSE 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.