From 9604e933edf7b8b9b0abd95ebd8cd472af56579a Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Tue, 6 Oct 2026 09:38:27 +0200 Subject: [PATCH] fix: recale prose onto the code the pins carry --- emulators/boom3.yml | 11 ++++++----- emulators/crocods.yml | 6 +++--- emulators/kemulator.yml | 2 +- emulators/mgba.yml | 18 +++++++++--------- 4 files changed, 19 insertions(+), 18 deletions(-) diff --git a/emulators/boom3.yml b/emulators/boom3.yml index fb60cf39..13eadc68 100644 --- a/emulators/boom3.yml +++ b/emulators/boom3.yml @@ -14,13 +14,14 @@ notes: > Doom 3 source port based on dhewm3 (GPL Doom 3 engine). The core accepts .pk4 extensions (retro_get_system_info sets valid_extensions = "pk4"). Content is loaded directly from the .pk4 file path - the engine extracts - the grandparent directory as fs_basepath (libretro.cpp:1097,1135-1136 + the grandparent directory as fs_basepath (libretro.cpp:2381,2449-2450 via extract_directory called twice on info->path) and expects the standard Doom 3 directory layout with base/ containing pak000.pk4 through pak008.pk4. - BASE_GAMEDIR is hardcoded to "base" (Licensee.h:58). The boom3_xp variant - compiles with _D3XP defined, which passes "+set fs_game d3xp" at startup - (libretro.cpp:538-544) to load the Resurrection of Evil expansion from a - d3xp/ subdirectory alongside base/. The filesystem code (FileSystem.cpp:2125) + BASE_GAMEDIR is hardcoded to "base" (Licensee.h:58). One binary serves both + games: content in a directory named d3xp, or the doom_game core option, + passes "+set fs_game d3xp" (libretro.cpp:1635-1643, 2384-2405) to load the + Resurrection of Evil expansion from a d3xp/ subdirectory alongside base/. + The filesystem code (FileSystem.cpp:2207) scans for .pk4 files in the game directory and loads them in order, with higher-numbered paks overriding lower ones. The core requires OpenGL (RETRO_ENVIRONMENT_SET_HW_RENDER) and XRGB8888 pixel format. All required diff --git a/emulators/crocods.yml b/emulators/crocods.yml index 4b87cc34..912a68c8 100644 --- a/emulators/crocods.yml +++ b/emulators/crocods.yml @@ -28,11 +28,11 @@ notes: | - ROMEXT[0] (upper ROM slot 0, 16KB): second half of cpc6128_bin (BASIC) - ROMEXT[7] (upper ROM slot 7, 16KB): romdisc_bin (AMSDOS) - Called from HardResetCPC() (crocods-core/platform.c:1009-1020) using + Called from HardResetCPC() (crocods-core/platform.c:1024-1035) using the extern byte arrays directly. No filesystem ROM loading exists in the libretro path. - A Multiface ROM loader exists (crocods-core/multiface.c:51-61) that + A Multiface ROM loader exists (crocods-core/multiface.c:53-64) that reads LocRomMulti via fopen(), but InitMultiface() is never called from the libretro build or platform.c. Dead code in libretro context. @@ -45,7 +45,7 @@ files: [] platform_details: bios_mapping: - source_ref: "crocods-core/vga.c:185-200, crocods-core/platform.c:1009-1020" + source_ref: "crocods-core/vga.c:185-200, crocods-core/platform.c:1024-1035" note: | All ROMs are embedded. InitMemCPC() copies cpc6128_bin and romdisc_bin into ROMINF and ROMEXT arrays via memcpy. No filesystem lookup occurs. diff --git a/emulators/kemulator.yml b/emulators/kemulator.yml index 7c3543aa..c7cdf47d 100644 --- a/emulators/kemulator.yml +++ b/emulators/kemulator.yml @@ -61,7 +61,7 @@ notes: | the JVM default soundbank in place. VlcDir points at a VLC installation that vlcj scans for libvlc. ref: src/media/emulator/media/EmulatorMIDI.java:26-36, - src/main/emulator/ui/swt/Property.java:1860-1901 + src/main/emulator/ui/swt/Property.java:1863-1904 files: - name: M7_EmuSmw7.dll diff --git a/emulators/mgba.yml b/emulators/mgba.yml index 1e29677e..a6a3f2d3 100644 --- a/emulators/mgba.yml +++ b/emulators/mgba.yml @@ -30,7 +30,7 @@ notes: | mgba_skip_bios (default OFF) - skip the boot animation even if loaded The libretro port resolves BIOS filenames in retro_load_game() - (src/platform/libretro/libretro.c:2091-2148). It picks the filename + (src/platform/libretro/libretro.c:2060-2118). It picks the filename based on detected model: GBA -> gba_bios.bin GB (DMG/MGB) -> gb_bios.bin @@ -38,7 +38,7 @@ notes: | SGB -> sgb_bios.bin SGB2 -> gb_bios.bin (falls to default, missing case) - The standalone core (src/gb/core.c:637-684) correctly maps SGB2 to + The standalone core (src/gb/core.c:649-696) correctly maps SGB2 to sgb_bios.bin (marked TODO for a dedicated file). The libretro port omits GB_MODEL_SGB2 from its switch, so SGB2 falls to default. @@ -57,7 +57,7 @@ files: size: 16384 # 16 KB (0x4000, GBA_SIZE_BIOS) validation: [size] note: "GBA BIOS. HLE replacement built in. Real BIOS adds boot logo and full SWI accuracy." - source_ref: "src/platform/libretro/libretro.c:2099" + source_ref: "src/platform/libretro/libretro.c:2068" # ------------------------------------------------------- # Game Boy - boot ROM (optional, skip fallback) @@ -68,7 +68,7 @@ files: size: 256 # 256 B (0x100) validation: [crc32] note: "DMG/MGB boot ROM. Scrolling Nintendo logo. Skipped if absent." - source_ref: "src/platform/libretro/libretro.c:971" + source_ref: "src/platform/libretro/libretro.c:2104" # ------------------------------------------------------- # Game Boy Color - boot ROM (optional, skip fallback) @@ -79,7 +79,7 @@ files: size: 2304 # 2304 B (0x900) validation: [crc32] note: "CGB boot ROM. Used for CGB, AGB (GBA in GB mode), and SCGB models." - source_ref: "src/platform/libretro/libretro.c:2127" + source_ref: "src/platform/libretro/libretro.c:2097" # ------------------------------------------------------- # Super Game Boy - boot ROM (optional, skip fallback) @@ -89,14 +89,14 @@ files: required: false size: 256 # 256 B (0x100) validation: [crc32] - note: "SGB boot ROM. SGB2 maps here in standalone (src/gb/core.c:643) but falls to gb_bios.bin in libretro." - source_ref: "src/platform/libretro/libretro.c:2130" + note: "SGB boot ROM. SGB2 maps here in standalone (src/gb/core.c:655) but falls to gb_bios.bin in libretro." + source_ref: "src/platform/libretro/libretro.c:2100" platform_details: gba: bios_size: 16384 # 16 KB hle_bios: true - source_ref: "src/gba/hle-bios.c, src/gba/gba.c:520-551" + source_ref: "src/gba/hle-bios.c, src/gba/gba.c:513-552" note: | GBALoadBIOS() validates size (must be exactly 0x4000) then computes an internal checksum. Two official checksums are recognized: @@ -125,7 +125,7 @@ platform_details: sgb: bios_size: 256 # 256 B hle_bios: false - source_ref: "src/gb/gb.c:570-605, src/gb/core.c:642-644" + source_ref: "src/gb/gb.c:570-605, src/gb/core.c:654-656" note: | Accepted SGB CRC32 checksums: SGB = 0xEC8A83B9, SGB2 = 0x53D0DD63