Last visit was: Wed May 22, 2024 5:17 pm
It is currently Wed May 22, 2024 5:17 pm

 [ 2 posts ] 
 SDC_One - a modern computer with a vintage CPU 
Author Message

Joined: Tue Jan 30, 2018 10:45 am
Posts: 3
I'd like to present my design of a retrocomputer.

A real, usable computer should have an LED, a button, a terminal and some mass storage. A good, old-style computer should also provide for hardware-level debugging: single-stepping through bus cycles, memory and I/O display and editing and memory loading independently from CPU (remember those panels with lamps and switches?;) )

SDC_One is a software-defined computer based on a real, classic CPU. Other than the CPU, the rest of SDC_One memory, peripherals and glue logic, is implemented with a single Cortex-M4 based microcontroller. The goal of the project was to build a computer which could be used for teaching the basics of computer's operation, hence it provides extensive hardware-level monitoring by single-stepping through bus transfers and instructions, hardware breakpoints, data injection during bus transfers, etc. The peripheral set implemented in SDC_One, including a simple GPIO, console interface and mass storage (diskette emulated in the MCU's Flash) makes it possible to run a real vintage OS, like CP/M.
The computer connects to a PC with a USB cable, providing the power supply and presenting two virtual serial ports to the PC; one is used as hardware monitor interface, the other as target computer's console. A .HEX file may be loaded to the target's memory by dropping it onto the hardware monitor terminal window.

SDC_One consists of an STM Nucleo-L476 board and a small daughterboard sitting on top of it, containing the target CPU. The daughterboard contains only the CPU, a USB connector and some passive components, so the equivalent computer may be easily built with a breadboard instead of a daughterboard PCB.
Currently there are four variants of SDC_One, using 8085, Z80CPU, MC68008 and 65C02. The target has 64 KiB RAM and achieves the execution speed of about 400000 bus transfers per second (so it's like half of what the CPU could achieve). Z80 and 8085 variants run CP/M-80, and MC68008 successfully booted CP/M-68k.
Considering the cost of components and ease of assembly, I suspect that SDC_One may be the most affordable and easiest to assemble retrocomputer.

If anyone is interested, I am ready to share schematics, PCB designs and L476 firmware (currently in binary form only, sources in future).

Also, there is work-in-progress on two other models of SDC_:
The SDC_Zero cannot run an OS due to it's limited (16KiB) RAM, uses the breadboard, can be assembled in less than one hour and has a total cost of < $6 (sorry, no GPIO other than a single LED and no mass storage at this price, just an option of 48KiB ROM filling the rest of address space).
SDC_68k is a project of an MC68000/010-based computer of the footprint equal to that of MC68000 DIL64 socket, with 256 KiB RAM available to the CPU. No Nucleo board this time.
Both models have the same hardware monitoring capabilities as SDC_One.

Tue Jan 30, 2018 10:52 am

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1786
Welcome gbm!

(It's fine to post here too, but for context note that there's a related thread over at

Edit: for interest, there's now also a thread over on Retrobrew Computers.

Tue Jan 30, 2018 3:11 pm
 [ 2 posts ] 

Who is online

Users browsing this forum: CCBot and 0 guests

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software