Files
libretro/emulators/sugarbox2.yml
T
Abdessamad Derraz e7aa9e870b fix: state libretro core versions from their code
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.
2026-10-27 19:21:27 +01:00

48 lines
2.0 KiB
YAML

emulator: Sugarbox2
type: libretro
core_classification: community_fork
source: "https://gitlab.com/recalbox/packages/recalbox-cores/libretro-sugarbox2"
upstream: "https://github.com/Tom1975/SugarboxV2"
profiled_date: "2026-10-17"
source_commit: "6b565a43a25e4dfb69867f7e927a707e15ea460f"
core_version: "v0.9"
version_basis:
kind: tag
tag: "v0.9"
distance: 0
display_name: "Amstrad - CPC / GX4000 (Sugarbox2)"
cores:
- "sugarbox2"
built_by: [recalbox]
systems:
- "amstrad-cpc"
notes: |
Libretro core by Recalbox wrapping Tom1975's SugarboxV2
(CPC 464, 664, 6128, 464+, 6128+ and GX-4000). Recalbox 10.1.1 builds
tag v1.5 from a token-gated copy of this repository, and the public
repository carries v0.9 only, which is the revision read here. The core
Recalbox ships was read against it: sugarbox2_libretro.so from the
10.1.1 x86_64 image (image sha1 b3d80ff00d46000de73c470c73b0ffa81f23c600,
core sha256 eda2d57f9b556c66db95d2b4b755e501c6645de6b9dfc46d901f1f93a1f39c5e)
holds the 59 compressed blobs of RomData.cpp byte for byte, reports
library_version 0.1, and opens the same paths. Its on-screen keyboard
is placed by SetOrigin where v0.9 has SetViewport.
Every ROM is compiled into the core as a zlib stream: OS and BASIC for
each model and language, AMSDOS, the Plus cartridge plus_en.cpr, the
CP/M Plus, FutureOS, SymbOS and utility expansion ROMs, 57 blobs in all
(ref: libretro/RomData.h:1-15).
rom_uncompress() inflates them when the machine is built
(ref: libretro/LibretroCore.cpp:1098-1107) and they are handed to the
memory map directly, never through a path
(ref: libretro/LibretroCore.cpp:1173-1174).
The keyboard map files the engine reads are written from embedded data
into the save directory, only when missing: CONF/KeyboardMaps.ini and
Keyboards/101_keyboard_linux
(ref: libretro/LibretroCore.cpp:1477-1502, 2169-2173).
exclusion_note: "all CPC, Plus and GX-4000 ROMs compiled into the core as zlib blobs, and keyboard maps written by the core into the save directory"
files: []