RetroComputers
Contents
- 1 Our Retro-Computer Projects
- 2 Grant Searle's FPGA MultiComputer Project(s)
- 3 Z80
- 4 Our Retro-Computer Video Series
- 5 S120 Bus Computer
- 6 Ohio Scientific SuperBoard II - My first commercial personal computer
- 7 6502 Computer Projects
- 8 6800
- 9 BASIC
- 10 DEC (Digital Equipment Corp) Computers
- 11 External Sites
Our Retro-Computer Projects
RETRO-EP4 FPGA
- Land Boards RETRO-EP4 - FPGA card
- WaveShare CoreEP4CE6 EP4CE6E22C8N FPGA Board
RETRO-EP4CE15 FPGA
- Land Boards RETRO-EP4CE15 - FPGA card
- QMTECH EP4CE15 FPGA Card
EP2C5-DB FPGA
- Land Boards EP2C5-DB FPGA Retro-Computer card
BASE-EP4CE6
- Land Boards BASE-EP4CE6 card is a breakout board that connects via cables to the Land Boards EP2C5-DB card
Purchased FPGA Card
- Purchased EP4 FPGA card
Multicomp
- Multicomp Github repo
- Grant Searle's Multicomp page
- Neal Crook's 6809 Multicomp Github
- Retrobrewing Multicomp
- mc-2g-1024 multi-boot capability
Grant Searle's FPGA MultiComputer Project(s)
Retro-Computer Map EP2 to EP4 card
- Map EP2 to EP4 card
My Build of the Z80 Version
- CP/M on FPGA - by Grant Searle
- Archive.org copy of Grant's site from 2012
- Archive.org copy of Grant's Multicomp from 2012
- Fit results
- Two UART Serial interface
- No Video Display
- External RAM
Retrobrew Computer Builds of the Multicomp Project(s)
- MultiComputerZ80 build - Lots of extras
- Some folks made a MultiComputer PCB, too - Retrobrewing
- Another board
- Yet another board
- Jeelabs Building a MultiComp-based Z80
- Patch WordStar 3.0 to use ANSI screen commands
- Homebrew Z80
- "The Thing": FPGA + STM32
- Z80 BASIC on a Cyclone IV FPGA
Neil Crook Builds of the Multicomp Project - 6809 Version
Neil started from Grant Searle's work and fixed a number of issue with the VHDL code.
- Neil Crook's Wiki Page
- Neil Crook's Multicomp GitHub (with docs)
- Neil did work on the 6809 core that Grant Searle was using
- Changed reset to active-low, consistently asynchronous
- Changed clock to rising-edge
- Clocked the processor on the input (50MHz) clock rather than a divided clock
- Used the HOLD input to control the clock rate.
- Added MMU to control extended RAM
- Neil did some Video Display Unit (VDU) Modifications
- Neil's Memory Mapper
- Neil got SDHC working - the original was SD only
- Neil Crook's 6809 Multicomp FPGA builds - very helpful
- Neil Crook's 6809 Wiki of Multicomp FPGA builds - very helpful
- Starting FORTH - First book of learning FORTH
CP/M Resources on the Net
- Digital Research CP/M Site
- A Short History of CP/M
- BBC BASIC (Z80)
- CP/M Console Command Processor Instructions
- OAK Repository - CP/M Archive - On the Wayback machine
- Intro to Z80 Retrocomputing - Scott Baker's series on the RC2014
- Digital Research Source Code
- CP/M Programming Languages and Tools retroarchive page
- Multicomp FPGA - CP/M Demo Disk
CP/M Notes
- CP/M is not case sensitive
- REN NEWNAME.EXT=OLDNAME.EXT - Rename a file from the old to the new name
- ERA FILE2ERA.EXT - Erase a file
- Asterisk is wildcard
- .COM are command files
- PIP - copy command
- PIP NEWCOPY.EXT=COPYFROM.EXT - Copy from COPYFROM.EXT to NEWCOPY.EXT
- Drive references A:
- Drives go from A-???
- LS is a better direction program
Microsoft BASIC Notes
- SAVE "MYPROG.BAS"
- LOAD "MYPROG.BAS"
- SYSTEM -- Return to CP/M
- NAME "OLDFILE.BAS" AS "NEWFILE.BAS"
- NEW - Delete program
- OUT 132,1 -- Output to I/O port 132
- PRINT MEM - Free memory (6809 Extended BASIC)
Notes
- Grant noted about the SD card interface:
... the SD controller is easy to control - in BASIC POKE the sector number, POKE the write command, POKE 512 bytes to the same location to write a sector, or POKE the sector number, POKE the read command, and PEEK 512 bytes to read a sector.
Z80
- Land Boards Z80 in 3 Chips
- Hackaday Z80 in 3 Chips
- Z80 Protocol Decoder
- Z80 = mc-2g-1024 - Best build
- Z80 Assembly Language books - archive.org
Our Retro-Computer Video Series
EP2 Video Series
EP4 Video Series
S120 Bus Computer
Back in 1977 (before my Ohio Scientific SuperBoard II I had my own homebrew computer. I never took any pictures of it and the hardware is long gone now. These are the pieces of it I remember.
- Ran on Elco? 120 pin edge connector cards
- 6800 Processor board running at 1 MHz
- 2K of Static RAM board
- 2716 EEPROM board (may have had 4 sockets total, don't recall for sure)
- Front panel switches and LEDs to enter the address/data (Step/Insert) and blink lights
I remember getting it to run and I do remember blinking a light back and forth on it. Once I got the SuperBoard II, I stopped working on my own board.
It might be fun to reproduce that board!
Pieces to Reproduce my original S120 Bus Computer
- Michael Holley's SWTPC 6800/6809 documentation collection
- N8VEM RetroComputing Wikipedia page
- Retrobrew Computers
- Kim-1 board - Similar concept
Hardware
- M6800 VHDL code from OpenCores
Software
- AS68 Cross Assembler
- ASM68C Cross Assembler
- Collection of Assembly Language tools for the M6800
- 6800 Basics
- 6800 Assembly Language Programming (pdf) by Lance Leventhal
- 6800 Instruction Set Cheat Sheet
Ohio Scientific SuperBoard II - My first commercial personal computer
- Manufacturer: Ohio Scientific
- Model 600 Rev B Board Manual
- Model: Superboard II ( Model 600 )
- Available: 1978
- Price: US $279 assembled
- CPU: 6502
- RAM: 4K static RAM, 8K max
- CEGMON - Monitor in 4K of EPROM
- Display: composite video, 30 X 30 text
- Built-in keyboard
- Single board design
- I eventually got a RAM expansion card with Floppy Disk Controller
- Ports: composite video, cassette
- Storage: cassette
- Microsoft BASIC
- 2K Monitor ROM (CEGMON)
- Compkit 101 - British clone of the SuperBoard II
Superboard II Documents
- Dave's OSI Repository - Lots of scanned documents up there - large file sizes
- Compukit UK101 Docs on Sourceforge]
- CEGMON – a blast from the past
- Code for the 6502 microprocessor, mostly for the Replica 1 computer
- Nice page on the C1P/Superboard II
- 6502 Instruction Set
CC65 - C Compiler for the 6502 and OSI C1P
- Ohio Scientific-specific information for cc65
- cl65 Users Guide
- CC65 - C Compiler for the 6502
- CC65 Wiki
SuperBoard II Emulator
- OSI Challenger 1P (8Kb) with Debugger - JAVA web based emulator
- OSI Challenger 1P (32Kb) with Disk Support - JAVA web based emulator
- pill_6502: 8-bit 6502 CPU and 6850 ACIA emulation on the STM32 blue pill to run Microsoft BASIC from 1977
BASIC Programs
10 I=1 20 PRINT "HELLO DAVEY" 30 I=I+1 40 IF I < 5 GOTO 20
SuperBoard II/ Retro-Tech Refresh
I was looking around for a way to recreate my OSI Superboard and found Grant Searle's design.
- EP2C5-DB - Our creation of a daughtercard which implements Grant Searle's Multi-Computer
- CompuKit UK101
- Based on Cyclone II EP2C5 Mini Dev Board
- Someone built one of the CompuKit clones as a CPM box
- Compukit 101 video
6502 Computer Projects
- Enhanced 6502 BASIC
- Experience porting Enhanced Basic to a 6502 Computer
- "EhBASIC is about 11 KB"
- Experience porting Enhanced Basic to a 6502 Computer
- 6502.org - the place for retro 6502 projects
- System68
- L-Star: Software-Defined 6502 Computer - Uses a Propeller chip
- Pick-and-mix to create your own custom computer on a low-cost FPGA board
- Daryl's Computer Page
- Daryl has designed multiple single board computers
- 6502 Assembly Language books - archive.org
6800
- My first attempt to build a computer was around an MC6800 CPU so it has a soft spot in my heart
Systems
- MITS Altair 680
- Altair 680b Mainframe
- SWTPC 6800
- SWTP 6800 system
- Sphere 1 computer History
- DREAM 6800 Archive Site
Software
- Muticomp M6800 MIKBUG
- Smithbug, MIKBUG 6800 ROM monitor
- Monitors for the 6800
- A68 6800 cross-assembler
- MC6800 Assembler
- TSC BASIC for SWTPc 6800
BASIC
- BASIC Programming Resources and Chipmunk Basic Archive
- Tiny BASIC
- Itty Bitty Computers & TinyBasic
- TINY BASIC User Manual
DEC (Digital Equipment Corp) Computers
- PDP-8 in VHDL
- A FGPA Implementation of the PDP-8
- PDP-8 Processor Core and System :: Overview
- The Digital Equipment Corporation PDP-8 - Memory Reference Instructions
- PDP-11 in VHDL
- Computer Simulation and History
- Herb's DEC items
External Sites
Grant Searle Terminal Design
- Uses two Arduino'ish processors to implement an entire terminal
- NTSC output
- PS/2 Keyboard input
- Grant Searle's Monitor Keyboard Design
- Older AtMEGA32 version of Monitor Keyboard Design
- My implementation of Grant's small serial terminal design.