mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 00:27:20 -05: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.
75 lines
3.3 KiB
YAML
75 lines
3.3 KiB
YAML
emulator: doukutsu-rs
|
|
type: standalone + libretro
|
|
core_classification: game_engine
|
|
source: "https://github.com/DrGlaucous/doukutsu-rs-nm"
|
|
upstream: "https://github.com/doukutsu-rs/doukutsu-rs"
|
|
profiled_date: "2026-03-23"
|
|
source_commit: "51e64c2e9615bcd476034c69b58927877fe73494"
|
|
upstream_commit: "d05995b2ce88e583491fcecfbd5883735d3527ea"
|
|
core_version: "0.102.0"
|
|
version_basis:
|
|
kind: file
|
|
path: "Cargo.toml"
|
|
pattern: '\[package\][^\[]*?^version\s*=\s*"([^"]+)"'
|
|
display_name: "Cave Story (drs)"
|
|
cores:
|
|
- doukutsu_rs
|
|
systems:
|
|
- cavestory
|
|
|
|
# doukutsu-rs (d-rs) is an open-source reimplementation of the Cave Story
|
|
# (Doukutsu Monogatari) engine in Rust, ported to libretro by Dr. Glaucous.
|
|
# It plays the original freeware Cave Story and Cave Story+ (Steam/Switch).
|
|
#
|
|
# The core does NOT use RetroArch's system directory for any BIOS or firmware.
|
|
# get_system_directory() is defined in libretro.rs:1255 but never called by
|
|
# the core (the import is commented out in core.rs:28).
|
|
#
|
|
# Instead, the core loads game data relative to the content path provided by
|
|
# the frontend. The target is either a Doukutsu.exe (freeware) or a directory
|
|
# containing a data/ subfolder (core.rs:226-233):
|
|
#
|
|
# content_path = "/path/to/Doukutsu.exe" (or directory for CS Switch)
|
|
# resource_dir = parent_of(content_path) + "/data/"
|
|
#
|
|
# The data/ directory must contain the freeware Cave Story game assets:
|
|
# npc.tbl, mrmap.bin, *.png, Stage/, Npc/, org/ (music), *.tsc (scripts)
|
|
#
|
|
# These are the original Pixel game files from Doukutsu.exe, extracted by
|
|
# the doukutsu-rs/game-data repo (CSE2E-converted freeware data). They are
|
|
# copyrighted by Daisuke "Pixel" Amaya but freely redistributable for
|
|
# non-commercial use.
|
|
#
|
|
# Internal engine data (fonts, organya wavetables, gamecontrollerdb.txt,
|
|
# touch overlay, lightmap) is compiled into the core binary via
|
|
# include_bytes! in builtin_fs.rs, so nothing extra is needed in system/.
|
|
#
|
|
# The .info file (doukutsu_rs_libretro.info) declares:
|
|
# supported_extensions = "exe|dll|so"
|
|
# needs_fullpath = true
|
|
# supports_no_game = true
|
|
# notes = "(!) drs requires data ROM 'Cave Story (en).zip'."
|
|
# "|(!) Load Content 'Doukutsu.exe', Also works with all other ports of CS"
|
|
#
|
|
# No firmware entries are declared in the .info file.
|
|
# Valid extensions: exe, dll, so (loads the original game binary as content path)
|
|
|
|
notes: |
|
|
No BIOS or firmware files required in the system directory.
|
|
The core reads game data from a data/ subfolder next to the loaded content.
|
|
Users must provide the Cave Story freeware game files (Doukutsu.exe and its
|
|
data/ directory) or a Cave Story+ installation as the content to load.
|
|
All engine-internal resources (fonts, wavetables, controller mappings) are
|
|
built into the core binary.
|
|
|
|
exclusion_note: "game data loaded relative to content path, not from system directory"
|
|
files:
|
|
- name: "Doukutsu.exe"
|
|
category: game_data
|
|
system: cavestory
|
|
load_from: content_dir
|
|
required: false
|
|
description: "Freeware Cave Story executable, loaded as content"
|
|
note: "The engine reads the game from the data/ folder in the same directory. On first run it extracts the Organya music, bitmaps and stage table from it into data/, unless data/stage.sect already exists."
|
|
source_ref: "source drsretroarch/src/core.rs:51-52, 226-233, source src/game/shared_game_state.rs:366-384, source src/data/vanilla.rs:37-97"
|