Minimal CP-M SBC design

Allison ajp166 at
Sun May 18 07:50:29 CDT 2008

>Subject: Re: Minimal CP-M SBC design
>   From: Gordon JC Pearce <gordonjcp at>
>   Date: Sun, 18 May 2008 10:09:45 +0100
>     To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at>
>On Sun, 2008-05-11 at 16:25 -0400, Allison wrote:
>> Bob's SBC6120 is as close or better than a real 8e for playing with code.
>> That s the point too. Emulation you just cant pay with wires or add 
>> a parallel port.
>Aha, I disagree.  You can't get at the innards of the 6120 at all,
>because it's a chip.  If you want to get at the innards of an emulator
>then you can, although how accurately the emulator models the logic of
>the -8 might be an issue (my emulator doesn't model it at all, but
>largely does its own thing).

True, you can carry it with one hand and it does run os/8 rather than 
os/278.  If I want to be in the innards of a CPU I hav e a real pdp-8
and a decent scope.  I've yet to see a emulator that can let me see
the r/m/w cycles of core on the scope.

But I can add ports to a SB6120.

If of course if you program a large CPLD or FPGA  you can have your
software verion of the chip and you can even get at the innards with
your VHDL complier. No different from the 6120 as hardware but now you
can play in software.

Neither is wrong but if your designing a board that plug into a real
PDP-8 and is software interactive then  for all cases if (software 
emulation, parallel port kluge) sb6120, FPGA) our results will be 
"simulation" and at best does not have the feel, or actual dynamics 
of the electronic issues( termination, bus ringing, grounding and 
so on). 

>Adding a parallel port is easy - you've got one on your PC.  Work out
>what you want to talk to the parallel port, and graft on a bit of code
>to do it.  Dead easy.

Sorry doesn't work when you need 12 bits, or Data break and the 
hardware is very code interactive. 

>Need more ports, or a smart-ish peripheral?  Get one of those
>microcontroller boards with a USB device port and a bunch of IO lines.
>The Arduino Diecimila looks pretty good for this, although having more
>than one UART would be nice.  The UART talks to a generic USB-to-Serial
>chip (FTDI, for those interested) and you've got an assortment of
>digital IO, analogue input and PWM lines to play with, and a bunch of
>timers and things.  It presents to the PC as a serial port, and you
>program it in C.  I reckon with one of them and a bit of interfacing
>hardware (level shifters and latches, mainly) I could drive most PDP-8
>peripherals (if I had any).

If I wanted to build a PC for the task I'd use one.  The original goal
was to emulate or simulate in software the unique hardware for the 
pupose of writing new code that would run on the real (z80 powered)
thing with that unique hardware.  

If I want to run an abstraction and I do on occasion then many of 
the sims are great for that. Most sims allow for good many of the 
available "peripherals" and thats fine if your running real 
hardware the same way or wishing you could.


More information about the cctalk mailing list