Files
libretro/emulators/chihiro-ds.yml
T
Abdessamad Derraz 8b203e397c chore: mark what the new profiles' installs bring
The profiles written for RetroBat and RetroPie were checked the same way: UZDoom, LZDoom, SRB2 and AdvanceMAME data ship with their releases, RetroPie installs the shareware Doom, Quake III and Wolfenstein data, the Aleph One scenarios and 4DOS beside the ports it builds, RetroBat installs Jynx's ROMs, and Recalbox's uae4all core comes without the AROS ROMs.
2026-10-20 06:21:34 +02:00

228 lines
9.3 KiB
YAML

emulator: Chihiro-DS
type: standalone
core_classification: community_fork
source: "https://www.retrobat.org/repo/win64/stable/emulators/chihiro-ds.7z"
upstream: closed-source
profiled_date: "2026-10-20"
core_version: "1.0 (Mar 14 2025)"
display_name: "Sega - Chihiro (Chihiro-DS)"
cores:
- chihiro-gun
- chihiro-ds
systems:
- sega-chihiro
- microsoft-xbox
mode: standalone
notes: |
Cxbx-Reloaded derivative built for the Chihiro light gun games, used by
RetroBat as its "chihiro-gun" emulator from emulators\chihiro-ds and paired
with DemulShooter. No source is published. The build read here is the one
RetroBat installs, chihiro-ds.7z sha256
d20a9ffc6822c719f25d9b46c66249bf7efc9729cfddd10bda4f8629c96d48a5, whose
binaries carry "Chihiro-DS 1.0 (Mar 14 2025)". cxbxr-ldr.exe md5
d3675f7bb270072f33d9106497dd9bbc is the print DemulShooter lists for
"Chihiro-DS 1.0". cxbxr-emu.dll (md5 62f492f14b2af4bef7329ef269355a78) is
cited by virtual address.
ref: emulatorLauncher Generators/Cxbx.Generator.cs:104-110, 202-214,
emulatorLauncher Installer.cs:46
Every file name, path and error message in cxbxr-emu.dll that concerns a
file matches Cxbx-Reloaded develop with CHIHIRO_WORK enabled, as it stood
between CI-6f32d89 (6f32d89545cf0ad5a7d44ecedaf963005d7f84dc, December
2024) and CI-ec9934a (April 2025), which agree on every file loading path. That source is cited below with the CI-6f32d89
prefix as the reading of the logic the strings belong to. The only file the
fork adds is wm2_loader.dll.
Every path below is relative to the data directory. RetroBat's settings.ini
template sets DataStorageToggle to 1, the folder holding cxbx.exe. EmuDisk
and EmuMu are created there at startup, and the Chihiro files live in
EmuDisk\Chihiro (this build predates the EmuMediaBoard folder).
ref: CI-6f32d89 src/common/Settings.cpp:880-915,
CI-6f32d89 src/common/FilePaths.cpp:82-109,
cxbxr-emu.dll 0x1061c648
A title is Chihiro when its XBE type says so or a boot.id sits beside it.
Launched directly, such a title needs the media board ROM: a missing file,
an unreadable one or one that is not 2 MB ends the run. When either SEGABOOT
file is missing both are rewritten from the two 1 MB halves of the ROM, then
SEGABOOT_MBROM1.XBE is launched and boots the title. boot.id is read again by
the media board for the region flags, and its absence ends the run.
ref: CI-6f32d89 src/core/kernel/init/CxbxKrnl.cpp:517-586,
CI-6f32d89 src/devices/chihiro/MediaBoard.cpp:46-57,
cxbxr-emu.dll 0x10623190, 0x1062b60c, 0x1062b618
The four JVS base board images are memory mapped read/write when the
system is Chihiro. Byte 0x1F00 of the QC firmware holds the board region and
is rewritten in place to one the title's boot.id accepts, which is why the
copy RetroBat ships differs from the dump by that byte.
ref: CI-6f32d89 src/core/hle/JVS/JVS.cpp:127-142,
CI-6f32d89 src/core/hle/JVS/JVS.cpp:169-210,
CI-6f32d89 src/core/hle/JVS/JVS.cpp:246-262
The package ships every file below except xboxdash.xbe and keys.bin. It
also carries chihiro_xbox_bios.bin, ver1305.bin, 315-6215.bin,
sp5001.bin, sp5001-b.bin and sp5002-a.bin in EmuDisk\chihiro, plus a
"chihiro (old)" copy of the folder. No string in the binaries names any of
them and nothing opens them.
files:
- name: fpr21042_m29w160et.bin
path: "EmuDisk/Chihiro/fpr21042_m29w160et.bin"
system: sega-chihiro
required: true
bundled: true
sha1: "a13cf9c5cdfe8605d82150b7573652f419b30197"
md5: "afacfb61877401f1611998d2b590dffd"
size: 2097152
validation: [size]
description: "Chihiro media board flash ROM"
note: >-
Checked for existence, opened and size checked before a Chihiro title is
started, each failure ending the run. Read to write out the two SEGABOOT
files when either is missing, and launched when a Chihiro title reboots
with an empty launch path.
source_ref: "cxbxr-emu.dll 0x10624bb4, 0x10623190"
- name: SEGABOOT_MBROM0.XBE
path: "EmuDisk/Chihiro/SEGABOOT_MBROM0.XBE"
system: sega-chihiro
required: false
bundled: true
size: 1048576
sha1: "2f7ac75e738e2e4f83ffb0cbc06127195a7e8336"
md5: "853d40e7a80d659613885d93abbec463"
description: "SEGABOOT, old revision"
note: >-
Mounted as the mbrom0 device. Written from the first megabyte of the media
board ROM when either SEGABOOT file is missing. The copy RetroBat ships is
that first megabyte.
source_ref: "cxbxr-emu.dll 0x10624b98"
- name: SEGABOOT_MBROM1.XBE
path: "EmuDisk/Chihiro/SEGABOOT_MBROM1.XBE"
system: sega-chihiro
required: false
bundled: true
size: 1048576
sha1: "463486813206ca44f1d90eb0ef372ef2661b4dfe"
md5: "aff2008c8404b9661dc2f52d34c494e0"
description: "SEGABOOT, current revision"
note: >-
Mounted as the mbrom1 device and launched as the XBE that boots a Chihiro
title. Written from the second megabyte of the media board ROM when either
SEGABOOT file is missing. The copy RetroBat ships is not that half: it
differs in about 660000 bytes from the second megabyte of the ROM it ships
beside it. Hashes are those of the shipped copy.
source_ref: "cxbxr-emu.dll 0x10624b7c"
- name: ic10_g24lc64.bin
path: "EmuDisk/Chihiro/ic10_g24lc64.bin"
system: sega-chihiro
required: true
bundled: true
sha1: "98e4cb2b76b89eb5990edf786d2e45e1956beb7e"
md5: "ec15634cf28e8bcaf660346787f83254"
min_size: 7937
description: "Base board QC microcontroller firmware"
note: >-
Memory mapped read/write at JVS setup, the run ends when it cannot be
opened. Byte 0x1F00 is dereferenced right after and rewritten to USA,
export or Japan when the title's boot.id rejects the stored region.
Hashes are those of the copy RetroBat ships.
source_ref: "cxbxr-emu.dll 0x1061c648, 0x1061c620"
- name: pc20_g24lc64.bin
path: "EmuDisk/Chihiro/pc20_g24lc64.bin"
system: sega-chihiro
required: true
bundled: true
sha1: "82dad6e2a75bab4a4840dc6939462f1fb9b95101"
md5: "bf1cf24f8549137c0b1ad0fa61473c7e"
description: "Base board SC microcontroller firmware"
note: "Memory mapped read/write at JVS setup, the run ends when it cannot be opened."
source_ref: "cxbxr-emu.dll 0x1061c648, 0x1061c634"
- name: ic11_24lc024.bin
path: "EmuDisk/Chihiro/ic11_24lc024.bin"
system: sega-chihiro
required: true
bundled: true
sha1: "7c06ccfdd8fb2f4e2d4b0d866791b21879fbd8f4"
md5: "da9feafc678d2476f3bf3b1049ec4b17"
description: "Base board configuration EEPROM"
note: >-
Memory mapped read/write at JVS setup, the run ends when it cannot be
opened. Writes from JvsEEPROM_Write are synced to disk at once.
source_ref: "cxbxr-emu.dll 0x1061c648, 0x1061c688"
- name: backup_ram.bin
path: "EmuDisk/Chihiro/backup_ram.bin"
system: sega-chihiro
required: false
bundled: true
sha1: "50b6b204aa881dab8bf572e901ea93d7f708844d"
md5: "c34872828474f21cbc761febacea72df"
has_builtin: true
size_note: "Created as 128 KB of zeros when absent, then memory mapped"
description: "Base board backup memory"
source_ref: "cxbxr-emu.dll 0x1061c648, 0x1061c69c"
- name: xboxdash.xbe
path: "EmuDisk/Partition2/xboxdash.xbe"
system: microsoft-xbox
required: false
description: "Xbox dashboard executable"
note: >-
Launched when an Xbox title reboots with an empty launch path and by the
Open Dashboard menu entry. When it is missing the console's unrecoverable
error screen is shown.
source_ref: "cxbxr-emu.dll 0x105f8c60"
- name: EEPROM.bin
path: "EEPROM.bin"
system: microsoft-xbox
required: false
bundled: true
sha1: "de0b38f4762d09b8fc4883f3f6a04203d2c4b8e3"
md5: "6d497abbfb773a2e07f8ab71f2a2999d"
has_builtin: true
size: 256
validation: [size]
description: "Xbox EEPROM image"
note: >-
Opened at startup and mapped read/write, created with defaults when
absent, and a file that is not 256 bytes ends the run. RetroBat ships one
in the package and writes the language into it only for the xbox system.
source_ref: "cxbxr-emu.dll 0x105f6084, 0x105f5d84"
- name: keys.bin
path: "keys.bin"
system: microsoft-xbox
required: false
size: 32
validation: [size]
description: "Xbox EEPROM and certificate keys"
note: "Two 16 byte keys, the EEPROM key then the certificate key. Any other length is refused with a warning."
source_ref: "cxbxr-emu.dll 0x105f6094, 0x105f60a4"
- name: wm2_loader.dll
path: "wm2_loader.dll"
required: false
bundled: true
unsourceable: "Host library shipped inside the Chihiro-DS package, not emulation data"
size: 121856
description: "Chihiro-DS loader library"
note: >-
Loaded with LoadLibraryW("./wm2_loader.dll") just before the XBE entry
point is called, on every launch. A failure logs a warning and the title
starts anyway.
source_ref: "cxbxr-emu.dll 0x103e0260, 0x10622b38"
exclusion_note: >
ntdll.dll and the XInput libraries tried in turn (xinput1_4, xinput1_3,
xinput9_1_0) are Windows components, and cxbxr-emu.dll is the emulator's own
build output. boot.id and default.xbe belong to the title. The Partition0.bin
to Partition7.bin images under EmuDisk are created and formatted by the
emulator.