Skip to content

Latest commit

 

History

History
26 lines (24 loc) · 1.52 KB

README.md

File metadata and controls

26 lines (24 loc) · 1.52 KB

Chip8-VM

Yet another Chip-8 virtual machine implementation. SFML library has been used for graphics and sound.

Screenshots

pong invaders tetris

Dependencies

  • GNU gcc compiler with C++ 17 support
  • SFML
  • CMake 3.11 and above

Installation

$ git clone https://github.com/ang1337/Chip8-VM.git
$ cd Chip8-VM && mkdir build
$ cd build
$ cmake .. && make

Usage

  • By default, the display size is 64x32. The actual window default size is 640x320 (scaled by a factor of 10). If you want to increase the screen size, pass -s option (if you don't pass this option, the size of the window remains 640x320).

  • 'ROMs' directory contains 23 different ROMs that can be executed by the virtual machine. A path to specific ROM is passed through -r option.

  • 'sound' directory contains the beep WAV audio file. A path to it is passed through -a option.

  • Press Escape to exit the game.

     $ ./chip8vm -r ../ROMs/TETRIS -a ../sound/censor-beep-01.wav -s 16
     $ ./chip8vm -r ../ROMs/PONG -a ../sound/censor-beep-01.wav 
    

The first example will launch tetris ROM with a 1024x512 window size. The second example will launch pong ROM with a default 640x320 window size.