An emulator of the Z80 processor (C library)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

libz80 - Z80 emulation library

© Gabriel Gambetta ( 2000 - 2014

Version 2.1.1

Building and Installing

The Makefile creates, which together with z80.h make up the binary package. make install installs these files in /usr/lib and /usr/include respectively.

Emulation code itself is generated by the codegen directory. mktables.spec includes a specification of the opcodes, using regular expressions to express similar opcodes in a compact way. Binary representation of the opcodes is listed in opcodes.lst. This makes tweaking the 'processor' relatively easy, as it isn't done manually.

Pre-generated files are included - these are opcodes_decl.h, opcodes_table.h and opcodes_impl.c in the codegen directory.

The tests directory includes a simple test framework and a few tests to ensure the current behavior of the processor.


Gabriel Gambetta (

Wayne Conrad ( - MAJOR fixes and emulation improvements.