CHIP-8
A CHIP-8 emulator written in Go.
Written as a learning exercise to get familiar with emulation, opcodes and CPUs.
Building From Source
Pre-requisites
The emulator uses the following packages which have requirements of their own
before we can build with them. Follow the instructions for each:
Clone this repo and build the binary:
$ make
Installation
$ go get -u github.com/danmrichards/chip8/cmd/chip8/...
Usage
Usage of chip8:
-debug
Run the emulator in debug mode
-rom string
Path to the ROM file to load
Controls
The Chip8 has a 16 key hex keyboard. For the purposes of this emulator it has
been implemented like so:
+---+---+---+---+
| 1 | 2 | 3 | 4 |
+---+---+---+---+
| Q | W | E | R |
+---+---+---+---+
| A | S | D | F |
+---+---+---+---+
| Z | X | C | V |
+---+---+---+---+
Note: Which of these keys are actually used will differ from ROM to ROM.
References
As this was a learning exercise I had to seek a lot of help from the interwebs: