FastBoot 3.4 With special support for DOS 3.3 Launcher 2.1 Freeware! Requires Enhanced //e or Better Copyright (C)1989,94 Ron Dippold email: rdippold@qualcomm.com WHAT IT IS (Short Version) A small and fast program launcher for ProDOS 8, with support for John MacLean's DOS 3.3 Launcher. Just make this is the first *.SYSTEM file on a disk and it'll come up when you boot. HISTORY Back in 1984 I wrote an ultra fast DOS 3.3 menu program, useful for switching between the dozens of utilities I use. When I bought a IIgs in 1986, I decided to write a new launcher from scratch. This was the first version of FastBoot. I thought it had a few design flaws, so did it again in 1988. Fastboot is small and fast (100% Assembly), and looks nice (I think). I never really got into info services till recently, so my utilities had lousy distribution. Then, after 10 years, I vanished from the Apple // scene in 1990, when I bought a PC with a hard disk. This spoiled me for any machine that didn't have a hard drive, including the trusty Apple IIgs. Now I've added a hard drive and GNO/ME to it, and all those endearing young Apple II charms entice me again. One goal I have is preserving my old Apple // programs (I used to sell software and got lots of demo copies). I found that John MacLean had released a nifty program called DOS 3.3 Launcher (D3L) which let you emulate DOS 3.3 for a 5 1/4" disk image on a ProDOS volume. Unfortunately, it requires the file name to be passed to it in the ProDOS 8 standard method, which means using the Finder or something else that can recognize D3L files and then load D3L and pass it the name. I want my 3 1/2" image disks to be bootable _without_ GS/OS. So I decided to extend FastBoot to handle DOS 3.3 Launching under ProDOS 8 - it's amazing how fast everything came back. HOW TO INSTALL IT You can run BOOT.SYSTEM from any program that will launch it. However, it's meant to be run on boot. Simply make it the first *.SYSTEM file in the root directory of your disk, and ProDOS will run it right away. If you want to run DOS 3.3 Launcher files, you'll need to put DOS3.3.LAUNCHER anywhere in the same directory as the disk images. See DOS 3.3 Launcher Location below for how to run it from another location. HOW TO USE IT (Short Version) FastBoot will read your disk and pop up three windows: SYS files, BIN files, and DIR files. Old programs that don't do any disk access can be run under ProDOS 8 no problem as BIN files. The directory window always contains the current directory path. Files with a star to the right are type $F1-$F4 - FastBoot thinks these are DOS 3.3 Launcher files. You'll notice a set of characters down the side next to each name. Press that key (it's case sensitive) to run the program / change directories. Or, you can use the arrow keys to scroll the selection bar and hit Enter to use the file you're on - it'll be run, or if you're in the directory window you'll change to that directory. You can "select" files that are off the bottom of the window by scrolling the bar down there, or you can extrapolate the correct letter - the letters only go down to "r", but you still can press "u" and run the 21st file. FastBoot can handle 50 files in each window. But you still only get letters for the 1st 26. KEYS YOU NEED TO KNOW Esc: Calls ProDOS 8's quit routine, good for returning to a 16-bit launcher like ProSel or GNO/ME. Space: Eject the disk (if 3 1/2") and reread it. Return: "Use" the file the cursor is on. This means running a SYS or BIN file, running DOS 3.3 Launcher for a $F1-$F4 file, or switching to the appropriate directory for the DIR window. Shift-1 through Shift-7: Switches to the drive at slot. Shift-5 will usually get you your first 3 1/2" disk, for instance. If you're on slot 5 already and hit Shift-5 again, it'll shift to the other drive. Tab: Go to the next volume that contains a ProDOS disk with files. Arrows: Move cursor - the windows will scroll if appropriate on the up and down arrows. OA-Up: OA-Down: These will scroll windows a page at a time if there's more to see. DOS 3.3 LAUNCHER COMPATABILITY DOS 3.3 Launcher, as I said, is a nifty program. FastBoot recognizes its disk images by their file types, which are: $f1: Slow down system, turn off keyboard buffering $f2: Turn off keyboard buffering $f3: Slow down system $f4: Run with no changes Some other files use these file types. FastBoot doesn't know the difference, and will pass these on to DOS 3.3 Launcher to deal with. FastBoot + DOS 3.3 Launcher does not work well with any version of ProDOS 8 less than 2.0.0 that I tried it with. ProDOS 8 1.8 in particular has problems. It seems to work great with 2.0.3, which I think is the last ProDOS 8. TECH NOTES FastBoot uses a relocatable loader to do the actual file loading - it looks at the load address of the file, and it's size, and decides where to place itself in memory for loading. Then it copies its loader to that location and jumps to it. This should let it load very large files, though some BIN files can't be loaded like this. FastBoot sets the default prefix to the current directory before running a program. FastBoot will recognize a IIgs and use its clock (which has seconds). Otherwise, it'll call the ProDOS 8 time function (minutes and hours only). If you want to make FastBoot not sort the files in its windows, you can edit the 4th byte of the file and change it from an $01 to an $00. When you select a DOS 3.3 Launcher file, FastBoot uses a slightly different relocatable loader. This one loads DOS3.3.LAUNCHER, places the name of the disk image in it's parameter block at $2006, then jumps to it. On the GS with D3L, I also allocate all of bank 0 from $800 to $c000 for myself in case GS/OS hasn't been run yet. John apparently thought nobody would be weird enough to run DOS 3.3 Launcher except from the Finder, so it doesn't do this for itself, and will fail with a memory error. Thanks to David Empson for letting me know why it was happening and what to do to fix it. DOS 3.3 LAUNCHER LOCATION FastBoot looks for the file DOS3.3.LAUNCHER in the same directory as the file you want to run. If you think you'll always have a hard drive available (although it's only 12 blocks), or you want to use subdirectories on the disk but only one copy of the launcher, you can change where FastBoot looks for it. You'll need to block edit BOOT.SYSTEM. Look at the 5th byte, which should be a $0F... this is where the path and file name for DOS3.3.LAUNCHER is stored in standard ProDOS path format: 1 length byte followed by the path. You've got 64 bytes. Make sure to change the length byte, or ProDOS will be confused. FUTURE ENHANCEMENTS I want to add a volume information window below the directory window. Many disk images are extremely compressible. I want to write a program to pack the disk images using a LZSS compression. Then, when you "launch" them, FastBoot will uncompress them quickly to RAM disk or hard drive, then pass that unpacked image to DOS 3.3 Launcher. LZSS has extremely fast decompression, so I think the extra wait will be worth getting more disk images on each 3 1/2" drive. I welcome comments / suggestions / large cash donations!