From 8c686dee48961e9bf6979647e1d02f8812363d1c Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Thu, 3 Sep 2026 22:04:14 +0200 Subject: [PATCH] feat: profile nine new buildbot cores --- bios/Other/spmp8000emu/tonelib.bin | Bin 0 -> 130500 bytes emulators/bbkemu.yml | 124 ++++++++++++++++++++++ emulators/dingooemu.yml | 46 +++++++++ emulators/hatari2014.yml | 158 +++++++++++++++++++++++++++++ emulators/irogb.yml | 65 ++++++++++++ emulators/native32emu.yml | 48 +++++++++ emulators/nicaiemu.yml | 44 ++++++++ emulators/rustynes.yml | 45 ++++++++ emulators/spmp8000emu.yml | 61 +++++++++++ emulators/tia.yml | 29 ++++++ 10 files changed, 620 insertions(+) create mode 100644 bios/Other/spmp8000emu/tonelib.bin create mode 100644 emulators/bbkemu.yml create mode 100644 emulators/dingooemu.yml create mode 100644 emulators/hatari2014.yml create mode 100644 emulators/irogb.yml create mode 100644 emulators/native32emu.yml create mode 100644 emulators/nicaiemu.yml create mode 100644 emulators/rustynes.yml create mode 100644 emulators/spmp8000emu.yml create mode 100644 emulators/tia.yml diff --git a/bios/Other/spmp8000emu/tonelib.bin b/bios/Other/spmp8000emu/tonelib.bin new file mode 100644 index 0000000000000000000000000000000000000000..1768a554596e543edcc0f961e08da3903d32f08e GIT binary patch literal 130500 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 fgMz^R{J=V$EgxXweT5bM literal 0 HcmV?d00001 diff --git a/emulators/bbkemu.yml b/emulators/bbkemu.yml new file mode 100644 index 00000000..1f834539 --- /dev/null +++ b/emulators/bbkemu.yml @@ -0,0 +1,124 @@ +emulator: BBKEmu +type: standalone + libretro +core_classification: pure_libretro +source: "https://github.com/AloysHF/BBKEmu" +upstream: "https://github.com/AloysHF/BBKEmu" +profiled_date: "2026-09-03" +source_commit: "479e52953344329810dc0305a4c160e4badfc9bc" +core_version: "0.1.0" +display_name: "BBK - Electronic Dictionary (BBKEmu)" +cores: + - bbkemu +systems: + - bbk-longman-4980 + - bbk-longman-4988 + +notes: | + BBK A-series electronic dictionary game emulator written in Rust by + AloysHF. The libretro core and the bbk-emu standalone binary share the + bbkemu-core crate. A .gam game is 6502 code that calls into the + dictionary's OS ROM for LCD, keyboard, audio, timer and file services. + + Two ROM images are read from the system directory, in one subdirectory + per model: {system}/BBKEmu//8.BIN, the font ROM mapped at + physical 0x800000-0x9FFFFF, and E.BIN, the OS ROM mapped at + 0xE00000-0xFFFFFF (crates/bbkemu-libretro/src/lib.rs:187-206, + crates/bbkemu-core/src/memory.rs:377-398). The libretro core always + loads content as the A4980 model (crates/bbkemu-libretro/src/lib.rs:470-471), + so only BBKEmu/A4980/ is ever read from RetroArch. Both reads are + std::fs::read guarded by `if let Ok`: a missing file is skipped without + any message to the frontend. The image is copied into a 2 MiB + zero-filled buffer (crates/bbkemu-core/src/memory.rs:197-209); nothing + checks its size or contents. + + Without E.BIN, run_os_init (crates/bbkemu-core/src/emulator.rs:231-252) + sets PC to 0x350, reads zeros from the ROM window, never sees + _MTCT=0xFE and gives up after 10 million cycles; the bank registers + stay unmapped and the game exits at its first OS call. Measured by + running run_os_init from bbkemu-core against a dump: 1 092 023 cycles + to completion with E.BIN, timeout without it. Without 8.BIN the font + window reads as 0x00 and every glyph the OS draws is blank; execution + continues. + + The standalone binary takes -8/--rom8 and -e/--rome explicit paths and + otherwise reads system/BBKEmu//8.BIN and E.BIN relative to the + working directory, --model 4980 (default) or 4988 selecting the + subdirectory (crates/bbkemu/src/main.rs:108-117, crates/bbkemu/src/main.rs:146-170). + The A4988 model differs by its flash save-area offset and key layout + (crates/bbkemu-core/src/emulator.rs:148-153, + crates/bbkemu-libretro/src/lib.rs:619-628). + + During init the OS maps its own bank at logical bank D: 0xEA8 for the + A4980 OS, 0xE88 for the A4988 OS (crates/bbkemu-core/src/model.rs:11-13). + The core never reads that value back; detect_model + (crates/bbkemu-core/src/model.rs:37-49) has no caller. The + include_bytes! font in crates/bbkemu-core/src/font.rs is not declared in + lib.rs and is not compiled. Content arrives through the frontend buffer + (need_fullpath = false, crates/bbkemu-libretro/src/lib.rs:416). Save RAM + is the first 0x14000 bytes of the emulated flash + (crates/bbkemu-libretro/src/lib.rs:840-842). + +files: + - name: 8.BIN + path: BBKEmu/A4980/8.BIN + standalone_path: system/BBKEmu/A4980/8.BIN + system: bbk-longman-4980 + size: 2097152 + required: true + description: "BBK A-series font ROM" + note: >- + Read whole from {system}/BBKEmu/A4980/8.BIN into the 2 MiB window at + physical 0x800000. A missing file is skipped silently; the window + then reads as 0x00 and text drawn through the OS is blank. No size + or hash check; size is the window the image fills. + source_ref: "crates/bbkemu-libretro/src/lib.rs:187-199, crates/bbkemu-libretro/src/lib.rs:470-471, crates/bbkemu-core/src/memory.rs:8, crates/bbkemu-core/src/memory.rs:197-202, crates/bbkemu-core/src/memory.rs:384-390, crates/bbkemu/src/main.rs:147-158" + + - name: E.BIN + path: BBKEmu/A4980/E.BIN + standalone_path: system/BBKEmu/A4980/E.BIN + system: bbk-longman-4980 + size: 2097152 + required: true + description: "BBK A-series OS ROM" + note: >- + Read whole from {system}/BBKEmu/A4980/E.BIN into the 2 MiB window at + physical 0xE00000; the last 256 bytes also serve as the interrupt + vector page at 0x0300. A missing file is skipped silently, the OS + init loop times out after 10 million cycles and no game runs. No + size or hash check; size is the window the image fills. + source_ref: "crates/bbkemu-libretro/src/lib.rs:187-193, crates/bbkemu-libretro/src/lib.rs:201-206, crates/bbkemu-libretro/src/lib.rs:470-471, crates/bbkemu-core/src/memory.rs:9, crates/bbkemu-core/src/memory.rs:204-209, crates/bbkemu-core/src/memory.rs:224-226, crates/bbkemu-core/src/memory.rs:391-397, crates/bbkemu-core/src/emulator.rs:231-252, crates/bbkemu/src/main.rs:159-170" + + - name: 8.BIN + standalone_path: system/BBKEmu/A4988/8.BIN + mode: standalone + system: bbk-longman-4988 + size: 2097152 + required: true + description: "BBK A-series font ROM, A4988 slot" + note: >- + Read by the standalone binary with --model 4988 from + system/BBKEmu/A4988/8.BIN relative to the working directory. The + libretro core has no model option and never opens this directory. + source_ref: "crates/bbkemu/src/main.rs:108-117, crates/bbkemu/src/main.rs:147-158, crates/bbkemu-core/src/model.rs:28-34" + + - name: E.BIN + standalone_path: system/BBKEmu/A4988/E.BIN + mode: standalone + system: bbk-longman-4988 + size: 2097152 + required: true + description: "BBK A-series OS ROM, A4988 slot" + note: >- + Read by the standalone binary with --model 4988 from + system/BBKEmu/A4988/E.BIN relative to the working directory. The + libretro core has no model option and never opens this directory. + source_ref: "crates/bbkemu/src/main.rs:108-117, crates/bbkemu/src/main.rs:159-170, crates/bbkemu-core/src/model.rs:28-34, crates/bbkemu-core/src/emulator.rs:148-153" + +platform_details: + memory_map: + source_ref: "crates/bbkemu-core/src/memory.rs:377-398" + note: | + Physical space seen through sixteen 4 KiB bank registers: RAM below + 0x8000, 2 MiB flash at 0x200000, 8.BIN at 0x800000, E.BIN at + 0xE00000. Reads outside a loaded image return 0x00; ROM windows + ignore writes. diff --git a/emulators/dingooemu.yml b/emulators/dingooemu.yml new file mode 100644 index 00000000..01016325 --- /dev/null +++ b/emulators/dingooemu.yml @@ -0,0 +1,46 @@ +emulator: DingooEmu +type: standalone + libretro +core_classification: pure_libretro +source: "https://github.com/AloysHF/DingooEmu" +upstream: "https://github.com/AloysHF/DingooEmu" +profiled_date: "2026-09-03" +source_commit: "746d6f116c707b9a2ede23c4b25468f90e26af26" +core_version: "0.2.0" +display_name: "Dingoo - A320 (DingooEmu)" +cores: + - dingooemu +systems: + - dingoo-a320 + +notes: | + Dingoo A320 emulator written in Rust by AloysHF. The libretro core and + the dingoo-emu standalone binary share the dingooemu-core crate. A .app + file is parsed from its full path (need_fullpath = true, + crates/dingooemu-libretro/src/api.rs:87; Emulator::from_path, + crates/dingooemu-core/src/emulator.rs:316-319; + crates/dingooemu-core/src/app_loader.rs:119-122) and its imports are + bound to Rust implementations of the Dingoo SDK + (crates/dingooemu-core/src/emulator/sdk_hle/mod.rs:22-30). No firmware + image, font or system file backs those calls. + + The guest file API (crates/dingooemu-core/src/emulator/sdk_hle/files.rs:43-129) + resolves a name in three steps: a file under the save directory, a + resource packed inside the .app, then a host file relative to the .app's + own directory (crates/dingooemu-core/src/emulator.rs:1684-1706, + crates/dingooemu-core/src/emulator.rs:1433-1501). fsys_findfirst + enumerates the .app's directory and refuses to leave it + (crates/dingooemu-core/src/emulator.rs:1545-1591). Files the game + creates land in the frontend save directory + (crates/dingooemu-libretro/src/api.rs:152-155) or, when the frontend + gives none, beside the .app (crates/dingooemu-core/src/emulator.rs:411). + The core queries RETRO_ENVIRONMENT_GET_SAVE_DIRECTORY only + (crates/dingooemu-libretro/src/constants.rs:30); no system directory + constant exists in the crate. + + With the diagnostic core option on, dingooemu-diagnostic.txt is written + to the save directory (crates/dingooemu-libretro/src/diagnostics.rs:83-89, + crates/dingooemu-libretro/src/diagnostics.rs:311-316). No include_bytes! + data is compiled in. + +exclusion_note: "No file is read outside the content: the .app path is the only input, guest file calls resolve to the save directory, the .app's resource table or the .app's own directory, nothing queries the system directory, no data is embedded with include_bytes!, and the .info declares firmware_count = 0." +files: [] diff --git a/emulators/hatari2014.yml b/emulators/hatari2014.yml new file mode 100644 index 00000000..9e19f6b4 --- /dev/null +++ b/emulators/hatari2014.yml @@ -0,0 +1,158 @@ +emulator: Hatari 2014 +type: libretro +core_classification: frozen_snapshot +source: "https://github.com/libretro/hatari" +source_branch: hitari2014-mercurial +upstream: "https://github.com/hatari/hatari" +profiled_date: "2026-09-03" +source_commit: "3919d702b7013e8d05222345066747d4f8559c3f" +upstream_commit: "c1a5c88bc06e56778b6b7f8483becfd58a7da2b4" +core_version: "1.8.0" +display_name: "Atari - ST/STE/TT/Falcon (Hatari 2014)" +cores: + - hatari2014 +systems: + - atari-st + - atari-ste + - atari-tt + - atari-falcon + +notes: | + Hatari 2014 is the libretro port of Hatari 1.8.0 (src/includes/version.h:16), + the July 2014 release, kept on the hitari2014-mercurial branch of + libretro/hatari after the main branch moved to a new port. The branch + carries the Mercurial history up to the 1.8.0 release commit plus the + port commits started in November 2014; it builds as hatari2014 + (Makefile.libretro:22, .gitlab-ci-libretro.yml:12) and reports + library_name Hatari2014, version 1.8 (libretro/libretro.c:1466-1468). + No hatari2014 .info exists in libretro-core-info yet. + + Directory layout under the libretro system directory: the Hatari working + and data directories are /hatari (src/paths.c:323-324; the + system directory itself on Vita and PS3, src/paths.c:313-319), the + default TOS is /tos.img, extra TOS images go in + /hatari/tos, BOOT.ST in /hatari, floppy.raw and the + global hatari.cfg in and /hatari. The Hatari home + directory, which holds the user hatari.cfg and hatari.nvram, is + $HOME/.hatari on desktop builds (src/paths.c:40, src/paths.c:283-284), + /hatari on Wii U and Vita (src/paths.c:209-212, + src/paths.c:223-225), the system directory itself on PS3 + (src/paths.c:237-239). + + TOS selection: retro_set_environment lists /tos.img and every + entry of /hatari/tos (libretro/libretro.c:393-411); the + hatari_tosimage option offers those ending in img + (libretro/libretro.c:270-299) and the choice becomes RETRO_TOS + (libretro/libretro.c:640-649). retro_load_game refuses content when that + path does not exist (libretro/libretro.c:1602-1607) and hmain writes it + into szTosImageFileName after the configuration files, so hatari.cfg + cannot override it (src/main.c:905-907). TOS_LoadImage reads the file + whole, strips the 256-byte (or 34-byte for 4.92) loader of a RAM TOS, + detects EmuTOS by ETOS at offset 0x2c, and rejects an image whose version + word is outside 0x100-0x4FF, whose load address is neither 0xE00000 nor + 0xFC0000, or which exceeds 1 MB; a 16 KB image with version 0 is the TOS + 0.00 boot loader (src/tos.c:575-651). Machine type and CPU are coerced to + the TOS version unless the image is EmuTOS (src/tos.c:459-566), and ROM + patches are applied for TOS 1.00, 1.02, 1.04, 1.06, 1.62, 2.05, 2.06, + 3.06, 4.00 to 4.04 and 4.92 (src/tos.c:146-220). HFile_Read also accepts + .img, .rom and .tos as fallback extensions and reads the first member of + a .zip or a .gz (src/file.c:203-230, libretro/include/config.h:20), which + only matters for a path picked in the in-core ROM dialog + (libretro/gui-retro/dlgRom.c:69-76). EmuTOS is not embedded. + + The cartridge slot is empty by default (src/configuration.c:592) and is + filled through hatari.cfg or the in-core ROM dialog + (libretro/gui-retro/dlgRom.c:82-89). Cart_ResetImage installs the + built-in GEMDOS trampoline instead of the external image whenever GEMDOS + hard disk emulation, extended VDI or OS tracing is on (src/cart.c:121-133). + + Floppy, ACSI, IDE and GEMDOS images are content. When a .gem folder is + loaded, /hatari/BOOT.ST is inserted into drive A so TOS boots + with the GEMDOS drive (libretro/libretro.c:1663-1671). Memory snapshots + for retro_serialize stay in memory (libretro/libretro.c:1768-1793); + hatari.sav, auto.sav, hatari.prn, hatari.wav and hatari.avi are output + names under /hatari. DESKTOP.INF and NEWDESK.INF are created or + rewritten inside the emulated C: directory when extended VDI is on + (src/vdi.c:955-988). + +files: + - name: "tos.img" + path: "tos.img" + description: "Atari TOS ROM image" + required: true + max_size: 1048576 + validation: [size] + source_ref: "libretro/libretro.c:393-411, libretro/libretro.c:640-649, libretro/libretro.c:1602-1607, src/main.c:905-907, src/tos.c:48-53, src/tos.c:575-651" + note: > + Any TOS 1.00 to 4.04, TOS 0.00, a RAM TOS or EmuTOS. Additional images + are read from /hatari/tos and selected with the hatari_tosimage + option; only names ending in img are offered. + + - name: "cartridge ROM" + path: null + config_key: "szCartridgeImageFileName" + description: "Atari ST cartridge image loaded at 0xFA0000" + required: false + min_size: 40 + max_size: 131076 + validation: [size] + source_ref: "src/cart.c:40-46, src/cart.c:53-88, src/cart.c:121-133, src/configuration.c:336, src/configuration.c:592, libretro/gui-retro/dlgRom.c:82-89" + note: > + Raw images up to 0x20000 bytes or .stc images of exactly 0x20004 bytes + whose 4-byte header is skipped; any other size is refused. Extensions + .img, .rom and .stc are tried when the configured path is missing. + + - name: "BOOT.ST" + path: "hatari/BOOT.ST" + description: "Boot floppy inserted with GEMDOS hard disk folders" + required: false + source_ref: "libretro/libretro.c:1663-1671" + note: "Added as the first disk when the content is a .gem file." + + - name: "floppy.raw" + path: "floppy.raw" + description: "Floppy drive seek sample, signed 16-bit little-endian stereo at 44100 Hz, no header" + required: false + has_builtin: true + storage: user_provided + unsourceable: "any headerless s16le stereo 44100 Hz sample the user records; no name or version the code expects beyond the filename" + source_ref: "libretro/floppy_sound.c:118-170, libretro/libretro.c:844-852, libretro/libretro.c:1379" + note: > + Read whole at retro_init; an empty or short read falls back to the + synthesised click (libretro/floppy_sound.c:31-95). Played on each drive + LED rising edge when hatari_floppy_sound is on. + + - name: "hatari.cfg" + path: "hatari/hatari.cfg" + description: "Hatari configuration file" + required: false + storage: user_provided + unsourceable: "user settings in Hatari's INI format; no canonical contents" + source_ref: "libretro/libretro.c:945-951, src/main.c:805-831, src/main.c:892-894, src/configuration.c:630-633, src/configuration.c:768-777, src/paths.c:283-284" + note: > + Read only when the hatari_autoload_config option is on (off by default): + /hatari/hatari.cfg first, then hatari.cfg in the Hatari home + directory. Every section is applied except the TOS path. + + - name: "keymap file" + path: null + config_key: "szMappingFileName" + description: "Keyboard remap table, one PC key code and ST scan code pair per line" + required: false + storage: user_provided + unsourceable: "user-written mapping in the doc/keymap-sample.txt format; no canonical contents" + source_ref: "src/keymap.c:53-59, src/keymap.c:605-658, src/change.c:359, src/configuration.c:188, src/configuration.c:504" + note: "Empty by default; loaded at Keymap_Init and on configuration change when the path is set." + + - name: "hatari.nvram" + path: null + description: "TT and Falcon NVRAM contents, 50 bytes" + required: false + has_builtin: true + min_size: 50 + validation: [size] + unsourceable: "machine state the emulator writes itself at exit; no canonical contents" + source_ref: "src/falcon/nvram.c:63-85, src/falcon/nvram.c:186-216, src/falcon/nvram.c:223-226, src/main.c:752, src/paths.c:283-284" + note: > + Read from the Hatari home directory at NvRam_Init; a short read keeps + the built-in defaults adjusted to the monitor type. Saved back on exit. diff --git a/emulators/irogb.yml b/emulators/irogb.yml new file mode 100644 index 00000000..b8981878 --- /dev/null +++ b/emulators/irogb.yml @@ -0,0 +1,65 @@ +emulator: IroGB +type: libretro +core_classification: official_port +source: "https://github.com/AlexSutila/IroGB" +upstream: "https://github.com/AlexSutila/IroGB" +profiled_date: "2026-09-03" +source_commit: "7b6bb9b1f9cbf04e49eea0dc89c54635c2b54056" +core_version: "1.0.0" +display_name: "Nintendo - Game Boy / Color (IroGB)" +cores: + - irogb +systems: + - nintendo-gb + - nintendo-gbc + +notes: | + IroGB is a Game Boy and Game Boy Color emulator by Alex Sutila. The + libretro frontend lives in src/frontend/libretro of the same repository + as the SDL3, raylib and Python frontends. The buildbot builds the + repository default branch, release, with cmake -DBUILD_LIBRETRO=ON + -DNO_CORE_FILESYSTEM=ON (.gitlab-ci.yml:10-14). + + Boot ROMs are read from the root of the system directory + (src/frontend/libretro/libretro_host.cpp:61-84). The irogb_bios core + option picks the file: dmg opens dmg_boot.bin, cgb opens cgb_boot.bin, + auto (the default) tries cgb_boot.bin then dmg_boot.bin, none opens + nothing (src/frontend/libretro/libretro_host.cpp:86-113). Under auto a + DMG cartridge boots through the CGB boot ROM whenever cgb_boot.bin is + present and gets the CGB colouring of monochrome games; the + irogb_monochrome_dmg option turns that off. + + BootROM accepts a file of exactly 256 or 2304 bytes and rejects any + other size (src/memory/boot.cpp:10-24). The size also picks the machine: + a 2304-byte image starts in CGB mode (src/gbc.cpp:330-340). 256 bytes + covers DMG, DMG0, MGB and SGB dumps, 2304 bytes CGB, CGB0, AGB0 and AGB + dumps (includes/memory/boot.hpp:9-30); only the two names above are + ever opened. No hash is checked. + + Without a boot ROM, or when the file fails to open or has another size, + the core continues with skip_bios(), which loads post-boot CPU and MMIO + values, unmaps the boot ROM and sets CGB mode from the cartridge header + (src/gbc.cpp:342-349, src/gbc.cpp:387-405, src/gbc.cpp:489-490). + + The .info declares cgb_bios.bin; the code opens cgb_boot.bin. + +files: + - name: "dmg_boot.bin" + system: nintendo-gb + description: "Game Boy (DMG) boot ROM" + required: false + hle_fallback: true + size: 256 + validation: [size] + source_ref: "src/frontend/libretro/libretro_host.cpp:91, src/frontend/libretro/libretro_host.cpp:106, src/frontend/libretro/libretro_host.cpp:61-84, src/memory/boot.cpp:10-24" + note: "Opened with irogb_bios set to dmg, or to auto when cgb_boot.bin is absent." + + - name: "cgb_boot.bin" + system: nintendo-gbc + description: "Game Boy Color (CGB) boot ROM" + required: false + hle_fallback: true + size: 2304 + validation: [size] + source_ref: "src/frontend/libretro/libretro_host.cpp:97, src/frontend/libretro/libretro_host.cpp:104, src/frontend/libretro/libretro_host.cpp:61-84, src/memory/boot.cpp:10-24, src/gbc.cpp:330-340" + note: "Opened with irogb_bios set to cgb or auto. Under auto it also boots DMG cartridges in CGB mode." diff --git a/emulators/native32emu.yml b/emulators/native32emu.yml new file mode 100644 index 00000000..3a1f8c82 --- /dev/null +++ b/emulators/native32emu.yml @@ -0,0 +1,48 @@ +emulator: Native32Emu +type: standalone + libretro +core_classification: pure_libretro +source: "https://github.com/AloysHF/Native32Emu" +upstream: "https://github.com/AloysHF/Native32Emu" +profiled_date: "2026-09-03" +source_commit: "f445ea34ba42ecb5b3d7fe7b5f28d544a8b0a2ea" +core_version: "1.3.0" +display_name: "Sunplus - Native32 (Native32Emu)" +cores: + - native32emu +systems: + - sunplus-native32 + +notes: | + Emulator for the Sunplus Native32 game format written in Rust by + AloysHF. The libretro core and the native32emu standalone binary share + the native32emu-core crate. Content (.smf, .sgm, .ssl or a .zip + package) is read from its full path (need_fullpath = true, + crates/native32emu-libretro/src/libretro/api.rs:107; + Emulator::from_path, crates/native32emu-core/src/emulator.rs:79-130). + The header is decrypted with DES keys compiled into the core + (crates/native32emu-core/src/header_decryptor.rs:136, + crates/native32emu-core/src/des_constants.rs). + + A .zip package is extracted to a temporary directory + (crates/native32emu-core/src/archive_loader.rs:17-61) and booted from + the menu found at its root, FHUI.smf first, then NA32UI.smf + (crates/native32emu-core/src/archive_loader.rs:11, + crates/native32emu-core/src/archive_loader.rs:88-122). Every later file + is resolved relative to the running content and its parent directories, + case-insensitively with trailing spaces trimmed + (crates/native32emu-core/src/content_loader.rs:73-130): child .smf and + .ssl content (crates/native32emu-core/src/emulator.rs:597-607), .dat + thumbnails for the menu (crates/native32emu-core/src/emulator.rs:545-572), + .mpg cutscenes (crates/native32emu-core/src/emulator.rs:444-460) and + the menu's game listing (crates/native32emu-core/src/file_browser.rs:75-120). + All of them ship inside the game package. Saves are written to + .ssl_sav beside the content + (crates/native32emu-core/src/save_manager.rs:10-46). + + RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY and GET_SAVE_DIRECTORY are + defined (crates/native32emu-libretro/src/libretro/constants.rs:36, + crates/native32emu-libretro/src/libretro/constants.rs:47) but nothing + calls them. No include_bytes! data is compiled in. + +exclusion_note: "No file is read outside the game package: content and every sibling it names (menu, child content, .dat thumbnails, .mpg cutscenes) resolve from the content's own directory tree, saves are written beside the content, the system directory is never queried, no data is embedded with include_bytes!, and the .info declares firmware_count = 0." +files: [] diff --git a/emulators/nicaiemu.yml b/emulators/nicaiemu.yml new file mode 100644 index 00000000..f32a1160 --- /dev/null +++ b/emulators/nicaiemu.yml @@ -0,0 +1,44 @@ +emulator: NicaiEmu +type: standalone + libretro +core_classification: pure_libretro +source: "https://github.com/AloysHF/NicaiEmu" +upstream: "https://github.com/AloysHF/NicaiEmu" +profiled_date: "2026-09-03" +source_commit: "d0b1a959e3756209e6f56b167bb6e5509805b275" +core_version: "0.1.0" +display_name: "MStar - Nicai (NicaiEmu)" +cores: + - nicaiemu +systems: + - mstar-nicai + +notes: | + Emulator for Nicai/MStar CBE (Cool Bar Engine) phone games written in + Rust by AloysHF. The libretro core and the nicaiemu standalone binary + share the nicaiemu-core crate. A .cbe archive is read whole from its + full path (need_fullpath = true, + crates/nicaiemu-libretro/src/libretro/api.rs:108; load_machine, + crates/nicaiemu-libretro/src/libretro/api.rs:266-270; CbeArchive::load, + crates/nicaiemu-core/src/cbe/archive.rs:68-94). Code, scenes, maps, + actors, scripts, images and audio are sections of that archive, and + installed resource packages are parsed from the same bytes + (crates/nicaiemu-core/src/machine/packages.rs). + + Phone services are implemented in Rust + (crates/nicaiemu-core/src/machine/services/). The guest file manager is + an in-memory sandbox that never touches the host disk + (crates/nicaiemu-core/src/machine/virtual_fs.rs:14-30). Text is decoded + as GBK and rasterised from the unifont crate compiled into the core + (crates/nicaiemu-core/src/machine/drawing.rs:41, + crates/nicaiemu-core/src/machine/drawing.rs:597). MIDI resources are + synthesised as decaying sine tones without a sound bank + (crates/nicaiemu-core/src/audio_engine.rs:238-243); WAV and MP3 are + decoded with symphonia. + + The libretro crate asks the frontend for no directory. The standalone + binary reads and writes only the files named by --load-state and + --save-state (crates/nicaiemu/src/main.rs:114-118). No include_bytes! + data is compiled in. + +exclusion_note: "No file is read outside the content: the .cbe archive is the only input, the guest filesystem is in-memory, glyphs come from the unifont crate and MIDI is synthesised without a bank, no directory is requested from the frontend, no data is embedded with include_bytes!, and the .info declares firmware_count = 0." +files: [] diff --git a/emulators/rustynes.yml b/emulators/rustynes.yml new file mode 100644 index 00000000..a33c47ad --- /dev/null +++ b/emulators/rustynes.yml @@ -0,0 +1,45 @@ +emulator: RustyNES +type: libretro +core_classification: official_port +source: "https://github.com/doublegate/RustyNES" +upstream: "https://github.com/doublegate/RustyNES" +profiled_date: "2026-09-03" +source_commit: "4e77905e045c0e971b53c5abee8d0a07a4b1bfdb" +core_version: "2.6.12" +display_name: "Nintendo - NES / Famicom (RustyNES)" +cores: + - rustynes +systems: + - nintendo-nes + - nintendo-fds + +notes: | + RustyNES is a NES and Famicom emulator written in Rust by DoubleGate. + The libretro core is the crates/rustynes-libretro crate of the same + repository, built from the main branch + (crates/rustynes-libretro/Makefile, .gitlab-ci.yml). The crate pulls + rustynes-core with default features off, so the HD pack loader is not + compiled into the core and nothing else is read from disk. + + Cartridge content needs no external file. A .fds disk image goes to + Nes::from_disk, which needs the Famicom Disk System BIOS: the core joins + disksys.rom to the frontend system directory and reads the whole file + (crates/rustynes-libretro/src/lib.rs:921-938). A missing file, or a + frontend without a system directory, makes retro_load_game fail with an + error. Fds::new rejects a BIOS that is not exactly 8192 bytes + (crates/rustynes-mappers/src/fds.rs:1351-1357); no hash is checked. The + FDS device maps the BIOS and boots from its reset vector. + + The version comes from the workspace Cargo.toml. The .info in + libretro-core-info says v2.3.5 and the copy in the repository v2.6.12; + the md5 in the .info notes is not enforced by the code. + +files: + - name: "disksys.rom" + system: nintendo-fds + description: "Famicom Disk System BIOS" + required: true + size: 8192 + validation: [size] + source_ref: "crates/rustynes-libretro/src/lib.rs:921-945, crates/rustynes-core/src/nes.rs:356-358, crates/rustynes-core/src/bus.rs:1015-1021, crates/rustynes-mappers/src/fds.rs:121, crates/rustynes-mappers/src/fds.rs:1351-1357" + note: "Read only when the content extension is .fds. Any other size fails the load." diff --git a/emulators/spmp8000emu.yml b/emulators/spmp8000emu.yml new file mode 100644 index 00000000..eb52dc4f --- /dev/null +++ b/emulators/spmp8000emu.yml @@ -0,0 +1,61 @@ +emulator: SPMP8000Emu +type: standalone + libretro +core_classification: pure_libretro +source: "https://github.com/AloysHF/SPMP8000Emu" +upstream: "https://github.com/AloysHF/SPMP8000Emu" +profiled_date: "2026-09-03" +source_commit: "00f5985b639a036cd255770fb56abc98fcde7513" +core_version: "1.0.0" +display_name: "Sunplus - SPMP8000 (SPMP8000Emu)" +cores: + - spmp8000emu +systems: + - sunplus-spmp8000 + +notes: | + Emulator for Sunplus SPMP8000 NGame1.0 games written in Rust by + AloysHF. The libretro core and the spmp8000-emu standalone binary share + the spmp8000emu-core crate. A .bin game is read from its full path + (need_fullpath = true, crates/spmp8000emu-libretro/src/libretro/api.rs:96; + from_path_with_config, crates/spmp8000emu-core/src/emulator.rs:63-68), + its header parsed, the payload DES-decrypted and LZ77/RLE-decompressed + with keys and tables compiled into the core, then loaded at the code + address. The system API (emuIf, NativeGE, eCos) is implemented in Rust + (crates/spmp8000emu-core/src/api/). + + Guest file calls (emuIfFsFileOpen, NativeGE_fsOpen, NativeGE_readRecord, + NativeGE_writeRecord) resolve the guest path under the directory of the + loaded .bin (crates/spmp8000emu-core/src/emulator.rs:129-131, + crates/spmp8000emu-core/src/api/mod.rs:125-127, + crates/spmp8000emu-core/src/api/emu_fs.rs:9-13); what a game reads or + writes there is its own data and saves. + RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY and GET_SAVE_DIRECTORY are + defined (crates/spmp8000emu-libretro/src/libretro/constants.rs:36, + crates/spmp8000emu-libretro/src/libretro/constants.rs:47) but nothing + calls them. + + MIDI resources are rendered by a sample-based synthesiser whose tone + bank is the SPMP8000 firmware's own PCM tone library, compiled into the + core with include_bytes! (crates/spmp8000emu-core/src/tone_library.rs:8, + crates/spmp8000emu-core/src/audio_resource.rs:498-499). It is the only + embedded data and the only firmware-derived component; nothing is read + from disk for it. + +files: + - name: tonelib.bin + system: sunplus-spmp8000 + required: false + embedded: true + size: 130500 + md5: f276986a8ee7d29d9ba495c1cfe0b891 + sha1: 6b52965081642630ef7aa30a90c9643f97c72410 + sha256: 5924f1cea0a65086a48b10a6553e6493a43fcf63e265d974e447be1f4262c99a + crc32: 058a577b + description: "SPMP8000 firmware PCM tone bank" + note: >- + Compiled into the core from crates/spmp8000emu-core/assets/tonelib.bin + and never opened at run time. 256-entry patch table (128 melodic, + 128 percussion) followed by per-zone PCM samples, read by the + NativeGE MIDI path. Hashes are of the file in the emulator + repository; the repository states the SHA-256. + source_ref: "crates/spmp8000emu-core/src/tone_library.rs:8, crates/spmp8000emu-core/src/tone_library.rs:24-26, crates/spmp8000emu-core/src/audio_resource.rs:498-499, crates/spmp8000emu-core/assets/README.md:3-9" diff --git a/emulators/tia.yml b/emulators/tia.yml new file mode 100644 index 00000000..1d84b087 --- /dev/null +++ b/emulators/tia.yml @@ -0,0 +1,29 @@ +emulator: Tia +type: libretro +core_classification: pure_libretro +source: "https://github.com/warmenhoven/tia" +upstream: "https://github.com/warmenhoven/tia" +profiled_date: "2026-09-03" +source_commit: "6ae5bf998fe7a7842294089db17fc86fd73db1f0" +core_version: "52+6ae5bf9" +display_name: "Atari - 2600 (Tia)" +cores: + - tia +systems: + - atari-2600 +files: [] +exclusion_note: > + The core opens no file. src/ has no fopen, filestream or opendir call and + libretro.c never asks for RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY; its + environment calls cover options, logging, controller info, input + descriptors, messages, pixel format and AV info. The Supercharger BIOS is + a 294-byte routine compiled in (src/cart.c:195-235) and written into the + ROM bank of every AR tape image (src/cart.c:300-319), the default + tape-load header is a compiled table (src/cart.c:237-272), and the NTSC, + PAL and SECAM palettes in their standard and z26 variants are const tables + (src/palette.c). Content arrives in memory (src/libretro.c:596). +notes: | + Tia is an Atari 2600 core written for libretro by Eric Warmenhoven, with + no standalone build; the repository is its own upstream. The version + string is the commit count and short hash the Makefile bakes in + (Makefile:36-37, src/libretro.c:595). The .info shows 26.