chip-8

chip-8 emulator

add breakout.ch8

Arjun Choudhary contact@arjunchoudhary.com

commit: c128212 parent: 368879f
2 files changed, 15 insertions(+), 6 deletions(-)
MREADME.md+15-6
Abreakout.ch8+0-0
M · README.md +15, -6
 1@@ -1,17 +1,26 @@
 2-This is a CHIP-8 Virtual Machine implementation in C, utilizing SDL for graphical output. It supports running validw `.ch8` files, with the resolution scaled to 20x over the original for better usability. 
 3+## Overview
 4 
 5-Timer and sound are not yet implemented, but adding them is straightforward. The original CHIP-8 system produced a simple 1 bit beep sound.
 6+This is a CHIP-8 Virtual Machine implementation in C, uses SDL for the input and window. This was only done as a learning exercise to implement the fundamental opcode fetch -> decode -> execute lifecycle and learn some basic emulation stuff. Do not use this as a reference implementation.
 7 
 8+- Supports running `.ch8` files, with the resolution scaled to 20x from the original.
 9+- Timer and sound are not yet implemented, but adding them is straightforward. The original CHIP-8 system produced a simple 1 bit beep sound.
10+
11+## Local Setup
12+
13+You do need to install SDL on your system. So on something like fedora that would be.
14+
15+```
16+sudo dnf install SDL2-devel -y
17+```
18+
19+The Makefile just links against that. There is a breakout.ch8, it's specifically Breakout by Caremlo Cortez, 1979. More roms can easily be found on the interwebs.
20 
21-### Usage
22 ```
23-git clone git clone git://git.arjunchoudhary.com/chip8_c
24 make
25 ./chip8 /path/to/rom_file.ch8
26 ```
27 
28-### Resources
29-This was only done as a learning exercise to implement the fundamental opcode fetch -> decode -> execute lifecycle. Do not use this as a reference implementation. Resources I used for this project were:-
30+## Resources
31 
32 - https://en.wikipedia.org/wiki/CHIP-8
33 - http://devernay.free.fr/hacks/chip8/C8TECH10.HTM#4.0
A · breakout.ch8 +0, -0