Z80-MBC2: 4ICs homemade Z80 computer
### DESCRIPTION
The Z80-MBC2 is an easy to build Z80 SBC (Single Board Computer with 8MHz Z80, 128kB banked RAM, RTC, Disk on SD, Basic and Forth interpreters, CP/M 2.2 and 3.0, QP/M 2.71, cross Assembler and C toolchains).
It is the "evolution" of the Z80-MBC (https://hackaday.io/project/19000-a-4-4ics-z80-homemade-computer-on-breadboard), with a SD as "disk emulator" and with a 128KB banked RAM for CP/M 3 (but it can run CP/M 2.2 too).
It has an optional on board 16x GPIO expander, and uses common cheap
add-on modules for the SD and the RTC options. It has an "Arduino heart"
using an Atmega32A as EEPROM and "universal" I/O emulator (so a
"legacy" EPROM programmer is not needed).
It is a complete development "ecosystem", and using the iLoad boot mode it is possible cross-compile, load and execute on the target an Assembler or C program (using the TASM assembler or the SDCC compiler, or any other tool that can output a Intel-Hex file) with a single command (like in the Arduino
IDE).
Hackaday wrote an article on the Z80-MBC2: here and also Hackster: here.
### TECHNICAL DETAILS / COMPONENTS
The needed ICs for the "base system" are:
Z80 CPU CMOS (Z84C00) 8Mhz or greater
Atmega32A
TC551001-70 (128kB RAM)
74HC00
If you want the 16x GPIO expansion (GPE option) add a MCP23017 too.
The schematic and the BOM are in the "project page" (see at the bottom of the article).
The MCU Atmega32A is used as universal I/O subsystem, as Eeprom, and as reset and 4/8MHz clock generator for the Z80 CPU.
Inside the Atmega32A it is flashed an Arduino bootloader taken from here, and it is possible to use the Board Manager of the Arduino IDE to "import" it.
Flash the Arduino bootloader at first (with the method you prefer), next you can upload the IOS "sketch" (the I/O Subsystem that interacts with the Z80 bus and "virtualizes" the EEPROM and all the peripherals seen by the Z80 CPU) using Arduino IDE.
You can use the on board ICSP port (J3) to write the bootloader, but remember to disconnect any other connector when using it. Also both SD and RTC modules (if present) must be removed from the board when the ICSP port is in use.
As clock source for the Z80 CPU it is used the 16MHz Atmega32A oscillator, so the "external 16MHZ osc." bootloader variant must be chosen when flashing the bootloader from the Arduino IDE!.
The 74HC00 is used as RS flipflop to stop the Z80 CPU during I/O operation, giving the needed time to the Atmega32A to interact with the Z80 bus, and as part of the MMU.
Note that only the CMOS version of the Z80 CPU can be used here. This because only CMOS version, under given condition that are respected in this schematic, has logical levels compatibles with Atmega32A and 74HC00.
NOTES ABOUT THE COMPONENTS:
You should use a Z80 CMOS speed grade of at least 8MHz for full speed, but setting the clock speed at 4MHz you can use a 4MHz Z80 CMOS version too (or you can try to overclock it at 8MHz...). The 74HC00 can be substituted with a 74HCT00 if you already have one. The RAM chip TC551001-70 can be substituted with any suitable 128kB SRAM).
Please note that the USER led * must * be blue or white just to be sure that V(forward) is >= 2.7V (otherwise the USER key may not work as expected).
The J4 connector (AUX_P) is not currently supported and is not populated by default.
The three solder jumpers (SJ1-3) on the bottom side are not currently supported and must be left opened (as stated in the schematic).
### LEARN / TOPIC / BUILD INSTRUCTIONS
For all the build details (HW and SW) including the schematic and the BOM, see at the the "project page" here: https://hackaday.io/project/159973-z80-mbc2-4ics-homemade-z80-computer.
Z80-MBC2 Users Group on Facebook: https://www.facebook.com/groups/388307645238660/
Z80-MBC2: 4ICs homemade Z80 computer
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(2)
- Likes(56)
- Engineer Dec 08,2024
- Simeon Ivanov Nov 30,2024
- Jorge García Nov 15,2024
- Engineer Oct 23,2024
- Matthew Spence Sep 28,2024
- Engineer Apr 22,2024
- Engineer Mar 26,2024
- Engineer Jan 29,2024
- Engineer Oct 09,2023
- Jos Vermoesen Sep 05,2023
- Semih Burak Yorgancı Sep 04,2023
- Michael Anton Aug 10,2023
- Engineer Jul 28,2023
- Engineer May 10,2023
- Engineer Apr 25,2023
- Hein Pragt Apr 18,2023
- Sebastian Mackowiak Mar 24,2023
- Engineer Mar 24,2023
- alatar Mar 17,2023
- Engineer Mar 16,2023
- Donna LaRocco Mar 09,2023
- Alexandre Ponso Jan 10,2023
- Engineer Jan 05,2023
- Engineer Jan 03,2023
- Carlos Dias Dec 19,2022
- Stoyan Oct 16,2022
- DT-Electronics Sep 28,2022
- Engineer Jun 30,2022
- marek7_ak Apr 22,2022
- Fred Feb 04,2022
- Ed Paradis Jan 23,2022
- Arpad Attila Bakos Jun 10,2021
- ever Dec 18,2020
- Engineer Oct 31,2020
- TechDad Jul 21,2020
- Jeremy Kuhne Mar 23,2020
- euchcat Mar 21,2020
- Engineer Jan 14,2020
- Engineer Jan 06,2020
- Miguel Gocobachi Dec 13,2019
- John Nov 19,2019
- Engineer Oct 23,2019
- Andrii Moroz Oct 21,2019
- Gary Oct 19,2019
- David Maddison Aug 28,2019
- emi Aug 15,2019
- Mark Riley Aug 06,2019
- Luis Arias Mar 27,2019
- Engineer Mar 14,2019
- Engineer Mar 13,2019
- Engineer Mar 11,2019
- Tadeusz Pycio Mar 08,2019
- Jason Tay Feb 09,2019
- Nils-Arne Dahlberg Oct 23,2018
- Benjamín Alejandro Luna Ramírez Oct 19,2018
- Tom Aug 01,2018
- 10 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-
8design
-
9usability
-
9creativity
-
7content
-
10design
-
10usability
-
10creativity
-
10content
-
8design
-
8usability
-
8creativity
-
8content
-
10design
-
10usability
-
10creativity
-
10content
-
10design
-
10usability
-
10creativity
-
10content
-
10design
-
10usability
-
10creativity
-
10content
-
10design
-
10usability
-
10creativity
-
10content
-
10design
-
10usability
-
10creativity
-
10content
-
8design
-
7usability
-
8creativity
-
7content
-
10design
-
10usability
-
10creativity
-
10content
More by Just4Fun
- SPP (Standard Parallel Port) Adapter for the 68k-MBC The Standard Parallel Port (SPP) Adapter board allows to use the GPIO port of the "retro-board" 68k-...
- uTerm2-S: a multi-emulation color RS232 terminal * * HARDWARE OVERVIEW * *The uTerm2-S (micro Term2 stand-alone) is an easy to build multi-emulation ...
- 68k-MBC: a 3 ICs 68008 homebrew computer * * DESCRIPTION * *The 68k-MBC is an easy to build 68008 CPU SBC (Single Board Computer), using only...
- Parallel Printer (SPP) Emulator Shield * * HARDWARE OVERVIEW * *Playing with retro-computers or messing with dated instruments a simple SPP...
- Azz!Duino: A W806 (Winner Micro) MCU on a Arduino Mega shaped board * * OVERVIEW * *The W806 is an interesting low cost MCU made by Winner Micro. There is a page about ...
- uHat add-on board for uTerm2-S It is a little add-on board with a PSRAM (specific for the ESP32) and a microSD socket. I've called ...
- PicOne (PIC18F47Q10) I was searching a DIL MCU for another "project" and found this one that seems interesting. It is che...
- V20-MBC: an easy to build 8088 + 8080 computer DescriptionThe V20-MBC2 is an easy to build V20HL CPU SBC (Single Board Computer). It follows the sa...
- CH552 Dragon * * HARDWARE OVERVIEW * *The CH552 is a little MCU with a 8051 core and a USB interface, and is damn...
- ARMando (STM32F030R8 board) I wanted a board with a "standard" form factor as the common dev boards, but that could be easily in...
- RC-Z8BASIC Never used a Z8 MCU before, but when I found that chip "forgotten" for decades and started to read t...
- uTerm-S: stand-alone RS232 VT100 terminal with VGA/PS2 * * HARDWARE OVERVIEW * *uTerm-S (micro-Term Stand-alone) is a legacy RS232 VT100-like terminal. It ...
- Dual channel RS232 adapter This is a simple board I made to play with my FPGA board "The Thing". This board has two RS-232 chan...
- uCom (a RS232 adapter for the Z80-MBC2) uCom (micro-Com) is a RS232 adapter for the Z80-MBC2 (https://hackaday.io/project/159973). It has a ...
- uTerm (a VT100-like terminal for the Z80-MBC2) uTerm (micro-Term) is a VT100-like terminal for the Z80-MBC2 (https://hackaday.io/project/159973). I...
- "The Thing": FPGA + STM32, Multicomp compatible ### DESCRIPTIONTwo dev boards into one: a STM32 based Arduino ("Maple Mini" compatible) and a Cyclon...
- ESP-01 NanoBoard (ESP8266) ### DESCRIPTIONThe ESP-01 NanoBoard is a little "motherboard" for the well known ESP-01 ...
- Z80-MBC2: 4ICs homemade Z80 computer ### DESCRIPTIONThe Z80-MBC2 is an easy to build Z80 SBC (Single Board Computer with 8MHz Z80, 128kB ...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
109 0 0 -
DIY Laser Power Meter with Arduino
155 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
152 0 2 -
-
A DIY Soldering Station Perfect for Learning (Floppy Soldering Station 3.0)
542 0 2