Glen Bredon's DOS.MASTER for ProDOS Drives

5 posts / 0 new
Last post
MacFly's picture
Last seen: 3 hours 12 min ago
Joined: Nov 7 2019 - 13:49
Posts: 390
Glen Bredon's DOS.MASTER for ProDOS Drives

Moving the discussion about compatibility problems with the "DOS.GAMES" collection (see previous discussion here) to this separate thread. It's not a DAN][-specific topic, and the other thread is getting incredibly long anyway. Makes sense to spin off sidetrack discussions...

So, as we recently noticed, there is an issue with the "DOS.GAMES" collection - and possibly other collections using the same base. They would run fine when using a CFFA - but not work when using a DAN][ controller, or some other ProDOS interface devices. As discussed earlier, this is caused by a hard-coded address refering to the CFFA device's ROM. This address should normally never be hard-coded anywhere. According to the ProDOS interface standard, it needs to be read from a standardized table inside the device's ROM itself.

In the earlier thread I made a crude hack to change the hard-coded address to match my DAN][ ROM, instead of the CFFA ROM. I assumed the issue was caused by an oversight by the game collection's creator (who is also involved in the CFFA).

Well, my initial assumption wasn't quite right. It has nothing to do with "CFFA guys". Nor is it really anyone's fault. I have investiaged this a bit further. Here's what's going on...


The mentioned game collection is based on the "DOS.MASTER" environment by Glen Bredon. Glen was a math professor and made many Apple II contributions - best known probably his "MERLIN" assembler.

I wasn't even aware of his "DOS.MASTER" utility before. It's a pretty cool environment that he created. It allows to run DOS 3.3 programs from a ProDOS harddrive. Multiple files can be created on a ProDOS drive, where each file is a container for a complete DOS 3.3 floppy disk. It provides a utility to copy DOS files into these containers. DOS 3.3 only supports (small) floppy disks. But DOS.MASTER is able to create a DOS3.3 environment for the programs, so DOS still "sees" floppy drives - without knowing that the data of each floppy actually lives in an image file, which is stored on a ProDOS harddrive... As I said, pretty cool! :)

And Glen knew what he was doing. It works with any ProDOS drive. It's "ProDOS-compliant", doesn't use hard-coded addresses but reads them from the device's ROM. Just as it should be...

So, all should be good, right?

What the issue really is...

The reason why we're still seeing issues is this: DOS.MASTER was made to allow users to copy their (legally purchased...) Apple II DOS software to a ProDOS harddrive - and run it from there. It works great for this purpose. It even supports multiple ProDOS drives - and multiple containers on each of them.

When its installation utility is run, it creates a configuration file. The user selects the drives which should be accessible. The utility stores all of this in the configuration file, including the exact slot of each selected ProDOS drive. And, you guessed it: it also stores the appropriate address of each ProDOS drive's ROM routine...

It just wasn't intended to make portable volume images, suitable for redistribution to other machines.

The concept of generating a fixed configuration file at installation time, with hardware-specific information about the local system's setup - and storing this on the harddrive itself, obviously doesn't make sense when you want to create something portable.

So out of the box, images created with DOS.MASTER are only guaranteed to work on a system matching the setup of the original, which created the image. All ProDOS drives have to be in exactly the same slot. The ROM layout (ROM entry address) of each drive must match the address of the original.

When you create a "DOS Game Collection" made for a system with a CFFA in slot 7, then the image will only work with a CFFA in slot 7. Not with CFFA in slot 6. Nor with a DAN][ in slot 7.

Proper fix

There are multiple ways to "fix" this issue. Though it's more a case of repurposing DOS.MASTER to support a different use case: portable images for redistribution.

Sadly, Glen Bredon already passed away in 2000. But his wife had released all his Apple II projects into the public domain. The collection includes the sources of the Merlin assembler - and those of "DOS.MASTER" (and other stuff). So, it's pretty well documented.

I guess the easiest "fix" is to create a little utility which adapts the configuration file for the current system. It should be easy for "game collections" and similar images, since they only require a single drive to be accessible anyway. No actual selection or mapping is required - which was the initial purpose of the config file. All it needs is a "use the current drive, the one from which we have just booted, and use exactly this as the only available ProDOS drive for the DOS.MASTER environment".

I'll be look into this, as I fall deeper and deeper into this rabbit hole... If anyone has any ideas, or previous experience with DOS.MASTER, let me know...


Last seen: 4 hours 7 min ago
Joined: Jul 5 2018 - 09:44
Posts: 2183

Now that you mention it, I seem to remember DOS.MASTER being on the Sider 20 hard drive I have around here somewhere.


I will have to download that source code and take a look.  Anyone know where it can be found?  The name Charles T. Turley sounds familiar, but I don't think I know him.  Sadly googling that name I mostly find obituaries and no real clue if any of them is the one mentioned by Glen's widow.


A little more googling I came up with some Usenet threads from back in the day.  Unfortunately it appears that Charles "Tom" Turley passed away in 2014.  And worse it mentions that Glen had told him he wasn't able to provide source for one of his other programs Pro-Sel, So as far as yet no clue where to find DOS.MASTER source.






MacFly's picture
Last seen: 3 hours 12 min ago
Joined: Nov 7 2019 - 13:49
Posts: 390
softwarejanitor wrote:I will
softwarejanitor wrote:

I will have to download that source code and take a look.  Anyone know where it can be found?


All the usual places:

The contains an image with the latest version - and it includes binaries and matching sources.

But since the tool's configuration utilities are written in BASIC, we probably don't even need to be messing with any of the binaries. I'm checking if  just some PEEKs and POKEs can be added to the ProDOS STARTUP (basic) program, to patch the configuration file with the slot and ROM routine address of the primary ProDOS drive - before executing it.

MacFly's picture
Last seen: 3 hours 12 min ago
Joined: Nov 7 2019 - 13:49
Posts: 390

Ok, I think I have a solution. The attached ZIP file contains an image which should now work with any ProDOS drive. CFFA, DAN][, BOOTI, ... whatever. And it should work with the device in any slot. If you have a ProDOS drive, please see if the image boots with your device and shows the following menu:

There's a total of 102 games, and it's a quite enjoyable collection:


I wanted a simple approach, which could also be applied to other DOS.MASTER-images easily.

Initial approach was just to BLOAD, PEEK&POKE and BSAVE the configuration, adapting it to the current ProDOS device whenever the image was booted. That worked, however, I remebered there are also read-only ProDOS drives (or drives where you can enable a write-protection). So it wasn't perfect yet. It took a few more tweaks to make it work without ever writing the configuration back to disk.

The only change is in the image's initial STARTUP program. The original startup contained nothing else but a single launch command:

10 PRINT  CHR$(4);"-DOS.3.3"

The new STARTUP is a little longer now... :)

But it's still all written in basic and could be copied to other DOS.MASTER images, to make them independent of the ProDOS drive and slot. The only limitation is that it will only work for configurations based on a single ProDOS volume. But software collections meant for distribution are usually individual images anyway. So the support for multiple ProDOS drives isn't really an issue.

If anyone was aware of other "distributions" based on Glen Bredon's DOS.MASTER, let me know.

Last seen: 1 day 3 hours ago
Joined: Dec 19 2008 - 21:01
Posts: 388
Nice! it is a pretty neat

Nice! it is a pretty neat system.

Of course to any one else playing with it, you can exit the menu with "0". This drops you into a DOS 3.3 System Master disk that has been patched to be able to access all the "volumes" so the commands are extended. 

Example, to list the files in volume 5, you would enter CATALOG,V5

To run one of the programs, just BRUN programname,V5.


Log in or register to post comments