If you're writing your own, it might be well to keep in mind that the BIOS
used in several late-generation CP/M systems used device drivers which could
be swapped in and out of PROM. This seems like a decent idea in view of the
way in which some compilers handled their TPA usage. You could end up with
a pretty big BIOS if you make it any sort of fancy at all , and that could
mean you can't run some compiled programs.
California Computer Systems (CCS) had a pretty nice boot process in which
they loaded a skeletal BIOS in a 32K CP/M, since 32K was the smallest memory
in which they claimed they could run. It wrote that to the boot blocks,
then, under the control of that skeletal system, they loaded a "full-size"
(you get to define that!) CP/M and transfer control to it. It's pretty
solid and makes the preparation of a bootable disk a straightforward if not
a quick process.
IIRC, the XEROX 820 used a swapped-in BIOS which lived in PROM and was
mapped into the TPA during file transfers, or something on that order. If
your machine can handle that, it saves on BIOS size, especially tables, etc,
and, generally speaking, if the READ operations from the TPA are from
temprorarily mapped-in PROMs, you can overwrite the TPA in the event you're
loading overlays, with complete impunity. That way your blocking/deblocking
buffer space can still reside in high memory.
Just a thought . . .
Dick
-----Original Message-----
From: Dwight Elvey <elvey_at_hal.com>
To: Discussion re-collecting of classic computers
<classiccmp_at_u.washington.edu>
Date: Thursday, May 27, 1999 3:25 PM
Subject: Re[4]: Bringing up a CPM
>allisonp_at_world.std.com wrote:
>> > I guess the issue is that the additional space is the BIOS and
>> > since I'll be replacing this with my own BIOS, and I write efficient
>> > code, I don't have to worry about it until I run out of space?
>> > Dwight
>> >
>> ???HUH??? Figure this if your running a SSSD 8" to be compatable with
>> media out there the system has two tracks to use for the CCP, BDOS and
>> bios. Thats 52 sectors!
>>
>> The first sector DOES NOT HAVE TO BE THE BOOT.
>
>Hi
> It does on my system unless I toggle in a loader or have
>EPROMs to do it. I'd like to not have any EPROMs if I don't
>need it. The controller automatically loads track 0 sector 1.
>I start executing at address zero and it boot loads the
>CPM system. The boot loader then jumps to the start of
>the CPM and it over writes info at address zero with what
>it requires there. As far as I know, I am following the examples
>for a non-MDS800 type system and following exactly what is
>shown on 6-14/6-15 of the CPM manual that I got from the
>unofficial site. The mapping shows that the first sector
>is a cold start loader and the CPM ( CCP ) part doesn't start until
>the second sector.
> It would seem that there was additional BOIS info loaded that
>didn't fit into the 51 sectors. It sounds like I can ignore
>this because I'll be replacing it anyway.
> Let me say, no EPROM's, boots from disk.
>Dwight
>
Received on Thu May 27 1999 - 19:00:46 BST
This archive was generated by hypermail 2.3.0
: Fri Oct 10 2014 - 23:32:26 BST