A CHIP-8 emulator built in Unity. Configured to work with PC, Mac, Linux Standalone and WebGL. Some ROMs come preloaded and on standalone versions you can upload any of you own ROMs.
Playable WebGL link: https://simmer.io/@work4games/chip-8-emulator
Requires keyboard and mouse. Press "esc" or "backspace" to exit a game and be brought back to the title screen.
Chip 8 keypad to keyboard controls:
Touch controls can easily be added by implementing an IUserInput interface.
Using Unity's TestRunner, unit tests were created to test every opcode.
I use SimpleFileBrowser to handle selecting ROM files for standlone version: https://github.com/yasirkula/UnitySimpleFileBrowser
ROMs were taken from here: https://github.com/dmatlack/chip8/tree/master/roms/games