An open API service indexing awesome lists of open source software.

https://github.com/doodlewind/merry8

📺 Chip-8 emulator for web.
https://github.com/doodlewind/merry8

chip-8 emulator

Last synced: over 1 year ago
JSON representation

📺 Chip-8 emulator for web.

Awesome Lists containing this project

README

          

# merry8
Chip-8 emulator for web.

## API
Besides the demo, you can simply `npm install merry8` and run it in your own project!

``` js
import Merry8 from 'merry8'

// Provide chip-8 rom, canvas element and its default width.
const merry8 = new Merry8(rom, {
el: '#app',
width: 500
})

merry8.run()
```

### `merry8.run()`
Start emulator main loop.

### `merry8.press(key: number)`
Emulate a key press, `key` ranges from 0 to 15.

## Development
For a quick start, `npm run demo` and open `localhost:9001`.

To test cpu instructions, simply run `npm test`.

## Changelog
* `0.3.0` - 2017/11/19
* Expose emulator API.
* Support multi emulator instances.
* Rewrite project structure with class syntax.
* Fix test failure.
* Migrate to `babel-preset-env`.
* `0.2.1` - 2017/03/25
* Migrate to rollup.
* `0.2.0` - 2016/12/25
* Migrate view layer to canvas.
* `0.1.0` - 2016/12/25
* Implement interpreter and GUI with basic PONG support.

## License
MIT