Skip to content

tmpstpdwn/CHIP-ATE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHIP-8 Emulator

A simple, functional CHIP-8 emulator written by me as a learning project. It supports most CHIP-8 programs.


Screenshots

Space Invaders

Space Invaders

Lunar Lander

Lunar Lander

Tic Tac Toe

Tic Tac Toe


Dependencies

This emulator uses raylib for rendering. Make sure it's installed before building the project.


How to Run

  1. Clone the repository and build:

    git clone https://github.com/tmpstpdwn/CHIP-8
    cd CHIP-8
    make
  2. Run the emulator with a ROM:

    ./chip8 path/to/rom.ch8 1000

    Here 1000 denotes 1KHz for the CHIP-8 clock. The clock value is optional and if not given uses a default value.

  3. Keyboard controls:

    CHIP-8 uses a 4×4 hexadecimal keypad:

    1 2 3 C
    4 5 6 D
    7 8 9 E
    A 0 B F
    

    Mapped to your keyboard as:

    1 2 3 4
    Q W E R
    A S D F
    Z X C V
    

ROMs

You can find public domain CHIP-8 ROMs here.


Resources used

License

MIT License — free to use, modify, and distribute.