This is an old revision of the document!
Emulators
An emulator is a software that enables one computer (called the host) to behave like another computer or hardware (called the guest). An emulator typically enables the host to run software or use peripheral devices designed for the guest computer or hardware. Emulation refers to the ability of a computer program in an electronic device to emulate (or imitate) another computer or hardware.
A ROM, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board.
A BIOS (Basic Input/Output System) is firmware used to perform hardware initialization during the booting process (power-on startup), and to provide runtime services for operating systems and programs.
An image is an archive file that contains everything that would be written to an optical disc, sector by sector, including the optical disc file system.
Goal
The goal in Hyperbola is distribute fully free emulators to encourage our users to develop, port and distribute free software (eg. images with fully free distros or games, ROMs and firmware) for those guest computers and hardware provided by those emulators. However Hyperbola is blacklisting emulators which concludes that is only useful to develop and run nonfree software.
Information on emulators
There are 3 conditions when an emulator is considered nonfree:
- Free column says No
- Free dev tools for firmware column says No or N/A while Requires firmware column says Yes.
- Free dev tools for games/OS column says No or N/A.
The Free column below does not account for firmware and games/OS; it means the core executable.
N/A means no available.
To clarify it, if there is other text there than Yes or No, green means Yes, red means No, while yellow is equivalent to technically yes or there isn't enough information.
List of Native Emulators
| Name | Free | Emulates | Requires firmware | Free dev tools for firmware | Free firmware | Free dev tools for games/OS | Free games/OS |
|---|---|---|---|---|---|---|---|
| Uzem | Yes | Uzebox (AVR ATmega644) | No | GCC/GNU Binutils (avr-unknown-elf) | Uzebox | GCC/GNU Binutils (avr-unknown-elf) | Yes |
| bsnes | Yes | [sfc system] Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, DSP-2, DSP-3, DSP-4, OBC-1, S-DD1, S-RTC, SA1, ST010, Super FX GSU-1 and Super FX GSU-2) |
No | N/A | N/A | WLA_DX | Technically |
| [sfc system] Nintendo Satellaview (Ricoh 5A22) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| [sfc system] Bandai Sufami Turbo (Ricoh 5A22) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| [sgb system] Nintendo Super Game Boy (Sharp LR35902) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| higan | Yes | [ws system] Bandai WonderSwan and Bandai WonderSwan Color (NEC V30 MZ) |
No | N/A | N/A | NASM | Technically |
| [msx system] MSX and MSX2 (Zilog Z80A) |
Yes | WLA_DX | C-BIOS | WLA_DX | Technically | ||
| [pce system] NEC TurboGrafx-16 and NEC PC Engine (Hudson Soft HuC6280) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [pce system] NEC PC Engine SuperGrafx (Hudson Soft HuC6280A) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [fc system] Nintendo Entertainment System (NES) and Nintendo Family Computer (FC) (Ricoh 2A03) |
No | N/A | N/A | cc65, DASM and WLA_DX |
Yes (example: Thwaite) |
||
| [fc system] Nintendo Family Computer Disk System (FCDS) (Ricoh 2A03) |
Yes | cc65, DASM and WLA_DX |
Technically | cc65, DASM and WLA_DX |
Technically | ||
| [gb system] Nintendo Game Boy (GB), Nintendo Game Boy Color (GBC) and Nintendo Game Boy Player (Sharp LR35902) |
No | N/A | N/A | WLA_DX | Technically | ||
| [gba system] Nintendo Game Boy Advance (GBA) and Nintendo Game Boy Player (ARM7TDMI) |
Yes | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically | ||
| [sg system] Sega Game Gear (Zilog Z80) |
No | N/A | N/A | WLA_DX | Technically | ||
| [ms system] Sega Master System (SMS) and Sega Mark III (Zilog Z80A) |
No | N/A | N/A | WLA_DX | Technically | ||
| [ms system] Sega SG-1000 and Sega SG-3000 (Zilog Z80) |
No | N/A | N/A | WLA_DX | Technically | ||
| [md system] Sega Mega Drive and Sega Genesis (Motorola 68000) |
No | N/A | N/A | GCC/GNU Binutils (m68k-unknown-elf) and WLA_DX |
Technically | ||
| [ngp system] SNK Neo Geo Pocket and SNK Neo Geo Pocket Color (Toshiba TLCS900H) |
No | N/A | N/A | tlcs900archc | Technically | ||
| [sfc system] Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, DSP-2, DSP-3, DSP-4, OBC-1, S-DD1, S-RTC, SA1, ST010, Super FX GSU-1 and Super FX GSU-2) |
No | N/A | N/A | WLA_DX | Technically | ||
| [sfc system] Nintendo Satellaview (Ricoh 5A22) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| [sfc system] Bandai Sufami Turbo (Ricoh 5A22) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| [sgb system] Nintendo Super Game Boy (Sharp LR35902) |
Yes | WLA_DX | Technically | WLA_DX | Technically | ||
| Mednafen | Yes | [apple2 module] Apple ][ and Apple ][+ (MOS Technology 6502) |
Yes | cc65, DASM and WLA_DX |
Technically | cc65, DASM and WLA_DX |
Technically |
| [lynx module] Atari Lynx (WDC 65SC02) |
Yes | cc65, DASM and WLA_DX |
Technically | cc65, DASM and WLA_DX |
Technically | ||
| [wswan module] Bandai WonderSwan and Bandai WonderSwan Color (NEC V30 MZ) |
No | N/A | N/A | NASM | Technically | ||
| [pce module] NEC TurboGrafx-16 and NEC PC Engine (Hudson Soft HuC6280) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [pce_fast module] NEC TurboGrafx-16 and NEC PC Engine (Hudson Soft HuC6280) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [pce module] NEC TurboGrafx-CD and NEC CD-ROM² (Hudson Soft HuC6280) |
Yes | cc65 and WLA_DX |
Technically | cc65 and WLA_DX |
Technically | ||
| [pce_fast module] NEC TurboGrafx-CD and NEC CD-ROM² (Hudson Soft HuC6280) |
Yes | cc65 and WLA_DX |
Technically | cc65 and WLA_DX |
Technically | ||
| [pce module] NEC PC Engine SuperGrafx (Hudson Soft HuC6280A) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [pce_fast module] NEC PC Engine SuperGrafx (Hudson Soft HuC6280A) |
No | N/A | N/A | cc65 and WLA_DX |
Technically | ||
| [pcfx module] NEC PC-FX (NEC V810) |
Yes | GCC/GNU Binutils (v850-unknown-elf) and gccVB (GCC v2.95 + v810 patch) |
Technically | GCC/GNU Binutils (v850-unknown-elf) and gccVB (GCC v2.95 + v810 patch) |
Technically | ||
| [nes module] Nintendo Entertainment System (NES) and Nintendo Family Computer (FC) (Ricoh 2A03) |
No | N/A | N/A | cc65, DASM and WLA_DX |
Yes (example: Thwaite) |
||
| [nes module] Nintendo Family Computer Disk System (FCDS) (Ricoh 2A03) |
Yes | cc65, DASM and WLA_DX |
Technically | cc65, DASM and WLA_DX |
Technically | ||
| [gb module] Nintendo Game Boy (GB) and Nintendo Game Boy Color (GBC) (Sharp LR35902) |
No | N/A | N/A | WLA_DX | Technically | ||
| [gba module] Nintendo Game Boy Advance (GBA) (ARM7TDMI) |
Optional | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically | ||
| [vb module] Nintendo Virtual Boy (NEC V810) |
No | N/A | N/A | GCC/GNU Binutils (v850-unknown-elf) and gccVB (GCC v2.95 + v810 patch) |
Technically | ||
| [gg module] Sega Game Gear (Zilog Z80) |
No | N/A | N/A | WLA_DX | Technically | ||
| [sms module] Sega Master System (SMS) and Sega Mark III (Zilog Z80A) |
No | N/A | N/A | WLA_DX | Technically | ||
| [sms module] Sega SG-1000 (Zilog Z80) |
No | N/A | N/A | WLA_DX | Technically | ||
| [md module] Sega Mega Drive and Sega Genesis (Motorola 68000) |
No | N/A | N/A | GCC/GNU Binutils (m68k-unknown-elf) and WLA_DX |
Technically | ||
| [ss module] Sega Saturn (Hitachi SH-2) |
Yes | GCC/GNU Binutils (sh-unknown-elf) | Technically | GCC/GNU Binutils (sh-unknown-elf) | Technically | ||
| [ngp module] SNK Neo Geo Pocket and SNK Neo Geo Pocket Color (Toshiba TLCS900H) |
No | N/A | N/A | tlcs900archc | Technically | ||
| [psx module] Sony PlayStation (PS) (MIPS R3000) |
Yes | GCC/GNU Binutils (mips-unknown-elf) and Clang/LLVM/LLD (mips-unknown-elf) |
Technically | GCC/GNU Binutils (mips-unknown-elf) and Clang/LLVM/LLD (mips-unknown-elf) |
Technically | ||
| [snes_faust module] Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, SA1, and Super FX) |
No | N/A | N/A | WLA_DX | Technically | ||
| [snes module] Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, DSP-2, DSP-3, DSP-4, OBC-1, S-DD1, S-RTC, SA1, SPC7110, ST010, Super FX GSU-1 and Super FX GSU-2) |
No | N/A | N/A | WLA_DX | Technically | ||
| ZSNES | Yes | Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, DSP-2, DSP-3, DSP-4, OBC-1, S-DD1, S-RTC, SA1, ST010, Super FX GSU-1 and Super FX GSU-2) |
No | N/A | N/A | WLA_DX | Technically |
| Boycott Advance/iDeaS | No | Nintendo Game Boy Advance (GBA) (ARM7TDMI) | Optional | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically | GCC/GNU Binutils (arm-unknown-eabi), Clang/LLVM/LLD (arm-unknown-eabi) and devkitPro (devkitARM) |
Technically |
| Snes9x | No | Super Nintendo Entertainment System (SNES) and Super Famicom (SFC) (Ricoh 5A22 + enhancement chips: CX4, DSP-1, DSP-2, DSP-3, DSP-4, OBC-1, S-DD1, S-RTC, SA1, SPC7110, ST010, Super FX GSU-1 and Super FX GSU-2) |
No | N/A | N/A | WLA_DX | Technically |