MODIFICATION NOTICE =================== Required by GNU General Public License version 3, section 5(a): a modified work must carry prominent notices stating that it was modified, and giving a relevant date. MODIFIED BY ----------- RetroStream Arcade SL WHAT WAS MODIFIED ----------------- Gearcoleco https://github.com/EmulatorJS/Gearcoleco at commit f80af5d6f0f78b0228e060e158e7f2500e0caa6d (tree 84c369a3f39e45ee1192eecfd4b5e017edbca5cc) Licensed GPL-3.0-or-later. Copyright (C) 2021 Ignacio Sanchez. RetroArch https://github.com/EmulatorJS/RetroArch (EmulatorJS fork, version 1.21.0) at commit 6dd4353937ef48b6ec0bfbdbb15d1c5992d86927 (tree 679ee43607704047b4feab5cb13d5129c785782f) Licensed GPL-3.0-or-later. Copyright (C) 2010-2021 the RetroArch team. Neither upstream project is modified in place in this distribution. The unmodified upstream trees are shipped verbatim in corresponding-source/, and the modifications are shipped separately as the three patch files listed below. Applying those patches to those exact trees, in the order given, reproduces the sources that were compiled. THE MODIFICATIONS AND THEIR DATES --------------------------------- 1. f80af5d-pooyan-input-resync.patch Target : Gearcoleco, platforms/libretro/libretro.cpp Effect : input re-synchronisation backport (+71 / -20 lines) Result : blob 76ba35c9946f8667a895869608e6976c7606eab2 Dates : reviewed 2026-07-22 (commit e509c8bb741e3455d02658ea3aebee94b24221f2) merged 2026-07-22 (commit d467bd3b0de87dc8b7074a1ea12a56610cddb8a0) added to this build contract 2026-07-22 (commit 04b6d30) Note : this change is not VRAM related; it is part of the pinned baseline for this line of builds. 2. f80af5d-vram-export.patch Target : Gearcoleco, platforms/libretro/libretro.cpp Effect : adds a `case RETRO_MEMORY_VIDEO_RAM:` arm to retro_get_memory_data() and to retro_get_memory_size(), exposing the TMS9918A video RAM pointer and its 0x4000-byte length through the standard libretro memory interface (+4 lines over two hunks) Result : blob 3dec679c21aee6489161d3617174a33b67c1b2c5 Date : 2026-08-29 (merged to main in PR #15, commit b10eed9) 3. 6dd4353-makefile-vram-exports.patch Target : RetroArch, Makefile.emulatorjs Effect : appends _retro_get_memory_data and _retro_get_memory_size to EXPORTED_FUNCTIONS so the two symbols survive into the Emscripten glue (1 line changed) Base : blob fbf6fa57c00d7ce882353b3530278a0d55466f04 Result : blob e4adfc95179fe76316b853c46047ff65dff4c9a1 Date : 2026-08-29 (merged to main in PR #15, commit b10eed9) No other upstream file is modified. The build verifies this: after applying the Gearcoleco stack it asserts that `git diff --name-only` lists exactly platforms/libretro/libretro.cpp, and after the RetroArch patch it asserts the resulting Makefile.emulatorjs blob id. BUILD CONTRACT HISTORY (the scripts that apply the modifications) ----------------------------------------------------------------- 2026-08-29 b10eed9 PR #15 dual Gearcoleco VRAM candidate contract added 2026-08-30 f4fdcdf PR #16 archiver shim accepts both Gearcoleco archives 2026-08-30 da1baa4 PR #17 validator checks canonical export bindings 2026-08-30 86ec2f7 PR #18 validator allows build-local export aliases <- the source commit this release is built from WHEN THE DISTRIBUTED BINARIES WERE PRODUCED ------------------------------------------- Workflow run 33342869876, attempt 1, on GitHub Actions Started 2026-08-30T23:50:34Z Finished 2026-08-30T23:56:35Z Conclusion: success Produced: gearcoleco-wasm.data sha256 94a8ea34717e87c85f9823d7cdf3101c510c2d9eeef7cc802835ba6996b48af8 gearcoleco-legacy-wasm.data sha256 a8dab431de40d5c9e6c278dc97de0cd5160fb08e6540b27e9b94d2bf4fc890e4 LICENSE OF THE WORK AS A WHOLE ------------------------------ GPL-3.0-or-later, inherited from Gearcoleco and RetroArch. The full text is in licenses/GPL-3.0_gearcoleco-LICENSE.txt and licenses/GPL-3.0_retroarch-COPYING.txt, and is also shipped inside each .data archive as license.txt. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Third-party components combined into the binaries, and their licenses, are listed in THIRD_PARTY_NOTICES.txt. The corresponding source for the whole work is in corresponding-source/ and the scripts that control compilation are in build-contract/.