CHIP-8 interpreters

From Emulation General Wiki
(Redirected from CHIP-8 simulators)
Jump to navigation Jump to search
CHIP-8
CHIP-8 implemention of Pong
Developer(s) Joseph Weisbecker
Release
Latest version N/A
Platform(s) Various
Type Programming language
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

[edit | edit source]
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.

Interpreters

[edit | edit source]

Computers

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

Mobile/ARM

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

Browser

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

Other computers

[edit | edit source]
Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Computer /m68k, PPC
Vision-8 AmigaOS 1.0 CHIP-8 Mid Non-commercial
Chip-8 for Suns SunOS ? CHIP-8 TBD ? !
Crazy-8 Classic Mac OS 1.0.4 CHIP-8
S-CHIP
TBD ? !
MacVision-8 Classic Mac OS 1.0 CHIP-8 Mid* Non-commercial !
ChipEm AmigaOS 0.4 Beta CHIP-8 TBD ? !
Chip8 AmigaOS ? 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 equivalent) !
Chip09 Tandy CoCo 2
Dragon 32/64
git CHIP-8 TBD ? !
Vision-8 ColecoVision Coleco ADAM MSX 1.0 CHIP-8 High-Mid* Non-commercial !
SVision-8 Coleco ADAM MSX ? CHIP-8
S-CHIP
High-Mid* Non-commercial !
beeb-chip8 BBC Micro git CHIP-8 High ? ~
CHIP-OTTO ZX Spectrum
ZX Spectrum Next
? CHIP-8 TBD Proprietary !
ZX Chip8 ZX Spectrum git CHIP-8 TBD GPLv2 (Copyleft) !
C64 Chip-8 Commodore 64 git CHIP-8 TBD MIT (Permissive) !
OmniChip-8 Commodore 64 git CHIP-8 TBD BSD-2-Clause (Permissive) !
Chip-8 Emulator Commodore 64 ? CHIP-8 TBD Proprietary !
MoeCHIP-8 for C64 Commodore 64 git CHIP-8 TBD ? !
Vic-20 Chip-8 Emulator VIC-20 1.11 CHIP-8 TBD Proprietary !
CHIP-8 Simulator BBC/Master BBC Micro
BBC Master
? CHIP-8 TBD Proprietary !
Chip-8 RiscOS 26-Jan-98 CHIP-8 TBD ? !
Portable computers/Pocket computers
SCHIP Windows CE 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

[edit | edit source]
Name Platform(s) Latest version Extension(s) Accuracy License Active Recommended
Consoles
Chip8 Xbox One Xbox One ? CHIP-8 Mid GPLv2 (Copyleft)
CHIP8 Emulator Wii U 2.2
git
CHIP-8
S-CHIP
Mid ?
Chippy Wii 1.0 CHIP-8
S-CHIP
TBD ?
Chip 8 Emulator Nintendo GameCube 1.0a CHIP-8 TBD Proprietary
Chip8-n64 Nintendo 64 git CHIP-8 Mid ?
PSCHIP8 PlayStation git CHIP-8 Mid ?
Super Chip8x Super Nintendo git
ROM
CHIP-8 Mid ?
CHIP8 PlayStation 3
PlayStation 2
v1 CHIP-8 Mid ?
Chippi+ Intellivision ? CHIP-8 High Proprietary
CHIP8 TO SMD Genesis 2.0 CHIP-8
S-CHIP
Low Proprietary ~
Chip8-NX Switch git CHIP-8 Mid ? ~
Chip8x Xbox v5 CHIP-8
S-CHIP
Low-Mid Proprietary ~
Chip8-3DO 3DO git CHIP-8 Low-Mid MIT (Permissive) ~
Chip8 Emulator PlayStation 4 POC CHIP-8 Low ? ~
chip-64 Nintendo 64 git CHIP-8 TBD MIT (Permissive)
CHIP-8 GENESIS Genesis git CHIP-8 TBD ?
NES CHIP-8 Nintendo Entertainment System git
ROM
CHIP-8 Mid zlib License (Permissive) *
Sega Genesis CHIP-8 Genesis git CHIP-8 TBD MIT (Permissive) *
CHIP-F8 Channel F git CHIP-8 Mid ? *
Chip-8 XNA Xbox 360 git CHIP-8 TBD AGPLv3 (Copyleft) !
Whack-a-Mole Dreamcast 0.900 CHIP-8 TBD ? !
CrabEmu Dreamcast 0.2.0 CHIP-8 TBD GPLv2 (Copyleft) !
SMS Chip-8 interpreter Master System git
0.21
CHIP-8 TBD MIT (Permissive) !
CHIP-8 emulator Saturn ? CHIP-8 TBD Proprietary !
chipce8 PC Engine git CHIP-8 TBD MIT (Permissive) !
Handhelds
Chip8me Nintendo DS 1.0 CHIP-8
S-CHIP
Mid Proprietary
CEightY Pandora git
PND
CHIP-8
S-CHIP
Mid ?
GB-CHIP8 Game Boy git
0.6
CHIP-8
S-CHIP
Mid GPLv2 (Copyleft)
Vision-8 for Gameboy Game Boy 1.0 CHIP-8 Mid Non-commercial
Chip-3DS Nintendo 3DS 1.0
git
CHIP-8 Mid ? ~
XOVITA PlayStation Vita git CHIP-8 High GPLv3 (Copyleft) !
MicroCHIP PlayStation Vita 1.0
git
CHIP-8
S-CHIP
Mid* ? ~
PSP-Chip8 PlayStation Portable 1.0 CHIP-8 Low Proprietary ~
Chip-8 Emulator PlayStation Portable 1.0 Beta CHIP-8 Low ? ~
VITA-8 PlayStation Vita git CHIP-8 Low* ?
DreamChip PlayStation Portable V4 CHIP-8 Low Proprietary
GB-8 Game Boy git CHIP-8 High* MIT (Permissive) *
damaged chip8 Game Boy git CHIP-8 High* ? *
Cobalt Game Boy git CHIP-8 High* Apache 2.0 (Permissive) *
DrChip 8 Game Boy Advance 09/20/02 CHIP-8 Proprietary *
Chip8Adv Game Boy Advance git CHIP-8 TBD GPLv3 (Copyleft) !
OmniChip-8 Game Boy git CHIP-8 TBD MIT (Permissive) !
Dingux-chip8 Dingoo ? CHIP-8 TBD ? !
gpchip Dingoo ? CHIP-8 TBD ? !
Chips1 WonderSwan git CHIP-8
S-CHIP
XO-CHIP
TBD MIT (Permissive) !
Chip8Pd Playdate git CHIP-8 Mid ? !
C8 GP32 0.2 CHIP-8
S-CHIP
TBD ? !
EFCS GP2X 0.1 CHIP-8 TBD ? !
Chip8 Lynx ? 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 Pokemon Mini git CHIP-8 TBD MIT (Permissive) !

Other devices

[edit | edit source]
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 TI-Nspire 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 TI84+CE git CHIP-8
S-CHIP
TBD ? !
Chip84CE TI84+CE 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 Arduino 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 equivalent) !
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 UEFI git CHIP-8 TBD GPLv2 (Copyleft) !
GPCHIP Miyoo 0.0.1 CHIP-8 Low ?
PluginChip8 RockBox ? CHIP-8
S-CHIP
Mid* Non-commercial
Fantasy computers/consoles
MegaZeux CHIP-8 Emulator MegaZeux 1.0 CHIP-8 Mid Proprietary
CHIP-8 Emulator PICO-8 1.5 CHIP-8 TBD Proprietary
CHIP-80 TIC-80 Update 5 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 equivalent) !
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

[edit | edit source]
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 Java git CHIP-8
S-CHIP
XO-CHIP
High ?
SnxChip8 Java ? CHIP-8 Mid GPLv2 (Copyleft)
SuperCHIP Emulator Java git CHIP-8
S-CHIP
Mid GPLv3 (Copyleft)
DALE-8A AWK git CHIP-8 High-Mid Unlicense (Public domain equivalent)
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 equivalent)
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

[edit | edit source]

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)
Custom ROMs need their extension changed to *.map. From that point they can be imported into the map section via the TIC-80 command prompt. Zero-padding is automatically performed.
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

[edit | edit source]
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

[edit | edit source]
[edit | edit source]

References

[edit | edit source]
Notes
  1. Only available outside of Windows and Linux as a libretro core (e.g., RetroArch).