Short: Extract files from Apple II Disk Image Author: agmsmith@achilles.net (Alexander G. M. Smith) Uploader: agmsmith achilles net (Alexander G M Smith) Type: misc/emu Version: 1.0 Requires: AmigaOS 2.04+ Architecture: m68k-amigaos A2DiskDump is a utility which takes an Apple II DOS 3.3 disk image (in "DOS" order) and extracts all the files from it in one batch, optionally converting text files to AmigaDOS format. With no special arguments, it just gives you a catalog listing of the disk image. You can optionally save the files, convert text to Amiga format, only do text files, leave on or remove headers from binary file, etc. See the online help for more details. The disk image is made by dumping it from a real Apple 5.25 inch DOS 3.3 floppy disk using a utility like ADT (A2ADT4AM for the Amiga) and an Apple with a serial card. The disk images are also useable / creatable with Apple emulators like Apple2000 for the Amiga. - Alex Here is an example: 3.0 Big:Archives/Apple II/A2DiskDump> a2diskdump Oops: required argument missing, please use "A2DiskDump ?" for help and type a second "?" to get even more help. 3.10 Big:Archives/Apple II/A2DiskDump> a2diskdump ? DISKIMAGE/A,DUMPFILES/S,NAMEPREFIX,DROPHEADER/S,KEEPTAIL/S, CONVERTTEXT/S,TEXTFILESONLY/S,NOCOMMENT/S,VERBOSE/S: ? A2DiskDump is a utility for extracting all files from an Apple II DOS 3.3 disk image file (like the kinds made from ADT the Apple Disk Transfer utility). The files are written to the current directory, using the name from the disk's catalog, with illegal characters replaced. By default, a comment is attached to each file with its catalog listing plus secret info (file length, start address). Public domain by Alexander G. M. Smith, Ottawa Canada, send questions to agmsmith@achilles.net, agmsmith@bix.com, 71330.3173@compuserve.com. $VER: A2DiskDump 1.0 (27.2.0) ($Id: A2DiskDump.c,v 1.9 2000/02/27 16:38:11 AGMS Exp $) DISKIMAGE/A is the required path name to the disk image file, which is from an Apple II DOS 3.3 disk (256 bytes per sector, 16 sectors per track, 35 tracks) and is 143360 bytes long. DROPHEADER/S is a switch which if present, leaves out the header info in binary files. Otherwise, binary files will have a 4 byte header containing address low/high bytes followed by length low/high. Text and other file types aren't affected by this switch. KEEPTAIL/S is a switch which when present, includes the garbage past the end of the file (end of file determined by the header for binary files and BASIC files, or first NUL in text files). This is useful for random access text files used in databases, where the file contains NUL characters for fixed length record padding. Yes, the code does handle sparse files, filling in the non-existent sectors with zeroes. CONVERTTEXT/S when present switches on conversion of text files from Apple II format into text file format (high bit set to zero and carriage return characters turned into line feeds). TEXTFILESONLY/S makes the dumpfile feature only dump text files, skipping over all other file types. NOCOMMENT/S specify this switch if you don't want to have comments attached to the files. The default is to have comments, with the comment text being much like an Apple II catalog listing. VERBOSE/S switches on debug messages and extra status info etc. : Oops: required argument missing, please use "A2DiskDump ?" for help and type a second "?" to get even more help. 3.0 Big:Archives/Apple II/A2DiskDump> a2diskdump Example.disk *T 002 LISA EXEC A 012 LIST BASIC PROGRAMS TO DISK ,L$A4E L 004 REDIRECT TO BUFFER SOURCE B 002 REDIRECT TO BUFFER ,A$800,L$1A 3.0 Big:Archives/Apple II/A2DiskDump> a2diskdump Example.disk nameprefix t: converttext dumpfiles verbose A2DiskDump compiled on Feb 27 2000 at 16:41:15. Disk image input file: "Example.disk" Dump Files: yes (copy each file in image to a real file) Output file name prefix: "t:" Drop header: no (copy data as-is from start of file in disk image) Keep tail: no (remove garbage past end of file) Convert text: yes (CR to LF and strip high bit in text files) Text files only: no (dump does all files) Attach comments: yes Verbose mode is obviously turned on. Opening disk image file... Reading disk image file into memory... Disk volume #254. Now doing directory sector $11/F: Ignoring deleted file: "LISA V2.5 _" Ignoring deleted file: "ASM.CODE.1 _" Ignoring deleted file: "ASM.CODE.2 _" Fixed file name is "LISA EXEC". Processing track/sector list at $16/B: This TSlist has a sector offset of 0 and has 1 non-zero sectors. Track/sector list reduced from 122 sector entries to 1. Sectors used by file: $16/A Opening output file "t:LISA EXEC". *T 002 LISA EXEC Ignoring deleted file: "BLANK DISK HELLO _" Fixed file name is "LIST BASIC PROGRAMS TO DISK". Processing track/sector list at $16/6: This TSlist has a sector offset of 0 and has 11 non-zero sectors. Track/sector list reduced from 122 sector entries to 11. Sectors used by file: $16/5 $16/4 $16/3 $16/2 $16/1 $16/0 $17/F $17/E $17/D $17/C $17/B Opening output file "t:LIST BASIC PROGRAMS TO DISK". A 012 LIST BASIC PROGRAMS TO DISK ,L$A4E Fixed file name is "REDIRECT TO BUFFER SOURCE". Processing track/sector list at $17/A: This TSlist has a sector offset of 0 and has 3 non-zero sectors. Track/sector list reduced from 122 sector entries to 3. Sectors used by file: $17/9 $17/8 $17/7 Opening output file "t:REDIRECT TO BUFFER SOURCE". L 004 REDIRECT TO BUFFER SOURCE Now doing directory sector $11/E: Fixed file name is "REDIRECT TO BUFFER". Processing track/sector list at $17/6: This TSlist has a sector offset of 0 and has 1 non-zero sectors. Track/sector list reduced from 122 sector entries to 1. Sectors used by file: $17/5 Opening output file "t:REDIRECT TO BUFFER". B 002 REDIRECT TO BUFFER ,A$800,L$1A Ignoring deleted file: "FAST LOAD PATCH _" Now doing directory sector $11/D: Now doing directory sector $11/C: Now doing directory sector $11/B: Now doing directory sector $11/A: Now doing directory sector $11/9: Now doing directory sector $11/8: Now doing directory sector $11/7: Now doing directory sector $11/6: Now doing directory sector $11/5: Now doing directory sector $11/4: Now doing directory sector $11/3: Now doing directory sector $11/2: Now doing directory sector $11/1: Now doing directory sector $00/0: Done! 3.0 Big:Archives/Apple II/A2DiskDump> list t: Directory "t:" on Sunday 27-Feb-00 LISA EXEC 44 ----rwed Today 16:48:41 : *T 002 LISA EXEC LIST BASIC PROGRAMS TO DISK 2640 ----rwed Today 16:48:42 : A 012 LIST BASIC PROGRAMS TO DISK ,L$A4E REDIRECT TO BUFFER SOURCE 768 ----rwed Today 16:48:56 : L 004 REDIRECT TO BUFFER SOURCE REDIRECT TO BUFFER 30 ----rwed Today 16:48:57 : B 002 REDIRECT TO BUFFER ,A$800,L$1A 4 files - 14 blocks used