Repository navigation
Conversation
# Conflicts: # src/mods/Loader.lua
# Conflicts: # docs/modding.md # src/mods/Loader.lua # src/world/WorldAPI.lua
This was referenced Oct 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Restore the actual Gen1 TouchSkin service in the shared native engine: native/RetroArch/Delta parsing and library operations, custom control geometry and ownership, native skin selection in OPTIONS, cutout placement and coordinate mapping, image/PDF-raster handling, and native/RetroArch/Delta exports. Existing native default controls and Gen4 camera/stick paths are retained. Optional mod consumers can use the real service without mod changes. Also restore the five Gen1 haptic helpers, actual first-owner feedback and a normal mobile OPTIONS intensity preference, shared across cartridges. Exact c25a8ab native upstream haptics pass37 assertions; no physical phone vibration acceptance is claimed.
Depends on #124 and its prerequisites; merge those first. This draft is intentionally based on the offered viewport/window owner (ce4a825), not an unimplemented replacement. Focused diff: https://github.com/Roxas2712/Gen2Recomped/compare/ce4a825a961d35df2e6748b22632843f77d5c671...codex/upstream-touch-skin-stack . The prerequisite stack has not been merged into current upstream main; no current-main mergeability or full upstream CI pass is claimed.
Validation: 527 focused assertions on 9e51cd0 across format parsing/import/export, actual mod require, normal flat upstream OPTIONS input and native persistence, overlapping contacts, focus reset, viewport hooks, default touch layouts and pointer ownership. Subsequent changes retain licensing notices and fix a real PhysFS refresh defect: duplicate mount calls returned false and hid installed archives. The runtime now retains live mounts, releases them before replacement/removal and preserves a busy archive; the memory fixture now models these cases. Exact dc29c16 targeted tests pass: archive formats242, native skin/options/input59 and viewport/window56. Archive unit tests explicitly use a memory PhysFS fixture. Separately, the fork integration passes actual ZIP/PNG/input/orientation and six framebuffer comparisons per Metal/OpenGL backend against pinned Gen1. Gen1 itself fails repeated mount under the same LÖVE12; its actual loader/setActive loads the already-mounted ZIP directly for pixel comparison only. Those fork runs do not qualify this pending upstream stack or OS-window/mobile behavior. SkinStudio and launcher integration remain a separate open parity requirement; real runtime/rotation/packaged acceptance remains pending.
Provenance and permission: TouchSkin/DeltaSkin/SkinZip/PdfImage, identified custom-controller sections and adapted format tests come from Gen1Recomp 535a5ec0, Copyright (C) 2026 BOIS CLUB GAMES, LLC. Original GPLv3/Section 7 terms are preserved in licenses/GEN1RECOMP-TOUCH-SKINS.md and packaged with the runtime. No proprietary Gen1 launcher code or third-party bundled skin art is included. Existing author rights and grants remain effective.
Independently owned native integration contributions by Roxas2712 are expressly offered to Cedric / UNDERdecoded under LICENSE-ROXAS2712.md, including project/commercial integration with visible credit. This does not relicense existing GPL-covered code or assign other authors' work to Roxas2712. Please preserve the licence/provenance notices and existing contributor credits.
Follow-up real-host tests found and fixed a missing speedLocked owner on this older offered base (previous narrow fixtures used a test double). The real native method now protects fixed-speed overlays and link sessions, including the actual logic multiplier under held acceleration. The expanded actual-stack skin contract passes65 on the composed offered stack; the default-hotbar follow-up is offered separately.
Current offered runtime head a3f0d34 also preserves required README and visible native-launcher credits, measured and wrapped without replacing existing author bylines. The full composed studio-stack run c23c662 is not accepted as green:117/127 engine suites,3/3 SDK; ten failures require trace/baseline attribution. Focused actual runtime65 and haptics37 remain passing evidence for their stated scopes.