Paper Mario 64 gets a native Android port
Paper Mario 64 is running on Android through PaperBoat, with touch controls, controller support and an Android launcher that extracts the game’s assets directly on your device (the whole megillah). The Android fork comes from YlPorts and builds on Harbour Masters’ PaperBoat, itself based on the Paper Mario DX decompilation.
This is a native source port of Nintendo’s original Nintendo 64 RPG. The reconstructed game code is compiled for Android’s ARM64 CPUs, rather than running the original MIPS executable through an N64 emulator. Mario, Goombario, Princess Peach and Bowser are still there. What changes is the software underneath them.
How exactly is this native?
The Android build compiles the game’s C and C++ sources into a native library, with libultraship providing the port framework and SDL2 handling platform integration. Rendering uses OpenGL ES, so this Android build does not depend on Vulkan or a custom Turnip driver.
That still involves adapting Nintendo 64 graphics behaviour to modern hardware. “Native” describes how the game code runs, not a complete removal of every N64 graphics concept.
PaperBoat also includes a frame interpolation system that works with recorded scene transforms. A handheld showcase shows fullscreen play at the screen’s refresh rate, though that is a user report rather than a benchmark for every Retroid or AYN device.
Bring your own Paper Mario
The APK does not include Nintendo’s game assets. You supply a supported Paper Mario ROM, which the launcher checks before using Torch to extract its contents into pm64.o2r. The separate paperboat.o2r archive contains the port’s own resources, such as shaders and interface assets.
Touch controls saves and mods
The touch controls are drawn by the engine itself. Under Settings → Controller, you can change their scale and opacity or use Edit Touch Layout to drag individual controls into place. There is also an SDL controller mapping database for physical gamepads, although I didn’t test this extensively.
The current build configuration targets Android 7.0 or newer and ARM64 only. That fits the basics platform requirements of devices such as the Retroid Pocket Flip 2 and AYN Thor, though it does not guarantee performance or complete compatibility on either. Try your luck.
The Android APK is available through GitHub Actions, where automated builds appear as downloadable “artifacts” (this is a figure of speech, no real artifacts of course). Sign in to GitHub, open a successful build and download its Android artifact, then extract the ZIP to get the APK. The Android fork is behind the main PaperBoat project, so some newer desktop fixes and features may be missing.
Links
- PaperBoat Android fork
- Android APK build artifacts
- Android setup and technical documentation
- Main PaperBoat project
- ROM compatibility checker
- Android handheld showcase
Dejan Balalovski
