Files
libretro/emulators/ymir.yml
T
Abdessamad Derraz dfdb887fb8 fix: say which cores find their BIOS by content
DuckStation (bios.cpp:208, 397-427), SwanStation (host_interface.cpp:
136-194), rustation (lib.rs:107-160), FS-UAE (rommgr.cpp:92-151),
ares (firmware.cpp:116-136) and Altirra (uifirmwarescan.cpp:29-113)
scan a folder and identify firmware by hash; Ymir does in its
standalone build only. FS-UAE still opens rom.key by name
(rommgr.cpp:1397-1498). The export then stops writing their labels
into platform lists: Batocera's psx block goes from 106 entries to 10,
and System.dat's scph5000.bin keeps its own hashes.
2026-10-20 16:49:16 +02:00

210 lines
8.7 KiB
YAML

emulator: ymir
type: standalone + libretro
core_classification: community_fork
source:
standalone: "https://github.com/StrikerX3/Ymir"
libretro: "https://github.com/warmenhoven/Emir/tree/libretro"
upstream: "https://github.com/StrikerX3/Ymir"
profiled_date: "2026-03-26"
source_commit:
standalone: "5e9310410baa47cb7da5b068f399c9e4a34eedbc"
libretro: "5d99cbbf813206736f38b3574ecca7a8aedc07e5"
core_version:
standalone: "v0.2.1"
libretro: "PR#746"
display_name: "Sega - Saturn (Ymir)"
cores:
- ymir
found_by: {standalone: content}
systems:
- sega-saturn
notes: |
Ymir is a Sega Saturn emulator by StrikerX3. The libretro port by
warmenhoven wraps the shared ymir-core library (PR #746, not yet merged).
No .info file exists in libretro-core-info.
Standalone: scans configured directories recursively for files matching
the expected size. No specific filenames required. Identifies known ROMs
by XXH128 hash from an internal database (19 IPL variants, 4 CD Block
versions, 2 ROM carts). Unknown files are accepted if size matches.
Libretro: searches {system}/sega_101.bin, mpr-17933.bin, saturn_bios.bin
in order. First file found with exact 512 KiB size wins.
Batocera standalone: configgen maps IPLROMImages to /userdata/bios,
CDBlockROMImages to /userdata/roms/saturn/cdb/, ROMCartImages to
/userdata/roms/saturn.
No HLE fallback for IPL ROM. CD Block LLE is optional and falls back to
HLE when disabled or no ROM found. Known CDB versions: 1.04, 1.05, 1.06.
ROM cartridges: KoF95 and Ultraman shipped with physical ROM carts.
Auto-detected from game database when loading a disc.
Addon cartridges: 1M/4M DRAM expansion handled via core option (no files).
XXH128 hashes used for ROM identification only, not validation.
All file loading validates size only.
files:
- name: "sega_101.bin"
system: sega-saturn
required: true
size: 524288
validation: [size]
aliases: [mpr-17933.bin, saturn_bios.bin]
description: "Saturn IPL ROM (BIOS). Any region accepted."
source_ref:
standalone: "apps/ymir-sdl3/src/util/rom_loader.cpp:9-22, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56, libs/ymir-core/include/ymir/sys/memory_defs.hpp:9"
libretro: "apps/ymir-libretro/src/libretro.cpp:260-263,534-558"
# IPL images named by the standalone XXH128 database. The md5 is that of
# the image whose seeded XXH128 matches the database row.
- name: "SAT_1.00-(J).bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "af5828fdff51384f99b3c4926be27762"
description: "Saturn IPL ROM 1.00 (1994-09-21), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:9, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "sega_101.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "85ec9ca47d8f6807718151cbcca8b964"
description: "Saturn IPL ROM 1.01 (1994-12-28), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:10, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "SAT_1.00a-(U+E).bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "f273555d7d91e8a5a6bfd9bcf066331c"
description: "Saturn IPL ROM 1.00a (1994-11-15), North America and Europe."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:11, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "mpr-17933.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "3240872c70984b6cbfda1586cab68dbe"
description: "Saturn IPL ROM 1.01a (1994-11-15), North America and Europe."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:12, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "hisaturn.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "3ea3202e2634cb47cb90f3a05c015010"
description: "HiSaturn IPL ROM 1.01 (1995-01-30), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:14, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "mpr-18100.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "cb2cebc1b6e573b7c44523d037edcd45"
description: "HiSaturn IPL ROM 1.02 (1995-05-19), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:15, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "hisaturn_v103.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "0306c0e408d6682dd2d86324bd4ac661"
description: "HiSaturn IPL ROM 1.03 (1995-07-20), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:16, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "vsaturn.bin"
system: sega-saturn
required: false
mode: standalone
size: 524288
validation: [size]
md5: "ac4e4b6522e200c0d23d371a8cecbfd3"
description: "V-Saturn IPL ROM 1.01 (1995-07-03), Japan."
note: "Picked up by the recursive IPL scan like any 512 KiB file and identified by its XXH128 row."
source_ref:
standalone: "libs/ymir-core/src/ymir/db/ipl_db.cpp:17, libs/ymir-core/include/ymir/sys/memory_defs.hpp:10, apps/ymir-sdl3/src/app/rom_manager.cpp:14-56"
- name: "cdb/cdb_rom.bin"
system: sega-saturn
required: false
hle_fallback: true
size: 65536
validation: [size]
description: "SH1 CD Block ROM for low-level CD drive emulation. Scans cdb/ subdirectory for any matching file."
source_ref:
standalone: "apps/ymir-sdl3/src/util/rom_loader.cpp:25-38, apps/ymir-sdl3/src/app/rom_manager.cpp:58-93, libs/ymir-core/include/ymir/hw/sh1/sh1_defs.hpp:7"
libretro: "apps/ymir-libretro/src/libretro.cpp:565-591"
- name: "mpr-18811-mx.ic1"
system: sega-saturn
required: false
category: game_data
size: 2097152
validation: [size]
description: "ROM cartridge for The King of Fighters '95."
source_ref:
standalone: "apps/ymir-sdl3/src/app/rom_manager.cpp:96-131, libs/ymir-core/include/ymir/db/rom_cart_db.hpp:19-22"
libretro: "apps/ymir-libretro/src/libretro.cpp:621, 598-618"
- name: "mpr-19367-mx.ic1"
system: sega-saturn
required: false
category: game_data
size: 2097152
validation: [size]
description: "ROM cartridge for Ultraman: Hikari no Kyojin Densetsu."
source_ref:
standalone: "apps/ymir-sdl3/src/app/rom_manager.cpp:96-131, libs/ymir-core/include/ymir/db/rom_cart_db.hpp:25-28"
libretro: "apps/ymir-libretro/src/libretro.cpp:622, 598-618"
- name: "gamecontrollerdb.txt"
system: sega-saturn
required: false
mode: standalone
bundled: true
sha1: ["eb06dba857f50e613c997198e4bd2da8e2c9fb21", "4a1981a3ff91352c4de50fbc82e8cc960c49183b"]
md5: ["2d76f311eecb0cdab270bf3fc5547173", "ec570b054019676c6b20144cbd47e562"]
description: "SDL game controller mapping database"
note: >
Passed to SDL_AddGamepadMappingsFromFile from the working directory, then
from the profile root. A missing file or a load failure is logged and SDL
keeps its built-in mappings. The release packages copy the file from
mdqinc/SDL_GameControllerDB at build time. Hashes of the copies in the
v0.2.1 Linux and macOS packages and, with CRLF line ends, the Windows
zips.
source_ref:
standalone: "apps/ymir-sdl3/src/app/settings.hpp:41, apps/ymir-sdl3/src/app/app.cpp:5084-5119, apps/ymir-sdl3/src/app/profile.cpp:36-41, .github/workflows/build.yaml:198-230"