redstrate.com/content/software/chip8/index.md

26 lines
914 B
Markdown
Raw Normal View History

2022-08-29 10:46:26 -04:00
---
title: "chip8"
2022-09-21 10:49:57 -04:00
date: 2020-01-25
2022-08-29 10:46:26 -04:00
draft: false
2025-04-12 11:03:07 -04:00
source: "https://code.ryne.moe/redstrate/chip8"
2022-08-29 10:46:26 -04:00
license: MIT
2023-06-23 14:42:45 -04:00
projtags:
2023-08-05 11:12:27 -04:00
- CPlusPlus
2022-08-29 10:46:26 -04:00
- Emulation
resources:
- src: img/output.png
name: Screenshot
2022-08-29 10:50:32 -04:00
layout: "project"
aliases:
- /projects/chip8
2023-03-01 14:02:08 -05:00
summary: "Basic Chip-8 emulator."
2022-08-29 10:46:26 -04:00
---
This is my first ever (working) emulator, of the simple CHIP-8 system. I'm pretty proud of this, because apart from the sprite collision logic I was able to implement most of the opcodes just looking at a basic overview of the instruction set.
2022-09-14 11:13:34 -04:00
![Screenshot of breakout](output.webp)
2022-09-14 10:57:42 -04:00
2022-08-29 10:46:26 -04:00
Technically, this implements the SCHIP type of instructions but can still play many of the ROMs you can find online. I also added a cute debugger window and a memory viewer. The emulator also comes with a built-in deflicker for the display.
For funsies, I included a basic parser that can spit out valid CHIP-8 instructions for a C-style language!