mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 12:22:33 -05:00
feat: add 10 emulator profiles (batch 1 P1)
genesis_plus_gx (12 files), picodrive (18 files), fbneo (19 systems), hatari (TOS ROMs), bluemsx (60+ MSX/ColecoVision/SG-1000), fceumm (FDS/Game Genie), bsnes (20 coprocessor ROMs), beetle_psx (5 BIOS + aliases), beetle_saturn (5 files), puae (14 Kickstart ROMs, 3 naming conventions) 21 total emulator profiles. Cross-reference: 436 undeclared files, 120 already in repo, 316 to source.
This commit is contained in:
83
emulators/beetle_psx.yml
Normal file
83
emulators/beetle_psx.yml
Normal file
@@ -0,0 +1,83 @@
|
||||
emulator: Beetle PSX (Mednafen PSX)
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/beetle-psx-libretro"
|
||||
cores: [mednafen_psx, mednafen_psx_hw]
|
||||
systems: [sony-playstation]
|
||||
bios_size: 524288 # 512 KB for all accepted BIOS images
|
||||
verification: sha1
|
||||
notes: >
|
||||
Region-based BIOS selection: the core picks JP/NA/EU firmware based on disc region.
|
||||
SHA1 validated with warning on mismatch (does not block loading).
|
||||
Override option allows using PSP or PS3 extracted PS1 BIOS as region-free alternative.
|
||||
"Skip BIOS" option exists but causes compatibility issues (PAL copy protection, Saga Frontier).
|
||||
Alternate filenames are case variants and model aliases for the same image.
|
||||
Comment in source references MAME psx.cpp as hash source.
|
||||
|
||||
files:
|
||||
# -- Region: Japan (REGION_JP) --
|
||||
|
||||
- name: "scph5500.bin"
|
||||
description: "SCPH-5500 (v3.0 09-09-96 J)"
|
||||
region: "NTSC-J"
|
||||
required: true
|
||||
sha1: "b05def971d8ec59f346f2d9ac21fb742e3eb6917"
|
||||
md5: "8dd7d5296a650fac7319bce665a6a53c"
|
||||
source_ref: "libretro.cpp:252-256"
|
||||
alt_names: ["SCPH5500.bin", "SCPH-5500.bin"]
|
||||
|
||||
# -- Region: North America (REGION_NA) --
|
||||
|
||||
- name: "scph5501.bin"
|
||||
description: "SCPH-5501, 5503, 7003 (v3.0 11-18-96 A)"
|
||||
region: "NTSC-U"
|
||||
required: true
|
||||
sha1: "0555c6fae8906f3f09baf5988f00e55f88e9f30b"
|
||||
md5: "490f666e1afb15b7362b406ed1cea246"
|
||||
source_ref: "libretro.cpp:258-270"
|
||||
alt_names:
|
||||
- "SCPH5501.bin"
|
||||
- "SCPH-5501.bin"
|
||||
- "scph5503.bin"
|
||||
- "SCPH5503.bin"
|
||||
- "SCPH-5503.bin"
|
||||
- "scph7003.bin"
|
||||
- "SCPH7003.bin"
|
||||
- "SCPH-7003.bin"
|
||||
|
||||
# -- Region: Europe (REGION_EU) --
|
||||
|
||||
- name: "scph5502.bin"
|
||||
description: "SCPH-5502, 5552 (v3.0 01-06-97 E)"
|
||||
region: "PAL"
|
||||
required: true
|
||||
sha1: "f6bc2d1f5eb6593de7d089c425ac681d6fffd3f0"
|
||||
md5: "32736f17079d0b2b7024407c39bd3050"
|
||||
source_ref: "libretro.cpp:272-282"
|
||||
alt_names:
|
||||
- "SCPH5502.bin"
|
||||
- "SCPH-5502.bin"
|
||||
- "scph5552.bin"
|
||||
- "SCPH5552.bin"
|
||||
- "SCPH-5552.bin"
|
||||
|
||||
# -- Override BIOS (region-free alternatives) --
|
||||
|
||||
- name: "psxonpsp660.bin"
|
||||
description: "PSP embedded PS1 BIOS (region-free override)"
|
||||
region: "Auto"
|
||||
required: false
|
||||
sha1: "96880d1ca92a016ff054be5159bb06fe03cb4e14"
|
||||
md5: "c53ca5908936d412331790f4426c6c33"
|
||||
source_ref: "libretro.cpp:190-196"
|
||||
alt_names: ["PSXONPSP660.bin"]
|
||||
notes: "override_bios=1 (psxonpsp option). Falls back to region BIOS if not found."
|
||||
|
||||
- name: "ps1_rom.bin"
|
||||
description: "PS3 embedded PS1 BIOS (region-free override)"
|
||||
region: "Auto"
|
||||
required: false
|
||||
sha1: "c40146361eb8cf670b19fdc9759190257803cab7"
|
||||
md5: "81bbe60ba7a3d1cea1d48c14cbcc647b"
|
||||
source_ref: "libretro.cpp:198-204"
|
||||
alt_names: ["PS1_ROM.bin"]
|
||||
notes: "override_bios=2 (ps1_rom option). Falls back to region BIOS if not found."
|
||||
93
emulators/beetle_saturn.yml
Normal file
93
emulators/beetle_saturn.yml
Normal file
@@ -0,0 +1,93 @@
|
||||
emulator: Beetle Saturn (Mednafen)
|
||||
type: libretro
|
||||
core: mednafen_saturn_libretro
|
||||
source: "https://github.com/libretro/beetle-saturn-libretro"
|
||||
systems:
|
||||
- sega-saturn
|
||||
|
||||
notes: |
|
||||
Beetle Saturn is the libretro port of Mednafen's Sega Saturn emulation module.
|
||||
Two region-specific BIOS files are used: sega_101.bin for Japan/Asia NTSC,
|
||||
mpr-17933.bin for North America, Europe, and all other regions. The core
|
||||
returns false from InitCommon() if the BIOS file is missing or not exactly
|
||||
512 KB, so both BIOS files are required for full region coverage.
|
||||
|
||||
Region auto-detection reads the disc header and picks the matching BIOS.
|
||||
Manual region override is available via beetle_saturn_region core option.
|
||||
|
||||
The KOF95 and Ultraman ROM carts are optional game-specific expansion
|
||||
cartridges loaded from the system directory. The Action Replay 4M Plus
|
||||
cart (satar4mp.bin) is listed but marked unfinished in source (needs
|
||||
CPU UBC emulation).
|
||||
|
||||
BIOS loading: mednafen/ss/ss.cpp InitCommon() lines 920-961.
|
||||
Cart loading: mednafen/ss/cart.cpp CART_Init() lines 128-220.
|
||||
Firmware path: libretro.cpp MDFN_MakeFName(MDFNMKF_FIRMWARE) -> system dir.
|
||||
Default cart ROM filenames: mednafen/settings.cpp MDFN_GetSettingS().
|
||||
|
||||
files:
|
||||
# -------------------------------------------------------
|
||||
# Saturn BIOS - Japan / Asia NTSC
|
||||
# -------------------------------------------------------
|
||||
- name: "sega_101.bin"
|
||||
system: sega-saturn
|
||||
region: [japan, asia-ntsc]
|
||||
required: true
|
||||
size: 524288 # 512 KB
|
||||
md5: "85ec9ca47d8f6807718151cbcca8b964"
|
||||
note: "Saturn BIOS v1.01 (Japan). Used when region is JP or Asia NTSC."
|
||||
source_ref: "mednafen/ss/ss.cpp:928-929"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Saturn BIOS - North America / Europe / other
|
||||
# -------------------------------------------------------
|
||||
- name: "mpr-17933.bin"
|
||||
system: sega-saturn
|
||||
region: [north-america, europe, south-korea, asia-pal, brazil, latin-america]
|
||||
required: true
|
||||
size: 524288 # 512 KB
|
||||
md5: "3240872c70984b6cbfda1586cab68dbe"
|
||||
note: "Saturn BIOS (NA/EU). Used for all non-JP/Asia-NTSC regions."
|
||||
source_ref: "mednafen/ss/ss.cpp:930-931"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# King of Fighters '95 ROM cart
|
||||
# -------------------------------------------------------
|
||||
- name: "mpr-18811-mx.ic1"
|
||||
system: sega-saturn
|
||||
required: false
|
||||
size: 2097152 # 2 MB (0x200000, rom.cpp reads up to this)
|
||||
md5: "255113ba943c92a54facd25a10fd780c"
|
||||
note: "KOF95 expansion ROM cart. Loaded when cart type set to KOF95."
|
||||
source_ref: "mednafen/ss/cart.cpp:157-172, mednafen/settings.cpp:64-65"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Ultraman ROM cart
|
||||
# -------------------------------------------------------
|
||||
- name: "mpr-19367-mx.ic1"
|
||||
system: sega-saturn
|
||||
required: false
|
||||
size: 2097152 # 2 MB
|
||||
md5: "1cd19988d1d72a3e7caa0b73234c96b4"
|
||||
note: "Ultraman expansion ROM cart. Loaded when cart type set to Ultraman."
|
||||
source_ref: "mednafen/ss/cart.cpp:157-172, mednafen/settings.cpp:66-67"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Action Replay 4M Plus (unfinished)
|
||||
# -------------------------------------------------------
|
||||
- name: "satar4mp.bin"
|
||||
system: sega-saturn
|
||||
required: false
|
||||
note: "Action Replay 4M Plus firmware. Unfinished in source, needs CPU UBC emulation."
|
||||
source_ref: "mednafen/ss/cart.cpp:174-188, mednafen/settings.cpp:68-69"
|
||||
|
||||
platform_details:
|
||||
saturn:
|
||||
bios_size: 524288 # 512 KB
|
||||
rom_cart_size: 2097152 # 2 MB max (rom.cpp)
|
||||
workram_low: 1048576 # 1 MB
|
||||
workram_high: 1048576 # 1 MB
|
||||
bios_address: "0x00000000-0x000FFFFF"
|
||||
cart_address: "0x02000000-0x03FFFFFF"
|
||||
hle_available: false
|
||||
source_ref: "mednafen/ss/ss.cpp:906-908"
|
||||
644
emulators/bluemsx.yml
Normal file
644
emulators/bluemsx.yml
Normal file
@@ -0,0 +1,644 @@
|
||||
emulator: blueMSX
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/blueMSX-libretro"
|
||||
cores:
|
||||
- bluemsx
|
||||
systems:
|
||||
- msx
|
||||
- msx2
|
||||
- msx2plus
|
||||
- msxturboR
|
||||
- colecovision
|
||||
- sega-sg1000
|
||||
- sega-sc3000
|
||||
- sega-sf7000
|
||||
- spectravideo
|
||||
|
||||
# blueMSX is a multi-system emulator covering MSX (1/2/2+/turboR), ColecoVision,
|
||||
# SVI (Spectravideo), and SEGA SG-1000/SC-3000/SF-7000. The core ships its entire
|
||||
# machine database (config.ini per machine model) plus ROM files under
|
||||
# <system_dir>/Machines/. Each machine config.ini references ROM paths relative
|
||||
# to the Machines directory.
|
||||
#
|
||||
# Machine type selection (libretro.c:855-896):
|
||||
# Core option "bluemsx_msxtype" selects the machine. "Auto" defaults to SC-3000
|
||||
# then switches based on file extension: .dsk/.cas/.rom/.mx1/.mx2 -> MSX2+,
|
||||
# .col -> ColecoVision, .sg -> SG-1000, .sc -> SC-3000, .sf/.sf7 -> SF-7000.
|
||||
#
|
||||
# C-BIOS (open source MSX BIOS replacement) is bundled for MSX, MSX2, MSX2+.
|
||||
# Machines: "MSX - C-BIOS", "MSX2 - C-BIOS", "MSX2+ - C-BIOS"
|
||||
# These allow running cartridge ROMs without copyrighted BIOS files.
|
||||
# Disk and tape software requires real BIOS ROMs.
|
||||
#
|
||||
# ROM loading (Src/Board/Machine.c:594-647):
|
||||
# machineCreate() reads <machinesDir>/<machineName>/config.ini which lists
|
||||
# ROM slots. ROM paths in config.ini are relative to machinesDir parent.
|
||||
#
|
||||
# All files go under: <system_dir>/Machines/
|
||||
|
||||
notes: |
|
||||
The directory structure must be preserved exactly as shipped in the repo's
|
||||
system/bluemsx/ folder. The core expects Machines/ and Databases/ subdirectories
|
||||
inside the system directory. Each machine model has its own subdirectory with
|
||||
a config.ini and associated ROM files.
|
||||
|
||||
Default machines (used when selecting base type names like "MSX", "MSX2", etc.)
|
||||
reference ROMs from "Machines/Shared Roms/". Machine-specific variants (e.g.
|
||||
"MSX2 - Panasonic FS-A1F") have their own ROMs in their own subdirectory.
|
||||
|
||||
C-BIOS machines work for cartridge-based games without any copyrighted BIOS.
|
||||
For disk/tape support, real BIOS ROMs are required.
|
||||
|
||||
files:
|
||||
# ============================================================
|
||||
# Shared ROMs (Machines/Shared Roms/)
|
||||
# Used by the default/generic machine configs and many specific models.
|
||||
# ============================================================
|
||||
|
||||
# -- MSX1 main BIOS variants --
|
||||
|
||||
- name: MSX.rom
|
||||
path: "Machines/Shared Roms/MSX.rom"
|
||||
size: 32768
|
||||
required: true
|
||||
system: msx
|
||||
note: "MSX1 generic BIOS. Used by default 'MSX' machine config."
|
||||
source_ref: "system/bluemsx/Machines/MSX/config.ini"
|
||||
|
||||
- name: MSXJ.rom
|
||||
path: "Machines/Shared Roms/MSXJ.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Japanese BIOS. Used by 'MSX - Japanese' machine."
|
||||
source_ref: "system/bluemsx/Machines/MSX - Japanese/config.ini"
|
||||
|
||||
- name: MSXBR.rom
|
||||
path: "Machines/Shared Roms/MSXBR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Brazilian BIOS."
|
||||
|
||||
- name: MSXFR.rom
|
||||
path: "Machines/Shared Roms/MSXFR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 French BIOS."
|
||||
|
||||
- name: MSXG.rom
|
||||
path: "Machines/Shared Roms/MSXG.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 German BIOS."
|
||||
|
||||
- name: MSXKR.rom
|
||||
path: "Machines/Shared Roms/MSXKR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Korean BIOS."
|
||||
|
||||
- name: MSXR.rom
|
||||
path: "Machines/Shared Roms/MSXR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Russian BIOS."
|
||||
|
||||
- name: MSXSE.ROM
|
||||
path: "Machines/Shared Roms/MSXSE.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Swedish BIOS."
|
||||
|
||||
- name: MSXSP.rom
|
||||
path: "Machines/Shared Roms/MSXSP.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Spanish BIOS."
|
||||
|
||||
- name: MSXAR.ROM
|
||||
path: "Machines/Shared Roms/MSXAR.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Arabic BIOS."
|
||||
|
||||
- name: MSXR2.ROM
|
||||
path: "Machines/Shared Roms/MSXR2.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Russian BIOS (variant 2)."
|
||||
|
||||
- name: MSXHAN.rom
|
||||
path: "Machines/Shared Roms/MSXHAN.rom"
|
||||
size: 8192
|
||||
required: false
|
||||
system: msx
|
||||
note: "MSX1 Korean Hangul extension ROM."
|
||||
|
||||
# -- MSX2 main BIOS + extension --
|
||||
|
||||
- name: MSX2.rom
|
||||
path: "Machines/Shared Roms/MSX2.rom"
|
||||
size: 32768
|
||||
required: true
|
||||
system: msx2
|
||||
note: "MSX2 generic main BIOS. Used by default 'MSX2' machine config."
|
||||
source_ref: "system/bluemsx/Machines/MSX2/config.ini"
|
||||
|
||||
- name: MSX2EXT.rom
|
||||
path: "Machines/Shared Roms/MSX2EXT.rom"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msx2
|
||||
note: "MSX2 extension BIOS (SubROM). Required alongside MSX2.rom."
|
||||
source_ref: "system/bluemsx/Machines/MSX2/config.ini"
|
||||
|
||||
- name: MSX2J.rom
|
||||
path: "Machines/Shared Roms/MSX2J.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Japanese main BIOS."
|
||||
|
||||
- name: MSX2JEXT.rom
|
||||
path: "Machines/Shared Roms/MSX2JEXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Japanese extension BIOS."
|
||||
|
||||
- name: MSX2BR.rom
|
||||
path: "Machines/Shared Roms/MSX2BR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Brazilian main BIOS."
|
||||
|
||||
- name: MSX2BREXT.rom
|
||||
path: "Machines/Shared Roms/MSX2BREXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Brazilian extension BIOS."
|
||||
|
||||
- name: MSX2FR.rom
|
||||
path: "Machines/Shared Roms/MSX2FR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 French main BIOS."
|
||||
|
||||
- name: MSX2FREXT.rom
|
||||
path: "Machines/Shared Roms/MSX2FREXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 French extension BIOS."
|
||||
|
||||
- name: MSX2G.rom
|
||||
path: "Machines/Shared Roms/MSX2G.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 German main BIOS."
|
||||
|
||||
- name: MSX2GEXT.rom
|
||||
path: "Machines/Shared Roms/MSX2GEXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 German extension BIOS."
|
||||
|
||||
- name: MSX2KR.rom
|
||||
path: "Machines/Shared Roms/MSX2KR.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Korean main BIOS."
|
||||
|
||||
- name: MSX2KREXT.rom
|
||||
path: "Machines/Shared Roms/MSX2KREXT.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Korean extension BIOS."
|
||||
|
||||
- name: MSX2R.rom
|
||||
path: "Machines/Shared Roms/MSX2R.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Russian main BIOS."
|
||||
|
||||
- name: MSX2REXT.rom
|
||||
path: "Machines/Shared Roms/MSX2REXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Russian extension BIOS."
|
||||
|
||||
- name: MSX2R2.ROM
|
||||
path: "Machines/Shared Roms/MSX2R2.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Russian main BIOS (variant 2)."
|
||||
|
||||
- name: MSX2SE.rom
|
||||
path: "Machines/Shared Roms/MSX2SE.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Swedish main BIOS."
|
||||
|
||||
- name: MSX2SP.rom
|
||||
path: "Machines/Shared Roms/MSX2SP.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Spanish main BIOS."
|
||||
|
||||
- name: MSX2SPEXT.rom
|
||||
path: "Machines/Shared Roms/MSX2SPEXT.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Spanish extension BIOS."
|
||||
|
||||
- name: MSX2AR.ROM
|
||||
path: "Machines/Shared Roms/MSX2AR.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Arabic main BIOS."
|
||||
|
||||
- name: MSX2AREXT.ROM
|
||||
path: "Machines/Shared Roms/MSX2AREXT.ROM"
|
||||
size: 16384
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Arabic extension BIOS."
|
||||
|
||||
- name: MSX2HAN.rom
|
||||
path: "Machines/Shared Roms/MSX2HAN.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
system: msx2
|
||||
note: "MSX2 Korean Hangul BIOS."
|
||||
|
||||
# -- MSX2+ main BIOS + extension --
|
||||
|
||||
- name: MSX2P.rom
|
||||
path: "Machines/Shared Roms/MSX2P.rom"
|
||||
size: 32768
|
||||
required: true
|
||||
system: msx2plus
|
||||
note: "MSX2+ main BIOS. Used by default 'MSX2+' machine config (auto-selected for .dsk/.cas/.rom)."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
- name: MSX2PEXT.rom
|
||||
path: "Machines/Shared Roms/MSX2PEXT.rom"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msx2plus
|
||||
note: "MSX2+ extension BIOS (SubROM)."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
- name: MSX2PMUS.rom
|
||||
path: "Machines/Shared Roms/MSX2PMUS.rom"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msx2plus
|
||||
note: "MSX2+ MSX-MUSIC BIOS (FM-PAC built-in). Used by MSX2+ and MSX2 default configs."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
# -- MSX turboR BIOS set --
|
||||
|
||||
- name: MSXTR.ROM
|
||||
path: "Machines/Shared Roms/MSXTR.ROM"
|
||||
size: 32768
|
||||
required: true
|
||||
system: msxturboR
|
||||
note: "MSX turboR main BIOS."
|
||||
source_ref: "system/bluemsx/Machines/MSXturboR/config.ini"
|
||||
|
||||
- name: MSXTREXT.ROM
|
||||
path: "Machines/Shared Roms/MSXTREXT.ROM"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msxturboR
|
||||
note: "MSX turboR extension BIOS."
|
||||
source_ref: "system/bluemsx/Machines/MSXturboR/config.ini"
|
||||
|
||||
- name: MSXTRMUS.ROM
|
||||
path: "Machines/Shared Roms/MSXTRMUS.ROM"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msxturboR
|
||||
note: "MSX turboR MSX-MUSIC BIOS."
|
||||
source_ref: "system/bluemsx/Machines/MSXturboR/config.ini"
|
||||
|
||||
- name: MSXTROPT.ROM
|
||||
path: "Machines/Shared Roms/MSXTROPT.ROM"
|
||||
size: 16384
|
||||
required: true
|
||||
system: msxturboR
|
||||
note: "MSX turboR option ROM (firmware utilities)."
|
||||
source_ref: "system/bluemsx/Machines/MSXturboR/config.ini"
|
||||
|
||||
- name: MSXDOS23.ROM
|
||||
path: "Machines/Shared Roms/MSXDOS23.ROM"
|
||||
size: 65536
|
||||
required: true
|
||||
system: msxturboR
|
||||
note: "MSX-DOS 2.3 ROM. Used by turboR default config for disk operations."
|
||||
source_ref: "system/bluemsx/Machines/MSXturboR/config.ini"
|
||||
|
||||
# -- Shared utility/extension ROMs --
|
||||
|
||||
- name: KANJI.rom
|
||||
path: "Machines/Shared Roms/KANJI.rom"
|
||||
size: 262144
|
||||
required: false
|
||||
note: "Kanji font ROM (256 KB). Used by MSX2+, turboR, and Japanese MSX2 machines."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
- name: MSXKANJI.rom
|
||||
path: "Machines/Shared Roms/MSXKANJI.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
note: "MSX-Kanji driver ROM. Used by MSX2+, turboR, and Japanese MSX2 for kanji display."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
- name: FMPAC.rom
|
||||
path: "Machines/Shared Roms/FMPAC.rom"
|
||||
size: 65536
|
||||
required: false
|
||||
note: "FM-PAC cartridge ROM (YM2413 FM synthesis). Loaded as expansion cartridge by MegaromCartridge.c."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:290"
|
||||
|
||||
- name: XBASIC2.rom
|
||||
path: "Machines/Shared Roms/XBASIC2.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "MSX-BASIC 2 extension ROM. Used by MSX2, MSX2+, and turboR default configs."
|
||||
source_ref: "system/bluemsx/Machines/MSX2/config.ini"
|
||||
|
||||
- name: PAINT.rom
|
||||
path: "Machines/Shared Roms/PAINT.rom"
|
||||
size: 65536
|
||||
required: false
|
||||
note: "Paint utility ROM. Used by some MSX2 Japanese machine configs."
|
||||
|
||||
- name: SWP.rom
|
||||
path: "Machines/Shared Roms/SWP.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
note: "Software World Processor ROM. Used by Al Alamiah MSX2 machines."
|
||||
|
||||
- name: ARABIC.rom
|
||||
path: "Machines/Shared Roms/ARABIC.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
note: "Arabic character set extension ROM."
|
||||
|
||||
- name: HANGUL.rom
|
||||
path: "Machines/Shared Roms/HANGUL.rom"
|
||||
size: 131072
|
||||
required: false
|
||||
note: "Korean Hangul font ROM (128 KB)."
|
||||
|
||||
- name: RS232.ROM
|
||||
path: "Machines/Shared Roms/RS232.ROM"
|
||||
size: 8192
|
||||
required: false
|
||||
note: "RS-232C serial interface ROM."
|
||||
|
||||
- name: MOONSOUND.rom
|
||||
path: "Machines/Shared Roms/MOONSOUND.rom"
|
||||
size: 2097152
|
||||
required: false
|
||||
note: "MoonSound (OPL4) wavetable ROM (2 MB). Used by MSX2, MSX2+, and turboR configs."
|
||||
source_ref: "system/bluemsx/Machines/MSX2/config.ini"
|
||||
|
||||
# -- Disk controller ROMs --
|
||||
|
||||
- name: PANASONICDISK.rom
|
||||
path: "Machines/Shared Roms/PANASONICDISK.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "Panasonic disk controller ROM. Used by MSX2+ and turboR default configs."
|
||||
source_ref: "system/bluemsx/Machines/MSX2+/config.ini"
|
||||
|
||||
- name: PHILIPSDISK.rom
|
||||
path: "Machines/Shared Roms/PHILIPSDISK.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "Philips disk controller ROM. Used by MSX1 and MSX2 default configs."
|
||||
source_ref: "system/bluemsx/Machines/MSX/config.ini"
|
||||
|
||||
- name: NATIONALDISK.rom
|
||||
path: "Machines/Shared Roms/NATIONALDISK.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "National disk controller ROM."
|
||||
|
||||
- name: MICROSOLDISK.ROM
|
||||
path: "Machines/Shared Roms/MICROSOLDISK.ROM"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "Microsol disk controller ROM."
|
||||
|
||||
# -- Expansion hardware ROMs --
|
||||
|
||||
- name: SUNRISEIDE.rom
|
||||
path: "Machines/Shared Roms/SUNRISEIDE.rom"
|
||||
size: 65536
|
||||
required: false
|
||||
note: "Sunrise IDE interface ROM. Loaded as expansion cartridge."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:310"
|
||||
|
||||
- name: BEERIDE.ROM
|
||||
path: "Machines/Shared Roms/BEERIDE.ROM"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "Beer IDE interface ROM."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:318"
|
||||
|
||||
- name: NOVAXIS.rom
|
||||
path: "Machines/Shared Roms/NOVAXIS.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
note: "Novaxis SCSI interface ROM."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:326"
|
||||
|
||||
- name: nowindDos1.rom
|
||||
path: "Machines/Shared Roms/nowindDos1.rom"
|
||||
size: 524288
|
||||
required: false
|
||||
note: "Nowind USB disk interface with MSX-DOS 1."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:334"
|
||||
|
||||
- name: nowindDos2.rom
|
||||
path: "Machines/Shared Roms/nowindDos2.rom"
|
||||
size: 524288
|
||||
required: false
|
||||
note: "Nowind USB disk interface with MSX-DOS 2."
|
||||
source_ref: "Src/Memory/MegaromCartridge.c:338"
|
||||
|
||||
- name: GCVMX80.ROM
|
||||
path: "Machines/Shared Roms/GCVMX80.ROM"
|
||||
size: 8192
|
||||
required: false
|
||||
note: "GCV MX-80 printer interface ROM."
|
||||
|
||||
- name: ARAB1.ROM
|
||||
path: "Machines/Shared Roms/ARAB1.ROM"
|
||||
size: 32768
|
||||
required: false
|
||||
note: "Arabic support ROM (variant 1)."
|
||||
|
||||
# ============================================================
|
||||
# C-BIOS ROMs (open source, bundled with core)
|
||||
# These are pre-installed and do not require user-supplied files.
|
||||
# ============================================================
|
||||
|
||||
- name: cbios_main_msx1.rom
|
||||
path: "Machines/MSX - C-BIOS/cbios_main_msx1.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx
|
||||
note: "C-BIOS MSX1 main ROM (open source). Bundled with core. Cartridge games only."
|
||||
|
||||
- name: cbios_logo_msx1.rom
|
||||
path: "Machines/MSX - C-BIOS/cbios_logo_msx1.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx
|
||||
note: "C-BIOS MSX1 logo ROM (open source). Bundled with core."
|
||||
|
||||
- name: cbios_main_msx2.rom
|
||||
path: "Machines/MSX2 - C-BIOS/cbios_main_msx2.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2
|
||||
note: "C-BIOS MSX2 main ROM (open source). Bundled with core. Cartridge games only."
|
||||
|
||||
- name: cbios_logo_msx2.rom
|
||||
path: "Machines/MSX2 - C-BIOS/cbios_logo_msx2.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2
|
||||
note: "C-BIOS MSX2 logo ROM (open source). Bundled with core."
|
||||
|
||||
- name: cbios_sub.rom
|
||||
path: "Machines/MSX2 - C-BIOS/cbios_sub.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2
|
||||
note: "C-BIOS MSX2/MSX2+ sub ROM (open source). Bundled with core."
|
||||
|
||||
- name: "cbios_main_msx2+.rom"
|
||||
path: "Machines/MSX2+ - C-BIOS/cbios_main_msx2+.rom"
|
||||
size: 32768
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2plus
|
||||
note: "C-BIOS MSX2+ main ROM (open source). Bundled with core. Cartridge games only."
|
||||
|
||||
- name: "cbios_logo_msx2+.rom"
|
||||
path: "Machines/MSX2+ - C-BIOS/cbios_logo_msx2+.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2plus
|
||||
note: "C-BIOS MSX2+ logo ROM (open source). Bundled with core."
|
||||
|
||||
- name: cbios_music.rom
|
||||
path: "Machines/MSX2+ - C-BIOS/cbios_music.rom"
|
||||
size: 16384
|
||||
required: false
|
||||
bundled: true
|
||||
system: msx2plus
|
||||
note: "C-BIOS MSX2+ music ROM (open source). Bundled with core."
|
||||
|
||||
# ============================================================
|
||||
# ColecoVision BIOS
|
||||
# ============================================================
|
||||
|
||||
- name: coleco.rom
|
||||
path: "Machines/COL - ColecoVision/coleco.rom"
|
||||
size: 8192
|
||||
required: true
|
||||
system: colecovision
|
||||
note: "ColecoVision BIOS ROM. Required for ColecoVision mode."
|
||||
source_ref: "system/bluemsx/Machines/COL - ColecoVision/config.ini"
|
||||
|
||||
# ============================================================
|
||||
# SEGA SF-7000 BIOS
|
||||
# SG-1000 and SC-3000 do not require BIOS ROMs.
|
||||
# ============================================================
|
||||
|
||||
- name: sf7000.rom
|
||||
path: "Machines/SEGA - SF-7000/sf7000.rom"
|
||||
size: 8192
|
||||
required: true
|
||||
system: sega-sf7000
|
||||
note: "Sega SF-7000 BIOS ROM. SG-1000 and SC-3000 have no BIOS requirement."
|
||||
source_ref: "system/bluemsx/Machines/SEGA - SF-7000/config.ini"
|
||||
|
||||
# ============================================================
|
||||
# Spectravideo SVI BIOS files
|
||||
# ============================================================
|
||||
|
||||
- name: svi318.rom
|
||||
path: "Machines/SVI - Spectravideo SVI-318/svi318.rom"
|
||||
size: 32768
|
||||
required: true
|
||||
system: spectravideo
|
||||
note: "SVI-318 BIOS ROM."
|
||||
source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-318/config.ini"
|
||||
|
||||
- name: svi328.rom
|
||||
path: "Machines/SVI - Spectravideo SVI-328/svi328.rom"
|
||||
size: 32768
|
||||
required: true
|
||||
system: spectravideo
|
||||
note: "SVI-328 BIOS ROM."
|
||||
source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328/config.ini"
|
||||
|
||||
# ============================================================
|
||||
# Databases (required for ROM identification/mapper detection)
|
||||
# Shipped with the core, not user-supplied.
|
||||
# ============================================================
|
||||
|
||||
- name: msxromdb.xml
|
||||
path: "Databases/msxromdb.xml"
|
||||
required: false
|
||||
bundled: true
|
||||
note: "MSX ROM database for mapper auto-detection. Bundled with core."
|
||||
|
||||
- name: msxsysromdb.xml
|
||||
path: "Databases/msxsysromdb.xml"
|
||||
required: false
|
||||
bundled: true
|
||||
note: "MSX system ROM database. Bundled with core."
|
||||
|
||||
# Machine count: 170+ machine configurations covering dozens of regional MSX
|
||||
# variants from manufacturers like Panasonic, Sony, Philips, Yamaha, Sanyo,
|
||||
# National, Toshiba, Daewoo, Sharp, Gradiente, Spectravideo, and others.
|
||||
# Each has its own ROM set in its own subdirectory. The Shared Roms directory
|
||||
# covers the generic/default configs that most users will need.
|
||||
189
emulators/bsnes.yml
Normal file
189
emulators/bsnes.yml
Normal file
@@ -0,0 +1,189 @@
|
||||
emulator: bsnes
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/bsnes-libretro"
|
||||
systems: [nintendo-snes, nintendo-super-game-boy, nintendo-satellaview]
|
||||
|
||||
# bsnes supports HLE for DSP1/DSP1B/DSP2/DSP4, ST010, and Cx4.
|
||||
# When HLE is enabled (core option bsnes_coprocessor_prefer_hle) or
|
||||
# when LLE firmware files are missing, bsnes falls back to HLE automatically.
|
||||
# DSP3 and ST011 have no HLE fallback - LLE firmware is required.
|
||||
# SGB boot ROMs are embedded in the core (icd/boot-roms.cpp), but the SGB
|
||||
# cartridge ROM (SGB1.sfc / SGB2.sfc) must be provided for Game Boy support.
|
||||
|
||||
# All coprocessor firmware loaded via system directory lookup:
|
||||
# RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY -> "{sysdir}/{identifier}.{type}.rom"
|
||||
# SGB BIOS loaded from: "{sysdir}/{SGB1.sfc|SGB2.sfc}" (core option bsnes_sgb_bios)
|
||||
# BS-X BIOS loaded from: "{sysdir}/BS-X.bin"
|
||||
|
||||
files:
|
||||
# -- NEC uPD7725 coprocessor (DSP1, DSP1B, DSP2, DSP3, DSP4) --
|
||||
# Used by: Pilotwings (DSP1), Super Mario Kart (DSP1B), Dungeon Master (DSP2),
|
||||
# SD Gundam GX (DSP3), Top Gear 3000 / Planets Champ TG3000 (DSP4)
|
||||
# program ROM: 2048 x 24-bit words, data ROM: 1024 x 16-bit words
|
||||
|
||||
- name: "dsp1.program.rom"
|
||||
size: 6144 # 0x1800
|
||||
required: false
|
||||
note: "NEC uPD7725 program ROM for DSP1. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:490-494, heuristics/super-famicom.cpp:601"
|
||||
|
||||
- name: "dsp1.data.rom"
|
||||
size: 2048 # 0x800
|
||||
required: false
|
||||
note: "NEC uPD7725 data ROM for DSP1. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:498-503"
|
||||
|
||||
- name: "dsp1b.program.rom"
|
||||
size: 6144 # 0x1800
|
||||
required: false
|
||||
note: "NEC uPD7725 program ROM for DSP1B (default NEC identifier). HLE fallback available"
|
||||
source_ref: "heuristics/super-famicom.cpp:606"
|
||||
|
||||
- name: "dsp1b.data.rom"
|
||||
size: 2048 # 0x800
|
||||
required: false
|
||||
note: "NEC uPD7725 data ROM for DSP1B. HLE fallback available"
|
||||
source_ref: "heuristics/super-famicom.cpp:606"
|
||||
|
||||
- name: "dsp2.program.rom"
|
||||
size: 6144 # 0x1800
|
||||
required: false
|
||||
note: "NEC uPD7725 program ROM for DSP2 (Dungeon Master). HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:515-520, heuristics/super-famicom.cpp:602"
|
||||
|
||||
- name: "dsp2.data.rom"
|
||||
size: 2048 # 0x800
|
||||
required: false
|
||||
note: "NEC uPD7725 data ROM for DSP2. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:498-503"
|
||||
|
||||
- name: "dsp3.program.rom"
|
||||
size: 6144 # 0x1800
|
||||
required: true
|
||||
note: "NEC uPD7725 program ROM for DSP3 (SD Gundam GX). No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:531-534"
|
||||
|
||||
- name: "dsp3.data.rom"
|
||||
size: 2048 # 0x800
|
||||
required: true
|
||||
note: "NEC uPD7725 data ROM for DSP3. No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:531-534"
|
||||
|
||||
- name: "dsp4.program.rom"
|
||||
size: 6144 # 0x1800
|
||||
required: false
|
||||
note: "NEC uPD7725 program ROM for DSP4 (Top Gear 3000). HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:522-528, heuristics/super-famicom.cpp:604-605"
|
||||
|
||||
- name: "dsp4.data.rom"
|
||||
size: 2048 # 0x800
|
||||
required: false
|
||||
note: "NEC uPD7725 data ROM for DSP4. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:498-503"
|
||||
|
||||
# -- NEC uPD96050 coprocessor (ST010, ST011) --
|
||||
# Used by: Exhaust Heat 2 / F1 ROC II (ST010), 2dan Morita Shougi (ST011)
|
||||
# program ROM: 16384 x 24-bit words, data ROM: 2048 x 16-bit words
|
||||
|
||||
- name: "st010.program.rom"
|
||||
size: 49152 # 0xC000
|
||||
required: false
|
||||
note: "NEC uPD96050 program ROM for ST010. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:570-574, heuristics/super-famicom.cpp:583-587"
|
||||
|
||||
- name: "st010.data.rom"
|
||||
size: 4096 # 0x1000
|
||||
required: false
|
||||
note: "NEC uPD96050 data ROM for ST010. HLE fallback available"
|
||||
source_ref: "sfc/cartridge/load.cpp:578-583"
|
||||
|
||||
- name: "st011.program.rom"
|
||||
size: 49152 # 0xC000
|
||||
required: true
|
||||
note: "NEC uPD96050 program ROM for ST011 (2dan Morita Shougi). No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:599-601, heuristics/super-famicom.cpp:586"
|
||||
|
||||
- name: "st011.data.rom"
|
||||
size: 4096 # 0x1000
|
||||
required: true
|
||||
note: "NEC uPD96050 data ROM for ST011. No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:599-601"
|
||||
|
||||
# -- SETA ST018 (ARM6 coprocessor) --
|
||||
# Used by: Hayazashi Nidan Morita Shougi
|
||||
# No HLE fallback exists
|
||||
|
||||
- name: "st018.program.rom"
|
||||
size: 131072 # 0x20000 (128 KB)
|
||||
required: true
|
||||
note: "ARM6 program ROM for ST018 (Hayazashi Nidan Morita Shougi). No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:379-385, armdsp/armdsp.hpp:31, heuristics/super-famicom.cpp:580"
|
||||
|
||||
- name: "st018.data.rom"
|
||||
size: 32768 # 0x8000 (32 KB)
|
||||
required: true
|
||||
note: "ARM6 data ROM for ST018. No HLE fallback"
|
||||
source_ref: "sfc/cartridge/load.cpp:387-393, armdsp/armdsp.hpp:32"
|
||||
|
||||
# -- Hitachi HG51BS169 (Cx4 coprocessor) --
|
||||
# Used by: Mega Man X2, Mega Man X3
|
||||
# HLE fallback available (configuration.hacks.coprocessor.preferHLE)
|
||||
# Built-in staticDataROM fallback also present for LLE when file missing
|
||||
|
||||
- name: "cx4.data.rom"
|
||||
size: 3072 # 0xC00
|
||||
required: false
|
||||
note: "Hitachi HG51BS169 data ROM for Cx4 (Mega Man X2/X3). HLE fallback and built-in static ROM available"
|
||||
source_ref: "sfc/cartridge/load.cpp:444-456, hitachidsp/hitachidsp.hpp:49, heuristics/super-famicom.cpp:597"
|
||||
|
||||
# -- Super Game Boy cartridge ROM --
|
||||
# The SGB boot ROMs (256 bytes each) are embedded in icd/boot-roms.cpp.
|
||||
# But the actual SGB cartridge ROM must be supplied for Game Boy game support.
|
||||
# Core option bsnes_sgb_bios selects between SGB1.sfc and SGB2.sfc.
|
||||
|
||||
- name: "SGB1.sfc"
|
||||
required: false
|
||||
note: "Super Game Boy 1 cartridge ROM. Needed to play Game Boy games via SGB mode"
|
||||
source_ref: "target-libretro/libretro.cpp:689,933, target-libretro/libretro_core_options.h:689"
|
||||
|
||||
- name: "SGB2.sfc"
|
||||
required: false
|
||||
note: "Super Game Boy 2 cartridge ROM. Uses dedicated oscillator for accurate GB speed"
|
||||
source_ref: "target-libretro/libretro.cpp:690,933, target-libretro/libretro_core_options.h:690"
|
||||
|
||||
# -- BS-X Satellaview BIOS --
|
||||
# Required for loading .bs (BS Memory) format games.
|
||||
# Hardcoded filename in libretro.cpp.
|
||||
|
||||
- name: "BS-X.bin"
|
||||
required: true
|
||||
note: "BS-X Satellaview BIOS ROM. Required for .bs format Satellaview games"
|
||||
source_ref: "target-libretro/libretro.cpp:948, target-libretro/program.cpp:790-799"
|
||||
|
||||
notes:
|
||||
hle_available: true
|
||||
hle_note: >
|
||||
bsnes provides HLE for DSP1, DSP1B, DSP2, DSP4, ST010, and Cx4.
|
||||
Controlled by core option bsnes_coprocessor_prefer_hle (default ON).
|
||||
DSP3, ST011, and ST018 have no HLE - LLE firmware files are mandatory
|
||||
for the few games that use them.
|
||||
sgb_note: >
|
||||
SGB boot ROMs (256 bytes each for SGB1/SGB2) are compiled into the core
|
||||
at icd/boot-roms.cpp. The SGB cartridge ROM (SGB1.sfc or SGB2.sfc) is a
|
||||
separate requirement. Core option bsnes_sgb_bios selects which one to use
|
||||
(default SGB1.sfc). Loading .gb/.gbc files auto-loads the selected SGB ROM.
|
||||
firmware_resolution: >
|
||||
Firmware filenames are derived from the game manifest identifier field
|
||||
(lowercased) plus ".program.rom" or ".data.rom" suffix. The mapping is:
|
||||
NEC uPD7725 -> dsp1/dsp1b/dsp2/dsp3/dsp4, NEC uPD96050 -> st010/st011,
|
||||
ARM6 -> st018, HG51BS169 -> cx4. Firmware can also be appended directly
|
||||
to the ROM image (auto-detected by firmwareRomSize heuristic).
|
||||
embedded_firmware: >
|
||||
If firmware data is appended to the game ROM, bsnes splits it automatically
|
||||
based on firmwareRomSize() detection. Sizes: uPD7725=0x2000, uPD96050=0xD000,
|
||||
ARM6=0x28000, HG51BS169=0xC00. This eliminates the need for separate files
|
||||
when using combined ROM+firmware dumps.
|
||||
cx4_static_fallback: >
|
||||
The Cx4 (HG51BS169) has a compiled-in static data ROM (hitachidsp/staticDataROM)
|
||||
as fallback when cx4.data.rom is missing and HLE is disabled. This means
|
||||
Mega Man X2/X3 work in all configurations without user-supplied firmware.
|
||||
1343
emulators/fbneo.yml
Normal file
1343
emulators/fbneo.yml
Normal file
File diff suppressed because it is too large
Load Diff
52
emulators/fceumm.yml
Normal file
52
emulators/fceumm.yml
Normal file
@@ -0,0 +1,52 @@
|
||||
emulator: FCEUmm
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/libretro-fceumm"
|
||||
systems: [nintendo-nes, nintendo-fds]
|
||||
|
||||
notes: |
|
||||
FCEUmm (FCE Ultra mappers modified) is a NES/Famicom emulator.
|
||||
NES cartridge games need no BIOS. Famicom Disk System games require
|
||||
the FDS BIOS ROM (disksys.rom, 8 KB) loaded from the system directory.
|
||||
Game Genie emulation is an optional core feature (disabled by default)
|
||||
that requires gamegenie.nes in the system directory.
|
||||
An optional external palette file (nes.pal, 192 bytes, 64 RGB triplets)
|
||||
can override the built-in NES palette when the core option is set to Custom.
|
||||
NstDatabase.xml is NOT used by FCEUmm (that is Nestopia's database).
|
||||
|
||||
File path construction: src/general.c FCEU_MakeFName() joins the
|
||||
system directory (RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY) with each
|
||||
filename directly - no subdirectories.
|
||||
|
||||
files:
|
||||
# --- Famicom Disk System BIOS (required for FDS games) ---
|
||||
- name: "disksys.rom"
|
||||
system: nintendo-fds
|
||||
description: "FDS BIOS ROM"
|
||||
required: true
|
||||
size: 8192
|
||||
md5: "ca30b50f880eb660a320674ed365ef7a"
|
||||
sha1: "57fe1bdee955bb48d357e463ccbf129496930b62"
|
||||
source_ref: "src/fds.c:636-667 (FDSLoad), src/general.c:64-66 (FCEUMKF_FDSROM)"
|
||||
notes: "Loaded at 0xE000, mapped as 8 KB PRG bank 0. Load fails with error if missing or short read."
|
||||
|
||||
# --- Game Genie ROM (optional, core option fceumm_game_genie) ---
|
||||
- name: "gamegenie.nes"
|
||||
system: nintendo-nes
|
||||
description: "Game Genie add-on cartridge ROM"
|
||||
required: false
|
||||
size: 24592
|
||||
md5: "7f98d77d7a094ad7d069b74bd553ec98"
|
||||
sha1: "f430a0d752a9fa0c7032db8131f9090d18f71779"
|
||||
source_ref: "src/cart.c:351-389 (OpenGenie), src/general.c:60-62 (FCEUMKF_GGROM)"
|
||||
notes: "iNES format ROM (4 KB PRG + 256 bytes CHR). Core option disabled by default. Does not apply to FDS or arcade content."
|
||||
|
||||
# --- Custom palette (optional, core option fceumm_palette) ---
|
||||
- name: "nes.pal"
|
||||
system: nintendo-nes
|
||||
description: "External NES color palette"
|
||||
required: false
|
||||
size: 192
|
||||
md5: "aaf3666e4ed478e2964b46d6a7aa27ad"
|
||||
sha1: "37027d92e1015b82a7dc5c43e9f1649a961577ab"
|
||||
source_ref: "src/general.c:68-70 (FCEUMKF_PALETTE), src/drivers/libretro/libretro.c:1791"
|
||||
notes: "64 RGB triplets (64 x 3 bytes). Only loaded when palette core option is set to Custom. Multiple valid palettes exist."
|
||||
154
emulators/genesis_plus_gx.yml
Normal file
154
emulators/genesis_plus_gx.yml
Normal file
@@ -0,0 +1,154 @@
|
||||
emulator: Genesis Plus GX
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/Genesis-Plus-GX"
|
||||
cores:
|
||||
- genesis_plus_gx
|
||||
- genesis_plus_gx_wide
|
||||
systems:
|
||||
- sega-megadrive
|
||||
- sega-megacd
|
||||
- sega-mastersystem
|
||||
- sega-gamegear
|
||||
- sega-sg1000
|
||||
|
||||
notes: |
|
||||
Genesis Plus GX is a Sega 8/16-bit emulator covering SG-1000, Master System,
|
||||
Game Gear, Mega Drive/Genesis, and Mega CD/Sega CD.
|
||||
|
||||
BIOS loading is handled by load_bios() in core/loadrom.c. The libretro port
|
||||
resolves filenames from the system directory in libretro/libretro.c:3516-3527.
|
||||
|
||||
Mega CD BIOS is required to boot CD images (load fails without it).
|
||||
Master System, Game Gear, and Mega Drive BIOS files are optional boot ROMs
|
||||
gated behind the "genesis_plus_gx_bios" core option (config.bios).
|
||||
Lock-on ROMs (Game Genie, Action Replay, Sonic & Knuckles) are optional
|
||||
and loaded only when the corresponding lock-on feature is enabled.
|
||||
|
||||
files:
|
||||
# -------------------------------------------------------
|
||||
# Sega Mega CD / Sega CD - boot ROMs (required for CD)
|
||||
# -------------------------------------------------------
|
||||
- name: bios_CD_U.bin
|
||||
system: sega-megacd
|
||||
required: true
|
||||
size: 131072 # 128 KB (0x20000)
|
||||
note: "Sega CD (NTSC-U) boot ROM. Loaded for REGION_USA."
|
||||
source_ref: "core/loadrom.c:409"
|
||||
|
||||
- name: bios_CD_E.bin
|
||||
system: sega-megacd
|
||||
required: true
|
||||
size: 131072
|
||||
note: "Mega CD (PAL) boot ROM. Loaded for REGION_EUROPE."
|
||||
source_ref: "core/loadrom.c:412"
|
||||
|
||||
- name: bios_CD_J.bin
|
||||
system: sega-megacd
|
||||
required: true
|
||||
size: 131072
|
||||
note: "Mega CD (NTSC-J) boot ROM. Loaded for default/Japan region."
|
||||
source_ref: "core/loadrom.c:415"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Sega Master System - boot ROMs (optional, behind config.bios)
|
||||
# -------------------------------------------------------
|
||||
- name: bios_U.sms
|
||||
system: sega-mastersystem
|
||||
required: false
|
||||
note: "Master System (NTSC-U) boot ROM. Snail maze game built in."
|
||||
source_ref: "core/loadrom.c:511"
|
||||
|
||||
- name: bios_E.sms
|
||||
system: sega-mastersystem
|
||||
required: false
|
||||
note: "Master System (PAL) boot ROM. Snail maze / Sonic built in."
|
||||
source_ref: "core/loadrom.c:514"
|
||||
|
||||
- name: bios_J.sms
|
||||
system: sega-mastersystem
|
||||
required: false
|
||||
note: "Master System (NTSC-J) boot ROM."
|
||||
source_ref: "core/loadrom.c:517"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Sega Game Gear - boot ROM (optional, behind config.bios)
|
||||
# -------------------------------------------------------
|
||||
- name: bios.gg
|
||||
system: sega-gamegear
|
||||
required: false
|
||||
note: "Game Gear boot ROM (Majesco 1KB or standard). Shows startup logo."
|
||||
source_ref: "core/loadrom.c:480"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Sega Mega Drive / Genesis - TMSS boot ROM (optional)
|
||||
# -------------------------------------------------------
|
||||
- name: bios_MD.bin
|
||||
system: sega-megadrive
|
||||
required: false
|
||||
size: 2048 # 2 KB (0x800)
|
||||
note: "Mega Drive TMSS boot ROM. Shows 'Produced by or under license' screen."
|
||||
source_ref: "libretro/libretro.c:3651"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Lock-on ROMs (optional, feature-gated)
|
||||
# -------------------------------------------------------
|
||||
- name: ggenie.bin
|
||||
system: sega-megadrive
|
||||
required: false
|
||||
size: 32768 # 32 KB (0x8000)
|
||||
note: "Game Genie ROM. Loaded when Game Genie lock-on is enabled."
|
||||
source_ref: "core/cart_hw/ggenie.c:64"
|
||||
|
||||
- name: areplay.bin
|
||||
system: sega-megadrive
|
||||
required: false
|
||||
size: 65536 # max 64 KB (0x10000)
|
||||
note: "Action Replay (Pro) ROM. Loaded when Action Replay lock-on is enabled."
|
||||
source_ref: "core/cart_hw/areplay.c:64"
|
||||
|
||||
- name: sk.bin
|
||||
system: sega-megadrive
|
||||
required: false
|
||||
size: 2097152 # 2 MB (0x200000)
|
||||
note: "Sonic & Knuckles ROM. Required for S&K lock-on feature."
|
||||
source_ref: "core/cart_hw/md_cart.c:867"
|
||||
|
||||
- name: sk2chip.bin
|
||||
system: sega-megadrive
|
||||
required: false
|
||||
size: 262144 # 256 KB (0x40000)
|
||||
note: "Sonic & Knuckles UPMEM ROM. Used by Sonic 2 & Knuckles lock-on."
|
||||
source_ref: "core/cart_hw/md_cart.c:873"
|
||||
|
||||
platform_details:
|
||||
megacd:
|
||||
bootrom_size: 131072 # 128 KB
|
||||
source_ref: "core/cd_hw/scd.h:73"
|
||||
notes: |
|
||||
CD boot ROM region is auto-detected from disc image header.
|
||||
Hardware model detected from boot ROM string at offset 0x120:
|
||||
WONDER-MEGA BOOT -> Wondermega
|
||||
WONDERMEGA2 BOOT -> Wondermega M2 / X'Eye
|
||||
CDX BOOT ROM -> CDX / Multi-Mega
|
||||
|
||||
megadrive:
|
||||
tmss_rom_size: 2048 # 2 KB
|
||||
source_ref: "libretro/libretro.c:3648-3666"
|
||||
notes: |
|
||||
TMSS boot ROM validated by checking "GENESIS OS" at offset 0x120.
|
||||
Only loaded when genesis_plus_gx_bios core option is enabled.
|
||||
|
||||
mastersystem:
|
||||
bios_max_size: 4194304 # 4 MB (stored above cart ROM)
|
||||
source_ref: "core/loadrom.c:504-527"
|
||||
notes: |
|
||||
BIOS ROM loaded into cart.rom + 0x400000. SEGA mapper assumed
|
||||
for ROMs larger than 48KB, otherwise no mapper.
|
||||
Region selected based on current region_code setting.
|
||||
|
||||
gamegear:
|
||||
bios_max_size: 4194304 # 4 MB (stored above cart ROM)
|
||||
source_ref: "core/loadrom.c:467-489"
|
||||
notes: |
|
||||
Handles 1KB Majesco GG BIOS (mapped to $0000-$03FF) and
|
||||
standard larger BIOS ROMs.
|
||||
84
emulators/hatari.yml
Normal file
84
emulators/hatari.yml
Normal file
@@ -0,0 +1,84 @@
|
||||
emulator: Hatari
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/hatari"
|
||||
systems: [atari-st, atari-ste, atari-tt, atari-falcon]
|
||||
|
||||
# Hatari requires a TOS ROM image to boot. The default filename is tos.img,
|
||||
# loaded from either system/ or system/hatari/tos/ (libretro core scans both).
|
||||
# EmuTOS (open source replacement) is detected via 'ETOS' magic at offset 0x2c.
|
||||
# Cartridge ROM is optional and loaded from szCartridgeImageFileName config.
|
||||
|
||||
# TOS version/machine compatibility (enforced in tos.c TOS_CheckSysConfig):
|
||||
# TOS 1.00-1.04 -> ST only, 68000
|
||||
# TOS 1.06/1.62 -> STE only
|
||||
# TOS 2.0x -> ST/STE (patched for ST compatibility)
|
||||
# TOS 3.0x -> TT only, 68030+
|
||||
# TOS 4.0x -> Falcon only, 68020+
|
||||
# EmuTOS -> all machine types (no version constraint)
|
||||
|
||||
# Libretro core search paths (libretro.c):
|
||||
# 1. <system>/tos.img (legacy default)
|
||||
# 2. <system>/hatari/tos/ directory (all .img/.rom/.tos files listed as options)
|
||||
# Core option "hatari_tosimage" selects which TOS image to use.
|
||||
|
||||
files:
|
||||
# -- Primary TOS ROM (required) --
|
||||
# At minimum one TOS image must be present. The most commonly used
|
||||
# version is TOS 1.02, which is the default for Atari ST emulation.
|
||||
|
||||
- name: "tos.img"
|
||||
path: "tos.img"
|
||||
required: true
|
||||
note: >
|
||||
TOS ROM image. Any valid version (1.00 through 4.04) or EmuTOS works.
|
||||
The core auto-detects version from the ROM header and adjusts machine type.
|
||||
Default location is system/tos.img, additional images go in system/hatari/tos/.
|
||||
source_ref: "src/tos.c:576-696, libretro/libretro.c:387-410"
|
||||
|
||||
# -- Cartridge ROM (optional) --
|
||||
# External cartridge image, max 128 KB. Formats: .img, .rom, .stc
|
||||
# Cannot be used together with GEMDOS HD emulation or extended VDI resolution.
|
||||
|
||||
- name: "cartridge ROM"
|
||||
path: null # user-configured via szCartridgeImageFileName
|
||||
required: false
|
||||
max_size: 131076 # 0x20004 (.stc with 4-byte header) or 0x20000 (raw)
|
||||
note: >
|
||||
External cartridge image. Loaded to address 0xFA0000.
|
||||
STC format images (0x20004 bytes) have a 4-byte header that is stripped.
|
||||
Mutually exclusive with GEMDOS hard disk emulation and extended VDI.
|
||||
source_ref: "src/cart.c:53-88"
|
||||
|
||||
# Supported TOS versions (from patch table in tos.c):
|
||||
# 0x100 - TOS 1.00 (ST, 68000 only, no VDI extensions)
|
||||
# 0x102 - TOS 1.02 (ST, most common for gaming)
|
||||
# 0x104 - TOS 1.04 (ST, adds autostart support)
|
||||
# 0x106 - TOS 1.06 (STE only)
|
||||
# 0x162 - TOS 1.62 (STE only)
|
||||
# 0x205 - TOS 2.05 (STE native, patched for ST)
|
||||
# 0x206 - TOS 2.06 (STE/ST)
|
||||
# 0x306 - TOS 3.06 (TT, 68030+)
|
||||
# 0x400 - TOS 4.00 (Falcon, 68020+)
|
||||
# 0x401 - TOS 4.01 (Falcon)
|
||||
# 0x402 - TOS 4.02 (Falcon)
|
||||
# 0x404 - TOS 4.04 (Falcon)
|
||||
# 0x492 - TOS 4.92 (RAM TOS variant)
|
||||
|
||||
# TOS ROM sizes (typical):
|
||||
# 192 KB (0x30000) - TOS 1.0x (loaded at 0xFC0000)
|
||||
# 256 KB (0x40000) - TOS 2.0x+ (loaded at 0xE00000)
|
||||
# Up to 1 MB - maximum accepted by the loader
|
||||
|
||||
# File extensions scanned: .img, .rom, .tos
|
||||
|
||||
notes:
|
||||
emutos_note: >
|
||||
EmuTOS is a free open-source TOS replacement that works with all machine types.
|
||||
Hatari detects it via the 'ETOS' signature at ROM offset 0x2c and skips
|
||||
machine-type enforcement and ROM patches.
|
||||
gemdos_boot_note: >
|
||||
When using GEMDOS hard disk mode with .gem files, the core also loads
|
||||
system/hatari/BOOT.ST as a floppy image for bootstrapping.
|
||||
libretro_path_note: >
|
||||
The libretro core checks system/tos.img first for backward compatibility,
|
||||
then scans system/hatari/tos/ for additional TOS images exposed as core options.
|
||||
175
emulators/picodrive.yml
Normal file
175
emulators/picodrive.yml
Normal file
@@ -0,0 +1,175 @@
|
||||
emulator: PicoDrive
|
||||
type: libretro
|
||||
source: "https://github.com/libretro/picodrive"
|
||||
systems:
|
||||
- sega-megadrive
|
||||
- sega-genesis
|
||||
- sega-megacd
|
||||
- sega-segacd
|
||||
- sega-32x
|
||||
- sega-mastersystem
|
||||
- sega-gamegear
|
||||
- sega-sg1000
|
||||
- sega-pico
|
||||
|
||||
notes: |
|
||||
PicoDrive is a fast Mega Drive / Genesis emulator with Mega CD, 32X, Master
|
||||
System, Game Gear, SG-1000 and Sega Pico support.
|
||||
|
||||
Mega CD / Sega CD games require a region-matching BIOS file. The core searches
|
||||
the system directory for each name in order, trying .bin then .zip extension,
|
||||
and uses the first file found. If no BIOS is found, CD games fail to load with
|
||||
PM_BAD_CD_NO_BIOS. MSU-MD games can run without BIOS.
|
||||
|
||||
BIOS filename search order (platform/libretro/libretro.c:1265-1329):
|
||||
US: us_scd2_9306, SegaCDBIOS9303, us_scd1_9210, bios_CD_U
|
||||
EU: eu_mcd2_9306, eu_mcd2_9303, eu_mcd1_9210, bios_CD_E
|
||||
JP: jp_mcd2_921222, jp_mcd1_9112, jp_mcd1_9111, bios_CD_J
|
||||
|
||||
32X BIOS files (m68k, master SH2, slave SH2) are fully optional. The core
|
||||
has built-in HLE that generates replacement code at startup when the external
|
||||
BIOS pointers are NULL (pico/32x/memory.c:2200 get_bios(), pico/32x/32x.c:172).
|
||||
The libretro frontend does not expose any 32X BIOS loading path. Only the
|
||||
standalone platform code references 32X_M_BIOS.BIN / 32X_S_BIOS.BIN, and
|
||||
that code is currently disabled (#if 0 in platform/common/emu.c:1529).
|
||||
|
||||
Master System, Game Gear, SG-1000: no BIOS file loaded. The core initializes
|
||||
VDP registers and RAM to simulate post-BIOS state (pico/sms.c:1080-1096).
|
||||
|
||||
files:
|
||||
# -------------------------------------------------------
|
||||
# Mega CD / Sega CD - US region
|
||||
# -------------------------------------------------------
|
||||
- name: "us_scd2_9306.bin"
|
||||
system: sega-segacd
|
||||
required: true
|
||||
size: 131072 # 128 KB (0x20000)
|
||||
note: "US Sega CD Model 2 BIOS (September 1993). First in US search order."
|
||||
source_ref: "platform/libretro/libretro.c:1266"
|
||||
|
||||
- name: "SegaCDBIOS9303.bin"
|
||||
system: sega-segacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "US Sega CD BIOS (March 1993). Second in US search order."
|
||||
source_ref: "platform/libretro/libretro.c:1266"
|
||||
|
||||
- name: "us_scd1_9210.bin"
|
||||
system: sega-segacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "US Sega CD Model 1 BIOS (October 1992). Third in US search order."
|
||||
source_ref: "platform/libretro/libretro.c:1266"
|
||||
|
||||
- name: "bios_CD_U.bin"
|
||||
system: sega-segacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "US Sega CD BIOS (generic name). Last in US search order."
|
||||
source_ref: "platform/libretro/libretro.c:1266"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Mega CD / Sega CD - EU region
|
||||
# -------------------------------------------------------
|
||||
- name: "eu_mcd2_9306.bin"
|
||||
system: sega-megacd
|
||||
required: true
|
||||
size: 131072
|
||||
note: "EU Mega CD Model 2 BIOS (June 1993). First in EU search order."
|
||||
source_ref: "platform/libretro/libretro.c:1269"
|
||||
|
||||
- name: "eu_mcd2_9303.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "EU Mega CD Model 2 BIOS (March 1993). Second in EU search order."
|
||||
source_ref: "platform/libretro/libretro.c:1269"
|
||||
|
||||
- name: "eu_mcd1_9210.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "EU Mega CD Model 1 BIOS (October 1992). Third in EU search order."
|
||||
source_ref: "platform/libretro/libretro.c:1269"
|
||||
|
||||
- name: "bios_CD_E.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "EU Mega CD BIOS (generic name). Last in EU search order."
|
||||
source_ref: "platform/libretro/libretro.c:1269"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Mega CD / Sega CD - JP region
|
||||
# -------------------------------------------------------
|
||||
- name: "jp_mcd2_921222.bin"
|
||||
system: sega-megacd
|
||||
required: true
|
||||
size: 131072
|
||||
note: "JP Mega CD Model 2 BIOS (December 1992). First in JP search order."
|
||||
source_ref: "platform/libretro/libretro.c:1272"
|
||||
|
||||
- name: "jp_mcd1_9112.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "JP Mega CD Model 1 BIOS (December 1991). Second in JP search order."
|
||||
source_ref: "platform/libretro/libretro.c:1272"
|
||||
|
||||
- name: "jp_mcd1_9111.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "JP Mega CD Model 1 BIOS (November 1991). Third in JP search order."
|
||||
source_ref: "platform/libretro/libretro.c:1272"
|
||||
|
||||
- name: "bios_CD_J.bin"
|
||||
system: sega-megacd
|
||||
required: false
|
||||
size: 131072
|
||||
note: "JP Mega CD BIOS (generic name). Last in JP search order."
|
||||
source_ref: "platform/libretro/libretro.c:1272"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Sega 32X - HLE available, not loaded by libretro frontend
|
||||
# -------------------------------------------------------
|
||||
- name: "32X_G_BIOS.BIN"
|
||||
system: sega-32x
|
||||
required: false
|
||||
size: 256 # 0x100
|
||||
note: "32X 68K (Genesis-side) BIOS. HLE replacement generated when NULL."
|
||||
source_ref: "pico/32x/memory.c:2207-2243"
|
||||
|
||||
- name: "32X_M_BIOS.BIN"
|
||||
system: sega-32x
|
||||
required: false
|
||||
size: 2048 # 0x800
|
||||
note: "32X Master SH2 BIOS. HLE replacement generated when NULL."
|
||||
source_ref: "pico/32x/memory.c:2250-2277"
|
||||
|
||||
- name: "32X_S_BIOS.BIN"
|
||||
system: sega-32x
|
||||
required: false
|
||||
size: 1024 # 0x400
|
||||
note: "32X Slave SH2 BIOS. HLE replacement generated when NULL."
|
||||
source_ref: "pico/32x/memory.c:2280-2298"
|
||||
|
||||
platform_details:
|
||||
megacd:
|
||||
bios_size: 131072 # 128 KB
|
||||
hle_available: false
|
||||
region_specific: true
|
||||
extensions_tried: [".bin", ".zip"]
|
||||
source_ref: "pico/pico_int.h:559, platform/libretro/libretro.c:1310-1318"
|
||||
|
||||
32x:
|
||||
m68k_bios_size: 256 # 0x100
|
||||
master_sh2_bios_size: 2048 # 0x800
|
||||
slave_sh2_bios_size: 1024 # 0x400
|
||||
hle_available: true
|
||||
source_ref: "pico/pico.h:53-55, pico/pico_int.h:679-693"
|
||||
|
||||
sms:
|
||||
hle_available: true
|
||||
note: "No BIOS file loaded. VDP/RAM initialized to post-BIOS state."
|
||||
source_ref: "pico/sms.c:1080-1096"
|
||||
255
emulators/puae.yml
Normal file
255
emulators/puae.yml
Normal file
@@ -0,0 +1,255 @@
|
||||
emulator: PUAE (P-UAE)
|
||||
type: libretro
|
||||
cores: [puae, puae2021]
|
||||
source: "https://github.com/libretro/libretro-uae"
|
||||
systems:
|
||||
- commodore-amiga
|
||||
- commodore-amiga-cd32
|
||||
- commodore-cdtv
|
||||
|
||||
notes: |
|
||||
PUAE is a port of UAE (Unix Amiga Emulator) to libretro. It emulates the
|
||||
Amiga 500, 500+, 600, 1200, 2000, 4000, CD32, and CDTV. Kickstart ROMs
|
||||
are loaded from the RetroArch system directory.
|
||||
|
||||
AROS (open-source Kickstart replacement) is available as a built-in fallback
|
||||
when no Kickstart ROM is found. Compatibility is limited compared to real ROMs.
|
||||
|
||||
The core scans the system directory for files starting with "kick", "amiga-os",
|
||||
or "KS ROM". Each filename is matched against a table of known naming
|
||||
conventions: standard (kick*.A*), Amiga Forever (amiga-os-*.rom), and
|
||||
TOSEC (Kickstart v*.rom). The first valid match is used.
|
||||
|
||||
Default kickstart per model (automatic selection):
|
||||
A500, A500OG, A2000OG, CDTV -> kick34005.A500 (KS 1.3)
|
||||
A500+ -> kick37175.A500 (KS 2.04)
|
||||
A600 -> kick40063.A600 (KS 3.1)
|
||||
A1200, A1200OG -> kick40068.A1200 (KS 3.1)
|
||||
A2000 -> kick40063.A600 (KS 3.1)
|
||||
A4030, A4040 -> kick40068.A4000 (KS 3.1)
|
||||
CD32, CD32FR -> kick40060.CD32 (KS 3.1)
|
||||
CDTV (ext) -> kick34005.CDTV
|
||||
CD32 (ext) -> kick40060.CD32.ext
|
||||
|
||||
Extended ROM handling: CD32 and CDTV require an extended ROM in addition
|
||||
to the main kickstart. If the main ROM filesize is <= 512 KB, the extended
|
||||
ROM is loaded separately. Combined ROMs (main + ext in one file) skip the
|
||||
extended ROM search.
|
||||
|
||||
WHDLoad support copies kick33180.A500, kick34005.A500, kick40063.A600,
|
||||
kick40068.A1200 into saves/WHDLoad/Devs/Kickstarts/ for use by WHDLoad
|
||||
slave files.
|
||||
|
||||
ROM search order (libretro-core.c retro_config_kickstart):
|
||||
1. Exact filename in system directory
|
||||
2. Amiga Forever naming (amiga-os-*.rom)
|
||||
3. TOSEC modified naming (with [!] suffix)
|
||||
4. TOSEC naming (without [!] suffix)
|
||||
|
||||
capsimg.so/capsimg.dll is an optional shared library for IPF floppy image
|
||||
support (SPS/CAPS format). Not a BIOS file, loaded dynamically at runtime.
|
||||
|
||||
Source: libretro/libretro-core.h:140-245, libretro/libretro-core.c:5610-5750,
|
||||
libretro/libretro-core.c:6044-6093
|
||||
|
||||
files:
|
||||
# -------------------------------------------------------
|
||||
# Amiga 1000
|
||||
# -------------------------------------------------------
|
||||
- name: "kick31034.A1000"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 1.1 rev 31.34 (1985) NTSC. A1000 only."
|
||||
aliases:
|
||||
- "amiga-os-110-ntsc.rom"
|
||||
- "Kickstart v1.1 rev 31.34 (1985)(Commodore)(A1000)(NTSC).rom"
|
||||
source_ref: "libretro/libretro-core.h:170-174"
|
||||
|
||||
- name: "kick32034.A1000"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 1.1 rev 32.34 (1986) PAL. A1000 only."
|
||||
aliases:
|
||||
- "amiga-os-110-pal.rom"
|
||||
- "Kickstart v1.1 rev 32.34 (1986)(Commodore)(A1000)(PAL).rom"
|
||||
source_ref: "libretro/libretro-core.h:176-179"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Amiga 500 / 2000
|
||||
# -------------------------------------------------------
|
||||
- name: "kick33180.A500"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 1.2 rev 33.180 (1986). A500/A2000. Also used by WHDLoad."
|
||||
aliases:
|
||||
- "amiga-os-120.rom"
|
||||
- "Kickstart v1.2 rev 33.180 (1986)(Commodore)(A500-A2000)[!].rom"
|
||||
- "Kickstart v1.2 rev 33.180 (1986)(Commodore)(A500-A1000-A2000).rom"
|
||||
source_ref: "libretro/libretro-core.h:182-185"
|
||||
|
||||
- name: "kick34005.A500"
|
||||
system: commodore-amiga
|
||||
required: true
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 1.3 rev 34.5 (1987). Default for A500/A2000OG/CDTV models. Also used by WHDLoad."
|
||||
aliases:
|
||||
- "amiga-os-130.rom"
|
||||
- "Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV)[!].rom"
|
||||
- "Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom"
|
||||
source_ref: "libretro/libretro-core.h:187-190"
|
||||
|
||||
- name: "kick37175.A500"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 2.04 rev 37.175 (1991). Default for A500+ model."
|
||||
aliases:
|
||||
- "amiga-os-204.rom"
|
||||
- "Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+)[!].rom"
|
||||
- "Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+).rom"
|
||||
source_ref: "libretro/libretro-core.h:192-195"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Amiga 600
|
||||
# -------------------------------------------------------
|
||||
- name: "kick37350.A600"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 262144 # 256 KB
|
||||
note: "Kickstart 2.05 rev 37.350 (1992). A600HD."
|
||||
aliases:
|
||||
- "amiga-os-205-a600.rom"
|
||||
- "Kickstart v2.05 rev 37.350 (1992)(Commodore)(A600HD)[!].rom"
|
||||
source_ref: "libretro/libretro-core.h:198-201"
|
||||
|
||||
- name: "kick40063.A600"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 524288 # 512 KB
|
||||
note: "Kickstart 3.1 rev 40.63 (1993). Default for A600/A2000 models. Also used by WHDLoad."
|
||||
aliases:
|
||||
- "amiga-os-310-a600.rom"
|
||||
- "Kickstart v3.1 rev 40.63 (1993)(Commodore)(A500-A600-A2000)[!].rom"
|
||||
- "Kickstart v3.1 rev 40.63 (1993)(Commodore)(A500-A600-A2000).rom"
|
||||
source_ref: "libretro/libretro-core.h:203-206"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Amiga 1200
|
||||
# -------------------------------------------------------
|
||||
- name: "kick39106.A1200"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 524288 # 512 KB
|
||||
note: "Kickstart 3.0 rev 39.106 (1992). A1200."
|
||||
aliases:
|
||||
- "amiga-os-300-a1200.rom"
|
||||
- "Kickstart v3.0 rev 39.106 (1992)(Commodore)(A1200)[!].rom"
|
||||
source_ref: "libretro/libretro-core.h:209-212"
|
||||
|
||||
- name: "kick40068.A1200"
|
||||
system: commodore-amiga
|
||||
required: true
|
||||
size: 524288 # 512 KB
|
||||
note: "Kickstart 3.1 rev 40.68 (1993). Default for A1200/A1200OG models. Also used by WHDLoad."
|
||||
aliases:
|
||||
- "amiga-os-310-a1200.rom"
|
||||
- "Kickstart v3.1 rev 40.68 (1993)(Commodore)(A1200)[!].rom"
|
||||
- "Kickstart v3.1 rev 40.68 (1993)(Commodore)(A1200).rom"
|
||||
source_ref: "libretro/libretro-core.h:214-217"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Amiga 4000
|
||||
# -------------------------------------------------------
|
||||
- name: "kick39106.A4000"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 524288 # 512 KB
|
||||
note: "Kickstart 3.0 rev 39.106 (1992). A4000."
|
||||
aliases:
|
||||
- "amiga-os-300-a4000.rom"
|
||||
- "Kickstart v3.0 rev 39.106 (1992)(Commodore)(A4000)[!].rom"
|
||||
source_ref: "libretro/libretro-core.h:220-223"
|
||||
|
||||
- name: "kick40068.A4000"
|
||||
system: commodore-amiga
|
||||
required: false
|
||||
size: 524288 # 512 KB
|
||||
note: "Kickstart 3.1 rev 40.68 (1993). Default for A4030/A4040 models."
|
||||
aliases:
|
||||
- "amiga-os-310-a4000.rom"
|
||||
- "Kickstart v3.1 rev 40.68 (1993)(Commodore)(A4000).rom"
|
||||
source_ref: "libretro/libretro-core.h:225-228"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Commodore CDTV
|
||||
# -------------------------------------------------------
|
||||
- name: "kick34005.CDTV"
|
||||
system: commodore-cdtv
|
||||
required: true
|
||||
size: 262144 # 256 KB
|
||||
note: "CDTV Extended ROM v1.0 (1991). Required as extended ROM for CDTV model. Main kickstart is kick34005.A500."
|
||||
aliases:
|
||||
- "amiga-os-130-cdtv-ext.rom"
|
||||
- "CDTV Extended-ROM v1.0 (1991)(Commodore)(CDTV)[!].rom"
|
||||
- "CDTV Extended-ROM v1.0 (1992)(Commodore)(CDTV).rom"
|
||||
source_ref: "libretro/libretro-core.h:231-234"
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Amiga CD32
|
||||
# -------------------------------------------------------
|
||||
- name: "kick40060.CD32"
|
||||
system: commodore-amiga-cd32
|
||||
required: true
|
||||
size: 524288 # 512 KB
|
||||
note: "CD32 Kickstart 3.1 rev 40.60 (1993). Main ROM for CD32 and CD32FR models."
|
||||
aliases:
|
||||
- "amiga-os-310-cd32.rom"
|
||||
- "Kickstart v3.1 rev 40.60 (1993)(Commodore)(CD32).rom"
|
||||
source_ref: "libretro/libretro-core.h:236-239"
|
||||
|
||||
- name: "kick40060.CD32.ext"
|
||||
system: commodore-amiga-cd32
|
||||
required: true
|
||||
size: 524288 # 512 KB
|
||||
note: "CD32 Extended ROM rev 40.60 (1993). Required when main ROM is <= 512 KB (not combined)."
|
||||
aliases:
|
||||
- "amiga-os-310-cd32-ext.rom"
|
||||
- "CD32 Extended-ROM rev 40.60 (1993)(Commodore)(CD32).rom"
|
||||
source_ref: "libretro/libretro-core.h:241-244"
|
||||
|
||||
model_kickstart_map:
|
||||
A500: {kickstart: "kick34005.A500", ext: null}
|
||||
A500OG: {kickstart: "kick34005.A500", ext: null}
|
||||
A500PLUS: {kickstart: "kick37175.A500", ext: null}
|
||||
A600: {kickstart: "kick40063.A600", ext: null}
|
||||
A1200: {kickstart: "kick40068.A1200", ext: null}
|
||||
A1200OG: {kickstart: "kick40068.A1200", ext: null}
|
||||
A2000: {kickstart: "kick40063.A600", ext: null}
|
||||
A2000OG: {kickstart: "kick34005.A500", ext: null}
|
||||
A4030: {kickstart: "kick40068.A4000", ext: null}
|
||||
A4040: {kickstart: "kick40068.A4000", ext: null}
|
||||
CDTV: {kickstart: "kick34005.A500", ext: "kick34005.CDTV"}
|
||||
CD32: {kickstart: "kick40060.CD32", ext: "kick40060.CD32.ext"}
|
||||
CD32FR: {kickstart: "kick40060.CD32", ext: "kick40060.CD32.ext"}
|
||||
|
||||
whdload_kickstarts:
|
||||
- "kick33180.A500" # KS 1.2, 256 KB
|
||||
- "kick34005.A500" # KS 1.3, 256 KB
|
||||
- "kick40063.A600" # KS 3.1, 512 KB
|
||||
- "kick40068.A1200" # KS 3.1, 512 KB
|
||||
|
||||
platform_details:
|
||||
rom_sizes:
|
||||
ROM_SIZE_128: 131072 # 128 KB
|
||||
ROM_SIZE_256: 262144 # 256 KB
|
||||
ROM_SIZE_512: 524288 # 512 KB
|
||||
aros_fallback: true
|
||||
naming_conventions:
|
||||
standard: "kick{rev}.{model}"
|
||||
amiga_forever: "amiga-os-{version}.rom"
|
||||
tosec: "Kickstart v{version} rev {rev} ({year})(Commodore)({model}).rom"
|
||||
scan_prefixes: ["kick", "amiga-os", "KS ROM"]
|
||||
source_ref: "libretro/libretro-core.c:2649-2676"
|
||||
Reference in New Issue
Block a user