RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » SDC_One - a contemporary computer with a a real, classic CPU
SDC_One - a contemporary computer with a a real, classic CPU [message #4206] Tue, 30 January 2018 00:18 Go to previous message
gbm is currently offline  gbm
Messages: 34
Registered: January 2018
Member
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?Wink.

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 the daughterboard sitting on top of it, containing the target CPU. The daughterboard contains only the CPU and, an USB connector and some passive components, so the equivalent computer may be easily built with a breadboard instead of 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. Z80 and 8085 variants run CPM/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:
The SDC_Zero cannot run an OS due to it's limited (16KiB) RAM, uses the breadboard 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.
  • Attachment: P1040196.JPG
    (Size: 1.62MB, Downloaded 781 times)

[Updated on: Tue, 30 January 2018 00:21]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: ECB-VGA3 Running
Next Topic: Multicomp 6809 and the Serial Ports


Current Time: Wed May 14 11:39:37 PDT 2025

Total time taken to generate the page: 0.00603 seconds