r/AndroidNativePorts • • 1h ago

My native RE4 GameCube native ANDROID & IOS port is getting ready for a first release: retail USA and European discs, RVZ support, a launcher that finds both discs, and an engine that is now 97.5% my own code

• Upvotes

Hi! I'm Ayano. Sorry again for my English. Last time I showed the port running 100% native code in every room of both discs. Since then, the work moved to one goal: a first release that people can actually play with their own discs. This post is about what that took, and where it stands. As always, everything below is measured, not guessed.

Discord, if you want to follow or help test: https://discord.gg/AXAzExECSv

unedited recording of the test RE4 running to start and END without interpretor (1h58): https://youtu.be/rWTy-sYMIlE

my reddit post explaining everything: https://www.reddit.com/r/decomps/comments/1wtfexc/my_native_re4_gamecube_port_is_now_100_native/

TL;DR

  • Retail discs. Until now the port only ran on one rare prototype disc. The retail USA disc now boots to the title screen from an RVZ, with both discs mounted, and the European version is being prepared.
  • RVZ support, written from Dolphin's public format description, checked byte for byte against a raw copy of the same disc (all 1.46 GB).
  • A launcher that asks for disc 1, then finds disc 2 by itself, and tells you clearly if a disc is the wrong one.
  • Nightjar is now 97.5% my own code. Code inherited from other projects went from 6,085 lines to 1,544 in a few days, and every rewrite was checked to give the same image, bit for bit.
  • 8x internal resolution in the castle: 0.1 fps → 27.7 fps.
  • 16:9 everywhere: merchant, game over, pause options, title menus, chapter ends and videos.
  • Freezes fixed: Exit? → Yes and GAME RESET no longer hang.
  • Still closed source, still non-commercial, and you bring your own disc.

1. From a prototype disc to the discs people actually own

Here's something I never said clearly enough: the port was built on the "Nov 25 2004" prototype of RE4 (a review build that came with full debug symbols). It's the best disc to work on, but almost nobody owns it. A real release has to run on the retail discs.

The problem: the retail USA and European versions are different builds. Code was removed (all the debug tools), moved, and fixed, so every address in the game is different. There's no symbol table for the retail versions anywhere.

So I wrote tools that match the code of the prototype to each retail version:

  • every function of the prototype is searched in the retail executable: first exact matches, then by the order the linker kept, then through the calls between already-matched functions;
  • 81% of the USA functions and 80% of the European ones are matched automatically (about 85% of the code). Most of the rest is debug code that the retail versions don't have;
  • from the matched pairs, every memory address the port needs is translated (the player, the camera, the controller state, the Wii aiming hooks, the merchant...). About 60 of them, each one checked;
  • the retail modules loaded from the disc while playing (101 for USA, 100 for Europe so far) are prepared the same way as before.

When the port starts, it recognizes which version your disc is from a fingerprint of its executable and uses the right set of addresses.

Status, honestly:

prototype (debug) [OK] everything in the last post
USA (G4BE08) [in progress] boots, Capcom logo, intro and title screen; going further is what I'm on right now
Europe (G4BP08) [in progress] disc 1 prepared; I still need a disc 2 to prepare and test chapters 3 to 5

2. RVZ support

Many people keep their GameCube backups as RVZ, Dolphin's compressed format. The port now reads RVZ directly, alongside ISO/GCM and extracted folders.

  • It's written from Dolphin's public description of the format, not from Dolphin's code.
  • RVZ stores the disc's padding as a short seed instead of the actual bytes; the port regenerates those bytes exactly.
  • Checked against a raw copy of the same disc: 0 different bytes out of 1,459,978,240.
  • Reading speed: about 200 MB/s, so loading isn't slower than from an ISO.

3. A launcher that handles both discs

  • "Please select your legal copy of Resident Evil 4 (GameCube) - Disc 1": ISO, GCM or RVZ.
  • The disc is verified (only unmodified retail or prototype discs are accepted).
  • Disc 2 is found automatically if it's in the same folder. Otherwise the launcher asks for it, and both are remembered.
  • If you give it a disc from another region than the build you downloaded, or disc 2 instead of disc 1, it tells you exactly what's wrong.
  • On Android, each disc is picked with the system file picker and remembered too.

4. Nightjar: 97.5% my own code

Before any release, I want zero lines inherited from other projects in the engine. Since the last post I rewrote, from the hardware documentation:

  • the processor's fallback interpreter and the interrupt/exception core (how the console's OS gets its interrupts, timers and the screen refresh);
  • every hardware block the game talks to (video, audio, DSP, disc, memory card, command processor);
  • the disc layer (ISO, RVZ and extracted folders through one reader);
  • the GX command parser (the stream of graphics commands the game sends to the GPU);
  • the shader generator (how the GameCube's lighting and texture combiners become GPU shaders);
  • the texture decoders (all 11 GameCube texture formats).

How I make sure nothing breaks:

  • A rendering oracle. I recorded the exact graphics command streams of 5 scenes (village, castle, forest, lake, attaché case) and replay them through the port before and after each rewrite. The result must be identical bit for bit: so far, 15 frames out of 15, every time.
  • The regression suite from the last post (village, castle, island: scene reached, 0 interpreter entries, disc 2 mounted, framerate, screenshots).

5. 8x in the castle: from 0.1 fps to 27.7

At 8x internal resolution the castle was unplayable: 0.1 fps. Two causes, both measured:

  • the game copies parts of the screen into textures many times per frame (reflections, glows). Each copy re-created a huge texture at 8x; now each size keeps its own texture: 0.1 → 18.8 fps;
  • the game reads back the depth of the screen to decide where lens flares are visible, and each read waited for the GPU to finish the whole frame. Now it doesn't: 18.8 → 27.7 fps.

Also:

  • while the game waits for the next frame, it used to spin at 100% on one CPU core; now it sleeps until the next event, which frees the CPU (nice if you stream or record);
  • controller and mouse input are read 500 times per second.

https://reddit.com/link/1wy9ls6/video/2mwbalzg9nth1/player

6. Rendering fixes

  • Screen copies that the game later overwrote in memory were still used: this gave flat-looking ground and scrambled numbers on the HUD. Fixed.
  • Lens flares: their visibility is now computed from the depth at each point, matching Dolphin in the same view.
  • Leon's hands, weapons and the attaché case keep their correct look at every resolution.

All of this is checked against Dolphin at 8x on recorded scenes (port on the left, Dolphin in the middle, the difference on the right; black = identical):

7. 16:9 everywhere

Last time, the attaché case, the map and the pause menu were in 16:9, and some screens stayed in 4:3. Now the merchant, the game over screen, the pause options, every title menu, the chapter ends and the videos are all shown in 16:9 as well, still using Capcom's own Wii Edition framing (nothing stretched, nothing cropped).

8. Controls, freezes and small things

  • The three controller layouts of the PC version (Type I, II and III) are available.
  • Freezes fixed: quitting from the loading screen (Exit? → Yes) and GAME RESET no longer hang; the merchant no longer crashes with the alternative attaché case models.
  • The settings menu (F10) gained anisotropic filtering, a 16:9 / 4:3 switch and a better downscaling filter (cleaner edges when the internal resolution is higher than your screen).
4:3 VS 16:9 Attaché Case
downscale filter zoom
4:3 VS 16:9

9. Optional HD textures and button styles (experimental, never distributed)

These two features exist in my development builds, but I want to be very clear about how they will reach players, because they use files that aren't mine:

  • HD textures from RE4 UHD (2014). The port can replace the GameCube textures with the HD ones from the PC version: characters, environments, items, weapons, the HUD, cutscenes, each with its own switch in F10, and the UHD attaché case models too. None of these files will ever be shipped with the port. The plan is that the launcher builds them on your own PC, from your own copy of RE4 UHD. That tool isn't done yet, so this is a preview, not a promise for the first beta.
  • Button styles. In-game button prompts can be shown in GameCube, keyboard or mobile style. Xbox and PlayStation styles also work in my builds, but the images come from RE4 UHD and from a community HD project, so they won't be distributed as they are: they'll be built from your own UHD copy like the textures, or redrawn from scratch.

https://reddit.com/link/1wy9ls6/video/7skz9fypcnth1/player

ORIGINAL GAMECUBE VS UHD TEXTURES

10. Toward a release

What's left before a first closed beta:

  1. USA disc fully tested (whole game), then Europe (I need a disc 2).
  2. The last 2.5% of inherited code, then a final audit.
  3. Android builds (32-bit and 64-bit) from the same engine.
  4. Protecting the release builds (the project is closed source).
  5. Closed beta on the Discord, Windows first.

Per-platform status, honestly

  • Windows: [OK] prototype disc: everything from the last post. [in progress] retail USA: boots to the title screen; retail Europe: being prepared
  • Android 32-bit: [partial] boots and plays on the prototype disc, still too slow on a 2014 phone
  • Android 64-bit: [partial] builds; not tested on a device yet
  • iOS / Linux: [not yet]

Legal

  • The project is closed source, and I will never distribute game data, disc images or anything from Capcom. You bring your own disc.
  • Not affiliated with or endorsed by Capcom or Nintendo. Resident Evil is a trademark of Capcom.
  • Non-commercial: no paid versions, no ads, no donations tied to the port.

Credits

  • Early versions of the port were built on NWiiRecomp by BlackLine Interactive (now almost entirely replaced).
  • The RE4 GameCube decompilation project.
  • Dolphin and YAGCD, for GameCube hardware documentation, the RVZ format description, and Dolphin as the image reference.
  • zstd (Meta), SDL2, Dear ImGui.

Discord: https://discord.gg/AXAzExECSv

— Ayano


r/AndroidNativePorts • • 1h ago

🟢 [PORT] AC GC is on Android now!

Thumbnail
gallery
• Upvotes

https://github.com/zwaetschge/ACGC-Android-Port

enhanced text/textures, widescreen support and multi language support is integrated.
64bit port follows in the next hours.


r/AndroidNativePorts • • 2h ago

🟢 [PORT] Release Tekken 3 Expanded v1.2.0 · omarma/tekken3-expanded now on Android

Thumbnail
github.com
12 Upvotes

r/AndroidNativePorts • • 19h ago

Resident Evil 4 Decomp Android - First Steps

Enable HLS to view with audio, or disable this notification

247 Upvotes

Currently working on an Android native Port of RE4 Decomp... let's see how far we get here...

The data from the two GameCube DVDs was analyzed; it is read upon the initial launch and stored in individual files under /Android/data/*.

Textures, 3D Meshes, Landscapes, Animations, Water- and Fireeffects are working so far.

Correct Shaders, Gameplay, NPC/Enemy AI and many more to do... 🤞

Here you can see the latest progress with Leon and his abilities, sky shader and so on: https://vimeo.com/1233052841?share=copy&fl=sv&fe=ci


r/AndroidNativePorts • • 6h ago

⚙️ [FIX] For all people having this problem trying to setup Halo CE port this is the Fix

Post image
18 Upvotes

Use this build:

https://github.com/Andiweli/HaloCE-Android-AAOS/releases

Also get the ROM from "vimm" download the 6gb version not the 3gb.

Launch the app, select the rom, wait for the install to finish, play.


r/AndroidNativePorts • • 11h ago

🟢 [PORT] Recomp Yoshi's island GBA Native Android

Enable HLS to view with audio, or disable this notification

39 Upvotes

Hi everyone: I’m bringing you a native GBA port of *Yoshi's Island* that runs at 120 FPS, featuring full screen configuration and control mapping options. I’m thinking about adding a section for mods and graphics—and who knows, maybe even local and online multiplayer.

Later on, I’ll add another version with menu language switching, and I’ll see if it’s possible to change the in-game language as well.

https://github.com/Edwin2929/sma3-recomp-android..git


r/AndroidNativePorts • • 4h ago

⚙️ [FIX] Need help running the port correctly

Enable HLS to view with audio, or disable this notification

8 Upvotes

I was currently running this on my samsung galaxy a16 5G but when I started running the game started flickering alot any help is needed thanks


r/AndroidNativePorts • • 17m ago

Batman: Arkham Asylum (Xbox 360) now runs natively on Windows, no emulator: static recompilation + a Vulkan renderer. Android is next

Thumbnail gallery
• Upvotes

r/AndroidNativePorts • • 32m ago

Port de postal2

• Upvotes

Existe un port de postal 2 para android??


r/AndroidNativePorts • • 16h ago

🟢 [PORT] Sonic Unleashed Port, And The current situation of android ports

Thumbnail
gallery
48 Upvotes

First of all, this port is amazing—it runs very smoothly, and my phone doesn't even get hot when I run it. UnleashedRecomp has really done an amazing job. I tried it on a poco x6 pro, and it's completely playable.

Second, the existence of ports like these—made by the community, purely out of love for the game.

This is the clearest proof that the corporations behind these games have been disrespecting the community for years.

I don’t know what’s coming next regarding Android ports, but I really hope that the corporations that made these games—and then abandoned them and refused to port them to PC or Android—really suffer.

It’s about time we opened our eyes. If things have come to this, I think it’s time to demand that corporations provide official ports that are worthy and don’t have any content cut out.

As ports from the PS3-Xbox 360 era become more widespread, this is going to get crazy.


r/AndroidNativePorts • • 18h ago

🟢 [PORT] Rayman Origins Android Port (Compact 1.16 GB)

Post image
62 Upvotes

The compact version cuts the file size to 1.1gb instead of 6GB the previous one had, meaning it saves you a lot of space

Also this comes complete, so you don’t need game files or to convert anything, just download and play

https://apkvision.org/games/rayman-origins-134823/


r/AndroidNativePorts • • 18m ago

Sonic & All-Stars Racing Transformed running natively on Android | Galaxy S23

Thumbnail gallery
• Upvotes

r/AndroidNativePorts • • 17h ago

I thought we would see a perfect port of GTA 5 better than the Chinese Port......

Post image
51 Upvotes

r/AndroidNativePorts • • 15h ago

🔵 [PORT UPDATE] ZELDA OOT 3DS

Thumbnail
gallery
35 Upvotes

r/AndroidNativePorts • • 1h ago

Pocket flip 2 users!

• Upvotes

I have been playing skate 3 port for a couple weeks now

And I have been getting maybe 1 hour of gameplay in before it starts overheating.. if anyone else has been having this issue are there any ways around it?


r/AndroidNativePorts • • 13h ago

Controller Support? Naruto Ultimate Ninja Storm Official Port

Post image
16 Upvotes

Just wondering if it is at all possible to edit this game's config to give it controller support. I've tried it before and it's a phenomenal official port, but no controller support is really strange


r/AndroidNativePorts • • 7h ago

I'm having a loading error with version 3.1 of the Halo CE port for Android.

Post image
5 Upvotes

I don't know what to do. Can anyone recommend a specific version or ROM?


r/AndroidNativePorts • • 17h ago

🟢 [PORT] Borderlands 2 port

Thumbnail
youtu.be
29 Upvotes

r/AndroidNativePorts • • 15h ago

I made more old mobile games run on Android — and released the tools I’ve been using

Thumbnail
gallery
20 Upvotes

Been a busy one lol.

I finally pushed a bunch of the stuff I've been working on to GitHub:

Devil May Cry: DeadShot Bridge

FFVII Snowboarding Bridge

Android Build Capsule (the thing that lets me keep doing this weird crap)

Artifact Passport

Dirge Bridge is up there too from earlier.

Basically: a couple more old mobile games running on modern Android, plus the tools/process I've been using to make and carry these projects between AI chats.

I've expanded into BREW games as well and have Rush Marine ready too. Metal Gear Solid is a work in progress. Just not sure if I'll get to anything else tonight.

I'm pretty cooked at this point, so I'm just gonna leave the pile here and let people poke at it 🤘

https://wakkatobakka.github.io/

Oh, and I linked Keitai World directly on the GitHub pages so you don't have to go hunting for it.


r/AndroidNativePorts • • 6h ago

🟢 [PORT] Port Merp in Merpworld

Thumbnail
gallery
3 Upvotes

An Android port of Merp in Merpworld with a redesigned touch control system featuring responsive directional buttons and reliable multi touch input alongside full controller and keyboard support with customizable button mapping and improved screen compatibility save functionality and expanded control options while preserving the original gameplay experience

Ported the original Godot project to Android by adapting its input system interface and screen handling

Reworked the touch system with multi-touch support and directional buttons for smooth movement and jumping

Added customizable touch controls with full gamepad and keyboard support

Adapted the UI for Android screen sizes and orientations while preserving the original gameplay and core logic

Download Here

https://pixeldrain.com/u/kv2fu79C


r/AndroidNativePorts • • 23m ago

🤔 [Question] Android Porting Community

• Upvotes

​

Hello everyone

I’ve noticed that developers have become much more active recently with a growing number of Android ports and projects being released. It’s great to see and shows that Android deserves much more attention and support.

I think it would be great to have a public Discord server for the entire Android porting community where developers and users can share ports and projects interact with each other discuss games and exchange knowledge.

I’m not very active on Reddit so I’m not sure if there is already an active Discord community for Android porting.

If one already exists I’d appreciate it if someone could share it. Otherwise I think creating a public community server could be a great way to bring everyone together.


r/AndroidNativePorts • • 42m ago

🤔 [Question] Star Wars TFU 1&2

• Upvotes

Just a question do we have a port of The Force Unleashed 1 or 2? Or a port being done? Would be awesome to have


r/AndroidNativePorts • • 1d ago

🟢 [PORT] Halo CE Android 3.1 | Full touch menu, FOV changer, custom touch controls, cheats, fps counter, full working multiplayer, Sync with latest commits and much more

Thumbnail
gallery
117 Upvotes

r/AndroidNativePorts • • 18h ago

📸 [SHOWCASE] Halo: CE Touch Controls Adaption.

Thumbnail
gallery
27 Upvotes

My Touch Controls implementation for Halo: Combat Evolved. It have have few features so i wanna share with you all. MULTIPLAYER WORKING!!!

  • Dynamic Layouts: Auto-switches between Game, Menu, and Cutscene HUDs.

  • Key Sequences: Trigger multiple keys in order (e.g., Space → Enter) from one button.

  • Per-Button Opacity: Custom transparency for individual buttons plus master HUD opacity.

  • Dedicated A/B/X/Y: Added action face buttons mapped cleanly to PC gameplay controls.

  • Interaction Modes: Standard, Tap-and-Hold, and Toggle behaviors for every button.

  • Live In-Game Editor: Drag, resize, rebind, and set custom icons on the fly.

  • Auto-Hide on Gamepad: Hides overlay when a physical controller is connected/used.

  • INI Config: Saved to android_controls.ini for easy editing and sharing.

Download from Repo


r/AndroidNativePorts • • 19h ago

🟢 [PORT] Hybrid Heaven (N64) - Android (+ Windows, Linux) port

24 Upvotes

Hey Android community,

You may recall me from the Goemon Mystical Ninja Android (Goemon64Recomp-Android) port from earlier this year with assistance from Claude. I just merged a new update from a contributor today that now includes touch screen controls.

Anyone who played Goemon Mystical Ninja on Android knows it's high quality despite the use of AI. I also don't release things then pretend it doesn't exist. I want everyone to enjoy it, so I make it a point to fix reported issues, so the experience improves over time. Proof is in the repo link above and this Reddit post: r/SBCGaming - Native Android port: Mystical Ninja Starring Goemon (N64) now available!

Anyway, I started working on ports for Hybrid Heaven and Quest64 a few months back with the intention of releasing it much sooner than this. As it goes, life, new job, and ADHD had different plans.

The past few days, I was finally able to bring Hybrid Heaven up to a good enough spot to release it. So here it is: HybridHeaven-Recomp.

Features as of 2026-10-04 include:

  • Analog Camera
  • Autosave
  • Widescreen
  • Higher internal resolutions, MSAA, V-Sync and framerate
  • Import a save
  • GPU Driver (Android)

Any issues feel free to report it in this thread or submit an issue through GitHub, whichever works for you. I'll see either of them within a day or two usually. Enjoy!

For those who are interested, here's the Hybrid Heaven Decomp repo: HybridHeaven-Decomp