Skip to content

Import cartridge-native FRLG ball send-out timing - #376

Closed
Roxas2712 wants to merge 49 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-native-frlg-ball-sendout-import
Closed

Roxas2712 wants to merge 49 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-native-frlg-ball-sendout-import

Conversation

@Roxas2712

Copy link
Copy Markdown

FireRed and LeafGreen import ball art but no send-out timing because the default operand reader uses Emerald instruction sites. A real scene confirmed both native starts were refused even though battler sprite geometry was available.

Select one verified, detached FR/LG instruction profile by authenticated cartridge SHA-1; preserve explicit caller/manifest precedence and existing opcode validation. Decode normal and tutorial hand coordinates, and select the tutorial hand only for the actual player demonstration. Rebuild generated FR/LG caches through a scoped marker; native ball clocks, queue ownership, catch math and save formats stay intact. No private controller code is included.

Validation: 142 focused assertions; current fork main c548cd16 plus the offered components passes 180 CPU groups. The five real cartridge/ELF native operand comparison passes 55 checks, with unchanged Emerald/Ruby/Sapphire timing. The older-public composition passes 68 groups. Real FireRed now accepts both native starts and records 69 clock/position/draw frames without loader errors. Captures also expose a separate duplicate painter: the source fits its ball, then its opening-effects call paints the full native ball. This PR fixes admission/import, not that remaining rendering issue, and is not final visual flight/size acceptance. Hosted CI is separate.

Owned QA profiles/copies only, 20 GiB free-space floor; player saves/profiles and private mod files untouched.

This branch is the pending public component stack. Review the send-out-specific production/test addition 9d648fa9..c3f62979; #374 covers the preceding flight observation. The qualified composition retains separately offered native cartridge/art/stage prerequisites; raw older main still needs the complete LeafGreen manifest and RS art components for full cartridge integration. No newer native controller body was overlaid.

Contributions by Roxas2712 — https://github.com/Roxas2712. Original additions are offered under LICENSE-ROXAS2712.md, including specific integration/distribution permission for Cedric / UNDERdecoded with visible credit. Existing upstream/third-party licences and rights remain intact.

Roxas2712 and others added 30 commits October 21, 2026 21:07
# Conflicts:
#	src/mods/Loader.lua
# Conflicts:
#	docs/modding.md
#	src/mods/Loader.lua
#	src/world/WorldAPI.lua
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant