feat: re-profile 4 emulators, add ymir

This commit is contained in:
Abdessamad Derraz
2026-03-25 16:49:49 +01:00
parent 4b09205bc9
commit dfd8f8657c
5 changed files with 362 additions and 27 deletions

View File

@@ -1,20 +1,181 @@
emulator: x64sdl
type: libretro
source: "https://github.com/libretro/vice-libretro"
profiled_date: "2026-03-18"
core_version: "v3.1"
core_classification: community_fork
source: "https://github.com/r-type/sdlvice-libretro"
upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.1"
display_name: "Commodore - C64 (VICE SDL)"
cores:
- vice_x64
systems:
- commodore-c64
cores: [x64sdl]
systems: [commodore-c64]
notes: >
Old port of VICE 3.1 using an SDL-to-libretro shim (r-type/sdlvice-libretro).
Separate codebase from the newer vice-libretro port. Marked experimental and
superseded. Unlike the newer port, this core does NOT embed system ROMs; all ROMs
must be on disk in <system_dir>/data/C64/ and <system_dir>/data/DRIVES/.
The .info declares firmware_count=0 which is incorrect. No JiffyDOS support.
No save states, no netplay, no cheats.
notes: |
Alias for the VICE x64 core. x64sdl is an alternate build name
referencing the SDL-based VICE x64 Commodore 64 emulator. In the
libretro ecosystem this maps to the same vice_x64 core binary.
files:
# C64 system ROMs (required, path: data/C64/)
- name: "kernal"
description: "C64 Kernal ROM"
required: true
size: 8192
path: "data/C64/kernal"
source_ref: "src/c64/c64rom.c:133, src/c64/c64-resources.c:255"
See vice.yml for full ROM and BIOS details. All standard ROMs are
embedded in the core binary.
- name: "basic"
description: "C64 BASIC ROM"
required: true
size: 8192
path: "data/C64/basic"
source_ref: "src/c64/c64rom.c:192, src/c64/c64-resources.c:258"
files: []
- name: "chargen"
description: "C64 character generator ROM"
required: true
size: 4096
path: "data/C64/chargen"
source_ref: "src/c64/c64rom.c:207, src/c64/c64-resources.c:252"
# C64 variant kernals (optional, for alternate models via c64model.c)
- name: "sxkernal"
description: "SX-64 Kernal ROM"
required: false
size: 8192
path: "data/C64/sxkernal"
source_ref: "src/c64/c64model.c:142,147"
notes: "Loaded when SX64 PAL or SX64 NTSC model selected."
- name: "jpkernal"
description: "Japanese C64 Kernal ROM"
required: false
size: 8192
path: "data/C64/jpkernal"
source_ref: "src/c64/c64model.c:152"
notes: "Loaded when C64 JAP NTSC model selected."
- name: "jpchrgen"
description: "Japanese C64 character generator ROM"
required: false
size: 4096
path: "data/C64/jpchrgen"
source_ref: "src/c64/c64model.c:152"
notes: "Loaded when C64 JAP NTSC model selected."
- name: "gskernal"
description: "C64 Games System Kernal ROM"
required: false
size: 8192
path: "data/C64/gskernal"
source_ref: "src/c64/c64model.c:157"
notes: "Loaded when C64 GS PAL model selected."
- name: "edkernal"
description: "PET64/Educator64 Kernal ROM"
required: false
size: 8192
path: "data/C64/edkernal"
source_ref: "src/c64/c64model.c:162,167"
notes: "Loaded when PET64 PAL or PET64 NTSC model selected."
# IEC drive ROMs (optional, path: data/DRIVES/)
- name: "dos1540"
description: "1540 floppy drive ROM"
required: false
path: "data/DRIVES/dos1540"
source_ref: "src/drive/iec/iecrom.c:99, src/drive/iec/iec-resources.c:182"
notes: "Hardware-level 1540 drive emulation. Absence disables this drive type."
- name: "dos1541"
description: "1541 floppy drive ROM"
required: false
path: "data/DRIVES/dos1541"
source_ref: "src/drive/iec/iecrom.c:106, src/drive/iec/iec-resources.c:185"
notes: "Hardware-level 1541 drive emulation. Most common C64 drive."
- name: "d1541II"
description: "1541-II floppy drive ROM"
required: false
path: "data/DRIVES/d1541II"
source_ref: "src/drive/iec/iecrom.c:113, src/drive/iec/iec-resources.c:187"
- name: "dos1570"
description: "1570 floppy drive ROM"
required: false
path: "data/DRIVES/dos1570"
source_ref: "src/drive/iec/iecrom.c:121, src/drive/iec/iec-resources.c:189"
- name: "dos1571"
description: "1571 floppy drive ROM"
required: false
path: "data/DRIVES/dos1571"
source_ref: "src/drive/iec/iecrom.c:127, src/drive/iec/iec-resources.c:191"
- name: "dos1581"
description: "1581 floppy drive ROM"
required: false
path: "data/DRIVES/dos1581"
source_ref: "src/drive/iec/iecrom.c:133, src/drive/iec/iec-resources.c:193"
- name: "dos2000"
description: "CMD FD-2000 drive ROM"
required: false
path: "data/DRIVES/dos2000"
source_ref: "src/drive/iec/iecrom.c:139, src/drive/iec/iec-resources.c:195"
notes: "Not shipped with VICE 3.1 data files."
- name: "dos4000"
description: "CMD FD-4000 drive ROM"
required: false
path: "data/DRIVES/dos4000"
source_ref: "src/drive/iec/iecrom.c:145, src/drive/iec/iec-resources.c:197"
notes: "Not shipped with VICE 3.1 data files."
# IEEE drive ROMs (optional, path: data/DRIVES/)
- name: "dos2031"
description: "2031 IEEE drive ROM"
required: false
path: "data/DRIVES/dos2031"
source_ref: "src/drive/ieee/ieee.c:115, src/drive/ieee/ieee-resources.c:93"
notes: "IEEE488 interface drive. Requires parallel IEEE488 extension."
- name: "dos2040"
description: "2040 IEEE drive ROM"
required: false
path: "data/DRIVES/dos2040"
source_ref: "src/drive/ieee/ieee.c:116, src/drive/ieee/ieee-resources.c:96"
- name: "dos3040"
description: "3040 IEEE drive ROM"
required: false
path: "data/DRIVES/dos3040"
source_ref: "src/drive/ieee/ieee.c:117, src/drive/ieee/ieee-resources.c:98"
- name: "dos4040"
description: "4040 IEEE drive ROM"
required: false
path: "data/DRIVES/dos4040"
source_ref: "src/drive/ieee/ieee.c:118, src/drive/ieee/ieee-resources.c:100"
- name: "dos1001"
description: "1001/8050/8250 IEEE drive ROM"
required: false
path: "data/DRIVES/dos1001"
source_ref: "src/drive/ieee/ieee.c:119, src/drive/ieee/ieee-resources.c:102"
# Printer ROMs (optional, path: data/PRINTER/)
- name: "mps803"
description: "MPS-803 printer character ROM"
required: false
path: "data/PRINTER/mps803"
source_ref: "src/printerdrv/drv-mps803.c:420"
notes: "Loaded on demand when MPS-803 printer opened."
- name: "nl10-cbm"
description: "NL10 printer ROM"
required: false
path: "data/PRINTER/nl10-cbm"
source_ref: "src/printerdrv/drv-nl10.c:2210"
notes: "Loaded on demand when NL10 printer opened."

View File

@@ -1,7 +1,9 @@
emulator: XRick
type: libretro
core_classification: game_engine
source: "https://github.com/libretro/xrick-libretro"
profiled_date: "2026-03-18"
upstream: "https://github.com/fabiensanglard/xrick"
profiled_date: "2026-03-25"
core_version: "1.0.0.6"
display_name: "Rick Dangerous (XRick)"
cores:

View File

@@ -1,8 +1,55 @@
emulator: "yabasanshiro"
type: alias
alias_of: "kronos"
profiled_date: "2026-03-18"
emulator: yabasanshiro
type: libretro
core_classification: official_port
source: "https://github.com/libretro/yabause/tree/yabasanshiro"
upstream: "https://github.com/devmiyax/yabause"
profiled_date: "2026-03-25"
core_version: "v2.6.8"
display_name: "Sega - Saturn (YabaSanshiro)"
note: "This core uses the same BIOS/firmware as kronos. See emulators/kronos.yml for details."
files: []
cores:
- yabasanshiro
systems:
- sega-saturn
notes: |
YabaSanshiro is a Sega Saturn emulator by devmiyax, forked from Yabause.
Requires OpenGL 3.3 or OpenGL ES 3.0.
Saturn BIOS search order:
1. {system}/saturn_bios.bin
2. {system}/sega_101.bin
3. {system}/mpr-17933.bin
First file found wins. Real BIOS required for normal operation.
HLE available via yabasanshiro_force_hle_bios core option (deprecated,
debug only).
Addon cartridges: 1M/4M RAM expansion via core option (no files needed).
ROM cartridge and MPEG card ROM loading disabled in libretro port
(cartpath = empty, mpegpath = NULL).
BIOS loading: libretro.c retro_load_game() lines 1048-1069.
Core load: memory.c LoadBios() line 1353, T123Load() memory.h lines 219-280.
files:
- name: "saturn_bios.bin"
system: sega-saturn
required: true
hle_fallback: true
note: "Primary Saturn BIOS. Any region accepted."
source_ref: "libretro.c:1048"
- name: "sega_101.bin"
system: sega-saturn
region: [japan]
required: false
hle_fallback: true
note: "Saturn BIOS v1.01 (Japan). Fallback if saturn_bios.bin missing."
source_ref: "libretro.c:1052"
- name: "mpr-17933.bin"
system: sega-saturn
region: [north-america, europe]
required: false
hle_fallback: true
note: "Saturn BIOS v1.003 (NA/EU). Last fallback."
source_ref: "libretro.c:1056"

View File

@@ -1,8 +1,61 @@
emulator: "yabause"
type: alias
alias_of: "kronos"
profiled_date: "2026-03-18"
emulator: yabause
type: libretro
core_classification: community_fork
source: "https://github.com/libretro/yabause"
upstream: "https://github.com/Yabause/yabause"
profiled_date: "2026-03-25"
core_version: "v0.9.15"
display_name: "Sega - Saturn (Yabause)"
note: "This core uses the same BIOS/firmware as kronos. See emulators/kronos.yml for details."
files: []
cores:
- yabause
systems:
- sega-saturn
notes: |
Yabause is a software-rendered Sega Saturn emulator. Upstream project is
dead; libretro port maintained by the community on the master branch of
libretro/yabause.
Saturn BIOS search order:
1. {system}/saturn_bios.bin
2. {system}/sega_101.bin
3. {system}/mpr-17933.bin
First file found wins. HLE BIOS available via yabause_force_hle_bios core
option (reduced compatibility). Multi-disc (m3u) requires real BIOS.
Addon cartridges: 1M/4M RAM expansion via core option (no files needed).
ROM cartridge loading, SH1 ROM (CD Block LLE), and MPEG card ROM are
standalone-only features disabled in the libretro port.
BIOS loading: libretro.c retro_load_game() lines 1035-1049.
Core load: memory.c LoadBios() line 1260, T123Load() memory.h lines 196-264.
files:
- name: "saturn_bios.bin"
system: sega-saturn
required: true
hle_fallback: true
max_size: 524288
validation: [max_size]
note: "Primary Saturn BIOS. Any region accepted."
source_ref: "libretro.c:1035"
- name: "sega_101.bin"
system: sega-saturn
region: [japan]
required: false
hle_fallback: true
max_size: 524288
validation: [max_size]
note: "Saturn BIOS v1.01 (Japan). Fallback if saturn_bios.bin missing."
source_ref: "libretro.c:1039"
- name: "mpr-17933.bin"
system: sega-saturn
region: [north-america, europe]
required: false
hle_fallback: true
max_size: 524288
validation: [max_size]
note: "Saturn BIOS (NA/EU). Last fallback."
source_ref: "libretro.c:1043"

72
emulators/ymir.yml Normal file
View File

@@ -0,0 +1,72 @@
emulator: ymir
type: standalone + libretro
core_classification: community_fork
source: "https://github.com/warmenhoven/Ymir/tree/libretro"
upstream: "https://github.com/StrikerX3/Ymir"
profiled_date: "2026-03-25"
core_version: "PR#746"
display_name: "Sega - Saturn (Ymir)"
cores:
- ymir
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.
Saturn BIOS search order:
1. {system}/sega_101.bin
2. {system}/mpr-17933.bin
3. {system}/saturn_bios.bin
First file found with exact 512 KiB size wins. No HLE fallback for IPL.
CD Block LLE: optional low-level CD drive emulation. Scans {system}/cdb/
for any 64 KiB file. Falls back to HLE when disabled or no ROM found.
Known versions in upstream db: 1.04, 1.05, 1.06.
ROM cartridges: KoF95 and Ultraman shipped with physical ROM carts. The
core auto-detects required cartridge from its game database.
Addon cartridges: 1M/4M DRAM expansion handled via core option (no files).
Upstream uses XXH128 hashes 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: "libretro.cpp:260-263,534-558"
- 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. Core scans cdb/ subdirectory for any matching file."
source_ref: "libretro.cpp:567-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: "libretro.cpp:619-620,597-616"
- 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: "libretro.cpp:619,621,597-616"