My JAZ80 Homebrew Breadboard Computer Page Compute like it's 1980 again!
This page is a repository for all the schematics, firmware, BOMs and other information for my JAZ80 Homebrew Z80 Computer. There will also be links to the various build videos as the computer comes
together, step by step. The latest upgrade videos are at the top. Scroll to the bottom of the page to see where I started from.
The Upgrading To Level 1 Series...
The JAZ80 Z80 Homebrew Retro Computer Part 6: BASIC + Games!
This is the sixth and last video in the Level 1 series. The
JAZ80 has reached its full Level 1 hardware and software targets. Here I demonstrate the monitor program and BASIC interpreter I have ported over to the JAZ80 Breadboard Retro-Computer.
This simple little computer is now a powerful
computer for retro-gaming and software development. Plus I demonstrate some of the old-school, mid 70s games that can be played on it. I also discuss plans for the upcoming Level 2 version of the computer,
and solicit viewer input on where I should go from here.
My JAZ80 monitor program can be downloaded here in either Intel HEX format for immediate burning into a EPROM or EEPROM, or in
Z80 assembly code for your hacking pleasure.
Here is a link to download Grant Searle's BASIC interpreter. Follow the instructions in the video for burning an EEPROM
with both the monitor and BASIC in it.
Links to the BASIC programs and games demonstrated in this video: SINEWAVE2.BAS, HANGMAN.BAS,
HAMURABI.BAS, SUPER STAR TREK2.BAS. A note on SUPER STAR TREK2.BAS: I had to make a lot of changes to get
the program running without errors. Most of the errors were due to excessive line widths. I am not certain I caught all the errors. The game is quite complex and I haven't experienced every possible
state of play. Let me know if you find any errors I missed.
Upgrading The JAZ80 Z80 Homebrew Retro Computer Part 5: Full Level 1 Hardware Achieved!
This is the fifth video in the upgrade series. Here I complete the process of upgrading the JAZ80 computer from Level 0 to Level 1. In this video I install the Z80 PIO chip and write some code to
set it up and test it. With the installation of the PIO chip, the upgrading to Level 1 is complete. Next I discuss how I will modify the monitor firmware I created for the
Teletek Systemaster, and modified to work on the NABU computer, for use with the JAZ80 breadboard computer
Plus I discuss getting a BASIC interpreter up and running on the JAZ80 computer. The PIO setup and test code is
available here for download either as an Intel Hex file ready to be burned into your own EEPROM, or as Z80 assembly code
for your hacking pleasure.
Reaching full Level 1 doesn't mean I'm done with the JAZ80 Breadboard Computer. I have future plans for a Level 2 with more features and functionality, and just maybe an eventual Level 3. Stay tuned
for future developments.
Upgrading The JAZ80 Z80 Homebrew Retro Computer Part 4: Hello World!
This is the fourth video in the upgrade series. Here I continue the process of upgrading the JAZ80 computer from Level 0 to Level 1. In this video
I reworked the reset circuit and installed the SIO chip so the computer can send and receive serial data. I also wrote some test code to program the SIO and send a "Hello World!" test
message out to a terminal program running on my laptop. Yay! it all works! I did have to make some minor hardware changes (explained in the video) to get it all working reliably. see below for the revised Level 1
schematic and BOM. The SIO test code I wrote is available here for download either as an Intel Hex file ready to be burned into your EEPROM,
or as Z80 assembly code for your hacking pleasure.
Upgrading The JAZ80 Homebrew Z80 Computer Part 3
In this video I continue the process of upgrading the JAZ80 computer to Level 1. I upgraded the I/O decoding to accommodate more ports. Installed a second crystal oscillator to provide a clock for
the serial port which will be installed in a future video. I also installed a Z80 CTC chip divide down the serial clock. Then wrote some test software to ensure that the CTC chip works properly.
I also discussed future additions and changes for upcoming videos. All in all, it was a good session of hardware and software hacking. See below for the Level 1 I/O Map, Memory Map and BOM. Also
the CTC Setup test code is available in either assembly language, or pre-compiled in Intel Hex format.
The Level 1 Port and Memory Map.
The Level 1 BOM.
Upgrading The JAZ80 Homebrew Z80 Computer Part 2
In this video I start the process of upgrading the JAZ80 to Level 1. I remove the 555 timer-based clock and relocate the 4MHZ clock. Then I tackle rewiring the ZIF socket to handle larger EEPROMS.
Later I discuss the firmware programs I have written for the JAZ80 (See Above), and how I burn them into EEPROMS. I also discuss all the resources available to anyone trying to build and program a Z80
retro-computer. I'll also provide links to those resources here. Then I close by explaining what I'd like to do in the next video.
The JAZ80 Level 1 Schematic:
Available in PDF or KiCAD format. Please let me know if you spot an
error or omission in the schematic.
More build videos and test code as I build the JAZ80 up to Level 1 in increments will be coming here soon. An amended BOM for the LEVEL one computer will also appear here soon. Check back for updates.
The JAZ80 Level 0 Computer
Introducing The JAZ80 Homebrew Breadboard Retro-Computer. This is the first video in a series of many. Here I introduce the rough, early breadboard computer that I created as a software development system for another project.
Then I go over the improvements I want to make over the next series of videos to turn it into an awesome Z80 retro-computer. I have big plans for this machine. First I will upgrade it to Level 1, which
will have serial communication, a monitor in ROM and eventually a BASIC interpreter. Level 2 will have shadowed ROM, a CF or SD card drive system and the CP/M 2 operating system. Level 2 will have bank
switched RAM and the CP/M 3 operating system, plus maybe some other bells & whistles. I hope you will follow along as I make upgrades to and write firmware for this awesome little retro-computer.
I will provide schematics, BOMs and example code for each level as I build it up, starting with Level 0, for anyone wishing to play along at home.
The JAZ80 Level 0 Schematic:
Available in PDF or KiCAD format. Please let me know if you spot an
error or omission in the schematic.
The JAZ80 Level 0 Bill Of Materials:
Available in JPG or PDF format. Again, please let me know if you spot
an error or omission in the BOM.
JAZ80 Level 0 Firmware:
There really isn't much firmware for Level 0. Most of the code I wrote was meant to help get the Teletek Systemaster project up and running, and most of that isn't applicable to the JAZ80 due to the different
architectures.
There are a couple of small programs you can play with. One is the scanning LED program demonstrated in the above video. There are two versions of this. One for the 555 clock and one for the 4MHz clock
The other program is a memory test program I wrote to ensure the RAM memory worked properly after I installed it. I have included both the assembly programs and compiled Intel hex files that can be directly
burned into EEPROMs.
LEDscanner.asm LEDscanner.hex - (Best run at slow clock speed.) This is a simple little program that lights up one LED at a time on the diagnostic port and gives the impression of it
scanning left to right, then right to left again, over and over.
FastLEDscanner.asm FastLEDScanner.hex - This version of the LED scanner program runs at the full 4MHz clock speed and introduces more advanced assembly language concepts like time delays, a stack and
calling subroutines.
FastRAMtest.asm FastRAMTest.hex - Best run at high clock speed, unless you have days to waste. This is a simple memory test program that writes values to every location in RAM and reads them back to make
sure they are the same as what was written. It only takes a couple of seconds to run at the full 4 MHz speed, but will take forever at the slow speed of the 555 clock. The program writes a 01H to the diagnostic
port if no errors are found. If an error is found it writes FFH. Either way the program halts the processor at the end of execution and the halt light comes on.