Files
libretro/emulators/openmsx.yml
T
Abdessamad Derraz bc2fe238e7 fix: list the MSX ROMs blueMSX and openMSX read
blueMSX names Msx2pe, Msx2pexte, pesadelo and svi328a in its machine configs. openMSX declares the sha1 of nine RetroBat system ROMs in its machine XMLs, and unpacks IDE250.DAT from ide250.zip.
2026-10-20 14:26:24 +02:00

323 lines
13 KiB
YAML

emulator: openMSX
type: standalone
source: "https://github.com/openMSX/openMSX"
upstream: "https://github.com/openMSX/openMSX"
profiled_date: "2026-03-26"
source_commit: "50d15b6c5eeba7781d55241f8579339141c9dfb4"
core_version: "21.0"
display_name: "MSX / ColecoVision / Spectravideo (openMSX)"
cores:
- openmsx
systems:
- msx
- msx1
- msx2
- msx2+
- msxturbor
- colecovision
- spectravideo
notes: |
Standalone MSX emulator supporting MSX1 through turboR, ColecoVision,
Spectravideo, and Pioneer LaserDisc hardware. Uses XML machine definitions
(share/machines/) that describe complete hardware configurations and
reference system ROMs by filename and SHA1 hash.
ROM resolution via FilePool (src/file/FilePool.cc, FilePoolCore.cc):
searches configured directories for files matching SHA1 checksums.
Filenames are secondary hints, while SHA1 is the primary lookup key.
Files may be gzipped or individually zipped.
Each user data directory contributes share/systemroms, scanned
recursively (src/file/FilePool.cc:27, FilePoolCore.cc:369-385). RetroBat
sets OPENMSX_HOME to bios/openmsx and refuses to start a machine whose
ROMs are not in bios/openmsx/share/systemroms. RetroPie links
share/systemroms to BIOS/openmsx and Batocera adds bios/openmsx to the
pool, both scanned recursively, so openmsx/share/systemroms serves all
three.
Batocera configgen (openmsxGenerator.py) configures filepool paths
(/userdata/bios/Machines position 1, /userdata/bios/openmsx position 2)
and selects machines per system type:
msx1, msx2 -> Boosted_MSX2_EN (enhanced Philips NMS 8245)
msx2+ -> Boosted_MSX2+_JP (enhanced Panasonic FS-A1WSX)
msxturbor -> Boosted_MSXturboR_with_IDE (enhanced Panasonic FS-A1GT)
colecovision -> ColecoVision_SGM
spectravideo -> Spectravideo_SVI-328
laserdisc (.ogv) -> Pioneer_PX-7
C-BIOS (open source MSX BIOS replacement) is shipped with openMSX in
Contrib/cbios/ and supports cartridge-only games. Not used by Batocera.
237 machine definitions exist in total. Each machine has its own ROM
requirements. The ROMs for Batocera-selected machines are listed here,
with the machines whose ROMs RetroBat lists in its systemroms folder.
Users selecting other machines via openMSX GUI need additional ROMs.
files:
# -------------------------------------------------------
# Boosted_MSX2_EN (msx1, msx2)
# Based on Philips NMS 8245 with extra hardware
# -------------------------------------------------------
- name: NMS8245SystemROM1.08.bin
path: "openmsx/share/systemroms/NMS8245SystemROM1.08.bin"
sha1: cc57c1dcd7249ea9f8e2547244592e7d97308ed0
required: true
size: 65536
description: "NMS 8245 combined system ROM (BIOS+BASIC 0x0000-0x7FFF, Sub ROM 0x8000-0xBFFF, FDC 0xC000-0xFFFF)"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2_EN.xml:24,65,111"
- name: fmpac.rom
path: "openmsx/share/systemroms/fmpac.rom"
sha1: fec451b9256570a0e4869355a40329c57f40705f
required: true
description: "Panasonic SW-M004 FMPAC (FM-PAC) sound cartridge ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2_EN.xml:83"
- name: phc-70fd2_basickun.rom
path: "openmsx/share/systemroms/phc-70fd2_basickun.rom"
sha1: 22b3191d865010264001b9d896186a9818478a6b
required: true
description: "Sanyo PHC-70FD2 MSX-BASIC Kun compiler ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2_EN.xml:89, share/machines/Boosted_MSX2+_JP.xml:167, share/machines/Boosted_MSXturboR_with_IDE.xml:79"
- name: yrw801.rom
path: "openmsx/share/systemroms/yrw801.rom"
sha1: 32760893ce06dbe3930627755ba065cc3d8ec6ca
required: true
description: "Yamaha YRW801 MoonSound wavetable ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2_EN.xml:186, share/machines/Boosted_MSX2+_JP.xml:120, share/machines/Boosted_MSXturboR_with_IDE.xml:203"
# -------------------------------------------------------
# Boosted_MSX2+_JP (msx2+)
# Based on Panasonic FS-A1WSX with extra hardware
# -------------------------------------------------------
- name: fs-a1wsx_basic-bios2p.rom
path: "openmsx/share/systemroms/fs-a1wsx_basic-bios2p.rom"
sha1: f4433752d3bf876bfefb363c749d4d2e08a218b6
required: true
description: "FS-A1WSX MSX2+ BIOS and BASIC ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:143"
- name: fs-a1wsx_fmbasic.rom
path: "openmsx/share/systemroms/fs-a1wsx_fmbasic.rom"
sha1: aad42ba4289b33d8eed225d42cea930b7fc5c228
required: true
description: "FS-A1WSX MSX-MUSIC (OPLL) ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:155"
- name: fs-a1wsx_msx2psub.rom
installed_on: [retropie]
path: "openmsx/share/systemroms/fs-a1wsx_msx2psub.rom"
sha1: fe0254cbfc11405b79e7c86c7769bd6322b04995
required: true
description: "FS-A1WSX MSX2+ Sub ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:218"
note: "RetroPie unpacks openmsxroms.tar.gz into the installed share/systemroms, which the file pool scans. This ROM is in it as MSX2PEXT.ROM and is found by its SHA1."
- name: fs-a1wsx_kanjibasic.rom
path: "openmsx/share/systemroms/fs-a1wsx_kanjibasic.rom"
sha1: dcc3a67732aa01c4f2ee8d1ad886444a4dbafe06
required: true
description: "FS-A1WSX Kanji Driver with BASIC ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:225"
- name: fs-a1wsx_disk.rom
path: "openmsx/share/systemroms/fs-a1wsx_disk.rom"
sha1: 7ed7c55e0359737ac5e68d38cb6903f9e5d7c2b6
required: true
description: "FS-A1WSX FDC (TC8566AF) disk controller ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:237"
- name: fs-a1wsx_firmware.rom
path: "openmsx/share/systemroms/fs-a1wsx_firmware.rom"
sha1: 3330d9b6b76e3c4ccb7cf252496ed15d08b95d3f
required: true
description: "FS-A1WSX Panasonic firmware ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:251"
- name: fs-a1wsx_kanjifont.rom
path: "openmsx/share/systemroms/fs-a1wsx_kanjifont.rom"
sha1: 5aff2d9b6efc723bc395b0f96f0adfa83cc54a49
aliases: [fs-a1gt_kanjifont.rom]
required: true
description: "Kanji font ROM (shared by FS-A1WSX and FS-A1GT machines)"
validation: [sha1]
source_ref: "share/machines/Boosted_MSX2+_JP.xml:28, share/machines/Boosted_MSXturboR_with_IDE.xml:216"
# -------------------------------------------------------
# Boosted_MSXturboR_with_IDE (msxturbor)
# Based on Panasonic FS-A1GT with IDE interface
# -------------------------------------------------------
- name: fs-a1gt_firmware.rom
path: "openmsx/share/systemroms/fs-a1gt_firmware.rom"
sha1:
- e779c338eb91a7dea3ff75f3fde76b8af22c4a3a
- 5fa3aa79aeba2c0441f349e78e9a16d9d64422ea
required: true
description: "FS-A1GT turboR combined firmware (512KB, contains BIOS, Sub ROM, Kanji, FDC, MSX-MUSIC, Opening ROM)"
validation: [sha1]
source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:23"
- name: ide250.dat
path: "openmsx/share/systemroms/ide250.dat"
sha1: 93e41c7d479bc90c1d1f6d081af20fd9924b8ada
required: true
description: "Sunrise IDE 2.50 interface ROM"
validation: [sha1]
source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:49"
- name: ide250.zip
path: "openmsx/ide250.zip"
required: false
description: "Sunrise IDE 2.50 distribution archive (IDE250.DAT, IDE250.TXT, IDEFLOAD.COM, IDEFLOAD.TXT)"
contents:
- name: IDE250.DAT
size: 65536
crc32: "073edf39"
source_ref: "src/file/File.cc:30-31, src/file/ZipFileAdapter.cc:14-41, src/file/FilePoolCore.cc:410-417, share/machines/Boosted_MSXturboR_with_IDE.xml:49"
note: "The file pool opens a .zip through ZipFileAdapter, which inflates only the first local entry, and hashes that content. The first entry of this archive is IDE250.DAT, whose SHA1 (93e41c7d479bc90c1d1f6d081af20fd9924b8ada) is the one the machine asks for, so the archive serves as ide250.dat."
# -------------------------------------------------------
# ColecoVision_SGM (colecovision)
# ColecoVision with built-in Super Game Module
# -------------------------------------------------------
- name: COLECO.ROM
path: "openmsx/share/systemroms/COLECO.ROM"
sha1: 45bedc4cbdeac66c7df59e9e599195c778d86a92
required: true
description: "ColecoVision system BIOS ROM"
validation: [sha1]
source_ref: "share/machines/ColecoVision_SGM.xml:57"
# -------------------------------------------------------
# Spectravideo_SVI-328 (spectravideo)
# -------------------------------------------------------
- name: svi-3x8_v111.rom
path: "openmsx/share/systemroms/svi-3x8_v111.rom"
sha1: 10349ce675f6d6d47f0976e39cb7188eba858d89
required: true
description: "SVI-328 BASIC v1.11 ROM"
validation: [sha1]
source_ref: "share/machines/Spectravideo_SVI-328.xml:52"
# -------------------------------------------------------
# Pioneer_PX-7 (laserdisc)
# MSX1 with LaserDisc controller
# -------------------------------------------------------
- name: px-7_basic-bios1.rom
path: "openmsx/share/systemroms/px-7_basic-bios1.rom"
sha1: 302afb5d8be26c758309ca3df611ae69cced2821
required: true
description: "Pioneer PX-7 MSX1 BIOS and BASIC ROM"
validation: [sha1]
source_ref: "share/machines/Pioneer_PX-7.xml:67"
- name: px-7_pbasic.rom
path: "openmsx/share/systemroms/px-7_pbasic.rom"
sha1: 665d805f96616e1037f1823050657b7849899283
required: true
description: "Pioneer PX-7 LaserDisc PBASIC controller ROM"
validation: [sha1]
source_ref: "share/machines/Pioneer_PX-7.xml:82"
# -------------------------------------------------------
# Machines whose ROMs RetroBat lists. Each ROM is found in the
# file pool by SHA1: a machine's <filename> resolves against the
# share/machines directory only (src/config/HardwareConfig.cc:277-280,
# src/file/FileContext.cc:152-156), then the <sha1> values are looked up
# in the pool (src/memory/Rom.cc:158-172). A machine whose ROM is not
# found does not start (src/memory/Rom.cc:173-184).
# -------------------------------------------------------
- name: cf-3300_basic-bios1.rom
path: "openmsx/share/systemroms/cf-3300_basic-bios1.rom"
sha1: c7a2c5baee6a9f0e1c6ee7d76944c0ab1886796c
required: false
size: 32768
description: "National CF-3300 MSX1 BIOS and BASIC ROM (also used by CF-1200, CF-2700, CF-3000, FS-1300)"
validation: [sha1]
source_ref: "share/machines/National_CF-3300.xml:51-52"
- name: cf-3300_disk.rom
path: "openmsx/share/systemroms/cf-3300_disk.rom"
sha1: f1525de4e0b60a6687156c2a96f8a8b2044b6c56
required: false
size: 16384
description: "National CF-3300 disk controller ROM (also used by Gradiente Expert DD Plus)"
validation: [sha1]
source_ref: "share/machines/National_CF-3300.xml:75-76"
- name: fs-5500_basic-bios2.rom
path: "openmsx/share/systemroms/fs-5500_basic-bios2.rom"
sha1: 44e0dd215b2a9f0770dd76fb49187c05b083eed9
required: false
size: 32768
description: "National FS-5500 MSX2 BIOS and BASIC ROM"
validation: [sha1]
source_ref: "share/machines/National_FS-5500F2.xml:76-77, share/machines/National_FS-5500F1.xml:78"
- name: fs-5500_msx2sub.rom
path: "openmsx/share/systemroms/fs-5500_msx2sub.rom"
sha1: 4be8371f3b03e70ddaca495958345f3c4f8e2d36
required: false
size: 16384
description: "National FS-5500 MSX2 Sub ROM"
validation: [sha1]
source_ref: "share/machines/National_FS-5500F2.xml:100-101, share/machines/National_FS-5500F1.xml:102"
- name: fs-5500_kanjibasic.rom
path: "openmsx/share/systemroms/fs-5500_kanjibasic.rom"
sha1: 3a9a942ed888dd641cddf8deada1879c454df3c6
required: false
size: 32768
description: "National FS-5500 Kanji Driver ROM (also used by FS-4600F and FS-5000F2)"
validation: [sha1]
source_ref: "share/machines/National_FS-5500F2.xml:107-108, share/machines/National_FS-5500F1.xml:109"
- name: fs-5500_kanjifont.rom
path: "openmsx/share/systemroms/fs-5500_kanjifont.rom"
sha1: 9ed3ab6d893632b9246e91b412cd5db519e7586b
required: false
size: 131072
description: "National FS-5500 Kanji font ROM (also used by FS-4000, FS-4500 and FS-4700F)"
validation: [sha1]
source_ref: "share/machines/National_FS-5500F2.xml:20-21, share/machines/National_FS-5500F1.xml:22"
- name: fs-5500_superimp.rom
path: "openmsx/share/systemroms/fs-5500_superimp.rom"
sha1: b677a861b67e8763a11d5dcf52416b42493ade57
required: false
size: 32768
description: "National FS-5500 Super Impose ROM"
validation: [sha1]
source_ref: "share/machines/National_FS-5500F2.xml:117-118, share/machines/National_FS-5500F1.xml:119"
- name: nms8245_msx2sub.rom
path: "openmsx/share/systemroms/nms8245_msx2sub.rom"
sha1:
- 5c1f9c7fb655e43d38e5dd1fcc6b942b2ff68b02
- e7905d16d2ccd57a013c122dc432106cd59ef52c
required: false
size: 16384
description: "Philips NMS 8245 MSX2 Sub ROM (1.05/1.06 and 1.08 revisions)"
validation: [sha1]
source_ref: "share/machines/Philips_NMS_8245.xml:108-110"
- name: vg8020_basic-bios1.rom
path: "openmsx/share/systemroms/vg8020_basic-bios1.rom"
sha1: 829c00c3114f25b3dae5157c0a238b52a3ac37db
required: false
size: 32768
description: "Philips VG 8020 MSX1 BIOS and BASIC ROM (also used by AVT DPC-200, Goldstar FC-200, Toshiba HX-20E, HX-22I, HX-51I)"
validation: [sha1]
source_ref: "share/machines/Philips_VG_8020.xml:53-54"