Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nizil/chip8
Yet another Chip8 emulator written in Rust
https://github.com/nizil/chip8
chip8 emulator
Last synced: about 1 month ago
JSON representation
Yet another Chip8 emulator written in Rust
- Host: GitHub
- URL: https://github.com/nizil/chip8
- Owner: NiziL
- License: mit
- Created: 2022-09-15T12:48:38.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-01-24T09:11:14.000Z (almost 2 years ago)
- Last Synced: 2023-11-23T14:35:50.317Z (about 1 year ago)
- Topics: chip8, emulator
- Language: Rust
- Homepage:
- Size: 68.4 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# chip8
Yet another Chip8 emulator written in Rust, powered by [minifb](https://github.com/emoon/rust_minifb) and [rand](https://github.com/rust-random/rand).
Many thanks to Tobias V. Langhoff for [his great blog post](https://tobiasvl.github.io/blog/write-a-chip-8-emulator/), to jellysquid3 for [the inspiration and the fontset](https://github.com/jellysquid3/chip8-rs) and to starrhorne for [the inspiration](https://github.com/starrhorne/chip8-rust).
## Usage
`$ cargo run [path_to_rom]`
press ESC to close the window.
A git submodule refering to [a chip8 roms collection](https://github.com/kripod/chip8-roms) is provided for convenience at `roms/`.
## Keypad
The original chip8 keypad is mapped on 1234QWERASDFZXCV, as usual for chip8 emulator.
**It won't work if your keyboard layout is not a qwerty.**## Misc
The opcodes 8XY6, 8XYE, FX55 and FX65 slightly differs depending on the implementations.
This emulator stick to the CHIP-48 version.
More information on [wikipedia](https://en.wikipedia.org/wiki/CHIP-8#Opcode_table).