Skip to content

A CHIP8 emulator that mostly supports the XO-CHIP extension set

License

Notifications You must be signed in to change notification settings

haruInDisguise/emu_chip8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHIP8 Emulator

This is a simple CHIP8 interpreter/emulator that focuses on the CHIP-XO extension-set, used by the Octo assembler/interpreter.

It's my first "larger" Project in C, and therefore will certainly leave some things to be desired. Feedback is always welcome!

Features and TODO

  • Support for 4bit bitmaps (for a total of 16 different colors), extending upon Octo (However, the standart does mention this addition)

  • Keyboard input

  • Extended memory (64kb)

  • Scrolling (also supports indivdual bitmaps)

  • Basic commandline options (i.e. speed, custom font, colorscheme...)

  • Audio

  • HP48 Flag registers (optcode prints a warning)

  • Add a custom assembler with support for 4bit bitmaps (veeery TODO)

How to build, run and customize

What is required:

  • An accessible SDL2 installation
  • Roms can be found... online or here and here
  • This code should work just fine on Windows, however it has only been tested on an Arch Linux installation.

You can set a log level by exporting/setting the LOG_LEVEL ENV. Possible values are: all, debug, info, warn, error, none. Defaults to all.

The interpreter prints each executed instruction and relevant register values to the terminal (using the debug log level). A slow terminal might hinder program execution.

References and Resources

About

A CHIP8 emulator that mostly supports the XO-CHIP extension set

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published