Files
libretro/emulators/eightyone.yml
T
Abdessamad Derraz 5431a42e23 docs: check three cores against recalbox build
Read the cores in the Recalbox 10.1.1 x86_64 image (sha1 b3d80ff0). The
sugarbox2 core, built from the token-gated v1.5, holds the 59 blobs of the
public v0.9 RomData.cpp byte for byte and opens the same paths: only its
on-screen keyboard placement differs. eightyone and exel-hence hold every
compiled embedded array of their public tags.
2026-10-27 06:49:28 +01:00

69 lines
2.9 KiB
YAML

emulator: EightyOne (Recalbox)
type: libretro
core_classification: community_fork
source: "https://gitlab.com/recalbox/packages/recalbox-cores/libretro-eightyone"
upstream: "https://github.com/charlierobson/EightyOne"
profiled_date: "2026-10-17"
source_commit: "39ea0cc26453f4026458cfff62f10223a6bb1724"
core_version: "v1.2"
pin_frozen: "Recalbox, the only platform that ships this core, builds its tag v1.2 (Recalbox package/libretro-eightyone/libretro-eightyone.mk:8 at tag 10.1.1)."
display_name: "Sinclair - ZX81 / ZX Spectrum (EightyOne, Recalbox)"
cores: ["eightyone"]
built_by: [recalbox]
systems:
- sinclair-zx81
- sinclair-zx80
- sinclair-zx-spectrum
- jupiter-ace
- timex-ts1500
- timex-tc2048
- timex-ts2068
- lambda-8300
- ringo-r470
- microdigital-tk85
exclusion_note: >
The system directory holds eightyone/ROMs, FDCs and IDEs, but every ROM the
core requests is served from its embedded table before any path is opened
(libretro/eo_roms.cpp:106-128). The one file it touches there is
zxpand-eeprom.bin, written when absent (81/Source/zxpand/smbsd.cpp:75-98).
notes: |
Recalbox port of EightyOne, vendored under 81/ and built with CMake.
Machines: ZX80, ZX81, ZX97LE, TS1000, TS1500, TK85, Lambda 8300,
Ringo R470, Spectrum 16K/48K/+/128K/+2/+2A/+3, TC2048, TC2068, TS2068,
Jupiter ACE.
ref: libretro/libretro_core.cpp:876-1074
The ROM directory is <system>/eightyone/ with ROMs/, FDCs/ and IDEs/
subfolders.
ref: libretro/libretro_core.cpp:2620-2631
86 machine, interface, IDE, graphics and speech ROMs are compiled in as
zlib-compressed arrays and looked up by basename.
ref: libretro/eo_roms.cpp:16-103, libretro/eo_roms.cpp:106-128
memory_load, memoryLoadToAddress and font_load query the embedded table
before opening any path, and every ROM name the core requests is in that
table, so no ROM is read from the system directory.
ref: 81/Source/zx81/snap.cpp:1189-1199, 81/Source/zx81/snap.cpp:1285-1299, 81/Source/zx81/snap.cpp:1317-1328, 81/Source/zx81config.cpp:161-210, 81/Source/zx81config.cpp:259-284
Didaktik D40/D80 tests for eightyone/FDCs/didaktik.gama.rom and stores its
full path in CurRom when present, and memory_load reduces the path to its
basename and serves the embedded copy.
ref: libretro/libretro_core.cpp:2953-2968, 81/Source/Spectrum/spec48.cpp:361-362
ZXpand writes zxpand-eeprom.bin (256 bytes of 0xFF) under the ROM
directory when it is absent.
ref: 81/Source/zxpand/smbsd.cpp:75-98
Digitalker is a stub and its SSR ROM loader is not compiled. CapsImg is
linked statically.
ref: libretro/eo_stubs.cpp:67-68, CMakeLists.txt:267-291
The core Recalbox 10.1.1 ships (x86_64 image sha1
b3d80ff00d46000de73c470c73b0ffa81f23c600, eightyone_libretro.so sha256
f3ac944a7b802f44426ec030f10f0a263c1db515d012a9fd9ca035ce8eaf04df) holds
the 117 embedded arrays of the files this tag compiles byte for byte.
files: []