Files
libretro/emulators/xemu-chihiro.yml
T
Abdessamad Derraz b3b3880c19 chore: say which repository each source_ref cites
Profiles that read two repositories, a libretro port and its upstream,
now prefix each citation with source or upstream, decided by which tree
carries the cited value at its pin. The emulator pages use the word to
tell libretro glue, emulator code as the port carries it, and the
upstream emulator apart.
2026-10-20 09:23:41 +02:00

126 lines
5.4 KiB
YAML

emulator: xemu Chihiro
type: standalone
core_classification: community_fork
source: "https://github.com/Tovarichtch/xemu"
source_branch: perf-experimental
upstream: "https://github.com/xemu-project/xemu"
profiled_date: "2026-10-20"
source_commit: "0d44d803b2ad22c26c907844fe81d40fbd6ffdfa"
core_version: "0.8.134-406-g0d44d803b2"
display_name: "Sega - Chihiro (xemu Chihiro)"
cores:
- xemu-chihiro
systems:
- sega-chihiro
mode: standalone
notes: |
Tovarichtch's fork of xemu that adds the Sega Chihiro machine: the media
board, the AN2131 and its 8051 firmware, JVS, the drive boards, the card
readers and the network board. RetroBat ships the build whose version string
is 0.8.134-406-g0d44d803b2, the "Source code release and playtest v2" commit
this profile is pinned to, on the perf-experimental branch
(the one with the fork's NV2A and CPU work). Batocera builds the same fork at a later commit.
RetroBat runs this emulator only as a Chihiro: the launcher sets the Chihiro
path whenever the emulator is xemu-chihiro. It writes chihiro.roms.bios_path
as bios/chihiro/chihiro_xbox_bios.bin, else bios/chihiro_xbox_bios.bin, and
clears the media board and EEPROM paths so the emulator takes them from the
folder of the BIOS.
ref: emulatorLauncher Generators/Xemu.Generator.cs:48, 413-444
A Chihiro boots its own BIOS only, never the Xbox flash or MCPX boot ROM set
for the Xbox machine: the Chihiro BIOS is an MCPX X2 image with its boot ROM
built in. The BIOS must be 512 KiB with the SHA-1 MAME lists, else the
machine stays paused with an error.
ref: system/vl.c:3110-3135, 3169-3190, hw/xbox/chihiro/chihiro.c:2280-2292
The media board flash and the three serial EEPROMs come from the settings
when set, else from the folder of the BIOS. The flash is tried as
fpr21042_m29w160et.bin, fpr-23887_29lv160te.ic4, then fpr-23887.bin, each in
that folder and then in its parent, and any size up to 4 MiB is read. The
EEPROMs must have their exact size or they count as absent. Any of the five
files missing keeps the machine paused with a message naming it.
ref: hw/xbox/chihiro/chihiro.c:2259-2401, system/vl.c:3195-3241
The Xbox EEPROM is not a file to supply for a Chihiro: chihiro_eeprom.bin is
generated with the debug key in the data directory and written back. The VM
snapshots, the per game saves, the DIMM system area and the card images are
written by the emulator too. Booting an Xbox disc with this build reads the
same files as upstream xemu (emulators/xemu.yml), which RetroBat never asks
it to do.
ref: system/vl.c:2978-3001
The network firmware of the DIMM board is read only from the setting
chihiro.roms.net_firmware_path, which RetroBat does not write. Without it the
board reports version 3.17. Linked cabinets need it to run the network board,
and network titles check the version it reports (OutRun 2 SP, Gundam).
ref: hw/xbox/chihiro/chihiro.c:363-400, 491-513, config_spec.yml:908-915
files:
- name: chihiro_xbox_bios.bin
path: "chihiro/chihiro_xbox_bios.bin"
system: sega-chihiro
required: true
size: 524288
sha1: "b700b0041af8f84835e45d1d1250247bf7077188"
validation: [size, sha1]
description: "Chihiro BIOS"
note: "RetroBat also looks for it at the root of the bios folder. The other Chihiro files are then read from the same folder."
source_ref: "source hw/xbox/chihiro/chihiro.c:2280-2292, source system/vl.c:3169-3190"
- name: fpr21042_m29w160et.bin
path: "chihiro/fpr21042_m29w160et.bin"
system: sega-chihiro
required: true
max_size: 4194304
validation: [size]
description: "Media board flash ROM (SEGABOOT)"
note: "First of the three names tried. The SEGABOOT version is read from the second megabyte and the board serial from the MBDT header at 0xFFE00."
source_ref: "source hw/xbox/chihiro/chihiro.c:2259-2333, 485-489, source system/vl.c:3201-3214"
- name: fpr-23887_29lv160te.ic4
path: "chihiro/fpr-23887_29lv160te.ic4"
system: sega-chihiro
required: false
max_size: 4194304
validation: [size]
aliases: [fpr-23887.bin]
description: "Media board flash ROM, later revision"
note: "Read in place of fpr21042_m29w160et.bin when that one is absent, under either name."
source_ref: "source hw/xbox/chihiro/chihiro.c:2320-2332"
- name: ic10_g24lc64.bin
path: "chihiro/ic10_g24lc64.bin"
system: sega-chihiro
required: true
size: 8192
validation: [size]
description: "Base board QC EEPROM"
source_ref: "source hw/xbox/chihiro/chihiro.c:2336-2401, source system/vl.c:3215-3217"
- name: pc20_g24lc64.bin
path: "chihiro/pc20_g24lc64.bin"
system: sega-chihiro
required: true
size: 8192
validation: [size]
description: "Base board SC EEPROM"
source_ref: "source hw/xbox/chihiro/chihiro.c:2336-2401, source system/vl.c:3218-3220"
- name: ic11_24lc024.bin
path: "chihiro/ic11_24lc024.bin"
system: sega-chihiro
required: true
size: 128
validation: [size]
description: "Base board configuration EEPROM"
source_ref: "source hw/xbox/chihiro/chihiro.c:2336-2401, source system/vl.c:3221-3223"
- name: ver1305.bin
system: sega-chihiro
required: false
description: "DIMM board network firmware 13.05"
note: "Opened only from the path set in the settings. Its version is the word after the FIRM_VERSION is here! mark."
source_ref: "source hw/xbox/chihiro/chihiro.c:363-400, 491-513, source hw/xbox/chihiro/chihiro-netboard.c:1257-1270"