Difference between revisions of "CHIP-8 emulators"
Jump to navigation
Jump to search
(Add more emulators and platforms) |
|||
Line 1: | Line 1: | ||
{{WIP}} | {{WIP}} | ||
− | '''CHIP-8''' is an interpreted programming language, developed by Joseph Weisbecker. | + | '''CHIP-8''' is an interpreted programming language, developed by Joseph Weisbecker.<br> |
+ | Most interpreters and emulators are one of the [[Main_Page#Emulators_on_consoles.2C_phones_.26_other_hardware_.28....29|Homebrew emulators]] for their system, Devices with official/marketed with CHIP-8 support include: the [https://mjbauer.biz/DREAM6800.htm DREAM 6800], [[wikipedia:COSMAC VIP|COSMAC VIP]], [[wikipedia:Telmac 1800|Telmac 1800]] and ETI-660. | ||
− | CHIP-8 | + | Extensions to CHIP-8 have existed since the 1970s, With some extensions conflicting with each-other<ref>https://chip-8.github.io/extensions/</ref><ref>https://github.com/trapexit/chip-8_documentation</ref> most extensions have limited support outside of the interpreter they were made for, with the notable exception S-CHIP (also known as SCHIP and Super-Chip). |
− | |||
− | + | CHIP-8 extensions include: CHIP-8C, CHIP-8E, CHIP-8X, CHIP-8I, CHIP-10, HiRes CHIP-8, CHIP-48, XO-CHIP, S-CHIP<br> | |
− | == | + | |
+ | '''To test [[Emulation accuracy|accuracy]] to the original CHIP-8 use the: [https://github.com/Timendus/chip8-test-suite CHIP-8 test suite]''' | ||
+ | ==Interpreters and emulators== | ||
{| class="wikitable" style="text-align:center;" | {| class="wikitable" style="text-align:center;" | ||
! scope="col"|Name | ! scope="col"|Name | ||
Line 18: | Line 20: | ||
|- | |- | ||
!colspan="10"|PC / x86 | !colspan="10"|PC / x86 | ||
+ | |- | ||
+ | |Cadmium | ||
+ | |align=left|{{Icon|Windows|Lin|macOS}} | ||
+ | |[https://github.com/gulrak/cadmium 1.1.8] | ||
+ | |{{✗}} | ||
+ | |High | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
|- | |- | ||
|chip8swemu | |chip8swemu | ||
Line 92: | Line 103: | ||
|{{✗}} | |{{✗}} | ||
|{{~}} | |{{~}} | ||
+ | |- | ||
+ | !colspan="10"|Web browsers | ||
+ | |- | ||
+ | |[https://johnearnest.github.io/Octo/ Octo] | ||
+ | |align=left|{{Icon|Web}} | ||
+ | |[https://johnearnest.github.io/Octo/ Website]<br>[https://github.com/JohnEarnest/Octo git] | ||
+ | |{{✗}} | ||
+ | |High | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |- | ||
+ | |Cadmium | ||
+ | |align=left|{{Icon|Web}} | ||
+ | |[https://games.gulrak.net/cadmium Website]<br>[https://github.com/gulrak/cadmium git] | ||
+ | |{{✗}} | ||
+ | |High | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |- | ||
+ | |Silicon8 | ||
+ | |align=left|{{Icon|Web}} | ||
+ | |[https://timendus.github.io/silicon8/ Website]<br>[https://github.com/Timendus/silicon8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{✓}} | ||
+ | |- | ||
+ | |Chip8.js | ||
+ | |align=left|{{Icon|Web}} | ||
+ | |[https://taniarascia.github.io/chip8/ Website]<br>[https://github.com/taniarascia/chip8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{✓}} | ||
+ | |- | ||
+ | |Flip8 | ||
+ | |align=left|{{Icon|Web}} | ||
+ | |[https://web.archive.org/web/20100127171830/http://newsdee.com/flip8/ Website] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
|- | |- | ||
!colspan="10"|Consoles | !colspan="10"|Consoles | ||
Line 338: | Line 396: | ||
|align=left|{{Icon|Arduino}} | |align=left|{{Icon|Arduino}} | ||
|[https://github.com/jblebrun/8boy git] | |[https://github.com/jblebrun/8boy git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |ESPboy CHIP8 | ||
+ | |ESPboy | ||
+ | |[https://github.com/ESPboy-edu/ESPboy_CHIP8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |ESP32TinyChip8 | ||
+ | |ESP32 | ||
+ | |[https://github.com/rpsubc8/ESP32TinyChip8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |Chip-8 STM32 | ||
+ | |STM32 | ||
+ | |[https://github.com/FedericoBruzzone/CHIP-8-STM32 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✓}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |chip8-stm32 | ||
+ | |STM32 | ||
|{{✗}} | |{{✗}} | ||
|? | |? | ||
Line 353: | Line 446: | ||
|{{?}} | |{{?}} | ||
|- | |- | ||
− | !colspan="10"|Firmware | + | !colspan="10"|Firmware |
+ | |- | ||
+ | |CHIP-8 UEFI | ||
+ | |[https://github.com/Openwide-Ingenierie/CHIP-8-UEFI git] | ||
+ | |align=left|{{Icon|UEFI}} | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
|- | |- | ||
|GPCHIP | |GPCHIP | ||
Line 390: | Line 492: | ||
|? | |? | ||
|{{?}} | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |CHIP-OTTO | ||
+ | |ZX Spectrum<br>ZX Spectrum Next<br>Cambridge Z88 | ||
+ | |[https://www.komkon.org/~dekogel/vision8.html 1.0] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |Chip8 | ||
+ | |align=left|{{Icon|AmigaOS}} | ||
+ | |[https://aminet.net/package/dev/lang/Chip8 ?] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |C64 Chip-8 | ||
+ | |align=left|{{Icon|C64}} | ||
+ | |[https://github.com/kschuetz/c64-chip8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |vic20 chip-8 | ||
+ | |VIC-20 | ||
+ | |[https://huffelduff.itch.io/vic20-chip-8 1.11] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✗}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |CHIP-8 Simulator BBC/Master | ||
+ | |BBC Micro<br>BBC Master | ||
+ | |[https://stardot.org.uk/forums/viewtopic.php?t=23306 ?] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |Chip-8 | ||
+ | |align=left|{{Icon|RiscOS}} | ||
+ | |[https://www.dnd.utwente.nl/topix/software/index.html#utils 26-Jan-98] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{?}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | !colspan="10"|Other | ||
+ | |- | ||
+ | |chip-8.nvim | ||
+ | |NeoVim | ||
+ | |[https://github.com/rktjmp/chip-8.nvim git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
+ | |{{✗}} | ||
+ | |{{?}} | ||
+ | |- | ||
+ | |chip8 | ||
+ | |Sharp PC-1350<br>PC-1360<br>PC-2500 | ||
+ | |[https://github.com/puehred/chip8 git] | ||
+ | |{{✗}} | ||
+ | |? | ||
+ | |{{✓}} | ||
|{{✗}} | |{{✗}} | ||
|{{?}} | |{{?}} |
Revision as of 03:45, 12 April 2024
CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker.
Most interpreters and emulators are one of the Homebrew emulators for their system, Devices with official/marketed with CHIP-8 support include: the DREAM 6800, COSMAC VIP, Telmac 1800 and ETI-660.
Extensions to CHIP-8 have existed since the 1970s, With some extensions conflicting with each-other[1][2] most extensions have limited support outside of the interpreter they were made for, with the notable exception S-CHIP (also known as SCHIP and Super-Chip).
CHIP-8 extensions include: CHIP-8C, CHIP-8E, CHIP-8X, CHIP-8I, CHIP-10, HiRes CHIP-8, CHIP-48, XO-CHIP, S-CHIP
To test accuracy to the original CHIP-8 use the: CHIP-8 test suite
Interpreters and emulators
Name | Platform(s) | Latest Version | Libretro Core | Accuracy | FLOSS | Active | Recommended | ||
---|---|---|---|---|---|---|---|---|---|
PC / x86 | |||||||||
Cadmium | 1.1.8 | ✗ | High | ✓ | ✓ | ✓ | |||
chip8swemu | git | ✗ | Mid | ✓ | ✓ | ✓ | |||
DSP | git | ✗ | ? | ✓ | ✓ | ? | |||
JAXE | [N 1] | git libretro core |
✓ | ? | ✓ | ✓ | ? | ||
Vision-8 | 1.0 | ✗ | ? | ? | ✗ | ? | |||
CHIP-8 | ZealOS | git | ✗ | ? | ✓ | ✗ | ? | ||
Mobile / ARM | |||||||||
ChipChip | 1.8.0 | ✗ | Mid | ✗ | ✓ | ✓ | |||
Chip8 | ? | ✗ | Low | ✗ | ✗ | ~ | |||
iPhone-Chip-8-Emulator | git | ✗ | ? | ✗ | ✗ | ~ | |||
Web browsers | |||||||||
Octo | Website git |
✗ | High | ✓ | ✓ | ✓ | |||
Cadmium | Website git |
✗ | High | ✓ | ✓ | ✓ | |||
Silicon8 | Website git |
✗ | ? | ✓ | ✗ | ✓ | |||
Chip8.js | Website git |
✗ | ? | ✓ | ✗ | ✓ | |||
Flip8 | Website | ✗ | ? | ? | ✗ | ? | |||
Consoles | |||||||||
CHIP Emulator | 1 | ✗ | Mid | ? | ✗ | ✓ | |||
CHIP8 Emulator | 2.2 | ✗ | Mid | ✓ | ✗ | ✓ | |||
Chippy | pre-v2 | ✗ | Mid | ? | ✗ | ✓ | |||
Chip8-n64 | git | ✗ | Mid | ✓ | ✗ | ✓ | |||
PsChip8 | git | ✗ | Mid | ✓ | ✗ | ✓ | |||
Super-Chip8x | git | ✗ | Mid | ✓ | ✓ | ✓ | |||
Chip8 To SMD | 2.0 | ✗ | Mid | ✗ | ✗ | ✓ | |||
NES-CHIP-8 | NES | git | ✗ | ? | ✓ | ✗ | ? | ||
Chip8-NX | git | ✗ | Mid | ✓ | ✗ | ~ | |||
Chip8 Emulator | POC | ✗ | Low | ? | ✗ | ~ | |||
Chip8-3DO | git | ✗ | Low-Mid | ~ | ✗ | ~ | |||
CHIP-F8 | Channel F | git | ✗ | ? | ~ | ✗ | ✗ | ||
Handhelds | |||||||||
Chip8me | 1.0 | ✗ | ? | ✗ | ✗ | ✓ | |||
DrChip 8 | 09/20/02 | ✗ | ? | ✗ | ✗ | ✓ | |||
Chip-3DS | 1.0 | ✗ | Mid | ? | ✗ | ~ | |||
GB-8 | Game Boy | git | ✗ | Mid | ✓ | ✓ | ✓ | ||
PSPChip8 | 1.0 | ✗ | Low | ✗ | ✗ | ~ | |||
Chip8 Emulator | 1.0 Beta | ✗ | Low | ✗ | ✗ | ✗ | |||
DreamChip | V4 | ✗ | Low | ✗ | ✗ | ✗ | |||
Chip8 | Atari Lynx | ? | ✗ | ? | ? | ✗ | ? | ||
CHIP-8 mini | Pokemon Mini | git | ✗ | ? | ✓ | ✗ | ? | ||
Calculators | |||||||||
Chip8Emu | 1.2.2 | ✗ | Mid | ✓ | ✗ | ✓ | |||
Schip8fx | Casio AFX Fx-9860 |
1.11.0 | ✗ | Mid | ? | ✗ | ✓ | ||
C8SALT | TI-84 series | git | ✗ | ? | ✓ | ✓ | ✓ | ||
Chip-84 | git | ✗ | ? | ✓ | ✗ | ? | |||
Chip84CE | git | ✗ | ? | ✓ | ✗ | ? | |||
Microcontrollers | |||||||||
8boy | git | ✗ | ? | ✓ | ✗ | ? | |||
ESPboy CHIP8 | ESPboy | git | ✗ | ? | ✓ | ✓ | ? | ||
ESP32TinyChip8 | ESP32 | git | ✗ | ? | ✓ | ✓ | ? | ||
Chip-8 STM32 | STM32 | git | ✗ | ? | ✓ | ✓ | ? | ||
chip8-stm32 | STM32 | ✗ | ? | ✓ | ✗ | ? | |||
TIVA8 | TM4C123 | git | ✗ | ? | ✓ | ✗ | ? | ||
Firmware | |||||||||
CHIP-8 UEFI | git | ✗ | ? | ✓ | ✗ | ? | |||
GPCHIP | Miyoo | 0.0.1 | ✗ | ? | ✓ | ✗ | ✓ | ||
PluginChip8 | RockBox | ? | ✗ | ? | ✓ | ? | ✓ | ||
Home computers | |||||||||
Chip-8 | Atari 8-bit | git | ✗ | ? | ✓ | ✓ | ? | ||
Vision-8 | ColecoVision Coleco ADAM |
1.0 | ✗ | ? | ? | ✗ | ? | ||
CHIP-OTTO | ZX Spectrum ZX Spectrum Next Cambridge Z88 |
1.0 | ✗ | ? | ? | ✗ | ? | ||
Chip8 | ? | ✗ | ? | ? | ✗ | ? | |||
C64 Chip-8 | git | ✗ | ? | ✓ | ✗ | ? | |||
vic20 chip-8 | VIC-20 | 1.11 | ✗ | ? | ✗ | ✗ | ? | ||
CHIP-8 Simulator BBC/Master | BBC Micro BBC Master |
? | ✗ | ? | ? | ✗ | ? | ||
Chip-8 | 26-Jan-98 | ✗ | ? | ? | ✗ | ? | |||
Other | |||||||||
chip-8.nvim | NeoVim | git | ✗ | ? | ✓ | ✗ | ? | ||
chip8 | Sharp PC-1350 PC-1360 PC-2500 |
git | ✗ | ? | ✓ | ✗ | ? |
References
- Notes