Super Mario Galaxy Runs Natively on Android Without an Emulator: Inside the v0.0.4a Vulkan 1.0 Release

Playing a classic Nintendo Wii platformer on a smartphone has traditionally meant relying on an emulator translating PowerPC instructions on the fly, often at the cost of heavy battery drain and shader compilation spikes. That paradigm has shifted with the back-to-back arrival of versions v0.0.4 and v0.0.4a of Galaxy Android, an open-source project maintained on GitHub by OpenPort Labs. Built directly on top of the community-driven Petari project by the SMGCommunity (which achieved the first 100% C++ decompilation of a retail Nintendo Wii game), alongside mobile architecture work by bigmak94 (GalaxyQuest) and shader pipeline fixes from LukeValen, the application runs Super Mario Galaxy as a true 100% native ARM64 port (arm64-v8a).

Pure Vulkan 1.0 Architecture, Zero-Stutter Shaders, and ARM Mali Parity in v0.0.4a
Instead of emulating Wii hardware, Galaxy Android compiles the reconstructed game logic directly for mobile processors using core Vulkan 1.0 graphics and the low-latency AAudio subsystem. This engineering milestone mirrors the rapid growth of the Recomp Store and RecompLauncher for native Xbox 360 and N64 PC ports, where eliminating emulation overhead unlocks dramatic gains in frame pacing and thermal efficiency.
Published across October 26 and October 27, 2026, the v0.0.4 / v0.0.4a milestone introduces deep low-level optimizations tailored for mobile chipsets:
- Strict Vulkan 1.0 Pipeline and Asynchronous Presentation: offscreen rendering is decoupled from swapchain flips using a dedicated presentation command buffer (
mPresentCommandBuffer) and GPU-side semaphore (mRenderToPresentSem), eliminating CPU fence stalls between frames. - Zero-Syscall Memory Mapping and On-Chip TBDR Discard: dynamic vertex, index, and uniform buffers remain persistently mapped via non-blocking
memcpy()calls rather than per-frame kernelvkMapMemoryoperations. Depth attachments useVK_ATTACHMENT_STORE_OP_DONT_CAREso tile-based deferred renderers drop depth inside fast on-chip SRAM/GMEM, while game and render threads are pinned to high-performance big.LITTLE CPU cores (Cores 4 to 7 viasched_setaffinity()). - Asynchronous Shader Persistence and 128 MiB Batch Staging: common TEV combinations are pre-compiled into SPIR-V binaries on first boot (
vk_shaders.bin), while runtime shader discoveries are written to flash storage on a serialized background thread alongside a 128 MiB texture staging suballocator, banishing mid-jump stutter. - ARM Mali Fixes and v0.0.4a EFB Copy Isolation: cyan and white lighting blowouts on Mario and NPCs across MediaTek Dimensity and Samsung Exynos processors (Mali-G52, G57, and G68 GPUs) have been resolved alongside skybox z-fighting and 120Hz landscape refresh rate switching. Today's v0.0.4a hotfix further isolates mid-frame EFB color texture copies (
VK_IMAGE_ASPECT_COLOR_BIT), fixing cutscene green screens and stretched lake reflections on Snapdragon 8s Gen 4 (Turnip v37) and Mali-G52 devices.
Legal Requirements, Original Wii Disc Pricing, and Step-by-Step Setup
Licensed under the GNU General Public License v3.0 (GPL-3.0), neither the OpenPort Labs repository nor the compiled GalaxyAndroid.apk installer contains any copyrighted Nintendo code, 3D models, textures, levels, or audio files. Just like community preservation efforts such as the Super Mario Sunshine 4K and 60 FPS community remaster, players are strictly required to supply a legally dumped copy of their own retail Nintendo Wii optical disc (regional IDs RMGE01 for USA, RMGP01 for Europe, or RMGJ01 for Japan).
For players and collectors looking to pick up an original Nintendo Wii physical copy to legally extract their own disc image, the Super Mario Galaxy Wii price guide currently tracks the North American NTSC edition at $15.10 Loose, $15.48 Complete in Box (CIB), and $68.24 Brand New sealed, while the European PAL release averages €8.98 Loose and €13.58 CIB.
- Transfer Your Legal Wii Disc Dump: copy your legally dumped Nintendo Wii optical disc image (supported formats:
.rvz,.wbfs,.iso, or.wia) into theDownloadfolder on your Android device's internal storage. - Install the Unified APK: download the latest
GalaxyAndroid.apk(release v0.0.4a) from the official OpenPort Labs GitHub Releases page and sideload it onto your phone, tablet, or Android handheld. - Run the Built-In Asset Cooker: launch the cosmic glassmorphic launcher, grant storage permissions when prompted, and select your disc image. The integrated little-endian asset cooker unpacks and converts the textures, models, and audio streams directly on your device.
- Configure Telemetry and Save States: toggle the on-screen hardware HUD (real-time FPS, frame delivery latency in ms, CPU core usage, and ~588 MB RAM footprint) and take advantage of the 4-slot save-anywhere system featuring Version 2 (
MAR2) binary headers with CRC32 checksum verification and automatic backup mirroring to/sdcard/GalaxyData/saves/GameData.bin.
| Specification | Minimum Requirement | Recommended |
|---|---|---|
| Operating System | Android 11 or newer (API Level 30+) | Android 12, 13, 14, or 15 |
| CPU Architecture | 64-bit ARM (arm64-v8a) | Snapdragon 870 / Dimensity 8200 or higher |
| Graphics & Audio API | Vulkan 1.0 Hardware Driver (Required) + AAudio | Vulkan 1.0 Driver + 60Hz to 120Hz Display |
| Memory (RAM) | 3 GB RAM | 4 GB RAM or higher |
| Internal Storage | ~2.5 GB (without movies) / ~5 GB (with movies) | Fast UFS storage + legal Wii disc image |
Frosted Glass Touch Controls, Gyro Star Pointer, Android Handhelds, and Co-Op Netplay
To handle the original Wii Remote and Nunchuk scheme on mobile screens, the engine renders a custom 3-tab settings drawer and frosted glass touch overlay directly inside the Vulkan swapchain pass (mUiPipeline). Players can aim the Star Pointer by touching the screen, tilting their phone via real-time gyroscope tracking, or using the right analog stick with instant R3/R1 recentering. Version v0.0.4a also introduces native gyroscope roll steering for the Sting-ray surfing trials.

Connecting a physical Bluetooth or USB-C gamepad automatically hides the touch HUD and activates built-in mapping presets (Standard Xbox, Nintendo Switch Pro, or GameCube Retro layout), complete with radial deadzone calibration (5% to 40%) and analog trigger actuation thresholds (10% to 80%). Dedicated Android handhelds including the Ayn Odin 2, Retroid Pocket 4 and 5, and Logitech G Cloud work out of the box. In addition, an integrated mod manager supports 1080p texture packs derived from the official NVIDIA Shield release alongside 60 FPS cutscenes, while a hardened little-endian Wi-Fi protocol enables local cooperative netplay.

My Perspective
Seeing the very first 100% C++ decompiled Nintendo Wii title running natively on ARM64 mobile silicon with zero emulation overhead is a remarkable milestone for game preservation. Where traditional mobile emulation often struggled with driver quirks on ARM Mali chipsets and mid-stage shader compilation hitches, the custom Vulkan 1.0 architecture engineered by the Petari community and OpenPort Labs delivers locked 60 FPS fluidity while maintaining a strict, clean legal boundary built around extracting your own retail Wii disc.



















