QL CP/M

Anything QL Software or Programming Related.
Timbo614
ROM Dongle
Posts: 3
Joined: Sun Jan 21, 2018 9:12 pm

Re: QL CP/M

Post by Timbo614 »

Hi All Questers :) for CP/M for the QL....

This is a thread that I discovered on Google and many assumptions and thoughts on the Quest system are correct but I can correct/confirm a few things because I wrote the BIOS I/O code for the original microdrive version by Quest. I had left before the disk based version was produced (that's another story tho').

It's all a very long time ago and much beer and many lines of code have gone under the bridge since 1984, but what I remember:

The interface card contained 1KB RAM that is bank switchable by writing to an I/O port(memory mapped?). No settings are stored in it. The problem was/is (as mentioned here) that the QL interrupt table is in ROM so the 1KB RAM is used to hold a copy of the interrupt table, with suitable adjustments made for when CP/M has control. Basically at start-up I copied the ROM Interrupt table to the RAM. Then made the adjustments (in the RAM) for where I needed the Interrupts to go. When CP/M booted it of course made it's own adjustments.

When switching the RAM out it retained it's contents so i could flip-flop between RAM/ROM as much as needed. Also The 68000 made "context switching" quite simple by taking advantage of the alternate registers and stack pointer (much like a z80 could do).

As suspected here the O/S ran on top of QDos much like Windows 3.x on MS-DOS for certain operations, especially microdrive reading/writing, screen control, colour display - which was supported via ANSI - and some other things I can't remember! So a lot of the BIOS code was actually creating wrappers around QDos calls and mimicking a floppy drive within a QDos file.

At initial boot of the QL the user had to load and run a small Basic Program IIRC (or it auto ran) . This (again IIRC) changed the memory allocation for basic/QDos, loaded a specialised CP/M IPL/Bootloader into RAM from microdrive and simply jumped to it's start address.

Why did quest do this? You ask. The thinking was based on an extensive Sinclair ad campaign for "OPD" or One-Per-Desk featuring the QL in a central position for businesses - like erm.. one on every desk!. So it followed (sort of) that businesses would want a "proper" operating system like CP/M. They should have course have gone for PC/MS-DOS which would have been only a little more trouble but a lot more expensive licence wise.

Why did I get the job? Because at that time I was writing all their hard disk interface code for various machines both MS-DOS and CP/M (I also did Concurrent-CP/M for the Apricot). So I was considered the closest person they had to a BIOS writer.

Final note. The RAM Disk: The rush was to get the product to a show (of course) and it was terminally slow to do things using microdrives so the day before the show someone said "we need a RAM Disk" So I set about including one. I had it done in 2 or 3 hours, it worked first time. OK ..it was a fixed size but first time no bugs. That had never happened to me before and hasn't since!

Hope that belatedly helps. Timbo.


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: QL CP/M

Post by Dave »

I'm not sure if it's the same product but I distinctly remember at Sandy having to burn 100 EPROMs with CP/M. Verifying. Putting on the labels. Soldering up the ROM PCBs. Putting the ICs on. Screwing on the plastic covers. Testing on a testbed QL. Putting the product stickers on.

Thanks for a couple of mornings of miserable work, if that was your fault :P

I kid! I kid!


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: QL CP/M

Post by Dave »

That ROM was by Peter somebody? I don't remember the last name.


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: QL CP/M

Post by RWAP »

Thanks for all of the information Tim - I have added most of that to the QL Wiki as a bit of background interest.

All we need now is someone to find a working setup!
Dave wrote:I'm not sure if it's the same product but I distinctly remember at Sandy having to burn 100 EPROMs with CP/M. Verifying. Putting on the labels. Soldering up the ROM PCBs. Putting the ICs on. Screwing on the plastic covers. Testing on a testbed QL. Putting the product stickers on.
I guess that was the Sandy CP/Mulator - http://qlwiki.qlforum.co.uk/doku.php?id ... :cpmulator - by Peter Szymanski


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: QL CP/M

Post by Dave »

That rings a bell. I don't remember anything about it except making them and packing up the manuals. And the guy's name was Peter (my Dad's name)...


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: QL CP/M

Post by RWAP »

Derek_Stewart wrote:Quest CPM 68K Boot MDV.jpgI have found the Quest CP/M 68K boot micrdrive, it was very cleverly hidden in a case with other microdrives?

See attached photograph

I will make a copy of the microdrive, but the CP/M 68K boot loader needs the OS Module Card in the expansion slot.

The problem now is that the OS Module is dead ended and the disk interfaces I have are also dead ended with no through port expansion. Which is the main reason for not having a working system.
Derek - did you ever preserve this microdrive cartridge and the accompanying disks? They could be uploaded to Diwyn's site really, as they are no use without the Quest hardware!


Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QL CP/M

Post by Derek_Stewart »

:twisted:
RWAP wrote:
Derek_Stewart wrote:Quest CPM 68K Boot MDV.jpgI have found the Quest CP/M 68K boot micrdrive, it was very cleverly hidden in a case with other microdrives?

See attached photograph

I will make a copy of the microdrive, but the CP/M 68K boot loader needs the OS Module Card in the expansion slot.

The problem now is that the OS Module is dead ended and the disk interfaces I have are also dead ended with no through port expansion. Which is the main reason for not having a working system.
Derek - did you ever preserve this microdrive cartridge and the accompanying disks? They could be uploaded to Diwyn's site really, as they are no use without the Quest hardware!
Hi Rich,

Yes I have made backup copies of the 5.25" and microdrive cartridge.

I will consider submitting the disk images to the QL Hompage, but I do not see what good it will do, as the hardware is not available and CP/M software is very out of date and very crude by todays standard.


Regards,

Derek
User avatar
RalfR
Aurora
Posts: 870
Joined: Fri Jun 15, 2018 8:58 pm

Re: QL CP/M

Post by RalfR »

I think, it should be time for Peter Szymanski to make this Freeware. Under QPC2 it would run quick.


4E75 7000
Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QL CP/M

Post by Derek_Stewart »

Hi

Judging by the message by Timbo614 further this thread at:

[url]ttps://qlforum.co.uk/viewtopic.php?f=3&t=1323&start=40#p21177[/url]

It seems that Timbo, wrote the Quest CP/M BIOS code.

I wonder if he owns the copyright for the code and maybe has ge source code.

I also re-read Dave Park incorrect assumption about the Sandy CPMulator, which is a separate CP/M emulator, from the Quest CP/M emulator.

I have the Sandy CPMulator disk and ROM, which run CP/M 2.2

The best CP/M implementation is the Success CP/M emulator
released by Digitial Prevision, which allows CP/M 2.2

I think on the whole, CP/M 2.2 is the best implementation to use, I used it on Memotech MTX512 for many years.

CP/M M68K does not have same amount of software as CP/M 2.2 for Z80... Which what I meant in the earlier message.


Regards,

Derek
User avatar
bwinkel67
QL Wafer Drive
Posts: 1187
Joined: Thu Oct 03, 2019 2:09 am

Re: QL CP/M

Post by bwinkel67 »

Derek_Stewart wrote: The best CP/M implementation is the Success CP/M emulator
released by Digitial Prevision, which allows CP/M 2.2
The author of that commented on one of my YouTube videos...


Post Reply