Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
qlwiki:cpm_68k_operating_system [2018/01/22 21:13] – timbo614 | qlwiki:cpm_68k_operating_system [2023/08/25 12:23] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
| | ||
The CP/M 68K Operating System was actually supplied by Digital Research, and sold by [[qlwiki: | The CP/M 68K Operating System was actually supplied by Digital Research, and sold by [[qlwiki: | ||
- | |||
The program was primarily designed to be used with the Quest Floppy Disk Drive, as it was reliant on the O/S card added onto that disk interface. | The program was primarily designed to be used with the Quest Floppy Disk Drive, as it was reliant on the O/S card added onto that disk interface. | ||
- | |||
CP/M 68K Operating System was a full implementation of the CP/M operating system, with an added 68000 assembler, C compiler and comprehensive manual. | CP/M 68K Operating System was a full implementation of the CP/M operating system, with an added 68000 assembler, C compiler and comprehensive manual. | ||
- | |||
CP/M 68K also provided the means of controlling the [[qlwiki: | CP/M 68K also provided the means of controlling the [[qlwiki: | ||
+ | |||
+ | Tim Benham wrote the BIOS i/o code for the original microdrive based version and he recalls: | ||
+ | |||
+ | >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 its contents so i could flip-flop between RAM/ROM as much as needed. Also The 68000 made " | ||
+ | |||
+ | >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/ | ||
+ | |||
+ | >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/ | ||
+ | |||
+ | >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/ | ||
+ | |||
+ | >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! | ||