Best Books for Introduction to Computer Architecture

Best Books for Introduction to Computer Architecture

If you’re interested in the architecture of computers and how CPU’s, RAM etc. are built from logic gates, then here is my selection of some good books to read. Not only do they explain the fundamental hardware needed, they go on to explain assembly language, operating systems etc. But How Do It Know? by J Clark Scott This is a great book that explains how computers are built, from NAND gates up. Each chapter goes through how a particular component…

Read More Read More

Resources for Programming the Z80

Resources for Programming the Z80

Books on Z80 Programming The classic book is Rodney Zaks’ Programming the Z80 from 1979-1981. It is freely available (with the author’s blessing) here. Another Z80 book from the late 70’s is “Z80 Assembly Language Programming” by Lace A. Leventhal. You can download a copy from the internet archive here. A more modern book for Z80 programming is “Jumpstart Z80 Machine Code” from 2016. It has mixed reviews on Amazon and focuses on the Ti-83 calculator but it may be…

Read More Read More

Starting Emulator Development

Starting Emulator Development

Writing an emulator for a CPU or entire system is a great programming project. Some of the old 8-bit CPU’s can be emulated fairly easily and running them at a decent speed isn’t a problem for modern PC’s. In addition to the CPU, code will be needed to emulate any graphics and sound hardware too. Here are some notes on where to start. CHIP-8 Chip 8 is usually the first place to start – its actually an interpreted programming language…

Read More Read More

Zilog Z80 CPU Part Numbers

Zilog Z80 CPU Part Numbers

The Zilog Z80 CPU is still being produced – not bad for a CPU introduced in 1976. When buying a Z80 CPU, it helps to understand the format of the part numbers used. For example, “Z84C0008PEG” The Z80 most commonly used for hobby projects is the “CMOS” version. This CPU starts with the six characters “Z84C00” (the “C” means “CMOS”). The 7th and 8th characters determine the speed in Mhz. The 9th determines the package type (in this case, “P”…

Read More Read More

Z80-based Single-board computer kits

Z80-based Single-board computer kits

Here are some links to some single-board computer kits using the Z80 CPU that I have found. The RC2014 is a SBC kit built with a backplane so that numerous modules are available to expand it. Firstly, the RC2014 Classic II kit (around £76) contains 5 modules (CPU, ROM, RAM, Serial I/O and Clock/Reset) all connected separately to a backplate. The RC2014 Mini kit (around £64) combines all of these modules onto the same board to make things easier to…

Read More Read More

Kits to build Z80 Retro Computers from the 80’s

Kits to build Z80 Retro Computers from the 80’s

There are various kits available to allow you to assemble a computer that’s compatible with various systems from the 80’s. Here are a few that I have found. The Minstrel 2 by Tynemouth Software is a self-assembly Sinclair ZX80 compatible computer kit that comes with its own keyboard. The Minstrel 3 (also by Tynemouth Software is a similar self-assembly kit, but based on the Sinclair ZX81. Another kit from Tynemouth Software is the Minstrel 4th which is a Jupiter Ace…

Read More Read More

Breadboard Z80 Projects

Breadboard Z80 Projects

Here are a few interesting projects that I’ve found to build a basic Z80 computer on a breadboard. Bread80 is a really well explained blog describing the author’s project in creating a Z80 computer. This is the one that I am following along with! L Break into Program also has a nice write-up of a breadboard-based Z80 computer – here is part one. The website has loads more useful information on retro computers and programming, including ZX Spectrum resources. Finally,…

Read More Read More

ZX Spectrum Next Ordered

ZX Spectrum Next Ordered

I’ve just ordered a ZX Spectrum Next (issue 2) on Kickstarter. This is a newly-designed machine that is backwards compatible to the original ZX Spectrum 48, 128, +2 and +3 models. It has updated hardware, with 1Mb RAM, and a Z80 processor able to run in 3.5MHz, 7MHz, 14MHz and 28MHz turbo modes. The hardware logic is built using a Field-programmable gate array (FPGA) which means the CPU, ULA etc. can be re-created within this one chip. Storage is via…

Read More Read More

Write 8-bit code in your Browser

Write 8-bit code in your Browser

8bitworkshop is a fantastic website that lets you write and test code for a wide range of retro 8-bit computer systems within your browser. It has a great IDE with memory browser, disassembly etc. The ZX Spectrum, Commodore 64, MSX, Atari 2600, NES and Sega Master System are among the supported systems. The functionality is amazing, a lot of hard work has obviously gone into this project. The owner of the website has also released a range of books. These…

Read More Read More

Zilog Z80 Pinout

Zilog Z80 Pinout

For reference purposes, here is the pinout for the Zilog Z80 CPU. Yellow A0 to A15 = Address bus Blue D0 to D7 = Data bus Pink CLK = Clock signal Red & Black VCC = +5v GND = Ground Purple RFSH = outputs a signal to allow for memory to be refreshed M1 = Z80 is fetching next instruction from memory RESET = used to reset the Z80 BUSRQ = Bus Request (used by external devices to request control WAIT = makes…

Read More Read More