TAAFT
Free mode
100% free
Freemium
Free Trial
Deals

Rust-8

rylev / Rust-8

A CHIP-8 emulator/implementation written in Rust

38 2 Language: Rust Updated: 1y ago

README

Rust-8

screenshot

Rust-8 is an implementation of the CHIP-8 virtual machine written in Rust.

What is CHIP-8?

CHIP-8 is a virtual machine (along with a supporting programming language).
Since the CHIP-8 VM does not expose the fact that it's running on a host CPU,
in theory the VM could be translated to physical hardware.

The CHIP-8 VM was used in the late '70s on some computers such as the Telmac
1800
and on some calculators in the
1980's.

CHIP-8 was mainly used as a gaming platform, and today you can play lots of
games like Pong and Breakout on it.

You can find a list of games here.

You can find more information on the CHIP-8 wikipedia page or on the CHIP-8 website.

Running it

You can find lots of game ROMs online. The best source of games I've found is
the CHIP-8 website listed above.

Once you have a game ROM you can run it with:

cargo run -- $GAME

Why a CHIP-8 implementation?

I was inspired by Jake Taylor's live streaming project of building an N64
emulator in Rust
. Having never built
an emulator myself, I searched online for easy ways to get started. The CHIP-8
is many people's first emulator because it's relatively easy and quick to finish.
I got the emulator working in less than a week, for example.

Why Rust?

Rust is awesome. If you start a project where you think you need either C or
C++, reach for Rust next time.

References

A big thank you to all the people who wrote references about the Chip-8 and
posted them online. One reason that the Chip-8 is such a great learning
VM/emulator is because of the awesome references.

0 AIs selected
Clear selection
#
Name
Task