GalaxyAndroid v0.0.4a Hotfix Release
This hotfix resolves critical rendering defects, save/checkpoint integrity, restores seamless update compatibility with v0.0.4, and introduces native gyroscope roll steering for Sting-ray riding.
Highlights & Fixes in v0.0.4a
1. Rendering Correctness & EFB Copy Clear Isolation (Issue #118, #119)
- Refined EFB Copy Attachment Clears: Fixed a critical regression where mid-frame color EFB texture copies (e.g. lake reflections, water effects, and cutscene compositing) were issuing full depth/stencil clears on the active framebuffer attachments.
- Resolved Cutscene Green Screen & Flickering: Mid-frame depth buffer is preserved across all texture copies, eliminating green screen artifacts, cutscene flickering, and stretched lake reflections on Snapdragon 8s Gen 4 (Turnip v37) and stock Adreno drivers.
- Mali-G52 Rendering Parity: Maintained proper aspect mask separation (
VK_IMAGE_ASPECT_COLOR_BITvsVK_IMAGE_ASPECT_DEPTH_BIT) during clear operations, preventing pipeline desynchronization on ARM Mali-G52 devices.
2. Hardened Save Anywhere & 3D Position State Integrity (#117)
-
Version 2 ('MAR2') Binary Header with CRC32 Checksum: Mario 3D position state persistence now includes a Version 2 header (
0x4D415232) with a robust CRC32 checksum, while maintaining seamless backward compatibility with legacy Version 1 (0x4D41524F) files. -
Atomic Disk Persistence: State files are now written to a temporary file (
.tmp) and atomically replaced via filesystem rename, preventing corrupted saves from unexpected app termination or power loss. -
Stage & Coordinate Validation: Added strict finite float validation (
!isnan,!isinf, bounded within $\pm 10^7$) and stage identifier checks. Multi-stage state restoration is fully supported without sticky one-shot flags. - Architectural Clarity: Position checkpoint files persist Mario's world coordinates and physics vectors for instant repositioning; they complement standard Wii NAND game state rather than acting as full savestates of the entire GameCube/Wii hardware.
3. Sting-Ray Gyroscope Roll Steering (P1 Motion Controls)
- Native Sting-Ray Tilt Integration: Motion steering is automatically activated when riding the Sting-ray (
port_input_use_tilt()). Android gyroscope roll rate is seamlessly mapped into the steering axis with natural spring-back to neutral. - Preserved Pointer & Touch Controls: Star Pointer gyro aiming and physical gamepad / on-screen touch stick controls remain completely unaffected and take priority when actively manipulated.
4. Startup Lifecycle & GPU Diagnostics
- Comprehensive Startup Telemetry: Added structured diagnostics logging device board, OEM model, Vulkan driver device name (
VkRenderer::deviceName()), and data/save directory accessibility to pinpoint cold-launch issues across Dimensity 6300, Snapdragon 7 Gen 1, Poco F3/F6 Pro, and Samsung Fold devices.
Package Details & Verification
- Package:
com.openport.galaxyandroid - Version:
0.0.4a(VersionCode:17) - Target Backend: Pure Vulkan 1.0 (No OpenGL fallback)
- APK SHA-256:
07478562A9CC5C70689AECA0D734151CE352632B645050D8386889DDD797CE6E - Signer SHA-256:
CB60845D8E122C98A992D8617B7A43D31D6DBC76E2157CA75916FD76F160BC8A - Update Compatibility: Fully compatible with existing v0.0.4 installations without reinstallation or data loss.
Legal Notice: You must provide your own legally dumped optical disc image. No proprietary assets or Nintendo code/binaries are included in this package.