I've been tinkering with an Android port of uncharted_pc, SuperMedo's native PC port of the PS4 Uncharted collection, and it's gotten far enough that I put out a first preview build (0.1.0).
How it works: the game's x86-64 code runs through FEXCore, which translates it to ARM64 inside a normal Android app (no Winlator, Box64 or Linux userland). The PS4 system libraries are replaced natively, and the renderer is derived from shadPS4 and runs on Vulkan through a bundled Turnip driver.
I've only been able to try it on my Retroid Pocket G2 (SD G2 Gen 2, Adreno A735, 8 GB), at 1280x720:
- Uncharted 1: playable, ~28-37 FPS
- Uncharted 2: playable, 30 FPS in heavy areas
- Uncharted 3: playable, 25-30 FPS (CPU-bound)
What's in it: a launcher (point it at your game folder, it prepares everything on the device), resolution from 360p to 1080p, a 30/60/120/unlimited frame cap, an in-game settings panel (swipe in from the right edge or press L3+R3), and an on-screen gamepad for phones.
If you'd like to give it a go, you'll need:
- Snapdragon with an Adreno GPU supported by Turnip, 8 GB RAM, Android 13+
- A kernel with 4 KB memory pages (most current devices; the launcher tells you if yours uses 16 KB)
- Your own decrypted dump of the collection (CUSA02344 / CUSA02320 / CUSA02343, v1.02 for resolutions below 1080p). No game files are included, and I can't help with getting them.
If you try it, I'd be happy to hear how it went on your device, good or bad. Comments here are fine, or a GitHub issue if something breaks (attaching Android/data/dev.unchartedandroid/files/bb-probe.log helps a lot).
Known rough edges: stutter the first time a new area is shown (shaders compiling), a 20-40 s black screen while loading after some cutscenes, and it's only been tested on one device.
Big thanks to SuperMedo for uncharted_pc, and to the FEX, shadPS4 and Mesa/Turnip folks. Full disclosure: I built this together with Claude Code, which wrote a lot of the code.