Sorcerer ROMPAC Basic Games on CP/M

There were a number of games on the Sorcerer disks that fired up fine, but there were a large number that did not.

I got some help from Alan Laughton (Microbee Technologies) to work out what was going on. He spotted that the files contained basic. They were com files – so quite different from the basic files that you would load into the disk basic.

Browsing through the manuals and other data, it became clear that the ROMPAC BASIC work area had been set up in such a way as to allow programs to be saved and loaded with CP/M.

The ROMPAC basic has a lot more memory available to it than the disk basic. It doesn’t waste space on the interpreter or the operating system.

The first entry in the com file is a jump to the warm start area of the basic ROMPAC. This failed on my machine because i had no ROMPAC.

What i did have, though, was a 8k S-100 RAM card (Solid State Music MB6) which i could locate at the same address as the ROMPAC at C000.

The card, predictably, failed the Sorcerer Monitor RAM test, but the offending IC was found and replaced.

I tested it out by using ddt to load the ROMPAC which was moved up into the RAM card. Following reset, the “RAMPAC” was found and basic fired up.

“bye” at the basic prompt returned to the Sorcerer monitor and GO BC00 started CP/M again. One of the previously failing com files was loaded and sure enough it ran!

After that, i wrote a very short program that replaced the ddt step. This allowed another 23 games to execute.

I’ve since created to couple more which load the development and word processor ROMPAC code into the RAMPAC.

The memory card had a facility to write protect the contents, so i added a switch to the expansion unit to enable it.

Leave a Reply

Your email address will not be published. Required fields are marked *