Use TurboWarp for better performance: https://turbowarp.org/977135657?fps=60 The earliest computers to run CHIP-8 used a 4x4 keypad as input. This project assigns the keypad keys to the left four columns of the QWERTY keyboard, like so: 1 2 3 4 Q W E R A S D F Z X C V A visualization of the keypad is shown in the bottom right corner, showing the original symbols that would have been displayed on each key. Some programs are designed expecting specific behavior from certain instructions, or expecting faster speeds. To handle these, the emulator provides compatibility settings and IPF control. If a program doesn't seem to work correctly, try adjusting these settings. In particular, try the two presets. Most programs will expect either COSMAC VIP or SUPER-CHIP behavior.
This project includes a list of CHIP-8 programs made by several people, including Scratchers @Kouzeru, @oxiti8, and @Geotale. The full list can be accessed from the programs menu inside the project. I made this with the help of the excellent "Guide to making a CHIP-8 emulator" by Tobias Langhoff This project emulates the CHIP-8 interpreted programming language. CHIP-8 was created in 1977 for the COSMAC VIP and was used to simplify the process of making small programs and games for the computer. The original CHIP-8 had a set of 35 instructions, and extensions to the language added even more (which aren't emulated by this project). The language spread to other computers, and to calculators. In the process, some implementations treated certain instructions differently from others, which unfortunately means not all programs can be run on every CHIP-8 supporting system. Nowadays, CHIP-8 is a recommended starting point for anyone interested in writing emulators. Its relatively small instruction set and low performance requirements make it less challenging to emulate than most other systems, but it's still versatile enough to run a variety of software. I made this CHIP-8 emulator more than two years ago, in November of 2022, and it was mostly finished by the end of the year. Then I stopped working on it and decided to start working on my next emulation project—an NES emulator, also in Scratch. So the project file has just been sitting on my computer untouched for the last couple years. I thought I would finally finish the user interface and share it. Update October 31, 2024 - Added loading screen, lookup tables now only generate once, improved UI initialization. Happy Halloween! March 5, 2024 - Release