feat: re-profile 40 emulators, harden CI workflows

profile emulators pd777 through tic80, add frozen snapshots
(puae2021, snes9x2002/2005/2010, stella2014/2023).

CI: replace github-script with gh CLI, add test execution,
job-level permissions, propagate changed output, pin jsonschema.
This commit is contained in:
Abdessamad Derraz
2026-03-25 07:00:17 +01:00
parent 0543165ed2
commit ebb55a445b
69 changed files with 2337 additions and 1544 deletions
+33 -39
View File
@@ -1,60 +1,54 @@
emulator: RetroDream
type: libretro
core_classification: community_fork
source: "https://github.com/libretro/redream-next"
profiled_date: "2026-03-18"
upstream: "https://github.com/inolen/redream"
profiled_date: "2026-03-25"
core_version: "Git"
display_name: "Sega - Dreamcast (RetroDream)"
cores:
- retrodream
systems:
- sega-dreamcast
notes: |
Fork of the final open-source redream release (pre-relicense). Experimental
core with no HLE BIOS -- real BIOS files are required to boot games.
Flycast is recommended over this core for actual gameplay.
Fork of the last GPLv3 release of redream (inolen) before it went closed-source.
The core has HLE bootstrap -- when boot.bin is missing, bios_invalid_instr()
traps at PC=0x0 and calls bios_boot(), which loads IP.BIN and 1ST_READ.BIN
directly from disc, sets up syscall vectors, and starts execution at 0xac008300.
The libretro core sets appdir to the RetroArch system directory
(src/host/retro_host.c:216-217). boot.bin and flash.bin are loaded
directly from appdir (src/guest/rom/boot.c:17, src/guest/rom/flash.c:30).
The fork sets appdir to the RetroArch system directory root
(retro_host.c:216-217), unlike the upstream which appends /dc
(upstream retro_host.c:196-198). The .info still declares dc/ prefix paths
matching the upstream, not this fork.
The .info file declares paths as dc/boot.bin and dc/flash.bin, which means
RetroArch resolves them under {system_dir}/dc/.
boot.bin is validated against four known MD5 hashes (boot.c:25-30).
Validation failure logs a warning but the core continues via HLE.
boot.bin is validated against four known MD5 hashes at load time
(src/guest/rom/boot.c:25-30). If validation fails, the core logs a warning
but still attempts to run via HLE syscall hooks (bios.c:440-447).
flash.bin is read/write -- the core saves modified flash data back to disk
on shutdown (src/guest/rom/flash.c:197-199).
Boot ROM size: 2 MB (0x200000). Flash ROM size: 128 KB (0x20000).
flash.bin is read/write. If missing, bios_validate_flash() resets all
partitions to defaults. Saved back to disk on shutdown (flash.c:197-199).
files:
- name: "boot.bin"
system: sega-dreamcast
path: "dc/boot.bin"
required: true
size: 2097152 # 2 MB (0x200000)
path: "boot.bin"
required: false
hle_fallback: true
size: 2097152
validation: [size, md5]
md5:
- e10c53c2f8b90bab96ead2d368858623 # original US/EU BIOS
- a5c6a00818f97c5e3e91569ee22416dc # Chinese BIOS
- 37c921eb47532cae8fb70e5d987ce91c # Japanese BIOS
- f2cd29d09f3e29984bcea22ab2e006fe # revised BIOS without MIL-CD
note: "Dreamcast boot ROM. Validated against known MD5 hashes at load."
- a5c6a00818f97c5e3e91569ee22416dc
- 37c921eb47532cae8fb70e5d987ce91c
- f2cd29d09f3e29984bcea22ab2e006fe
- e10c53c2f8b90bab96ead2d368858623
note: "Dreamcast boot ROM. Four known variants accepted."
source_ref: "src/guest/rom/boot.c:12-80"
- name: "flash.bin"
system: sega-dreamcast
path: "dc/flash.bin"
required: true
size: 131072 # 128 KB (0x20000)
md5:
- 0a93f7940c455905bea6e392dfde92a4
note: "Dreamcast flash memory (date, time, language). Written back on shutdown."
source_ref: "src/guest/rom/flash.c:25-35"
platform_details:
dreamcast:
bios_size: 2097152 # 2 MB
flash_size: 131072 # 128 KB
hle_available: false
source_ref: "src/guest/rom/boot.c, src/guest/rom/flash.c"
path: "flash.bin"
required: false
size: 131072
validation: [size]
note: "Dreamcast flash memory. Written back on shutdown."
source_ref: "src/guest/rom/flash.c:25-71"