Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: Anyone know how to bootstrap CP/M-68K on a new processor board?

148 views
Skip to first unread message
Message has been deleted

BobH

unread,
Dec 26, 2011, 8:00:58 PM12/26/11
to
On 12/26/2011 11:06 AM, lynchaj wrote:
> Hi! We are working with a prototype S-100 68K CPU board. It works
> fine and boots into either a custom debug monitor or TUTOR 1.3.
>
> However, we would like to bootstrap CP/M-68K. Has anyone got
> experience in doing this?
>
> On CP/M-80 you can use the CP/M System Alteration Guide but there
> doesn't appear to be an equivalent for CP/M-68K
>
> Here is the discussion on the N8VEM-S100 group. Any advice much
> appreciated.
>
> http://groups.google.com/group/n8vem-s100/browse_thread/thread/9a68059da98a636f
>
> Thanks in advance. Have a nice day!
>
> Andrew Lynch

I used to run CPM68K on a Compuro / Godbout system. They distributed the
source for their bios'es in assembler. There was a loader bios that was
similar but separate from the OS bios. The original bios (DR) was done
in C, but the Alcyon C compiler was kind of buggy and the performance
wasn't great, so using assembler wasn't a bad choice. As I remember,
CPM68K did bios calls through a software interrupt, 14 I think. I don't
remember well how you spliced the bios to the OS, I think that you
loaded it into RAM and the new bios and then wrote the whole image to a
disk file. I still have copies of the DR and Compupro docs somewhere. If
there is something specific that you want me to look up, I will find
them and do so.

Regards,
BobH



Message has been deleted

monahanz

unread,
Dec 27, 2011, 12:56:05 PM12/27/11
to
On Dec 27, 4:15 am, lynchaj <lync...@yahoo.com> wrote:
> On Dec 26, 8:00 pm, BobH <wanderingmetalhead.nospam.ple...@yahoo.com>
> wrote:
> [snip]
>
>
>
>
>
>
>
>
>
>
>
> > I used to run CPM68K on a Compuro / Godbout system. They distributed the
> > source for their bios'es in assembler. There was a loader bios that was
> > similar but separate from the OS bios. The original bios (DR) was done
> > in C, but the Alcyon C compiler was kind of buggy and the performance
> > wasn't great, so using assembler wasn't a bad choice. As I remember,
> > CPM68K did bios calls through a software interrupt, 14 I think. I don't
> > remember well how you spliced the bios to the OS, I think that you
> > loaded it into RAM and the new bios and then wrote the whole image to a
> > disk file. I still have copies of the DR and Compupro docs somewhere. If
> > there is something specific that you want me to look up, I will find
> > them and do so.
>
> > Regards,
> > BobH- Hide quoted text -
>
> Hi Bob!  Thanks!
>
> There is some CP/M 68K system documentation here with what appears to
> be CompuPro CP/M-68K information
>
> http://www.retroarchive.org/docs/software/cpm68.html
>
> Unfortunately there does not appear to be CP/M 68K System Alteration
> Guide AFAIK
>
> Is this documentation what you were remembering?  Is this sufficient
> to make our own CP/M-68K CBIOS?
>
> We are in a bit of a "catch-22" since the new S-100 68K CPU board does
> not have a CBIOS yet and it appears to get one we need a running CP/
> M-68K system we don't have.  :-(
>
> What I am thinking is the solution to this problem is to start with
> the CompuPro CP/M-68K binary image, isolate the CBIOS section, and
> manually replace it using a custom built CBIOS for the rest of the
> S100computers.com and N8VEM S-100 boards.  Then load the CCP, BDOS,
> and new CBIOS sections as binary images and tweak until it works.
>
> This is a nasty kludgy process although I think it would work.  I did
> something similar on the original N8VEM SBC for CP/M-80.  The initial
> CP/M-80 on it was buggy but worked well enough to spawn much improved
> successors.  Now the ROM images are so good they barely even resemble
> my original efforts.
>
> Thanks and have a nice day!
>
> Andrew Lynch

We should be able to have a master/slave 68K CPU running on the S-100
bus within the next few months. Please see her for a description of
the prototype:-.

http://s100computers.com/My%20System%20Pages/68000%20Board/68K%20CPU%20Board.htm

My first choice would definately be using the Godbout 68K image and
splicing in a BIOS written in assembly. The Godbout/Compupro systems
were outstanding. The documentation was great with great examples.
That would be my first choice. As to a windows based 68K assembler. I
would highly recommend
http://www.easy68k.com/

It is just fantastic for a job like this.

Bill Gunshannon

unread,
Dec 27, 2011, 1:35:42 PM12/27/11
to
In article <ee8a4c51-2c5e-4121...@v24g2000prn.googlegroups.com>,
monahanz <mon...@vitasoft.org> writes:
> On Dec 27, 4:15 am, lynchaj <lync...@yahoo.com> wrote:
>> On Dec 26, 8:00 pm, BobH <wanderingmetalhead.nospam.ple...@yahoo.com>
>> wrote:
>> [snip]
>>
>> > I used to run CPM68K on a Compuro / Godbout system. They distributed the
>> > source for their bios'es in assembler. There was a loader bios that was
>> > similar but separate from the OS bios. The original bios (DR) was done
>> > in C, but the Alcyon C compiler was kind of buggy and the performance
>> > wasn't great, so using assembler wasn't a bad choice. As I remember,
>> > CPM68K did bios calls through a software interrupt, 14 I think. I don't
>> > remember well how you spliced the bios to the OS, I think that you
>> > loaded it into RAM and the new bios and then wrote the whole image to a
>> > disk file. I still have copies of the DR and Compupro docs somewhere. If
>> > there is something specific that you want me to look up, I will find
>> > them and do so.
>>
I find this thread very interesting. You see, I also have a rather
strangrer and obscure M68K system. It is the "Integrated Solutions
68K CPU". A board that fits in a QBUS (yes, from the PDP-11) and
is capable of utilizing memory and devices on that bus. Sadly,
they only came with two kinds of PROM, MACBUGS and a Unix Boot
for SYS3 or SYSV (and maybe BSD 4.3). I got stuck with the Unix
Boot Proms so they are pretty much useless. I have been searching
for monitor code (MACBUG seems to have been taken over by Apple and
no original Motorola versions seem to be available) and was looking
at TUTOR but if I can find a way to run CP/M-68K that would be much
more fun. Who knows, if a couple of us succeed maybe we can write
that porting guide!!

bill


--
Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves
bill...@cs.scranton.edu | and a sheep voting on what's for dinner.
University of Scranton |
Scranton, Pennsylvania | #include <std.disclaimer.h>

BobH

unread,
Dec 27, 2011, 1:48:10 PM12/27/11
to
On 12/27/2011 5:15 AM, lynchaj wrote:
> On Dec 26, 8:00 pm, BobH<wanderingmetalhead.nospam.ple...@yahoo.com>
> wrote:
>> [snip]
> Hi Bob! Thanks!
>
> There is some CP/M 68K system documentation here with what appears to
> be CompuPro CP/M-68K information
>
> http://www.retroarchive.org/docs/software/cpm68.html
>
> Unfortunately there does not appear to be CP/M 68K System Alteration
> Guide AFAIK
>
> Is this documentation what you were remembering? Is this sufficient
> to make our own CP/M-68K CBIOS?
>
> We are in a bit of a "catch-22" since the new S-100 68K CPU board does
> not have a CBIOS yet and it appears to get one we need a running CP/
> M-68K system we don't have. :-(
>
> What I am thinking is the solution to this problem is to start with
> the CompuPro CP/M-68K binary image, isolate the CBIOS section, and
> manually replace it using a custom built CBIOS for the rest of the
> S100computers.com and N8VEM S-100 boards. Then load the CCP, BDOS,
> and new CBIOS sections as binary images and tweak until it works.
>
> This is a nasty kludgy process although I think it would work. I did
> something similar on the original N8VEM SBC for CP/M-80. The initial
> CP/M-80 on it was buggy but worked well enough to spawn much improved
> successors. Now the ROM images are so good they barely even resemble
> my original efforts.
>
> Thanks and have a nice day!
>
> Andrew Lynch

Hi Andrew,
The CPM System Guide is the document you want. It is the first one on
the retroarchive page. It has an example BIOS and the instructions for
building disks and mating the bios, bdos and OS. The simplest BIOS is
pretty simple. The Compupro bios had support for many of their boards
including a couple flavors of HDA interfaces, and many floppy disk formats.

If you can find one of the original Compupro distribution disks, it had
all of the pieces needed to build a new system. I might have a copy of
this disk, but I sold all of my S100 hardware about 5 years ago, so I
don't have a way to read it. I will look through the pile (er archive)
and see what I have.

What part of the world are you located in? The email address on my post
is munged for de-spaming, but I check the Yahoo email regularly.

Take Care,
BobH

BobH

unread,
Dec 27, 2011, 2:34:05 PM12/27/11
to
On 12/27/2011 10:56 AM, monahanz wrote:
>
> We should be able to have a master/slave 68K CPU running on the S-100
> bus within the next few months. Please see her for a description of
> the prototype:-.
>
> http://s100computers.com/My%20System%20Pages/68000%20Board/68K%20CPU%20Board.htm
>
> My first choice would definately be using the Godbout 68K image and
> splicing in a BIOS written in assembly. The Godbout/Compupro systems
> were outstanding. The documentation was great with great examples.
> That would be my first choice. As to a windows based 68K assembler. I
> would highly recommend
> http://www.easy68k.com/
>
> It is just fantastic for a job like this.

Hi,
I looked at your web page and it looks like fun! A couple of things
occurred to me from your page.

Cromemco and Compupro both built boards that could switch between a Z80
and a 68K. The Cromemco board was called the DPU and it had both CPU's
on the same board. Compupro had them on separate boards.

If you are running out of room on your board for parts, an FPGA would
allow a lot of stuff to be done in a small space. Altera and Xilinx both
offer web downloadable versions of their tool chains for free that work
with their older/smaller parts.

An alternative to using EEPROM or Flash for debugging are EPROM
Emulators. They are a dual port system that plugs into an EPROM socket
and can be read through the EPROM interface. You can also talk to them
via a serial or parallel bus from a host PC and ship binary or S Records
or hex files to them for loading. They make crash and burn debugging
close to an acceptable development process. I picked up a few of them
off the auction site for about $10 each in 2009. Grammar Engine makes
the ones I have used. I did a 68332 board design, brought it up and
wrote the firmware for an AZ/EL satellite antenna controller using EPROM
Emulators and a logic analyzer for debug. It worked pretty well.

I like the idea of having RAM on the CPU board, the 68K can run a good
bit faster than the 696 bus supported, so being able to run out of local
RAM is good.

BobH

BobH

unread,
Dec 27, 2011, 2:45:37 PM12/27/11
to
On 12/27/2011 11:35 AM, Bill Gunshannon wrote:
> I find this thread very interesting. You see, I also have a rather
> strangrer and obscure M68K system. It is the "Integrated Solutions
> 68K CPU". A board that fits in a QBUS (yes, from the PDP-11) and
> is capable of utilizing memory and devices on that bus. Sadly,
> they only came with two kinds of PROM, MACBUGS and a Unix Boot
> for SYS3 or SYSV (and maybe BSD 4.3). I got stuck with the Unix
> Boot Proms so they are pretty much useless. I have been searching
> for monitor code (MACBUG seems to have been taken over by Apple and
> no original Motorola versions seem to be available) and was looking
> at TUTOR but if I can find a way to run CP/M-68K that would be much
> more fun. Who knows, if a couple of us succeed maybe we can write
> that porting guide!!
>
> bill

Hi Bill,
Are you the person that got CPM68K running on a PDP11? About 10 years
ago, someone in this newsgroup described modifying the source to be
buildable with GCC and then porting it to a PDP11.

BobH


Bill Gunshannon

unread,
Dec 27, 2011, 3:12:58 PM12/27/11
to
In article <jdd77...@news3.nntpjunkie.com>,
No, but I would love to see that, too. I have seen a VAX port of
CP/M-68K but not a PDP-11. To be honest, I can't see CP/M-68K
running on the PDP-11. It is, after all, only a 16 bit machine.
It would be a candidate for CP/M 2.2 or possibly 3.0, however.
Of course, I have both systems available so if someone is working
on this maybe I can help. :-)

monahanz

unread,
Dec 27, 2011, 5:11:01 PM12/27/11
to
On Dec 27, 10:48 am, BobH <wanderingmetalhead.nospam.ple...@yahoo.com>
wrote:
Bob, I can read most floppy disks including most (common) 8" formats.
If you find (it/them) I could do it. (live in San Francisco area).
John

BobH

unread,
Dec 28, 2011, 11:07:57 AM12/28/11
to
On 12/27/2011 3:11 PM, monahanz wrote:
> On Dec 27, 10:48 am, BobH<wanderingmetalhead.nospam.ple...@yahoo.com>
snip
>> If you can find one of the original Compupro distribution disks, it had
>> all of the pieces needed to build a new system. I might have a copy of
>> this disk, but I sold all of my S100 hardware about 5 years ago, so I
>> don't have a way to read it. I will look through the pile (er archive)
>> and see what I have.
>>
>> Take Care,
>> BobH
>
> Bob, I can read most floppy disks including most (common) 8" formats.
> If you find (it/them) I could do it. (live in San Francisco area).
> John

I went through the boxes of disks and did not see anything related to
the Compupro stuff. It was a long shot anyway.

I looked at the retroarchive.org web site:
http://www.retroarchive.org/cpm/os/os.htm/compupro.zip and it has the
Compupro bios sources (.s) and in another folder has the 3 disks with
the relocatable distribution versions of the OS files you need.

Sorry,
BobH

monahanz

unread,
Dec 28, 2011, 2:40:26 PM12/28/11
to
On Dec 28, 8:07 am, BobH <wanderingmetalhead.nospam.ple...@yahoo.com>
wrote:
> On 12/27/2011 3:11 PM, monahanz wrote:
>
> > On Dec 27, 10:48 am, BobH<wanderingmetalhead.nospam.ple...@yahoo.com>
> snip
> >> If you can find one of the original Compupro distribution disks, it had
> >> all of the pieces needed to build a new system. I might have a copy of
> >> this disk, but I sold all of my S100 hardware about 5 years ago, so I
> >> don't have a way to read it. I will look through the pile (er archive)
> >> and see what I have.
>
> >> Take Care,
> >> BobH
>
> > Bob, I can read most floppy disks including most (common) 8" formats.
> > If you find (it/them) I could do it. (live in San Francisco area).
> > John
>
> I went through the boxes of disks and did not see anything related to
> the Compupro stuff. It was a long shot anyway.
>
> I looked at the retroarchive.org web site:http://www.retroarchive.org/cpm/os/os.htm/compupro.zipand it has the
> Compupro bios sources (.s) and in another folder has the 3 disks with
> the relocatable distribution versions of the OS files you need.
>
> Sorry,
> BobH

Thanks Bob, that sure is a lot of data. On the face of it however the
3 disks and BIOS source files (.s) do seem to have all we require.
Thanks
John

Roger Ivie

unread,
Dec 30, 2011, 5:12:45 AM12/30/11
to
On 2011-12-27, BobH <wanderingmetalhe...@yahoo.com> wrote:
> Are you the person that got CPM68K running on a PDP11? About 10 years
> ago, someone in this newsgroup described modifying the source to be
> buildable with GCC and then porting it to a PDP11.

That's a confusion of two things I said.

I have a modified version of CP/M-68K that can be run through gcc. I
have run it on a MicroVAX 2000 and on a Hawkboard ARM system. In both
cases, I'm currently booting from Ethernet and runnning out of a
RAMdisk. The ARM variant is more advanced; I have ED, PIP, and STAT from
CP/M-Z8000 running under it (the CP/M-68K variants are written in a
PL/M-like language). I foolishly upgraded my NetBSD box a few years ago
and was never able to figure out how to build a VAX gcc cross-compiler
for the new version, so I lost the ability to work with the VAX variant.

I once suggested giving it a go on a PDP-11 in answer to someone who was
talking about starting an OS project on the PDP-11.
--
roger ivie
ri...@ridgenet.net

BobH

unread,
Dec 30, 2011, 7:29:30 PM12/30/11
to
I looked at the old messages and realized my confusion. Still, it sounds
like fun stuff. Which ARM is the Hawkboard? I am just getting started
with embedded linux on the ARM A8 (Beaglebone board).

Bob

Roger Ivie

unread,
Dec 30, 2011, 7:42:13 PM12/30/11
to
On 2011-12-31, BobH <wanderingmetalhe...@yahoo.com> wrote:
> I looked at the old messages and realized my confusion. Still, it sounds
> like fun stuff. Which ARM is the Hawkboard? I am just getting started
> with embedded linux on the ARM A8 (Beaglebone board).

http://www.hawkboard.org/

Fortunately, I seem to have acquired one of the early ones that work.
The second run of hardware appears to have been a disaster, and nothing
much seems to have been done about it. Consequently, I cannot recommend
it and no one else is likely to have hardware that can run my CP/M-ARM
port as it currently exists.

I probably cursed it by buying one...

Discounting the RAMdisk image, the CP/M-ARM system occupies about 24K of
RAM. This should make it useable on ARM controllers too small to run
Linux, assuming I ever get it finished.
--
roger ivie
ri...@ridgenet.net

David Schultz

unread,
Jan 11, 2012, 5:57:58 PM1/11/12
to
On 12/26/2011 12:06 PM, lynchaj wrote:
> Hi! We are working with a prototype S-100 68K CPU board. It works
> fine and boots into either a custom debug monitor or TUTOR 1.3.
>
> However, we would like to bootstrap CP/M-68K. Has anyone got
> experience in doing this?
>
> On CP/M-80 you can use the CP/M System Alteration Guide but there
> doesn't appear to be an equivalent for CP/M-68K
>
> Here is the discussion on the N8VEM-S100 group. Any advice much
> appreciated.
>
> http://groups.google.com/group/n8vem-s100/browse_thread/thread/9a68059da98a636f
>
> Thanks in advance. Have a nice day!
>
> Andrew Lynch

Just stumbled onto this thread and it reminded me of when I bootstrapped
CP/M-68K long ago.

My system was based on a MEX68KECB that was modified to add more memory
and a floppy disk controller. I purchased CP/M-68K and it arrived on a
set of 5.25" floppies.

Prior to that I had installed fig-FORTH from the 68000 listing and got
it working with the floppy. This was the starting point for the process.

The first step was to read the BDOS image provided on the disk in
S-record format, decode the S-records, and load it into memory.
fig-FORTH made this pretty easy. I then wrote a bare bones (it didn't
even cache my 1K physical sectors so it was really slow) BIOS using the
TUTOR assembler. Then patch the BDOS with the address of the BIOS. This
is described in the manuals which can now be found on the net. I still
have the dead trees version.

Once I was to that point I then used the as68 assembler to write a new
version of the BIOS and link it with the BDOS. I also built the boot
image used to load the main system. Thus began a progression
of BIOS versions. I added caching of disk sectors sufficient to
eliminate most seeks to read directory extents, a RAM disk, etc.

I recently dug out the old hardware:

http://home.earthlink.net/~schultdw/cpm68/index.html

Message has been deleted
0 new messages