Skip to content

jhbabon/johnny_eight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Johnny Eight: A Chip-8 emulator

Overview

This project is an experiment to try to learn more about rust and the concept of emulators. I wanted to use Chip-8 because it has a small set of instructions and it's well documented.

What is CHIP-8?

The webpage chip8.com explains it like this:

CHIP-8 is an interpreted programming language, developed by the late Joseph Weisbecker. It was initially used on the COSMAC VIP and Telmac 1800 8-bit microcomputers in the mid-1970s. CHIP-8 programs are run on a CHIP-8 virtual machine. It was made to allow video games to be more easily programmed for said computers.

Requeriments

Installation

Clone the repository and install all the dependencies:

$ git clone git@github.com:jhbabon/johnny_eight.git
$ cd johnny_eight
$ cargo build

You can check that (almost) everything works by running the tests:

$ cargo test

Usage

The binary program accepts the path to a ROM file. You can find many in the chip8.com webpage.

Example

# run directly
$ cargo run --release -- fixtures/chip_8_logo.rom

# or build and run
$ cargo build --release
$ target/release/johnny_eight fixtures/chip_8_logo.rom

Resources

Some useful projects and webpages about Chip-8:

About

Johnny Eight: A Chip-8 emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published