Systems

CHIP-8 Emulator in AArch64 Assembly

A CHIP-8 emulator whose full fetch-decode-execute cycle is hand-written AArch64 assembly, with a C and SDL2 driver for the display, keypad and timers. A 48-byte test ROM draws "0123" and hides a CLS behind a conditional skip, so a correct framebuffer dump proves the skip logic works.

Stack
AArch64 assembly, C, SDL2
Code
github.com/ADM1SH/console-emulator

Overview

Install

make          # builds ./chip8emu

Needs clang and SDL2 (brew install sdl2: this machine has it via sdl2-compat). The Makefile locates SDL2 with pkg-config first (PKG_CONFIG_PATH is patched to include Homebrew’s path since it isn’t on the default search path), falling back to sdl2-config.

Docs

The full documentation covers how it works, configuration and results.