feat(symbian): port full OpenStrike to Nokia E7#14
Merged
Conversation
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.
Summary
Architecture
PocketJS owns QuickJS, lifecycle, the GLES2 context, physical-key sampling, packaging, and the JSX overlay. The app-specific ARMv6 extension owns OpenStrike simulation, map loading, and Pocket3D GLES2 presentation. Map files remain outside
app.pakunder the app-private mass-memory data root, with exact path, size, and SHA-256 entries in receipt schema 3. One reusable aligned buffer keeps the eight-map package within the E7 process heap.E7 input root cause and fix
The RM-626 physical top row reports native scan codes
1..0for the QWERTY positions (1→Q,2→W, …,0→P); the character layer supplies Q–P only after FEP translation. That is why A/S/D could work while W and R were still seen as 2 and 4.PocketJS PR #188 now resolves the complete E7 physical matrix from native scan codes, shares the mapping across press/release, preserves a complete pulse for one 30 Hz host frame, and clears held/latched input on focus, rotation, viewport, and guest boundaries. OpenStrike maps held R to an idempotent reload request so the Starting→Live two-tick boundary cannot swallow it.
PocketJS #188 merged as
5bfaff7091e63a1cd93fe46fd5a4f8b61b46b335; this PR pins that merged commit. Its tree is byte-identical to the hardware-tested pre-merge key fix.Validation
tsc --noEmitcheck:platforms: PSP and Vita admission, 33 modules eachcargo check --locked --testsbuild-stdbuildelf2e32, and signed 0.3.4 SISHardware acceptance
Accepted on a real Nokia E7-00 / RM-626:
Final artifact
openstrike-0.3.4.sis: 22,778,152 bytes0702f07d6cd6d84c9f7b1ff605474a03cd834f79dfdbd4b96aab9bdb465562660xE86B9226