github chasem-dev/sms-launcher android-pr-107-v15
Android ARM64 tester v15: safe game memory relocation

latest release: android-pr-107-v16
pre-releaseone hour ago

Android tester v15 addresses the startup crash reported on an Adreno 740 device when Android already occupies the game's preferred memory address.

The v13 log placed the game arena at 0x7126bc8000, then crashed while decoding vertices. Some original game data still stores addresses in 32-bit fields, so that high heap fallback was unsafe even in our ARM64 process. v15 reserves another compatible contiguous arena without replacing Android's mappings, updates SDK address conversions and the renderer's memory window to that arena, and refuses startup if no safe range is available. The APK remains 64-bit; this address compatibility requirement does not limit the phone's overall RAM.

Retest:

  1. Install this APK over the previous preview to retain the imported disc/save.
  2. Confirm footer 0.1.57-android-preview.15, launcher 3529fde4, game 495daa51; version code 15715.
  3. Use the existing disc/save, load the save and enter the stage that crashed. Check gameplay and movies, then return to the launcher and export the game log before another Play.
  4. The log should show MEM1 at 0x80000000 or another compatible address, with SDK arena addresses matching it. It must not use an arbitrary high heap block such as 0x7126bc8000.

No performance-toggle change is required for this memory fix. v14's Input test (controllers and keyboards) and export remain available. The latest Samsung input report listed no USB adapter or physical controller and only virtual Ctrl/Left events; an adapter mapping cannot yet be inferred.

Validation: Android debug and optimized release APK compilation, launcher Node tests 228/228, pure-Java input-history checks, all 10/10 host graphics/texture/window/bounds groups, Android scheduler/frame-wait checks and 32/64-bit frame-rate checks passed. A new host fixture compiles the actual Android allocation path and patched SDK conversions: preferred address, occupied address, fragmentation, a relocated arena above 2 GiB, preserving existing mappings, and safe failure when no compatible arena is available. Static checks verify source/version strings, signing certificate, ARM64-only payload, 16 KiB ELF/APK alignment and absence of disc/save/self-test payloads.

Affected-device validation is pending. No Android emulator/container was installed, launched or tested for this build, as requested. No device FPS improvement is claimed.

Same development signing key as the preceding previews. Android 10+, ARM64, GLES 3.1+; no game data bundled. Separate prerelease, no merge or desktop Stable/Beta changes.

Sources pushed to both Android branches: launcher 3529fde4b6de1dcfd1d487a2d092c64745ebb467, game 495daa51dcdc49b51dbfe85098e9877f9474ac30. Companion PRs #107 and chasem-dev/sms-pc-port#98.

SHA256: 5a36ca8eaa029165c055da7bee80f3c12edf5108c383d703982362829de76cb9

Don't miss a new sms-launcher release

NewReleases is sending notifications on new releases.