Skip to content

# bk-emulator - RetroBIOS

Type | libretro
Classification | community_fork
Source | https://github.com/libretro/bk-emulator
Upstream | https://github.com/emestee/bk-emulator
Version | 1.00
Profiled | 2026-03-23
Cores | bk
Systems | elektronika-bk

Platform details

bios_mapping: - source_ref: libretro.c:718-760, boot.c:83-116 - notes: ROM directory is {system_dir}/bk/ (libretro.c:724-726).

Model selection via core option "bk_model" determines which ROMs are loaded. The core shuts down immediately if any required ROM for the selected model is not found.

    **model_rom_map:**
    - source_ref: libretro.c:734-756, boot.c:83-116
    - notes: BK-0010:            MONIT10.ROM + FOCAL10.ROM

BK-0010.01: MONIT10.ROM + BASIC10.ROM BK-0010.01 + FDD: MONIT10.ROM + DISK_327.ROM BK-0011M + FDD: B11M_BOS.ROM + DISK_327.ROM + BAS11M_0.ROM + BAS11M_1.ROM + B11M_EXT.ROM Slow BK-0011M: same as BK-0011M + FDD Terak 8510/a: TERAK.ROM

    **rom_loading:**
    - source_ref: libretro.c:1050-1107
    - notes: load_rom_file() first tries {romdir}/{filename} with original casing.

If not found, retries with the filename converted to lowercase. Returns NULL and shuts down the core on failure.

Technical notes

Files go in {system_dir}/bk/. Each BK model requires a specific set of ROMs. The default model is BK-0010 which needs MONIT10.ROM and FOCAL10.ROM. Changing the core option "bk_model" changes which ROMs are loaded. The core shuts down if a required ROM is missing (no fallback or pseudo-BIOS). If a ROM file with uppercase name is not found, the core retries with the filename lowercased.

9 files | 1 required, 8 optional | 9 in repo, 0 missing

`MONIT10.ROM` -required

- Path: `bk/MONIT10.ROM`
- Size: 8.0 KB
- Aliases: `monit10.rom`
- Validation: size
- Source: `main.c:53, boot.c:107`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- BK-0010 monitor ROM (8 KB). Loaded at address 0100000. Required for all BK-0010 models (0, 1, 2).

`FOCAL10.ROM` -optional

- Path: `bk/FOCAL10.ROM`
- Size: 24.0 KB
- Aliases: `focal10.rom`
- Validation: size
- Source: `libretro.c:15, boot.c:110`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- FOCAL interpreter ROM (24448-24576 bytes). Loaded at 0120000. Used by BK-0010 (model 0, default).

`BASIC10.ROM` -optional

- Path: `bk/BASIC10.ROM`
- Size: 24.0 KB
- Aliases: `basic10.rom`
- Validation: size
- Source: `libretro.c:16, boot.c:110`
- Platforms: batocera, lakka, retroarch, retropie
- BASIC interpreter ROM (24448-24576 bytes). Loaded at 0120000. Used by BK-0010.01 (model 1).

`DISK_327.ROM` -optional

- Path: `bk/DISK_327.ROM`
- Size: 4.0 KB
- Aliases: `disk_327.rom`
- Validation: size
- Source: `main.c:54, boot.c:99,113`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- Floppy disk controller ROM (4 KB). Loaded at 0160000 for BK-0010.01+FDD (model 2), or into system_rom for BK-0011M (model 3/4).

`B11M_BOS.ROM` -optional

- Path: `bk/B11M_BOS.ROM`
- Size: 8.0 KB
- Aliases: `b11m_bos.rom`
- Validation: size
- Source: `main.c:55, boot.c:98`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- BK-0011M system ROM / BOS (8 KB). Loaded into system_rom at offset 0. Required for BK-0011M (model 3/4).

`B11M_EXT.ROM` -optional

- Path: `bk/B11M_EXT.ROM`
- Size: 8.0 KB
- Aliases: `b11m_ext.rom`
- Validation: size
- Source: `main.c:56, boot.c:102`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- BK-0011M extended BOS ROM (8 KB). Loaded into rom[1] at offset 8192. Required for BK-0011M (model 3/4).

`BAS11M_0.ROM` -optional

- Path: `bk/BAS11M_0.ROM`
- Size: 16.0 KB
- Aliases: `bas11m_0.rom`
- Validation: size
- Source: `main.c:57, boot.c:100`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- BK-0011M BASIC ROM part 0 (16 KB). Loaded into rom[0]. Required for BK-0011M (model 3/4).

`BAS11M_1.ROM` -optional

- Path: `bk/BAS11M_1.ROM`
- Size: 8.0 KB
- Aliases: `bas11m_1.rom`
- Validation: size
- Source: `main.c:58, boot.c:101`
- Platforms: batocera, lakka, recalbox, retroarch, retropie
- BK-0011M BASIC ROM part 1 (8 KB). Loaded into rom[1] at offset 0. Required for BK-0011M (model 3/4).

`TERAK.ROM` -optional

- Path: `bk/TERAK.ROM`
- Size: 128 B
- Aliases: `terak.rom`
- Validation: size
- Source: `boot.c:94`
- Terak 8510/a boot ROM (128 bytes). Used when model is set to Terak 8510/a (model 9).

Generated on 2026-03-25T14:56:43Z