Skip to content

Add native Gen2 menu chrome with shared font and palette ownership - #224

Closed
Roxas2712 wants to merge 1 commit into
UNDERdecoded:mainfrom
Roxas2712:codex/native-gen2-menu-chrome
Closed

Roxas2712 wants to merge 1 commit into
UNDERdecoded:mainfrom
Roxas2712:codex/native-gen2-menu-chrome

Conversation

@Roxas2712

@Roxas2712 Roxas2712 commented Oct 25, 2026 •

Copy link
Copy Markdown

Gen2 presentation mods cannot load the shared native menu-chrome contract, so they decline the entire picture-hook installation even when battle data and picture operations exist.

Port the actual Gen2 tile-grid menu renderer: paper/frames, palette-aware glyphs and cursors, wrapping, numeric/balance fields, clipped panels and cursor lists. It uses this engine's existing Font, PaletteFX and input objects, including negative Unicode glyph codes and framebuffer DPI. Palette inversion is resolved before the native shade register; no second palette mode, HP clock or battle controller is introduced. The public Gen2 module spelling resolves to this actual implementation.

Validation: 116 checks pass in composition and independently; unchanged main fails because the module is absent. Tests cover native palette/register order, font/frame output, actual input selection/cancel/disabled rows, scrolling, DPI and graphics restoration. Combined with #223, the unchanged ASC OMEGA 1.7 package installs its real picture hooks and displays the actual Pokemon and HUDs in imported Crystal on OpenGL/VSync 0 and Metal/VSync 1. First/Third field entries, actual damage/HP drain, native party switching, RUN and presented world return pass on both backends. Native no-mod flows also pass.

The GPU-tested composition is d6149206 (263 engine suites, three SDK suites, B30). Windows/macOS packages have identical verified payloads and 1,031 source files. Windows hardware is untested. Full generated model rendering, battle text/move menus/animations and continuous movement remain open; this module does not claim to provide those. The corrected ASC OMEGA 1.8 package also passes the complete native damage/party-switch/RUN loop on both OpenGL and Metal with normal VSync; the changed flight sequence itself remains untested.

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