Intel 8080 CPU emulator

A project log for VT100 simulator and 3D printed replica

Simulator for the VT100 hardware. Running inside Gardi's 3D model.

Lars BrinkhoffLars Brinkhoff 06/12/2021 at 16:150 Comments

Emulating the CPU is usually a natural first step.  The VT100 hardware is orchestrated by an Intel 8080A CPU with 8K firmware ROM and 3K RAM in the basic configuration.

The 8080 is a small, simple 8-bit microprocessor, and I was able to whip up a basic working emulator in two days.  However, getting all the tiny details right took more like two weeks.  It turns out the 8080 has some subtle behavior in a few of its instructions, and getting the auxiliary flag exactly right isn't easy.  There's a suite of test called the 8080 Exerciser, but it will only give a pass/fail indication for each block of tests without pointing out the instruction that failed or why.

Luckily there are other 8080 emulators that do pass the tests and I could study them for guidance.  Many thanks to Jeff Parsons and Eric Smith for their well written code!