mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 15:43:45 -06:00
Each libretro profile records version_basis and core_version is read there at its pin. snes9x states 1.63 in snes9x.h, nestopia 2.0.0, mgba 0.11.0, vice 3.10, atari800's libretro tree 7.0.0. Cores whose build takes its version from git carry the nearest tag in describe form (flycast v2.7-90-ge88b0ce, ppsspp, duckstation, gearcoleco), placeholders copied from .info files (Git, SVN) are replaced by the code's statement, and a code that states none is null with kind none.
55 lines
2.5 KiB
YAML
55 lines
2.5 KiB
YAML
emulator: RustyNES
|
|
type: libretro
|
|
core_classification: official_port
|
|
source: "https://github.com/doublegate/RustyNES"
|
|
upstream: "https://github.com/doublegate/RustyNES"
|
|
profiled_date: "2026-10-26"
|
|
source_commit: "3d02b99dc84fb389c03fc6b1f986ffa658dda0dd"
|
|
core_version: "3.5.0"
|
|
version_basis:
|
|
kind: file
|
|
path: "Cargo.toml"
|
|
pattern: 'version\s+=\s+"([^"]+)'
|
|
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 and does not link the
|
|
rustynes-hdpack crate, so no HD pack is read. The game database it links
|
|
is compiled in (crates/rustynes-gamedb/src/lib.rs:41), and its
|
|
game_db_user.txt overlay is read only once a host sets its directory,
|
|
which the libretro crate never does (crates/rustynes-gamedb/src/lib.rs:356-366).
|
|
|
|
Cartridge content needs no external file. Content is a Famicom Disk System
|
|
image when its path ends in .fds or its bytes open with the fwNES header or
|
|
the *NINTENDO-HVC* side marker (crates/rustynes-libretro/src/lib.rs:2225-2244).
|
|
Such an 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:1380-1396). 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:1368-1374). 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 v3.4.0 and the copy in the repository v3.5.0.
|
|
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:1380-1396, crates/rustynes-core/src/nes.rs:538-540, crates/rustynes-core/src/bus.rs:1103-1108, crates/rustynes-mappers/src/fds.rs:121, crates/rustynes-mappers/src/fds.rs:1368-1374"
|
|
note: "Read only when the content is a Famicom Disk System image, by extension or signature. Any other size fails the load."
|