By Steven on 1/26/2014 2:58 PM
It’s been a few weeks since my first post regarding my attempt to produce a Z80 emulator and much has changed. What appeared a few weeks ago to be a fairly simple endeavour turned out to be a significantly longer development than I had expected. With this post I will walk you through some of the issues I encountered and how I tackled them, but first the interesting part.

Get the Source As of the time of this post I have made the source of the Emulator available on my Github HERE. This version has a vast majority of the Opcodes added and tested, with an example test program that emulates drawing a diagonal line on the screen of a ZX Spectrum 48k.

Getting the Facts The Zilog Z80 CPU is an extremely well documented core due to its wide use and age, so getting the information I needed to build the emulator was never a challenge. I would give you a large list of links that I found useful, however I’d be wasting your time thanks to this fantastic...
By Steven on 1/12/2014 2:55 PM
So this weekend I had the overwhelming urge to start creating an emulator for the first time in a fair few years.  After a little googling around the internet I stumbled upon the documentation for the Z80 CPU which can be found in the ZX Spectrum 48k (of which i’m a massive fan), and so it became a weekend project.

The Z80 was an 8bit processor created by Zilog sometime in the late 1970’s, finding its way into a large number of embedded circuits and desktops into the late 1980’s. It was built with the following :

6 x 8 bit registers (that could be treated as 3 16 bit registers) one Accumulator one 8 bit flags register A second bank that mirrored the above 3 x 16 bit index registers (one of which is the stack pointer) 8 bit interrupt vector 8 bit refresh counter 16 bit program counter More information on the chip can be found HERE

Hiding away on the internet you can find a number of large PDFs describing in detail...