Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/amdrel/notch
A CHIP-8 interpreter written in Rust.
https://github.com/amdrel/notch
chip8 emulator rust
Last synced: 2 months ago
JSON representation
A CHIP-8 interpreter written in Rust.
- Host: GitHub
- URL: https://github.com/amdrel/notch
- Owner: Amdrel
- License: bsd-2-clause
- Created: 2016-02-08T03:19:01.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-05-22T05:32:50.000Z (over 8 years ago)
- Last Synced: 2024-10-03T12:39:23.688Z (3 months ago)
- Topics: chip8, emulator, rust
- Language: Rust
- Size: 56.6 KB
- Stars: 34
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Notch [![Build Status](https://travis-ci.org/Reshurum/notch.svg?branch=master)](https://travis-ci.org/Reshurum/notch)
Notch is a CHIP-8 virtual machine written in Rust.
## Dependencies
Notch requires Rust and SDL2 development headers. Rust has only been
tested on Linux and Mac OS X, but should work on Windows as it does not use
any platform specific code.### Linux
Installing SDL headers under most linux distributions is fairly simple and
available as a single package.Ubuntu example:
> sudo apt-get install libsdl2-devFedora example:
> sudo dnf install SDL2-develArch Linux example:
> sudo pacman -S sdl2### Mac OS X
Installing under Mac OS X is a little more involved as the headers won't be
installed under the default path. To install with homebrew run the following:
> brew install sdl2Put this in your `.bashrc` or other file depending on your shell.
> export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/lib"### Windows (MinGW)
On Windows, make certain you are using the MinGW version of SDL; the native
version will crash on `sdl2::init`.1. Download mingw development libraries from
http://www.libsdl.org/ (SDL2-devel-2.0.x-mingw.tar.gz).
2. Unpack to a folder of your choosing (You can delete it afterwards).
3. Copy all lib files from
> SDL2-devel-2.0.x-mingw\SDL2-2.0.x\x86_64-w64-mingw32\libinside
> C:\Rust\bin\rustlib\x86_64-pc-windows-gnu\libFor Multirust Users, this folder will be in
> C:\Users\{Your Username}\AppData\Local\.multirust\toolchains\{current toolchain}\lib\rustlib\x86_64-pc-windows-gnu\lib4. Copy SDL2.dll from
> SDL2-devel-2.0.x-mingw\SDL2-2.0.x\x86_64-w64-mingw32\bininto your cargo project, right next to your Cargo.toml.
## Installation
Once SDL is setup, building as simple as invoking cargo:
> cargo buildThe final binary should be under `target/debug/notch`. To use notch, pass it
the path to a rom as the argument.
> target/debug/notch## References
* [Mastering CHIP-8](http://mattmik.com/files/chip8/mastering/chip8.html)
* [Cowgod's CHIP-8 Technical Reference](http://devernay.free.fr/hacks/chip8/C8TECH10.HTM)## License
Notch is licensed under the permissive
[BSD 2 Clause Licesne](https://opensource.org/licenses/BSD-2-Clause).