Skip to content

leofracca/chip-8-emulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chip-8-emulator

This is a Chip-8-emulator.

I followed this guide in order to make it: Building a CHIP-8 Emulator [C++] - Austin Morlan

The files Platform.cpp, Platform.h and main.cpp are basically a copy and paste from the guide (except for some minor changes that I have done in order to make them work with the rest of the project).

Other resources I found useful:

For the opcodes I used the table from the Wikipedia page as a reference: CHIP-8 - Wikipedia

Installation

See INSTALL.md

Execution

If you are not inside the build folder do:

cd build

To run the executable:

./chip8 <scale> <delay> <ROM>

where:

  • scale represents the scale of the window

  • delay represents the speed of the game

  • ROM represents the file of the game to be loaded

For example, let's suppose that there is a ROM called Pong.ch8 (.ch8 is the extension of the ROMs for the Chip-8) inside the root directory of the project. If we are currently inside the build folder, the command would be:

./chip8 20 1 ../Pong.ch8

If the speed of the game is too high, try to increment the delay variable, for example setting it to 3 or 4.

Download ROMs

You can download Chip-8 ROMs from here.

Images

pong

space_invaders

tetris

About

Emulator for Chip-8

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published