A Chip-8 emulator written in Rust
Chippy running a demo from Marco Varesio
Chip-8 is an interpreted programming language developed initially for the COSMAC VIP microcomputer. It has a total of 35 opcodes, which makes it easy to implement an emulator to run CHIP-8 code.
Some documentation about the project is available in the docs/spec.md file; it is rewritten based on an existing 1997 reference manual I found on the internet.
All the emulation is done by software, and is written without the usage of external libraries.
The screen rendering is done via pixels - for the 2D pixel rendering - and tao for the window management and event loop.
As the programming language only provides a single-frequency tone to be played, sound is handled via cpal.