PDA

View Full Version : Porting CP/M-68K to a recycled board



Plasmo
November 25th, 2017, 07:03 AM
A decade ago I purchased a box of salvaged single board computers based on Motorola MC68302. They were made by ADC Communication as a controller for their Soneplex communication product line. I'd had no documentations but I figured out how to turn on the power and observed the outputs of console serial port to know these are likely good working boards.

I tried a couple times to upload my own 68000 executable files, but were not successful. Eventually I wrote a boot monitor, took over the boot flash and overwrote the existing software. In the process I also figured out most of the pc board wiring. Recently I have sufficient understanding of the board to port CP/M 68K to it.

The board has 3 banks of flash memories. The first bank is 256K bytes and hold the monitor. The other two banks are 1 megabytes each. Collectively they formed a read-only disk to hold the CP/M 68K ver 1.3 distribution files. The RAM is 1 megabyte with the top 256K backed up with a super capacitor. The backed up RAM may serve as a small RAM disk. CP/M 68k resides in $15000 - $1FFFF and the Transient Program Area is from $20000 to BFFFF, or 640K--which "ought to be enough for anybody". :rolleyes: I copied the CP/M distribution files into flash and configured the BIOS for Flash disk and RAM disk and this is what I have:

Plasmo
November 26th, 2017, 07:16 PM
Attached are schematics of the pc board. It took quite an effort to trace through the pc board because it is a 6-layer board with power/ground layers in the center. Fortunately the inner signal layers are clearly visible so when all components are removed, circuitry can be traced visually. To speed up the process, I took high-resolution pictures of component side and solder side and overlay them in Photoshop so I can follow signal traces between component side and solder side easily. In many instances it is still necessary to use cotinuity meter to verify the connections.

Schematics were drawn using a 20-year old WINDRAFT by IVEX. Now that's vintage software!

Plasmo
December 1st, 2017, 07:49 AM
A CompactFlash daughterboard is added to the DIN41612 connector to make the system more usable.
42221

I documented my efforts in repurposing the SPX-MPU board here:
https://www.retrobrewcomputers.org/doku.php?id=builderpages:plasmo:spx-mpu

The process to convert it to run CP/M-68K is here:
https://www.retrobrewcomputers.org/doku.php?id=boards:sbc:mpu302

Alphasite
December 1st, 2017, 11:29 AM
This is pretty neat.

Plasmo
December 2nd, 2017, 03:46 PM
Thank you. I have 6 of them for sale at RetroBrew. They are $30 per set (MPU board, daughter board, including the CF drive)

dmemphis
December 11th, 2017, 07:52 PM
Remarkable. If I didn't have so many toys needing attention at the moment I'd check it out.

Plasmo
December 12th, 2017, 03:21 PM
I followed the link in your signature and really enjoyed your story about Kermit. I have no idea that Columbia University has played such a major role in development, porting and maintenance of Kermit.

Kermit is THE file transfer tool between my PC and the repurposed CP/M 68K hardware. I use HyperTerminal on the PC with a transfer rate of 38400. I downloaded the Kermit for CP/M-68K (actual file name is gkermit) from Columbia U's website, ftp://kermit.columbia.edu/kermit/archives/gkermit68k.tar.gz
it contains a precompiled gkermit.rel that works without recompiling (other than converting gkermit.rel to gkermit.68k for faster execution).

Motivated by your experiences in recompiling Kermit, I take a closer look at the source codes. They are all in C, specifically the CP/M68K version of C, so they should compile correctly in the native CP/M68K environment without modifications. There are four C programs plus a header file:
GKERMIT.C
GPROTO.C
GUNIXIO.C
GCMDLINE.C
GKERMIT.H
The submit file CGK.SUB is for compiling each C program. When that's done, LOGK.SUB is used to link them together. It takes about 4 minutes to compile and link on my repurposed hardware. The resulting gkermit works like the original. Very cool!

Plasmo
December 26th, 2017, 06:47 AM
This is how to "make a short story a lot longer"; I wrote down my experiences with recycling Soneplex MPU board at hackaday, and I'm not done yet.
https://hackaday.io/project/28504-reverse-engineering-soneplex-spx-mpu-sbc

This is more than Vintage Computing; it is Salvaged Computing! :p

dmemphis
December 26th, 2017, 10:06 AM
Very nice follow up on the Kermit angle, thanks!
Yes you are on to a subclass here of vintage.
It takes a special type of mindset and tenacity to reverse engineer an old
undocumented board and make it functional. Perhaps it will catch on!