A Z80-based computer for nostalgic enthusiasts
©2025 - ARMCoder
For starters, this is no more than a hobby project: a Z80-based computer. By no means it aims to be a practical solution to anything, as any modern microcontroller can do much better with lower cost, lower complexity, lower power consumption and much more ease of use. You can eventually make changes on it to perform some practical automation tasks and it WILL work, it's just not recommended nowadays. Get a PIC or Arduino instead.
I began building a 3rd party kit called "Z80 Alpha" from a company called WR Kits here in Brazil. The kit was a box of parts (minus PCB), a set of manuals and a minimalistic monitor software.
This was initially intended to be a quick pastime, but in time, I decided to expand the original kit with new features and write new software. See ALPHAPLUS-README.md for the historic background on that kit.
For now, it's this prototype:
Characteristics:
CPU: Z80A, 4 MHz
ROM BIOS + Monitor: 8 kbytes
ROM BASIC: 8 kbytes
RAM: 16 kbytes (disabled at boot) + 48 kbytes (the lower RAM can be remapped
over the ROMs, yielding the full 64 kbytes ready for use)
VIDEO: Text Mode: 48 rows x 80 columns - Monochrome
Graphics Mode: 320x240 Framebuffer - 16 Color
KEYBOARD: PS/2 compatible
SOUND: Mono, compatible with GI AY3-891x
TIMER Interrupt: Fixed, 300 Hz
SERIAL: USB 19200 BPS, 8N1, RTS Flow control (via FTDI - USB chip)
MICRO SD CARD CONTROLLER: Software still WIP, hardware already tested
POWER: 5V 1A (via USB, the same of the FTDI above)
EXTRA IOS:
LCD Alphanumeric 16x2
8 Pushbuttons
8 Controllable LEDs
As the hardware is reaching a decent level of maturity, I've already designed a PCB for it:
Today (2025-09-14) I've got courageous and ordered a first run of 10 boards, let's see how well the design performs. I will keep you updated!
Through its serial port, it can have software downloaded to its RAM. A serial monitor, 'Sysmon' (that runs on the BIOS ROM), is supplied for this purpose.
Sysmon also has functions to edit and display the RAM contents using the PS/2 keyboard and monitor, or alternatively, through a serial terminal over the Serial port in the case you don't have a PS/2 keyboard or a spare VGA monitor.
BASIC Interpreter: The ROM BASIC is the Microsoft BASIC 4.7b interpreter. There are two ROM images made available: the one that uses the BIOS, so the VGA output and the PS/2 keyboard are functional, and a standalone image that works only over the serial port. For those really nostalgic, there are some nice text-only games written in BASIC at this repository:
http://vintage-basic.net/games.html
Remember that in order to switch ROM programs, the actual ROM chip needs to be replaced (and because of that, a ZIF socket is instrumental to keep the process smooth and safe!).
As the VGA controller is the latest addition to the Kraft80, not much software is available for it (yet). Currently, there's a clock demo (written in C) and I'm writing a Space Invaders clone (this one in pure Assembly). I'm planning to find out whether I can integrate graphics function into that BASIC interpreter!
You will find some other documentation in the project's directories. This part is still WIP, so please be patient and check every few days. New documentation is being added often.