Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/yoshi-roberts/chip8

A CHIP-8 emulator written in C.
https://github.com/yoshi-roberts/chip8

c c99 chip8 emulator raylib

Last synced: about 2 months ago
JSON representation

A CHIP-8 emulator written in C.

Awesome Lists containing this project

README

        

![logo](/assets/logo.png)

![C99](https://img.shields.io/badge/C99-blue?style=for-the-badge&logo=C&logoColor=white)
![Raylib](https://img.shields.io/badge/raylib-green?style=for-the-badge&logo=raylib&logoColor=white)

![Linux Status](https://img.shields.io/github/actions/workflow/status/ezri-roberts/chip8/linux.yml?style=for-the-badge&logo=github&label=linux)
![Windows Status](https://img.shields.io/github/actions/workflow/status/ezri-roberts/chip8/windows.yml?style=for-the-badge&logo=github&label=windows)

# CHIP-8 Emulator

A [CHIP-8](https://en.wikipedia.org/wiki/CHIP-8) emulator written in C.

Graphics done with the [Raylib](https://www.raylib.com/) library.

## Usage

Run the executable and specify a path to a ROM file.

`chip8 [ROM file]`

Some sample ROMs are included.

Try running:

`chip8 roms/MAZE.ch8`

## Building

> Requires Make and a C compiler such as GCC.

Clone the repository.

`git clone https://github.com/ezri-roberts/chip8.git`

The project can be built using make on both Windows and Linux.

To build simply run:

`make all`

To remove built files:

`make clean`

## Examples

**Pong**
![pong](/assets/pong.png)
**Breakout**
![breakout](/assets/breakout.png)
**IBM Logo**
![ibm](/assets/ibm.png)