This is an implementation of a CHIP-8 emulator written in Elm.
A range of ROMS are already included - all of which are in public domain.
Credit to Thomas P. Greene. for providing proper documentation of the Chip-8 specification.
An online demo can be found here: http://dragonwasrobot.github.io/chip-8/
Ensure you have Elm 0.19 installed. I personally recommend using asdf, https://github.com/asdf-vm/asdf, to handle version management of compilers.
With Elm installed, perform the following steps:
- Change the
romsUrlPrefixinsrc/Request.elmto/roms/, - run the command
./build.shto compile the source, and - run the command
python -m SimpleHTTPServerin the root of thedocs/folder to start a server that can serve both thedocs/index.htmlfile and the CHIP-8 roms stored indocs/roms, then - go to
http://localhost:8000in your favorite browser.
The tests are written using elm-test and elm-verify-examples. To run the tests, perform the steps:
- Run the command
npm installto install elm-test and elm-verify-examples, - run the command
npm run doc-teststo generate the documentation tests found in the Elm code, - run the command
npm testto run all tests in thetestsfolder.
