0xNathanW / chip-8

A Chip8 emulator built in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chip-8

Chip-8 is a very basic interpreted programming language written for computers in the 1970's, mainly for writing games.

This is an implementation of a virtual machine for Chip-8 written in Go. It loads and runs programs, and allows users to pause and step through individual opcodes. Users can also set their own colour configs.

Demo

asciicast

Installation

To install, clone the repository with git, and build with go build.

ROMs can be added by adding them to the 'ROMs' folder. Note this folder is required for the program to read from.

Usage

Run the program, with optional flags -fg and -bg for foreground and background colours. A list of available colours are in colours.txt.

./chip8 -fg=green -bg=black

Programs can be paused and unpaused by pressing p. While paused the program can be exited by pressing escape or a new ROM can be loaded into memory by pressing r.

TODO

  • Address performance issues PC vs Mac
  • Instructions on menu screen
  • Step backwards through opcodes
  • Display opcode info on stepthrough

About

A Chip8 emulator built in Go.


Languages

Language:Go 100.0%