LLX > Neil Parker > Apple II > Better BOOT13

Better BOOT13

Here's a replacement for the BOOT13 program on the DOS 3.3 System Master disk, and (sort of) the BASICS disk. Like both of those, it boots 13-sector disks on Apple II's with only 16-sector disk controllers. Operation is simple: Just BRUN BETTER.BOOT13, and when prompted, enter the slot number to be booted (if there are two drives connected to the interface card, the 13-sector disk must be in drive 1).

So what makes it better?

It's not perfect, though:

Technical stuff

BETTER.BOOT13 includes a (patched) copy of the 13-sector boot ROM. This is used to load the target disk's first-stage boot code from track 0, sector 0. The first stage boot is scanned to find its call back to the boot ROM, patched to call back to BETTER.BOOT13's copy instead, and executed.

This differs from how Apple's BOOT13 and BASICS work. Both of those include a copy of the DOS 3.2 RWTS, which is used to read the disk's second-stage boot code (normally the disk's copy of RWTS) and run it. This works if the target disk's boot code is structured like real DOS 3.2, but not if it has a customized structure. Such oddball disks don't appear to be common, but I have one in my collection: the 13-sector version of Microsoft Softcard CP/M 2.20b, which neither BOOT13 nor BASICS can boot.

The hope is that by operating at a lower level, more like the real 13-sector boot ROM, BETTER.BOOT13 will boot more disks than BOOT13 or BASICS. But it certainly can't guarantee to boot all 13-sector disks...its scan to detect the reference back to the boot ROM is simplistic, and could easily fail on a disk with a sufficiently-customized boot sector. It could also fail if a custom boot sector overwrites BETTER.BOOT13 while it's still in use, or if it loads code that expects to find the boot ROM in its normal slot ROM space.

I copied the 13-sector boot ROM code from a Franklin disk controller card. It appears to be identical to Apple's 13-sector boot ROM.


What's inside:

LLX > Neil Parker > Apple II > Better BOOT13

Original: April 22, 2018