Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/djrideout/chippy
CHIP-8 interpreter in Rust
https://github.com/djrideout/chippy
chip-8 chip-8-emulator chip-8-interpreter chip8 chip8-emulator chip8-interpreter emulator interpreter rust rust-lang
Last synced: 7 days ago
JSON representation
CHIP-8 interpreter in Rust
- Host: GitHub
- URL: https://github.com/djrideout/chippy
- Owner: djrideout
- License: mit
- Created: 2024-09-01T12:19:53.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-10-24T01:16:20.000Z (3 months ago)
- Last Synced: 2024-11-19T01:13:47.423Z (2 months ago)
- Topics: chip-8, chip-8-emulator, chip-8-interpreter, chip8, chip8-emulator, chip8-interpreter, emulator, interpreter, rust, rust-lang
- Language: Rust
- Homepage: https://djrideout.github.io/chippy/
- Size: 1.06 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# chippy
CHIP-8 interpreter written in Rust. Targets CHIP-8, SUPER-CHIP (Modern), SUPER-CHIP (Legacy), and XO-CHIP.![Cargo Build & Test](https://github.com/djrideout/chippy/actions/workflows/ci.yml/badge.svg)
# Options
```
// The CHIP-8 ROM to load
-i, --input// Number of instructions to run per frame, defaults are different depending on the target
-c, --clock// The platform to target
-t, --target [default: super-modern] [possible values: chip, super-modern, super-legacy, xo]
```# Build requirements
- [Rust/Cargo](https://www.rust-lang.org/tools/install)
- [Node.js if building for web](https://nodejs.org/en)# Run interpreter (native)
`cargo run -- `# Run interpreter (web)
```
cd web/view
npm install
npm run dev:full
```To rebuild wasm only:
`npm run build:wasm`# Build & run (release, native)
```
cargo build --release
./target/release/chippy.exe
```# Build & run (release, web)
```
cd web/view
npm install
npm run build:full
npm run preview
```# Run test suite
`cargo test`# Debugging in VSCode
There is a VSCode launch config for debugging using LLDB in `.vscode/launch.json`.
To use it, modify the args in `.vscode/launch.json` with the options you want from above
and run the configuration `Debug with CHIP-8 ROM` in the `Run and Debug` sidebar tab.