Skip to content

BlastEm emulates Sega Mega Drive, Sega Mega CD, Sega 32X and 7 more systems. It reads 13 files, 9 of them required: without a required file it does not start games. A required file is needed only by the machines that use it. Each file below cites the line of source code that reads it.

Run on its own, the app keeps its data in this folder:

<folder of blastem.exe>/

Source: paths.c:378-397, paths.c:581-594

About this profile
Detail Value
Type standalone + libretro
Classification Official port
Source https://github.com/libretro/blastem
Upstream https://www.retrodev.com/blastem/
Version 1.0.1-pre, stated in version.inc
Revision libretro/blastem@ab743653ed11
Profiled 2026-10-20
Profile YAML, JSON
Cores blastem
Systems Sega Mega Drive, Sega Mega CD, Sega 32X, Sega Master System, Sega Game Gear, Sega SG-1000, Sega SC-3000, Sega Pico, ColecoVision, Pioneer LaserActive
Data folder (Windows) <folder of blastem.exe>/
Data folder (macOS) <folder of the blastem executable>/
Data folder (Linux) <folder of the blastem executable>/
Install this emulator's files

For BlastEm inside RetroArch, Batocera or another setup. The installer finds your setup and its BIOS folder, then downloads only the files this emulator reads there and checks each one.

Open the Start menu. Type PowerShell and open it. Paste the line. Press Enter.

PowerShell
&([scriptblock]::Create((irm https://abdess.github.io/retrobios/i.ps1))) --emulator blastem
Technical notes

BlastEm emulates the Mega Drive/Genesis, Sega CD, 32X, Master System, Game Gear, SG-1000, SC-3000, Pico, Copera, ColecoVision and the Pioneer LaserActive player. The libretro port lives in libblastem.c and offers every machine the standalone can force except the Jaguar (libblastem.c:20-44).

Each firmware path is a config key. The libretro core writes <system_dir>/<name> into those keys before any machine is built (libblastem.c:497-530). The names are opened exactly as written, with no hash or size check.

The standalone build leaves the keys unset by default (default.cfg), so each loader falls back to its own default name. The Sega CD BIOS, the ColecoVision BIOS, the LaserActive firmware and the TMSS ROM are then read beside the executable through read_bundled_file() (paths.c:596-631). The 32X BIOS ROMs are opened by bare name, relative to the working directory (32x.c:1072, 1417, 1449).

A fatal error while a game loads unwinds to retro_load_game(), which reports the failure to the frontend (libblastem.c:975-989, 1053-1058). Missing Sega CD BIOS and missing TMSS ROM end there.

The default Mega Drive model is md1va3, which has no TMSS (libblastem.c:355-359, systems.cfg:12-20). md1va6, md2va1, md2va2, md3va1 and md3va2 enable it (systems.cfg:23-75) and can be picked with the blastem_model option (libblastem.c:185-187).

13 files: 9 required, 4 optional. 2 have an HLE fallback.

In this collection: 9 in repo and 4 missing.

FileStatusHash

bios_CD_U.bin

  • System: Sega Mega CD
  • Sega CD BIOS for discs whose header allows the default region U, or that carry neither E nor J (segacd.c:1573-1593). An empty file counts as missing (segacd.c:1599-1602). Without it a CD image fails to load (segacd.c:1644-1647). A Mode 1 cartridge runs without it as a plain cartridge (genesis.c:3156-3162).
Source
required for Sega Mega CD in repo libretro Region: North America and Latin America-

bios_CD_E.bin

  • System: Sega Mega CD
  • Mega CD BIOS for discs whose region resolves to E (segacd.c:1587-1588). The header code E, or bit 8 of a hex code, is the only PAL value the code reads, so Australian discs take this branch too (romdb.c:176-215). Same load rules as bios_CD_U.bin.
Source
required for Sega Mega CD in repo libretro Region: Europe and Oceania-

bios_CD_J.bin

  • System: Sega Mega CD
  • Mega CD BIOS for discs whose region resolves to J (segacd.c:1589-1590). Same load rules as bios_CD_U.bin.
Source
required for Sega Mega CD in repo libretro Region: Japan-

cdbios.bin

  • System: Sega Mega CD
  • Default name of all three regional Sega CD BIOS keys when the config sets none. Read beside the executable, whatever the disc region. Without it a CD image stops with a fatal error (segacd.c:1644-1647). RetroBat writes absolute paths to bios_CD_U/E/J.bin into the config (emulatorlauncher Blastem.Generator.cs:256-269), so this name is never opened there.
Unread setups and source
  • Never opened on these platforms, whose launcher names other files: retrobat
  • Asked for by: emulator code, libretro port
  • Source: segacd.c:1594 (emulator code, libretro port), segacd.c:1607-1609 (emulator code, libretro port)
required for Sega Mega CD missing standalone-

32X_M_BIOS.bin

  • System: Sega 32X
  • Master SH2 BIOS, read into the 16 KiB boot ROM area (32x.c:1399-1400, 1417-1425). The libretro core refuses a 32X load when the file is missing or its reset vector is zero (libblastem.c:998-1017, 1098-1104). The standalone runs the SH2 on zeroed ROM and stops at an unimplemented instruction.
Source
required for Sega 32X in repo-

32X_S_BIOS.bin

  • System: Sega 32X
  • Slave SH2 BIOS, read into the 16 KiB boot ROM area (32x.c:1449-1457). Same refusal rule as 32X_M_BIOS.bin in the libretro core (libblastem.c:1098-1104).
Source
required for Sega 32X in repo-

colecovision.rom

  • System: ColecoVision
  • Read into the 8 KiB BIOS area mapped at 0x0000 (coleco.h:13, coleco.c:513). Without it the core only warns and runs a zeroed BIOS, so no game starts (coleco.c:485-492).
  • Size: 8.0 KB
  • Collection copy: bios/Coleco/ColecoVision/BIOS.col
  • Platforms: BIOS.col and coleco.rom and colecovision.rom: Lakka, RetroArch, RetroPie. colecovision.rom: Batocera, EmuDeck. Coleco_Bios.bin: BizHawk. Machines/COL - ColecoVision with Opcode Memory Extension/coleco.rom and Machines/COL - ColecoVision/coleco.rom and coleco/boot.rom: Recalbox. bios/BIOS.col and bios/Machines/COL - ColecoVision with Opcode Memory Extension/coleco.rom and bios/Machines/COL - ColecoVision/coleco.rom and bios/colecovision.rom: AmberELEC. bios/BIOS.col and bios/coleco.rom and bios/colecovision.rom: RetroDECK. bios/Machines/COL - ColecoVision with Opcode Memory Extension/coleco.rom and bios/Machines/COL - ColecoVision/coleco.rom: EmuELEC. coleco.rom and colecovision.rom and openMSX/share/systemroms/coleco.rom: RetroBat. colecovision/colecovision.rom: RomM
Source
required for ColecoVision in repo libretro-

colecovision_bios.col

  • System: ColecoVision
  • Default name of the ColecoVision BIOS key when the config sets none. Read beside the executable, truncated to 8 KiB (coleco.c:496-505). RetroBat points the key at colecovision.rom (emulatorlauncher Blastem.Generator.cs:256-269).
  • Size: 8.0 KB
Unread setups and source
  • Never opened on these platforms, whose launcher names other files: retrobat
  • Asked for by: emulator code, libretro port
  • Source: coleco.c:485 (emulator code, libretro port), coleco.c:496-505 (emulator code, libretro port)
required for ColecoVision missing standalone-

laseractive_dyw_1322a.bin

  • System: Pioneer LaserActive
  • uPD78237 mode controller ROM of the CLD-A100 player. Only the first 0xE000 bytes are mapped (laseractive.h:16, laseractive.c:533-534). Without it the core warns and the controller runs a zeroed ROM. The hashes describe the 64 KiB dump the BlastEm author published, whose last 8 KiB are 0xFF.
Hashes and source
  • SHA1: b1e48d1f5e494a6cbece61cfca4469dea33fba4b
  • MD5: d6ccd1da5c4a1b22c64e6eec899e0daf
  • CRC32: 3d6f6ed3
  • SHA256: 02a4a82c4f5abfe2c7e15d3682be9590be96607cb9213ce88e335f34db95d76f
  • Asked for by: emulator code, libretro port
  • Source: libblastem.c:513 (emulator code, libretro port), laseractive.c:504-531 (emulator code, libretro port)
required for Pioneer LaserActive in repoMD5 d6ccd1da5c4a
FileStatusHash

rom.db

  • System: Sega Mega Drive
  • ROM feature database (game-specific mapper/save config). Shipped beside the executable in the 1.0.0 Windows and Linux archives, whose copy the hashes describe. The libretro core compiles it in and reads no external copy.
  • SHA1: 9109da664801
Hashes and source
  • SHA1: 9109da664801e8ba02e790c085cbdca58068e50a
  • MD5: 48b457c7e2df6ec7c16ae34d8f24c4b6
  • Asked for by: emulator code, libretro port
  • Source: romdb.c:44-53 (emulator code, libretro port), libblastem.c:1436-1455 (emulator code, libretro port)
missing HLE fallback standalone installed with the standalone emulatorMD5 48b457c7e2df

32X_G_BIOS.bin

  • System: Sega 32X
  • 68K side BIOS. Only the first 0x100 bytes are read. Without it the core writes its own vector table and warns that some games need the real one (32x.c:1072-1086).
Source
in repo HLE fallback-

tmss.md

  • System: Sega Mega Drive
  • Aliases: bios_MD.bin
  • Read only for a model with TMSS. tmss.md is tried first, then bios_MD.bin (libblastem.c:514-529). With a TMSS model selected and neither file present, the load fails (genesis.c:3036-3051). Any size is accepted and mirrored to fill the TMSS space (genesis.c:3054-3065).
Source
in repo libretro-

tmss.md

  • System: Sega Mega Drive
  • TMSS startup ROM for models md1va6, md2va1 and later. The 1.0.0 Windows and Linux archives ship BlastEm's own replacement, built from tmss.s68, under this name. Any size is accepted: the image is padded and mirrored to fill the TMSS space.
  • Size: 3.9 KB, SHA1 d0fd0c163b69
Hashes and source
  • SHA1: d0fd0c163b693d819fc907538fbdec76d7ec669d
  • MD5: 1929426a8888785411d30f24bd0f8139
  • Asked for by: emulator code, libretro port
  • Source: genesis.c:3036-3065 (emulator code, libretro port)
missing standalone installed with the standalone emulatorMD5 1929426a8888
Source analysis
  • tmss:

    • default model: md1va3

    • tmss models:

      • md1va6
      • md2va1
      • md2va2
      • md3va1
      • md3va2
    • rom filename: tmss.md

    • libretro fallback name: bios_MD.bin

    • config path: systemtmss_path

    • source ref: libblastem.c:355-359 (emulator code, libretro port), libblastem.c:514-529 (emulator code, libretro port), genesis.c:3036-3051 (emulator code, libretro port)

    • note: The libretro core exposes the model as blastem_model and points system/tmss_path at the system directory. The standalone falls back to tmss.md beside the executable.

  • sega cd:

    • region keys:

      • scd_bios_us
      • scd_bios_eu
      • scd_bios_jp
    • standalone default: cdbios.bin

    • source ref: segacd.c:1573-1615 (emulator code, libretro port), segacd.c:1644-1647 (emulator code, libretro port)

    • note: The region comes from the disc header, or from the default region when the header allows it. A Mode 1 cartridge that finds no BIOS runs without the Sega CD (genesis.c:3156-3162).

  • s32x:

    • source ref: libblastem.c:998-1017 (emulator code, libretro port), libblastem.c:1098-1104 (emulator code, libretro port)
    • note: The libretro core checks that both SH2 BIOS files exist and carry a non-zero reset vector before it builds a 32X machine.
  • jaguar bios:

    • libretro relevant: no
    • source ref: jaguar.c:571-575 (emulator code, libretro port)
    • note: blastjag is a separate standalone binary, not compiled into the libretro core. It reads the BIOS from its first command line argument.
.