Skip to content

ares

Technical notes

Multi-system emulator by Near (byuu), successor to higan/bsnes. Focuses on accuracy and preservation. 41 emulators registered at this pin (desktop-ui/emulator/emulators.cpp).

Firmware identification uses SHA256 hashes. Filenames are user-defined: ares scans a configured directory and matches by hash. EmuDeck installs ares as Flatpak (dev.ares.ares), configures biosPath in settings.bml. ref: desktop-ui/settings/firmware.cpp:116-136

Firmware path resolution: settings.paths.firmware (user override) or {userData}/ares/Firmware/ (default). Per-system firmware assigned in Settings > Firmware dialog or via scan-by-hash. ref: desktop-ui/settings/settings.hpp:87-99, desktop-ui/desktop-ui.cpp:68-75

Systems with fully embedded firmware (no user files needed): Game Boy (boot.rom), Game Boy Color (boot.rom), Mega Drive (TMSS), Sega 32X (TMSS + vector + SH2 boot M/S), Nintendo 64 (PIF NTSC/PAL/SM5 + CIC 6101/6102/6105/7101), Super Famicom (IPL + all coprocessor firmware: DSP1-4, CX4, ST010, ST011, ST018, SGB1/2 boot ROMs), WonderSwan (boot.rom), WonderSwan Color (boot.rom), Pocket Challenge V2 (boot.rom), ZX Spectrum (BIOS), ZX Spectrum 128 (BIOS + sub ROM). ref: mia/resource/resource.bml, mia/Firmware/

SFC coprocessor firmware auto-injected if missing from ROM image. ref: mia/medium/super-famicom.cpp:42-62

Neo Geo BIOS: accepts ZIP archive (neogeo.zip) or direct binary. AES looks for "neo-epo.bin" inside ZIP, MVS looks for "sp-45.sp1". Both apply byte-swap after loading. ref: mia/system/neo-geo-aes.cpp:12-30, mia/system/neo-geo-mvs.cpp:12-30

SFC subsystem ROMs (SuFami Turbo, Satellaview, Super Game Boy): loaded as game cartridges via CLI args, not through the firmware system. EmuDeck creates launcher shortcuts that pass these alongside game ROMs. ref: emuDeckares.sh (EmuDeck repo)

Systems with no firmware: Arcade, Atari 2600, Famicom, MyVision, PC Engine, SuperGrafx, SG-1000, SC-3000.

40 files | 32 required, 8 optional | 40 in repo, 0 missing Categories: 36 BIOS, 4 game data

5200.rom required in repo #
Atari 5200 BIOS (NTSC-U four-port)

colecovision.rom required in repo #
ColecoVision BIOS

disksys.rom required in repo #
Famicom Disk System BIOS

gba_bios.bin required in repo #
GBA BIOS

bios.gg optional in repo #
Game Gear BIOS

bios_U.sms optional in repo #
Master System BIOS (US)

bios_J.sms optional in repo japan, south-korea #
Master System BIOS (Japan)

bios_E.sms optional in repo #
Master System BIOS (Europe), same binary as US

  • System: master-system
  • SHA256: 477617917a12a30f9f43844909dc2de6e6a617430f5c9a36306c86414a670d50
  • Validation: sha256
  • Source: desktop-ui/emulator/master-system.cpp:16
  • Collection copy: bios/Other/zesarux/sms.rom
  • Platforms: bizhawk SMS_us_1.3.sms, lakka bios.sms, bios_E.sms, bios_U.sms, recalbox mastersystem/bios_E.sms, mastersystem/bios_U.sms, retroarch bios.sms, bios_E.sms, bios_U.sms, retrobat [BIOS] Sega Master System (USA, Europe) (v1.3).sms, retrodeck bios/bios.sms, retropie bios.sms, bios_E.sms, bios_U.sms, rocknix bios.sms, romm sms/bios.sms, sms/bios_E.sms, sms/bios_U.sms
  • Picked for PAL, set by a hash list that also holds Korean and Australian releases or by the Boot/Prefer setting (mia/medium/master-system.cpp:54-275, desktop-ui/emulator/emulator.cpp:40-60).

SegaCDBIOS9303.bin required in repo north-america, latin-america #
Mega CD / Sega CD BIOS (US)

jp_mcd2_921222.bin required in repo japan #
Mega CD BIOS (Japan)

eu_mcd2_9303.bin required in repo europe, oceania #
Mega CD BIOS (Europe)

mega_ld_bios_U.bin required in repo north-america #
LaserActive SEGA PAC BIOS (US), v1.04

mega_ld_bios_J.bin required in repo japan #
LaserActive SEGA PAC BIOS (Japan), v1.02

msx-japanese.rom required in repo #
MSX BIOS ROM (Japan)

MSX2J.rom required in repo #
MSX2 main BIOS ROM (Japan)

MSX2EXT.ROM required in repo #
MSX2 sub ROM (Japan)

neo-epo.bin required in repo #
Neo Geo AES BIOS. Accepts neogeo.zip (extracts neo-epo.bin) or direct file. Byte-swapped on load.

sp-45.sp1 required in repo #
Neo Geo MVS BIOS. Accepts neogeo.zip (extracts sp-45.sp1) or direct file. Byte-swapped on load.

ngp_bios.rom required in repo #
Neo Geo Pocket BIOS

ngpc_bios.rom required in repo #
Neo Geo Pocket Color BIOS

64dd_ipl_J.bin required in repo japan #
Nintendo 64DD IPL ROM (Japan retail)

64dd_ipl_U.bin required in repo north-america #
Nintendo 64DD IPL ROM (US dev kit)

64dd_ipl_DEV.bin required in repo #
Nintendo 64DD IPL ROM (development)

syscard1.pce required in repo #
PC Engine CD-ROM2 System Card v1.0 (Japan). Also used by PC Engine LD.

syscard3.pce required in repo #
Super CD-ROM2 System Card v3.0 (Japan). Also used by SuperGrafx CD as Arcade Card.

syscard3u.pce required in repo #
TurboGrafx-CD Super System Card v3.0 (US)

games_express.pce required in repo #
Games Express CD Card (Japan). Also used by PC Engine LD.

pac-n10.pce required in repo #
NEC PAC-N10 LaserActive module (US)

pac-n1.pce required in repo #
NEC PAC-N1 LaserActive module (Japan)

pce-lp1.pce required in repo #
NEC PCE-LP1 LaserActive module (Japan)

scph5501.bin required in repo north-america #
PlayStation BIOS (US)

scph5500.bin required in repo japan #
PlayStation BIOS (Japan)

scph5502.bin required in repo europe, oceania #
PlayStation BIOS (Europe)

saturn_bios_U.bin required in repo #
Sega Saturn BIOS (US)

saturn_bios_J.bin required in repo #
Sega Saturn BIOS (Japan)

saturn_bios_E.bin required in repo #
Sega Saturn BIOS (Europe)

SGB1.sfc optional in repo game_data #
Super Game Boy cartridge ROM. Loaded via CLI as SFC cartridge alongside GB game.

SGB2.sfc optional in repo game_data #
Super Game Boy 2 cartridge ROM. Loaded via CLI as SFC cartridge alongside GB game.

STBIOS.bin optional in repo game_data #
SuFami Turbo adapter BIOS. Loaded via CLI as SFC cartridge alongside SuFami games.

BS-X.bin optional in repo game_data #
Satellaview BS-X Town cartridge ROM. Loaded via CLI as SFC cartridge for BS games.

Generated on 2026-10-20T03:49:41Z