David Wilson wrote:
My Cirtech SCSI card has a unique way of allowing the use of ProDOS, DOS3.3, Pascal 1.3 and CP/M all on the one SCSI hard drive. It allows contigous regions of a partition to be excised from the ProDOS file system and the SCSI card is told to use just that region (by appropriate values for begining and end stored in screen holes). Then you install the O/S of your choice in that area. In the ProDOS area you have a small application that enables the sub partition and boots it.
Heh. Funny you should mention that. I used the same trick in the CardZ180 disk driver. One of the system tools rewrites the allocation map to carve out a partition that ProDOS cannot see, adjusts the header information to lie about the size to ProDOS and places a marker in the last block of the volume.
The Z180 BIOS scans for the marker and mounts the volume during boot.If it will help, it's long past time to release the sources. The system utilities are implemented in Turbo Modula-2, with some bits of 64180 and 6502 assembler. Somewhere I have a variant for the Z80 Applicard, but that may not be easy to unearth. I couldn't remember the build procedure if my life depended on it, but there are a bunch of Z-System (CP/M on steroids) 'zex' and 'bat' scripts containing tantalizing hints on the process. Requires Microsoft M80/L80 from the ALDS package (does Z80 and 6502 asm and linking), a distribution of TM2 with Bill Greathouse's fixes to just about everything and, almost certainly, a Z-System environment on the build host.
A word of warning: Do NOT run any of Glen Bredon's repair programs on the resulting ProDOS volume. They do their job well enough to want to "correct" the mismatch between physical size reported by the drive firmware and the shortened size in the volume header. Think about it for a minute. So many folks were bit that I also shipped a utility to correct the damage (provided you didn't copy of pile of data to the volume in ProDOS before running it!)
Do folks have any preference regarding the particular license I put my code under? I'm tempted to GPL it unless there are well-reasoned objections.
Steve