Files
libretro/emulators/eightyone.yml
T
Abdessamad Derraz 3011ee498e feat: record the build file behind a held pin
pin_frozen was prose, and no tool read the build file it cites, so a platform building another revision left the profile holding one nobody ships. pin_build records the platform, its repository, the revision read, the file, the variable and its value. check_freshness reads the file again where the platform's YAML now stands and reports STALE when the value moved. 36 of the 46 held profiles carry it, each value read from the build file at the platform's scraped revision. The other ten name no build file and are counted on one row: six RetroBat binary packages and four holds not tied to a platform build.
2026-11-05 19:54:48 +01:00

80 lines
3.1 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"
version_basis:
kind: tag
tag: "v1.2"
distance: 0
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)."
pin_build:
- platform: recalbox
repo: "https://gitlab.com/recalbox/recalbox"
revision: "10.1.1"
path: "package/libretro-eightyone/libretro-eightyone.mk"
variable: LIBRETRO_EIGHTYONE_VERSION
value: "v1.2"
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: []