CHIP-8 emulators

From Emulation General Wiki
Jump to navigation Jump to search
CHIP-8
PONG CHIP8.png
CHIP-8 implemention of Pong
Developer Joseph Weisbecker
Release date 1977 or 1978
Emulated
Note: The terms 'emulator', 'interpreter' and 'simulator' are used interchangeably by developers of CHIP-8 interpreters.

CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker. Designed to be easy to program for and to use less resources than programming languages like BASIC. [1]

Adoption

For more information on computers with CHIP-8 support, see List of computers.
There have been multiple communities that have used CHIP-8.

In the late 1970s to 1980s microcomputer kit communities are where CHIP-8 was first popular, on systems such as the DREAM 6800, COSMAC VIP, HUG1802/ETI-660, Oscom Nano, Telmac 1800, Telmac 2000, and V-ELF

This is due to systems like the COSMAC VIP endorsing and including CHIP-8 programs with the machine.[2] In these communities CHIP-8 programs and extensions were being shared with newsletters, like 'DREAMER' and 'VIPER magazine'

Later, in the 1990s CHIP-8 began to be popular on graphing calculators. This community started when a CHIP-8 interpreter called CHIP-48, the origin the 'CHIP-48' extension was released on the HP-48 in 1990. In 1991 the 'SUPER-CHIP' interpreter was created, with the 'SUPER-CHIP' (A.K.A S-CHIP or SCHIP) extension being a derivative of CHIP-48.[3]

There have been other communities that have created and ported interpreters, devices such as consoles. With interpreters still being made for consoles and computers, as well as many other old and new devices. In the 2010s the Octojam competition started with the creation of XO-CHIP, which was created in 2014[4]. Octojam ran from 2014-2023, [5] had dozens of CHIP-8, S-CHIP, and XO-CHIP programs created for it.

Accuracy is tested with the CHIP-8, to test CHIP-8, S-CHIP and XO-CHIP.

Contents

Interpreters

Computers

Name Platform(s) Latest version Libretro Core Extension(s) Accuracy License Active Recommended
Cadmium       git CHIP-8
S-CHIP
XO-CHIP
Others
Cycle MIT (Permissive)
C-Octo       git CHIP-8
S-CHIP
XO-CHIP
High MIT (Permissive)
CubeChip-SDL       git CHIP-8
S-CHIP
XO-CHIP
Others
High MPL 2.0 (Copyleft)
JAXE     [N 1] git
libretro core
CHIP-8
S-CHIP
XO-CHIP
High MIT (Permissive)
MegaJIT-8       git CHIP-8 High MIT (Permissive)
Dorito       git CHIP-8
S-CHIP
XO-CHIP
High ?
ZX-Chip8   git CHIP-8
CHIP-8X
S-CHIP
Others
Cycle ?
chip8swemu-sdl2     git CHIP-8
S-CHIP
Mid MIT (Permissive)
DSP       git CHIP-8
S-CHIP
Mid Non-commercial
Fish 'N' Chips   2.1.5
2.1.5 source code
CHIP-8
CHIP-8X
S-CHIP
High ?
Pin8   git CHIP-8 Mid Non-commercial
InfoChip8   0.1J
git (fork)
CHIP-8 Low-Mid
Mid
Apache 2.0 (Permissive) ~
shmip8     git CHIP-8 Low-Mid MIT (Permissive) ~
Vision-8       1.0 CHIP-8 Mid Non-commercial ~
SVision-8       ? CHIP-8
S-CHIP
Mid Non-commercial ~
CHIP-8 Interpreter   git CHIP-8 Mid ? ~
C8   git CHIP-8 Low ?
Chip8   2.2.0 CHIP-8
S-CHIP
Low Proprietary
DOS Chip-8 / VChip-8   1.1 CHIP-8
S-CHIP*
Low-Mid ?
OmniChip-8     git CHIP-8 Low BSD-2-Clause (Permissive)
CowChip     0.2 CHIP-8 Low-Mid Proprietary
Chip8-DOS   git CHIP-8 Low GPLv3 (Copyleft)
CHIP-8 Emulator   git CHIP-8 Low-Mid GPLv2 (Copyleft)
CHIP-8 ZealOS git CHIP-8 Low Unlicense (Public domain)
Emu OS x86 CPUs git CHIP-8 TBD MIT (Permissive) !

Mobile/ARM

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Chip8   0.7.1
git
CHIP-8 High GPLv3 (Copyleft)
ChipChip   1.8.0 CHIP-8
S-CHIP
MegaChip
Mid Proprietary
C-Octo   git CHIP-8
S-CHIP
XO-CHIP
High MIT (Permissive)
iPhone-Chip-8-Emulator   git CHIP-8
S-CHIP
TBD 3.0 (Non-commercial) ~
WinRT-CHIP8   git CHIP-8 TBD MIT (Permissive) !
PalmChip8   1.0 CHIP-8
S-CHIP
TBD Proprietary !
emuchip8me J2ME git CHIP-8
S-CHIP
TBD ? !
DALE-8   git CHIP-8 TBD Unlicense (Public domain) !
Pico-CHIP8   git CHIP-8 TBD GPLv3 (Copyleft) !
MeltChip BlackBerry PlayBook git CHIP-8 TBD zlib License (Permissive) !

Browser

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Octo   Website
git
CHIP-8
S-CHIP
XO-CHIP
High MIT (Permissive)
Cadmium   Website
git
CHIP-8
S-CHIP
XO-CHIP
Others
Cycle MIT (Permissive)
Silicon8   Website
git
CHIP-8
S-CHIP
XO-CHIP
High GPLv3 (Copyleft)
Chip-8   Website
git
CHIP-8 High MIT (Permissive)
Chip8.js   Website
git
CHIP-8 Mid* MIT (Permissive) ~
Flip8 Redux   0.9 (Newgrounds)
SourceForge
0.9 (Website)*
CHIP-8
S-CHIP
Mid* MIT (Permissive)

Other computers

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Computer /m68k, PPC
Vision-8   1.0 CHIP-8 Mid Non-commercial
Chip-8 for Suns SunOS ? CHIP-8 TBD ? !
Crazy-8   1.0.4 CHIP-8
S-CHIP
TBD ? !
MacVision-8   1.0 CHIP-8 Mid* Non-commercial !
ChipEm   0.4 Beta CHIP-8 TBD ? !
Chip8   ? CHIP-8 TBD Non-commercial !
Home computers
CHIP-8 emulator Acorn Electron git CHIP-8
S-CHIP
High Proprietary
Chip-8 Atari 8-bit git CHIP-8
S-CHIP
TBD Unlicense (Public domain !
Chip09 Tandy CoCo 2
Dragon 32/64
git CHIP-8 TBD ? !
Vision-8     MSX 1.0 CHIP-8 High-Mid* Non-commercial !
SVision-8   MSX ? CHIP-8
S-CHIP
High-Mid* Non-commercial !
beeb-chip8   git CHIP-8 High ? ~
CHIP-OTTO  
ZX Spectrum Next
? CHIP-8 TBD Proprietary !
ZX Chip8   git CHIP-8 TBD GPLv2 (Copyleft) !
C64 Chip-8   git CHIP-8 TBD MIT (Permissive) !
OmniChip-8   git CHIP-8 TBD BSD-2-Clause (Permissive) !
Chip-8 Emulator   ? CHIP-8 TBD Proprietary !
MoeCHIP-8 for C64   git CHIP-8 TBD ? !
Vic-20 Chip-8 Emulator   1.11 CHIP-8 TBD Proprietary !
CHIP-8 Simulator BBC/Master  
BBC Master
? CHIP-8 TBD Proprietary !
Chip-8   26-Jan-98 CHIP-8 TBD ? !
Portable computers/Pocket computers
SCHIP   1.0 CHIP-8
S-CHIP
TBD Proprietary !
chip8 Sharp PC-1350
Sharp PC-1360
Sharp PC-2500
git CHIP-8 TBD GPLv3 (Copyleft) !
CHIP-850 PC-G850 ? CHIP-8 TBD BSD-2-Clause (Permissive) !
LXV8 HP 95LX
HP 100LX
HP 200LX
? CHIP-8 Mid* Non-commercial !
CHIP8-100 TRS-80 Model 100 git CHIP-8 TBD ? !
IC35 Chip8 emulator Siemans IC35 0.1 CHIP-8 TBD TBD !

Consoles

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Consoles
Chip8 Xbox One   ? CHIP-8 Mid GPLv2 (Copyleft)
CHIP8 Emulator   2.2
git
CHIP-8
S-CHIP
Mid ?
Chippy   1.0 CHIP-8
S-CHIP
TBD ?
Chip 8 Emulator   1.0a CHIP-8 TBD Proprietary
Chip8-n64   git CHIP-8 Mid ?
PSCHIP8   git CHIP-8 Mid ?
Super Chip8x   git
ROM
CHIP-8 Mid ?
CHIP8  
 
v1 CHIP-8 Mid ?
Chippi+ Intellivision ? CHIP-8 High Proprietary
CHIP8 TO SMD   2.0 CHIP-8
S-CHIP
Low Proprietary ~
Chip8-NX   git CHIP-8 Mid ? ~
Chip8x   v5 CHIP-8
S-CHIP
Low-Mid Proprietary ~
Chip8-3DO   git CHIP-8 Low-Mid MIT (Permissive) ~
Chip8 Emulator   POC CHIP-8 Low ? ~
chip-64   git CHIP-8 TBD MIT (Permissive)
CHIP-8 GENESIS   git CHIP-8 TBD ?
NES CHIP-8   git
ROM
CHIP-8 Mid zlib License (Permissive) *
Sega Genesis CHIP-8   git CHIP-8 TBD MIT (Permissive) *
CHIP-F8   git CHIP-8 Mid ? *
Chip-8 XNA   git CHIP-8 TBD AGPLv3 (Copyleft) !
Whack-a-Mole   0.900 CHIP-8 TBD ? !
CrabEmu   0.2.0 CHIP-8 TBD GPLv2 (Copyleft) !
SMS Chip-8 interpreter   git
0.21
CHIP-8 TBD MIT (Permissive) !
CHIP-8 emulator   ? CHIP-8 TBD Proprietary !
chipce8   git CHIP-8 TBD MIT (Permissive) !
Handhelds
Chip8me   1.0 CHIP-8
S-CHIP
Mid Proprietary
CEightY   git
PND
CHIP-8
S-CHIP
Mid ?
GB-CHIP8   git
0.6
CHIP-8
S-CHIP
Mid GPLv2 (Copyleft)
Vision-8 for Gameboy   1.0 CHIP-8 Mid Non-commercial
Chip-3DS   1.0
git
CHIP-8 Mid ? ~
XOVITA   git CHIP-8 High GPLv3 (Copyleft) !
MicroCHIP   1.0
git
CHIP-8
S-CHIP
Mid* ? ~
PSP-Chip8   1.0 CHIP-8 Low Proprietary ~
Chip-8 Emulator   1.0 Beta CHIP-8 Low ? ~
VITA-8   git CHIP-8 Low* ?
DreamChip   V4 CHIP-8 Low Proprietary
GB-8   git CHIP-8 High* MIT (Permissive) *
damaged chip8   git CHIP-8 High* ? *
Cobalt   git CHIP-8 High* Apache 2.0 (Permissive) *
DrChip 8   09/20/02 CHIP-8 N/A Proprietary *
Chip8Adv   git CHIP-8 TBD GPLv3 (Copyleft) !
OmniChip-8   git CHIP-8 TBD MIT (Permissive) !
Dingux-chip8   ? CHIP-8 TBD ? !
gpchip   ? CHIP-8 TBD ? !
Chips1   git CHIP-8
S-CHIP
XO-CHIP
TBD MIT (Permissive) !
Chip8Pd   git CHIP-8 Mid ? !
C8   0.2 CHIP-8
S-CHIP
TBD ? !
EFCS   0.1 CHIP-8 TBD ? !
Chip8   ? CHIP-8
S-CHIP
TBD ? !
Chip-N N-Gage 0.1 CHIP-8 TBD ? !
CHIP/8 P/ECE 20040504 CHIP-8
S-CHIP
TBD ? !
Chip-8-Pokitto Pokitto git CHIP-8 TBD ? !
CHIP-8 mini   git CHIP-8 TBD MIT (Permissive) !

Other devices

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Calculators
SUPER-CHIP HP48SX 1.1 S-CHIP Cycle Non-commercial
CHIP-48 HP48GX
HP48SX
GX
SX
CHIP-48 Cycle Non-commercial
Chip8Emu   git CHIP-8 Mid GPLv3 (Copyleft)
Schip8fx Casio AFX
Casio Fx-9860
1.11.0 CHIP-8
S-CHIP
Mid ?
C8SALT TI-84 series git CHIP-8
S-CHIP
Low-Mid MIT (Permissive)
Chip-84   git CHIP-8
S-CHIP
TBD ? !
Chip84CE   git CHIP-8 TBD MIT (Permissive) !
Chip8-TI68k TI-68k git CHIP-8
S-CHIP
XO-CHIP*
High* GPLv3 (Copyleft) !
Chip83 TI-83 0.1 CHIP-8 TBD ? !
Chip8/SChip8 Emulation Library TI-92
TI-92+
0.9 Beta CHIP-8
S-CHIP
TBD ? !
CP300 Chip8 Casio ClassPad 300 1.03 CHIP-8
S-CHIP
TBD ? !
Vinegar TI-83
TI-83+
1.1 CHIP-8
S-CHIP
TBD ? !
uChip8 TI-85 0.1 CHIP-8
S-CHIP
TBD ? !
CHIP8 SwissMicros DM42 ? CHIP-8 TBD ? !
CHIP8 SwissMicros DM41X ? CHIP-8 TBD ? !
HP Prime Chip8 Emulator HP Prime 1.6 CHIP-8 TBD ? !
CHIP-8 N0110 Upilson
git
CHIP-8
S-CHIP
TBD ? !
Microcontrollers
8boy   git CHIP-8
S-CHIP
TBD GPLv3 (Copyleft) !
ESPboy CHIP8 ESPboy git CHIP-8
S-CHIP
XO-CHIP
TBD ? !
ESP32TinyChip8 ESP32 git CHIP-8 TBD WTFPL 2.0 (Public domain) !
chip8-esp8266 ESP8266 git CHIP-8 TBD ? !
Tjipp8 PIC16F17xx git CHIP-8
S-CHIP
TBD ? !
Chip-8 STM32 STM32 git CHIP-8
CHIP-48
S-CHIP
TBD AGPLv3 (Copyleft) !
chip8-stm32 STM32 git CHIP-8 TBD MIT (Permissive) !
chip8stm32 STM32 git CHIP-8
S-CHIP
TBD MIT (Permissive) !
TIVA8 TM4C123 git CHIP-8 TBD ? !
ByteBoy MSP430 git CHIP-8 TBD ? !
Firmware
CHIP-8 UEFI   git CHIP-8 TBD GPLv2 (Copyleft) !
GPCHIP Miyoo 0.0.1 CHIP-8 Low ?
PluginChip8   ? CHIP-8
S-CHIP
Mid* Non-commercial
Fantasy computers/consoles
MegaZeux CHIP-8 Emulator MegaZeux 1.0 CHIP-8 Mid Proprietary
CHIP-8 Emulator   1.5 CHIP-8 TBD Proprietary
CHIP-80   Update 4 CHIP-8 TBD Proprietary
CHIP8 Emulator LowRes NX ? CHIP-8 TBD ? !
SCHIP Interpreter LowRes NX Play
Dev
S-CHIP TBD ? !
Chip-8 emulator Vircon32 ? CHIP-8 TBD BSD-3-Clause (Permissive) !
chip8uxn Uxn git CHIP-8 TBD ISC (Permissive) !
minimicro-chip8 MiniMicro git CHIP-8 TBD MIT (Permissive) !
Uze8 Uzebox git CHIP-8
S-CHIP
TBD ? !
FPGA
ICED Potato ICE40UP5K git CHIP-8
S-CHIP
XO-CHIP
TBD MIT (Permissive) !
CHIP-8 console on FPGA TinyFPGA BX git CHIP-8 TBD MIT (Permissive) !
FpChip8 Altera DE1 git CHIP-8 TBD GPLv3 (Copyleft) !
FPGA Chip-8 Emulator Zedboard FPGA git CHIP-8 TBD ? !
Clash CHIP-8 Nexys A7-50T git CHIP-8 TBD ? !
FPGA SuperChip Digilent Nexys 3
MiST
git CHIP-8
S-CHIP
TBD GPLv3 (Copyleft) !
CHIP-8 for FPGA Arty A7-100T git CHIP-8 TBD Unlicense (Public domain) !
Other
thumby-silicon8 thumby git CHIP-8
S-CHIP
XO-CHIP
High GPLv3 (Copyleft)
chip8swemu Game & Watch: Super Mario Bros git CHIP-8
S-CHIP
Mid BSD-3-Clause (Permissive)
fz-schip Flipper Zero git S-CHIP TBD MIT (Permissive) ?
flipper-chip Flipper Zero git CHIP-8 TBD GPLv3 (Copyleft)
Chip-8-WatchOS WatchOS git CHIP-8 TBD MIT (Permissive) !

Other platforms

Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Text editor
chip-8.nvim Neovim git CHIP-8
S-CHIP
XO-CHIP
TBD MIT (Permissive) !
chip8.el Emacs git CHIP-8
S-CHIP
TBD GPLv3 (Copyleft) ? !
Game Engine/Mod
CHIP8-GM GameMaker git CHIP-8
S-CHIP
High-Mid MIT (Permissive)
Blit-8 Minecraft 1.0 CHIP-8 High MIT (Permissive) ~
Godot CHIP-8 Emulator Godot (GDScript) git
git (fork)
CHIP-8 Low
Low
MIT (Permissive)
CHIP-8 MC Minecraft git CHIP-8 Low-Mid MIT (Permissive)
chip8emu-agk AppGameKit Classic git CHIP-8
S-CHIP
TBD MIT (Permissive) !
chip8 Garry's Mod ? CHIP-8 TBD ? ! !
E2-CHIP-8-interpreter Garry's Mod git CHIP-8 TBD ? !
Chip8Unity Unity git CHIP-8 TBD MIT (Permissive) !
Chip8Interpreter4Unity Unity git CHIP-8 TBD Public domain !
LOVE-8 LÖVE git CHIP-8 TBD MIT (Permissive) !
VChip8 Counter-Strike: Global Offensive git CHIP-8 TBD MIT (Permissive) !
Other
chipception XO-CHIP git
Itch.io
CHIP-8 High GPLv3 (Copyleft)
chip8.deck Decker ?
git
CHIP-8 Mid MIT (Permissive) !
CHIP-8 Interpreter Desmos ? CHIP-8 TBD ? !
Chip-84 Rainmeter Edition Rainmeter git CHIP-8
S-CHIP
TBD Non-commercial !
chip8 MRE 1 and 2 CHIP-8 Low ? !
Name Programming Language Latest version Extension(s) Accuracy License Active Recommended
CHIP-36   git CHIP-8
S-CHIP
XO-CHIP
High ?
SnxChip8   ? CHIP-8 Mid GPLv2 (Copyleft)
SuperCHIP Emulator   git CHIP-8
S-CHIP
Mid GPLv3 (Copyleft)
DALE-8A AWK git CHIP-8 High-Mid Unlicense (Public domain)
awk-chip8 gawk git CHIP-8
S-CHIP
Mid ?
fc8 Fortran git CHIP-8 High GPLv3 (Copyleft)
AuChip Processing git CHIP-8
S-CHIP
XO-CHIP
High ?
00SChip8 PureBasic 2016
git
git (fork)
CHIP-8
S-CHIP
High-Mid
High
MIT (Permissive)
Project Cherry FreeBASIC git
git (fork)
CHIP-8
S-CHIP
Low-Mid
Mid
Non-commercial
Odin Chip-8 Emulator Odin git CHIP-8 Mid ?
Chip8 Visual Basic .NET git CHIP-8 Mid MIT (Permissive)
chip8 SpecBAS git CHIP-8 High Public domain
chip8 BlitzMax git CHIP-8
S-CHIP
Mid ?
VB Chip-8 Visual Basic ? CHIP-8
S-CHIP
Mid ? ~
Chip8 SmallBasic SmallBasic git CHIP-8 Low* ?
WAVE Multi-Emulator Scratch 1.1.2
git
CHIP-8
S-CHIP
XO-CHIP
Others
High CC BY-SA 2.0
chip-8-vba Visual Basic for Applications git
git (fork)
CHIP-8 Very Low
Mid
WTFPL 2.0 (Public domain)
VChip 8 Visual Basic git CHIP-8
S-CHIP
Very Low* ?
Chip8VB Visual Basic .NET git CHIP-8 Low ?
Chip8 Interpreter PureBasic ? CHIP-8 TBD ? !
PHP Chip-8 Emulator PHP git CHIP-8 TBD AGPLv3 (Copyleft) !
cl-chip8 Common Lisp git CHIP-8 TBD MIT (Permissive) !

Descriptions

PC/Multi-system

Interpreters that support PC (x86), includes alternative systems the interpreter supports.

Cadmium (PC, Web)
By far the most comprehensive interpreter for CHIP-8 and its extensions, with profiles and options for specific extensions and implementations, full list here. Cadmium does however have a hard to navigate GUI for a new users.
C-Octo (PC, Raspberry Pi, PocketCHIP)
Simple GUI to enable compatibility with CHIP-8, S-CHIP and XO-CHIP.
CubeChip-SDL (PC)
Drag and drop to load ROMs.
JAXE (PC, Libretro)
Good selections of options for emulation, Defaults to S-CHIP mod.
DSP (PC)
Hard to navigate GUI.
Fish 'N' Chips (Windows)
Simple GUI with, easy to navigate.
Pin8 (Haiku)
Can use either in-app buttons or keyboard keys for input.
InfoChip8 (Windows)
Rainbow color palette, odd key-mapping. Nothing else notable, command line/Terminal. The fork uses the standard keymapping.
shmip8 (PC)
Needs ROM to be specified in command line/terminal.
Vision-8 (PC, Coleco, Amiga, MSX)
Blurry resolution scaling (Windows).
SVision-8 (PC, Coleco, Amiga, MSX)
Adds S-CHIP support to Vision-8
CHIP-8 Interpreter (DOS)
Nothing notable, command line/Terminal.
C8 (DOS)
Nothing notable, command line/Terminal.
Chip8 (DOS)
Odd key-mapping. Nothing else notable, command line/Terminal.
DOS Chip-8 / VChip-8 (DOS)
Nothing notable, command line/Terminal.
OmniChip-8 (PC, Commodore 64, Game Boy)
Nothing notable, command line/Terminal (PC). Needs recompilation for custom ROMs, using z88dk (Game Boy), cc65 (Commodore 64)
CowChip (Windows)
Sensitive to illegal function calls and crashes due to them.
Chip8-DOS (DOS)
Nothing notable, command line/Terminal.
CHIP-8 Emulator (KolibriOS)
Nothing notable, command line/Terminal.
CHIP-8 (ZealOS)
Simple ROM selection, using the Escape key or double-clicking when the ROM is highlighted to run.
Mobile / ARM
Chip8 (Android)
Touchscreen buttons for keys.
ChipChip (Android)
Touchscreen buttons for keys.

Web

Octo
IDE and interpreter, multiple extension support, compatibility profile for specific extensions (customizable).
Silicon8
allows selecting supported extensions (original, S-CHIP and XO-CHIP) and emulation speed.
Chip-8
currently only supports the original CHIP-8, load custom ROMs with the load button
Chip8.js
Can't load custom CHIP-8 binaries/ROMs, new instance has to be made to add games. Good GUI inside a browser.
Flip8 Redux
Can't load custom CHIP-8 binaries/ROMs.

Computers (PPC, m64k)

Chip09 (Tandy CoCo 2, Dragon 32/64)
Needs recompilation for custom ROMs, using [http:://www.lwtools.ca/ LWTOOLS].
CHIP-OTTO (ZX Spectrum, ZX Spectrum Next)
Includes games, no ROM selection interface (press J to go to next game). Can load games from a different tape.
MoeCHIP-8 for C64 (Commodore 64)
Needs recompilation for custom ROMs, using KickAssembler.
Vic-20 Chip-8 Emulator (VIC-20)
Separate floppy disk for games, instructions in manual for custom ROMs.
Chippy (Wii)
Very simple interface. Loads ROMs from CHIP8 folder in your storage device. Unless you use an ancient HBC, you might receive a invalid elf error. The elf-dol_converter should workaround this.
Chip8-n64 (Nintendo 64)
Needs recompilation for custom ROMs, using Libdragon.
PsChip8 (PlayStation)
Needs recompilation for custom ROMs, using PSYQ SDK and GNU Make
Super Chip8x (Super Nintendo)
Can remap buttons on a per ROM bases. Needs recompilation for custom ROMs, using asar.
Chippi+ (Intellivision)
Comes bundled with CHIP-8 ROMs, aswell as a python program to convert them to ECS tapes. The interpreter is written in IntyBASIC.
Chip8x (Xbox)
Good interface. Can load ROMs from disk, HDD or any other storage device
Chip8-3DO (3DO)
Needs recompilation for custom ROMs, using 3DODev.
chip-64 (Nintendo 64)
Doesn't work in tested emulators. Needs recompilation for custom ROMs, using bass.
NES CHIP-8 (Nintendo Entertainment System)
Needs recompilation for custom ROMs, using cc65.
Sega Genesis CHIP-8 (Genesis / Mega Drive)
Needs recompilation for custom ROMs, using SGDK
CHIP-F8 (Channel F)
Needs recompilation for custom ROMs, using dasm.
chipce8 (PC Engine / Turbo Grafx 16)
Needs recompilation for custom ROMs, using PCEAS.

Handheld console

Chip8me (Nintendo DS)
Simple, easy to use GUI, loads ROMs from SD card.
GB-Chip8 (Game Boy)
Uses a included DOS program (Use DOSBox or Similar software to run this.), to save the ROMs to a Game Boy ROM file, with up to 11 ROMs being able to be saved onto it, with key customization available in the menu.
Vision-8 for Gameboy (Game Boy)
Uses a included DOS program (Use DOSBox or Similar software to run this.), to save the ROMs to a battery save file, with up to 7 ROMs being able to be saved onto it, with key customization for each CHIP-8 ROM. To exit current the ROM and go back to menu press A, B, Start and Select
GB-8 (Game Boy)
Basic ROM selection interface, to exit current the ROM and go back to menu press A, B, Start and Select at the same time. Needs recompilation for custom ROMs, using RGBDS v0.5.0.
damaged chip8 (Game Boy)
Uses SELECT to switch ROMs. Needs recompilation for custom ROMs, using RGBDS v0.3.10.
Cobalt (Game Boy)
No ROM selection, have to edit /src/rom.s and re-compile. Needs hardware.inc to compile, Needs recompilation for custom ROMs, using RGBDS.
DrChip 8 (Game Boy Advance)
Pressing L and R triggers to exit to menu, can't insert custom ROMs.
CHIP-8 mini (Pokémon mini)
Needs recompilation for custom ROMs, using PMAS.
C8SALT (TI-83+, TI-83+ SE, TI-84+, TI-84+ SE, TI-84+ C SE, TI-84+ CE)
The interpreter is written in TI-BASIC.

Firmware

CHIP-8 UEFI (UEFI)
Needs recompilation for custom ROMs, using EDK II.
PluginChip8 (Rockbox)
Due to systems having less buttons than the original CHIP-8 key mapping there is a custom system for changing the key mapping.

Fantasy consoles/computers

CHIP-8 Emulator (PICO-8)
Can't load custom CHIP-8 binaries/ROMs.
CHIP-80 (TIC-80)
Can't load custom CHIP-8 binaries/ROMs.
Chip-8 emulator (Vircon32)
Custom ROMs need to use this ROM conversion tool.
flipper-chip (Flipper Zero)
does not support any controls/input. [6]

Game Engine

CHIP8-GM (GameMaker)
F1 to show prompts (buttons for actions) and key mappings
MegaZeux CHIP-8 Emulator (MegaZeux)
Loads games in the same root folder, case-insensitive.
Blit-8 (Minecraft)
Requires the Computer Craft mod, saved in the world folder in a subfolder of the computer folder.
Godot CHIP-8 Emulator (Godot)
Needs recompilation for custom ROMs, using Godot 3.0 or a compatible version for custom ROMs.
chip8emu-agk (AppGameKit Classic)
The interpreter is written in AppGameKit 2 BASIC
Odin Chip-8 Emulator (Odin)
Nothing notable, command line/Terminal.
Chip8 (Visual Basic .NET)
The interpreter is a example program for vbPixelGameEngine, a game-engine framework.
chip8 (SpecBAS)
Basic GUI-based ROM selection. The interpreter is a example program written in SpecBAS, a Sinclair BASIC deriviated language.
chip8 (BlitzMax)
Can Loads games via drag-and-drop, exits when illegal opcodes are called.
chip-8-vba (Visual Basic for Applications)
Slow executation in some ROMs, stops execution when a invalid call is made. Only runs in Microsoft Excel.

Extensions

For detailed information on CHIP-8 extensions see: CHIP-8 extensions and compatibility

The original CHIP-8 is more supported than any extension, the most supported extensions are: S-CHIP and XO-CHIP.

Extensions to CHIP-8 since the 1970s, with many with over-lapping features, such as the expansions to the resolution, I/O and other improvements/additions. CHIP-8, and its extensions are based on implementing opcodes in interpreters.[7]

When extensions change the behavior of an opcode it makes the specific opcode when used incompatible with other extensions, most derivative extensions try to maintain backward compatibility with 'parent' extension. If commonly used or many opcodes' behavior is change it will large incompatibilities with extensions.


A summarized list of the CHIP-8 extensions below:

Extensions created for HP-48:

  • CHIP-48
  • SUPER-CHIP

Extensions created for other systems:

  • Mega-Chip
  • XO-CHIP

Extensions created for the COSMAC VIP:

Visual: Two-page display for CHIP-8, CHIP-10, Hi-res CHIP-8, CHIP-8E, CHIP-8X, Two-page display for CHIP-8X, Hi-res CHIP-8X

I/O: CHIP-8I, CHIP-8II, CHIP-8III, HI-RES CHIP-8 with I/O, CHIP-8Y

Other: CHIP-8E, CHIP-8M

See also

External links

References