chip-8

2016
Emulator for CHIP-8 virtual machine

chip-8 was my first step into the world of emulators. After checking out several resources, I found Cowgod’s Technical Reference from 1997 the most straightforward and followed along.1

Animation from the game Pong, where a ball bounces from the walls and the paddles on each side

CHIP-8 is widely recommended to those who wish to start emulator development, due to its simplicity and not being tied to actual hardware. It has 4096 memory locations, 35 opcodes, 16 8-bit data registers, two timers and a 64×32 monochrome display. I can attest that it was a good starting point.

There is just something poetic about representing a machine in code. Hoping to make another emulator one day, perhaps for Game Boy this time.


Footnotes

  1. These days most people seem to recommend Matthew Mikolay’s writeup instead. Cowgod’s is still solid, but there was at least one instruction I couldn’t get to work with it alone.