Stranger Things 3: The Game  Unity 6 / GLES2 Testing
▲ 36 r/RG34XXSP+5 crossposts

Stranger Things 3: The Game Unity 6 / GLES2 Testing

The first Unity 6 game running on GLES2 is now available for testing: Stranger Things 3: The Game.

This release represents a major step forward in the development of the new framework. The goal is to create an increasingly stable compatibility layer that allows newer Unity games to run on older and limited hardware.

Initial Testing Discord Only

For now, initial testing of this new system is being conducted exclusively on Discord.

The goal is to collect as much information as possible before a wider release: different devices, firmware, GPUs, controls, performance, audio, rendering, and potential crashes.

The more data we collect now, the more stable and compatible the framework will become.
The Discord link is available on my Reddit profile.

The Potential of This System

The potential here is huge.

If the system continues evolving as expected, it could open the door to porting games that were previously considered almost unimaginable on these devices.

Running Unity 6 on old hardware using GLES2 significantly changes what we can consider possible going forward.

And this is only the beginning.

Controls

The current controller configuration follows the Xbox layout.

The controls should work normally. However, depending on the device, the buttons displayed visually by the game may not exactly match the physical buttons on your device.

This is only a visual layout difference and does not mean that the controls are broken.

If you encounter an actual control issue, please report:

  • Device model
  • OS / firmware
  • Which control or button is not working
  • Logs, if available
  • Any graphics, audio, or performance issues

Important

The framework does not modify or recode the original game files.

All compatibility is handled through the new custom runtime/shim layer developed to make execution possible on these devices.

Stranger Things 3: The Game — Unity 6 + GLES2

Testing has begun. The goal now is to fix every issue we find, stabilize the framework, and discover just how far we can push this system.

u/Next0s — 1 day ago
▲ 34 r/R36S+1 crossposts

Five native handheld ports in one drop Titan Souls, ScourgeBringer, Angry Birds Classic, Geometry Dash + SubZero

https://preview.redd.it/f95oe2ys7gjh1.jpg?width=1920&format=pjpg&auto=webp&s=b67149a63dc448bb5360693387ddea333ec56787

https://preview.redd.it/gdwq21tt7gjh1.jpg?width=1200&format=pjpg&auto=webp&s=c0052fd1a958d61fc4bf0af09434770b3664fb44

https://preview.redd.it/crv6yftt7gjh1.jpg?width=1200&format=pjpg&auto=webp&s=ddfa6b49594a70976b05f4e5f3f4349823c48980

https://preview.redd.it/apxar0tt7gjh1.jpg?width=1200&format=pjpg&auto=webp&s=1225015563fd3ecc81a82aeddad8c9614316695b

https://preview.redd.it/6ik5nwtt7gjh1.jpg?width=1200&format=pjpg&auto=webp&s=8641f890e0131f22711fcc784692e3001b956c61

https://preview.redd.it/k0e3v0tt7gjh1.jpg?width=1200&format=pjpg&auto=webp&s=37c3d60ba5f697934a96d04c5f4fe711a549b52d

Five very different games, one big handheld showcase. 🏹⚔️🐦🔺🔷

These projects run the games’ original ARM Android code on Linux through native loaders and compatibility layers — **no Android emulation**. Every package is **BYO-data**: no APK, OBB, proprietary game library, artwork, music, or other copyrighted game data is included. You provide your own legal copy.

Device validation differs by port. Each GitHub repository documents the hardware and firmware that were physically tested, along with remaining limits. If your device is not listed, please treat it as a community test rather than guaranteed support.

## 🏹 Titan Souls — v1.0.0-rc.4

A beautifully minimal boss rush where every encounter is a tiny puzzle and every arrow matters. The port has video, music and SFX, native controller input, persistent saves, clean exit, and an expanded in-game language selector for English, French, German, Portuguese, and Spanish.

Known limit: a one-pixel tile grid can remain visible on Mali-450/Utgard.

Owner data: **Titan Souls Android 1.0.3** APK plus `main.31.com.devolver.titansouls.obb`.

GitHub and source: https://github.com/NextOs-Ports/titansouls-nextos

Public build: https://github.com/NextOs-Ports/titansouls-nextos/releases/tag/v1.0.0-rc.4

## ⚔️ ScourgeBringer — v1.0.0-test.8

Fast, sharp, airborne roguelite combat running through the game’s real AArch64 MonoGame/.NET Android runtime. The validated baseline has native controller support, FMOD audio, working saves, and a steady 40 fps target. This build also fixes the invisible root-menu selection bug without stealing left/right input from Settings or gameplay.

Owner data: a compatible, legally obtained **ScourgeBringer 1.61.x AArch64 APK**.

GitHub and source: https://github.com/NextOs-Ports/scourgebringer-nextos

## 🐦 Angry Birds Classic — v1.1.2

The complete slingshot experience, rebuilt around a physical controller: the left stick pulls and aims, L2/R2 controls zoom, the right stick moves a polished pointer, and A/R3 handles taps and bird powers. Audio, progress, stars, saves, pause, and clean exit all stay inside the port.

Owner data: **Angry Birds Classic 8.0.3**, package `com.rovio.angrybirds`, ARMv7.

GitHub and source: https://github.com/NextOs-Ports/angrybirds-nextos

## 🔺 Geometry Dash — v1.0.2

RobTop’s 2.2 engine running natively at 60 fps on the physically validated R36S/ArkOS path, with audio and controller support. D-pad and left stick now move correctly in the Tower’s platformer levels, jumping goes through the game’s own key path, and the right-stick pointer plus R3 makes every touch menu usable.

Physically tested owner data: **Geometry Dash 2.2.144**, package `com.robtopx.geometryjump`, `arm64-v8a`.

GitHub and source: https://github.com/NextOs-Ports/geometrydash-nextos

## 🔷 Geometry Dash SubZero — v1.0.2

SubZero follows the same carefully checked 2.2 engine path, with native audio, controller input, touch-menu pointer, saves, and clean exit. Its stages are classic rather than platformer levels, but in-level jump still uses the same native key route.

Physically tested owner data: **Geometry Dash SubZero 2.2.147**, package `com.robtopx.geometrydashsubzero`, `arm64-v8a`.

GitHub and source (shared with Geometry Dash): https://github.com/NextOs-Ports/geometrydash-nextos

---

## Installation

Follow the `INSTALLATION.md` included with each port. In general: extract the port ZIP into the firmware’s `ports/` directory, place your legally owned game data in the matching `gamedata/` folder, and launch it from the Ports menu. NXExtract validates and prepares the data on first run.

If you test one, please report **device + firmware/version + fps + audio + controls**. If something fails, include the generated port log — it makes a huge difference.

Which one are you playing first?

reddit.com
u/Next0s — 5 days ago
▲ 138 r/RG35XX+2 crossposts

4 new ports at once: Dead Trigger (GLES 2), Gunbrick Reloaded, Bomb Chicken and Suzy Cube

Folks, I don't have the patience to write several posts right now, so here's all of it in

one. 😄

All four are out **for every device** — feel free to test and tell us how it went on yours.

They all use our **new port framework**: the game's original engine (`libmain.so`,

`libunity.so`, `libil2cpp.so`) is loaded by our own loader, with an Android compatibility layer,

EGL/GLES through the system SDL and native audio. **No Android emulation.** Universal AArch64

binaries: R36S, RG351, RG353, TrimUI, Miyoo and any other AArch64 handheld, plus NextOS. All

photos are from the devices.

**All of them are BYO-data:** the packages contain NOTHING from the games (no `.so`, no APK, no

OBB). You use your own legal copy and drop it into `gamedata/`.

**Install (same for all four):** extract the zip into the card's `ports/` folder (the `.sh` sits

next to the port folder), put your data into the matching `gamedata/` and launch from the Ports

menu. The first run validates and prepares everything.

---

**🔫 Dead Trigger — v1.0.5 (GLES 2)**

Full 3D FPS: move, aim, shoot, reload and heal on the pad. This release brings the **GLES 2**

render path, which is what makes the game run on older GPUs (Mali-450), plus the fix for firing

right after a reload. Validated on three device families.

BYO-data: **Dead Trigger arm64** (Madfinger Games) → `deadtrigger/gamedata/`

Download and source (GPL-3.0): https://github.com/NextOs-Ports/deadtrigger-nextos/releases/latest

**🧱 Gunbrick Reloaded — v0.2.5**

Nitrome's puzzle-platformer: gameplay, cutscenes and pad controls all working.

BYO-data: **Gunbrick Reloaded arm64** (Nitrome) → `gunbrick/gamedata/`

Download and source (GPL-3.0): https://github.com/NextOs-Ports/bombchicken-gunbrick-nextos/releases/latest

**🐔 Bomb Chicken — v1.1.4**

Nitrome's action platformer, running smooth on the pad.

BYO-data: **Bomb Chicken arm64** (Nitrome) → `bombchicken/gamedata/`

Download and source (GPL-3.0): https://github.com/NextOs-Ports/bombchicken-gunbrick-nextos/releases/latest

*(Gunbrick and Bomb Chicken ship from the same repo and the same zip.)*

**🧊 Suzy Cube — v1.1.2**

3D platformer with native FMOD audio. Tested on R36S/ArkOS (Mali-G31, 59.7 fps at 640×480),

NextOS (Amlogic Mali-450, 55–56 fps at 1280×720) and NextOS X5M (59.7 fps at 1920×1080).

BYO-data: **Suzy Cube v1.0.13 arm64** (`com.noodlecake.suzycube`) → `suzycube/gamedata/`

Download and source (GPL-3.0): https://github.com/NextOs-Ports/suzycube-nextos/releases/latest

---

**Did it run on your device?** Tell us: device + firmware + fps + sound + controls. Hit a bug?

Send the log from the port folder.

**Support:** the invite to our Discord is on my **GitHub profile**

just click the Discord link there — or reach me through my

**Reddit profile** (u/Next0s).

u/Next0s — 9 days ago
▲ 45 r/R36S+1 crossposts

Hitman GO running natively on Linux handhelds — universal port

Hitman GO is now running natively on AArch64 Linux handhelds.

This is not Android emulation and not a container. The port runs the original Unity 2022.3 IL2CPP arm64 Android build directly through the native loader.

One package, multiple devices

The runtime only requires GLIBC 2.27 and automatically detects the device capabilities for video, audio, resolution and controls. No backend is hardcoded per handheld.

Tested

R36T-class / ArkOS

  • RK3326
  • Mali-G31
  • KMSDRM
  • 640×480
  • Title, chapters, gameplay, saves and Select + Start exit validated

NextOS Elite

  • Amlogic
  • Mali-450
  • fbdev GLES2
  • 1280×720
  • Full gameplay validated using the same binary

Other AArch64 CFWs such as muOS, ROCKNIX, Batocera and Knulli use the same automatic detection path. v1.1.1 also includes controller fixes based on a real muOS / RG40XX-H report.

I only mark devices as validated after real hardware testing, so if it works on yours, send a report.

Installation

Place your legally obtained Hitman GO 1.18.1 arm64 APK inside:

ports/hitmango/gamedata/

NXExtract will validate and install it automatically on first launch.

Your APK is never deleted automatically.

Download + instructions:
https://github.com/NextOs-Ports/hitmango-nextos

For support, join our Discord through the link on my profile, or open the GitHub repository and use the Discord/Support button.

u/Next0s — 13 days ago
▲ 163 r/R36S+1 crossposts

The Old Republic fits in your pocket: KOTOR now runs natively on Linux handhelds

After several fixes based on real device reports, Star Wars: Knights of the Old Republic v1.0.3 is now public.

This is not Android emulation, streaming, or the PC version. The port runs Aspyr’s original ARMv7 Android native libraries through the so-loader, keeping the original Odyssey/SDL2 engine flow.

v1.0.3

  • Fixed controller mappings on muOS and ROCKNIX
  • Controller layout is now detected from the firmware mapping instead of guessed by USB ID
  • Supports face buttons, triggers, analog sticks and HAT D-pads
  • Fixed Select + Start save-safe exit
  • Fixed the Quick Save freeze when overwriting an existing save
  • Improved debug.log controller diagnostics

Validated on:

R36S / ArkOS
RK3326 • Mali-G31 • KMSDRM

Also validated on:

NextOS Elite
Amlogic • Mali-450 • fbdev

Other compatible devices are supported by capability detection, but still need real hardware reports before being marked as validated.

Installation

Place your legally-owned Aspyr Android APK and OBB files inside:

ports/kotor/gamedata/

Then launch Star Wars KOTOR from your frontend.

Exit safely with:

Select + Start

Download:
https://github.com/NextOs-Ports/kotor-nextos

For support, join our Discord by clicking the link on my profile, or open the GitHub page above and use the Discord/Support button.

If reporting a problem, please include your device, firmware and debug.log.

u/Next0s — 13 days ago
▲ 103 r/Portmaster+1 crossposts

Oceanhorn: Chronos Dungeon running natively on Linux handhelds

Alguém no Reddit pediu este jogo. Eu nunca tinha ouvido falar de Oceanhorn: Chronos Dungeon, mas decidi testar — e o port agora está completo.

Testado até agora

  • R36S / ArkOS
  • NextOS Elite / Amlogic S905X

O mesmo binário é usado em dispositivos compatíveis.

Instalação

Coloque seu APK original dentro de:

ports/oceanhorn/gamedata/

Na primeira execução, o NXExtract detecta a versão, valida os arquivos e instala tudo automaticamente.

Nenhum dado do jogo é distribuído.

Testes necessários

Ainda precisamos de testes em mais dispositivos e firmware. Se você encontrar algum problema, envie o log completo junto com o modelo do seu dispositivo e o firmware.

Repositório do port:

https://github.com/NextOs-Ports/oceanhorn-nextos

Para enviar logs, solicitar suporte, ou acompanhar futuros ports, visite meu perfil no Reddit ou GitHub e entre no Discord através do link disponível.

u/Next0s — 16 days ago
▲ 129 r/R36S

# The pickaxe has landed on R36S: Terraria Android now runs natively, without Android ⛏️

The old Terraria loader has finally become a public, multi-device package.

Terraria Android 1.4.5.6.4 can now run on AArch64 Linux handhelds through a native compatibility layer.

This is not the FNA port, Android emulation, streaming, or the PC version. The loader runs the original ARM64 Unity IL2CPP libraries supplied by the user and communicates directly with the firmware’s SDL2, EGL/GLES, audio, and controller stack.

Real hardware validation

The final validation was completed on R36S-class hardware running ArkOS, with Mali-G31 graphics, KMSDRM, and a 640×480 display.

The following features were successfully tested:

  • Boot and first-run setup
  • Audio and controller input
  • Virtual keyboard navigation
  • Player naming and character creation
  • Persistent saves
  • World generation
  • Gameplay
  • Clean return to the frontend

The NextOS Mali-450/fbdev path is also included in the same binary.

Other AArch64 firmware profiles use the same capability-based detection system, but devices not yet listed still require real-hardware confirmation.

Installation

  1. Extract terraria.zip into your Ports directory.
  2. Make sure Terraria.sh is located next to the terraria/ folder.
  3. Place your legally owned Terraria Android 1.4.5.6.4 arm64-v8a APK inside: terraria/gamedata/
  4. Launch Terraria from the Ports section.
  5. Allow NXExtract to complete the first-run installation.
  6. Press SELECT + START together to exit the game.

Support

For installation help, bug reports, or device testing, join the Discord server.

You can find the Discord link by clicking my profile or by opening the GitHub repository below.

Source, downloads, documentation, and support links:

https://github.com/NextOs-Ports/terraria-nextos

This is an independent BYO-data interoperability project.

The distributed ZIP does not contain the game APK, proprietary Android libraries, game assets, or save files. Terraria and all related content remain the property of their respective rightsholders.

u/Next0s — 17 days ago
▲ 46 r/Portmaster+2 crossposts

Prizefighters 2 — Unity Game Ported to Linux Handhelds

Prizefighters 2 is now running natively on supported Linux handhelds through the NextOS Android interoperability runtime.

This release uses legally owned Android ARM64 game data and runs the original Unity version without Android emulation, containers, streaming, or replacement game files.

Release 1.0.1 Highlights

  • Resolution-independent cursor coordinates with correct menu interaction through A and R3.
  • PortMaster-standardised controls, controller hotplug support, raw joystick fallback, and a reliable Select + Start exit shortcut.
  • Controller-operated virtual keyboard for text entry without requiring an Android IME.
  • A single runtime that preserves compatibility with Mali-450/fbdev devices while automatically negotiating SDL/KMSDRM on newer firmware.
  • Native FMOD PCM audio delivery through the firmware's SDL/ALSA stack.
  • NXExtract 1.2.0 with automatic ARM64 split selection, exact v1.09.3 validation, resumable staging, transactional installation, and bundled LZ4 support.
  • Firmware-first extractor isolation, preventing the game's private libraries from interfering with the installation environment.
  • Verified GLES2 shader variants generated directly from the owner's legally obtained data.
  • Safe import of existing save data while preserving the handheld's local resolution and session settings.

Hardware Validation

The final hardware validation was completed on an ArkOS/R36S-class handheld using a Mali-G31 GPU at 640×480.

The test successfully completed NXExtract installation, KMSDRM/GLES2 initialisation, the complete JNI boot sequence, stereo ALSA audio, 450 rendered validation frames, and clean shutdown.

A complete source-XAPK extraction was also repeated under a deliberately contaminated library environment, and the installation still completed correctly.

The original Mali-450/fbdev rendering path remains included in the same universal executable.

Compatibility

The universal executable requires no newer than GLIBC 2.27.

Its runtime portability follows the same patterns already proven with Horizon Chase, Stardew Valley, and The Amazing Spider-Man 2.

Unlisted hardware and firmware combinations still require confirmation on real devices.

Installation

  1. Extract Prizefighters.2.NextOS-v1.0.1.zip to the root of the ROM card.
  2. Place a legally owned Prizefighters 2 v1.09.3 XAPK containing config.arm64_v8a.apk inside: ports/pf2/gamedata/
  3. Launch Prizefighters 2 from the Ports section.
  4. Allow NXExtract to complete the one-time installation.
  5. Use Select + Start to exit the game.

Repository

The repository and release are currently private. Access is available only to authorised GitHub accounts:

https://github.com/NextOs-Ports/prizefighters2-nextos

Legal Notice

This is an independent BYO-data interoperability project.

No original game assets are distributed with the port. Prizefighters 2 and all original game content remain the property of their respective rightsholders.

u/Next0s — 18 days ago

Stardew Valley Android running natively on Linux handhelds — Mono/.NET ELF Loader v1.1.1

Before anything else: native Linux ports of Stardew Valley already exist.

The goal of this project was not simply to create another way to play the game, but to successfully validate running original Android Mono/.NET games through a native AArch64 ELF loader, without Android emulation, containers, streaming, or replacing the game with the PC version.

The loader boots the original ARM64 binaries and Mono/.NET runtime, reproduces the required Android lifecycle, provides compatible JNI and JavaVM interfaces, and connects SDL, EGL, GLES and OpenAL directly to the handheld firmware and GPU.

The same technology has already been adapted for several other Mono-based games, including Celeste, Teenage Mutant Ninja Turtles, and many other titles.

Highlights of v1.1.1

This is a stable and up-to-date release based on Android 1.6.15.3, focused on performance, compatibility and reliability.

  • Faster loading times.
  • Lower memory usage.
  • Full OpenGL ES 2.0 compatibility.
  • Native support for fbdev-based devices.
  • No broken maps or previous rendering issues.
  • NXExtract compatibility fixed for ROCKNIX and RG-DS.
  • Interrupted installations can now resume automatically.
  • Save files from previous releases are fully preserved.
  • New gold pixel-art cursor controlled by the right analog stick.
  • R3 clicks exactly at the cursor tip.
  • New farms start with the recommended 0.75 zoom level.
  • Existing saves keep their original zoom settings.
  • Native controller keyboard for all naming fields.
  • Complete D-pad navigation throughout the Options menu.
  • Automatic compatibility profiles for NextOS and other AArch64 firmwares.

Validation

This release was physically tested on a real R36S running ArkOS, featuring an RK3326, Mali-G31, and a 640×480 display.

The existing 1280×720 Amlogic Mali-450 profile is also included.

Testing covered:

  • startup and title menus;
  • character creation;
  • controller text input;
  • loading existing saves;
  • normal gameplay;
  • OpenAL/ALSA audio;
  • complete Options menu navigation;
  • new farm creation;
  • migration from previous releases;
  • clean and resumed NXExtract installation;
  • GLES rendering;
  • clean process shutdown.

No save files were deleted or rewritten during testing, and no orphaned game process remained after exiting.

Installation

This package is designed to support multiple handhelds and firmwares from a single ZIP.

Systems such as NextOS and EmuELEC use the ports_scripts folder for launcher scripts, while ArkOS and several other firmwares use the ports folder. Both layouts are included to ensure maximum compatibility.

  1. Extract the ZIP into the root of your ROM partition.
  2. Place your legally owned Stardew Valley Android 1.6.15.3 APK/XAPK containing the arm64-v8a libraries inside:

ports/sdvnextos/gamedata/

  1. Launch Stardew Valley (NextOS) from the Ports menu.
  2. Follow the NXExtract installation process.
  3. Press SELECT + START to exit.

GPL-3.0 source code, documentation and downloads:

https://github.com/NextOs-Ports/stardewvalley-nextos

This is an independent BYO-data interoperability project. The downloadable package does not contain the game or any copyrighted assets.

Stardew Valley, its characters, artwork, music and all other game assets remain the property of their respective copyright holders.

u/Next0s — 18 days ago
▲ 90 r/R36S

Stardew Valley Android running natively on the R36S — Mono/.NET through an ELF loader, native controls and NXExtract

Before anything else: native Linux ports of Stardew Valley already exist.

The goal of this project was not simply to create another way to play the game, but to successfully validate running original Android Mono/.NET games through a native AArch64 ELF loader, without Android emulation, containers, streaming, or replacing the game with the PC version.

The loader boots the original ARM64 binaries and Mono/.NET runtime, reproduces the required Android lifecycle, provides compatible JNI and JavaVM interfaces, and connects SDL, EGL, GLES and OpenAL directly to the handheld firmware and GPU.

The same technology has already been adapted for several other Mono-based games, including Celeste, Teenage Mutant Ninja Turtles, and many other titles.

Highlights of v1.1.1

This is a stable and up-to-date release based on Android 1.6.15.3, focused on performance, compatibility and reliability.

  • Faster loading times.
  • Lower memory usage.
  • Full OpenGL ES 2.0 compatibility.
  • Native support for fbdev-based devices.
  • No broken maps or previous rendering issues.
  • NXExtract compatibility fixed for ROCKNIX and RG-DS.
  • Interrupted installations can now resume automatically.
  • Save files from previous releases are fully preserved.
  • New gold pixel-art cursor controlled by the right analog stick.
  • R3 clicks exactly at the cursor tip.
  • New farms start with the recommended 0.75 zoom level.
  • Existing saves keep their original zoom settings.
  • Native controller keyboard for all naming fields.
  • Complete D-pad navigation throughout the Options menu.
  • Automatic compatibility profiles for NextOS and other AArch64 firmwares.

Validation

This release was physically tested on a real R36S running ArkOS, featuring an RK3326, Mali-G31, and a 640×480 display.

The existing 1280×720 Amlogic Mali-450 profile is also included.

Testing covered:

  • startup and title menus;
  • character creation;
  • controller text input;
  • loading existing saves;
  • normal gameplay;
  • OpenAL/ALSA audio;
  • complete Options menu navigation;
  • new farm creation;
  • migration from previous releases;
  • clean and resumed NXExtract installation;
  • GLES rendering;
  • clean process shutdown.

No save files were deleted or rewritten during testing, and no orphaned game process remained after exiting.

Installation

This package is designed to support multiple handhelds and firmwares from a single ZIP.

Systems such as NextOS and EmuELEC use the ports_scripts folder for launcher scripts, while ArkOS and several other firmwares use the ports folder. Both layouts are included to ensure maximum compatibility.

  1. Extract the ZIP into the root of your ROM partition.
  2. Place your legally owned Stardew Valley Android 1.6.15.3 APK/XAPK containing the arm64-v8a libraries inside:

ports/sdvnextos/gamedata/

  1. Launch Stardew Valley (NextOS) from the Ports menu.
  2. Follow the NXExtract installation process.
  3. Press SELECT + START to exit.

GPL-3.0 source code, documentation and downloads:

https://github.com/NextOs-Ports/stardewvalley-nextos

This is an independent BYO-data interoperability project. The downloadable package does not contain the game or any copyrighted assets.

Stardew Valley, its characters, artwork, music and all other game assets remain the property of their respective copyright holders.

u/Next0s — 18 days ago
▲ 79 r/R36S

Summertime Saga running NATIVELY on the R36S and retro handhelds

Public service announcement first

Adult game (18+) only. Whatever happens to your relationship after 200 hours on a save file is entirely your responsibility. We only made the port. 🙏

Yes—the most famous (and possibly most dangerous) Android visual novel now runs natively on Linux retro handhelds. No Android runtime, no emulator, no streaming tricks. The official free APK is converted into a real native Linux game with a classic anti-aliased mouse cursor, native controller shortcuts, and fully working save support.

Physically validated

  • ArkOS / R36S-class (RK3326 Mali-G31, 640 MB, 640×480): completed play session including title screen, prologue, free-roam between rooms, phone/backpack/map/save shortcuts, ALSA audio, and clean Select+Start exit.
  • NextOS / Amlogic Mali-450 (1 GB): validated using the hardware OSD2 cursor path.

Other PortMaster-compatible AArch64 firmwares (muOS, ROCKNIX, Knulli, etc.) with glibc 2.28+, SDL2, and GLES2/3 should also be compatible. Physical validation on additional devices is planned.

Installation (short version)

  1. Download summertimesaga.zip from the latest release and extract it into your ports folder.
  2. Copy the official Preview APK (generation 21+) into summertimesaga/gamedata/. Any filename is accepted (.apk, .apks, .apkm, or .xapk).
  3. Launch the port from the Ports menu. The first run will prepare the game data (typically 20 minutes on an SD card). Every launch after that is immediate.

Full installation guide, screenshots, source code (GPL-3.0), and releases:

https://github.com/NextOs-Ports/summertimesaga-nextos

Need support?

If you run into any issues, please join our Discord. It's the fastest way for me to receive logs, troubleshoot problems, and provide fixes. You'll find the Discord invite on my Reddit profile and on my GitHub profile.

Legal notice

Summertime Saga is developed by Kompas Productions. This is an independent compatibility port with no affiliation to the original developers. No game data is included or distributed.

And one last reminder: 18+ only. If your partner asks why you've suddenly disappeared for hours... blame the Reddit algorithm. 😇

u/Next0s — 20 days ago
▲ 194 r/RG35XX+3 crossposts

# We put an open-world AAA Spider-Man game on R36S, Mali-450 and X5M 🕷️

Yes, you can now swing across an open-world New York, stop crimes, play

missions, fight enemies, upgrade Spider-Man and change suits on three very

different classes of retro handheld hardware.

After defeating the actual final boss — a 2014 Android APK, retired online

services, old binary formats and three completely different GPUs — our

universal port of *The Amazing Spider-Man 2* 1.2.7d is ready.

This was an ambitious AAA-style mobile game from Gameloft's era, not a small

tech demo. The open city, campaign, exploration, combat, cutscenes, upgrades,

suits, audio, saves and full controller support are all working.

## The fun part

- **A real open world:** explore the city, swing between buildings, fight,

complete missions and progress through the campaign.

- **Offline shop enabled:** the local item and suit shop opens and remains

navigable without the old servers. Its catalogues are reconstructed from the

user's own legal game data.

- **No mandatory Internet:** the connection sentence on first boot is an

original notice, not a required game download.

- **Full controller support:** movement, camera, combat, jump/swing, menus and

pause were tested on physical hardware.

- **Working saves:** create, update, close, reopen and reload were all

validated.

- **One ZIP:** the launcher detects the device and selects the correct route

automatically.

## Three devices, three routes, one package

- **NextOS Mali-450:** native ARMHF, GLES2, 1280×720.

- **ArkOS R36S / RK3326 Mali-G31:** low-glibc ARMHF, KMSDRM/GLES 3.2,

640×480.

- **NextOS X5M / Mali-G310:** the APK's genuine Android x86 library through

Box32, KMSDRM/GLES 3.2, 1920×1080.

Clean extraction, first boot, graphics, audio, controls, gameplay, saves,

reopen and shutdown were tested on all three. On X5M, even the native extractor

has its own graphics path so it cannot inherit the game's compatibility SDL

and summon the traditional mysterious black screen. 😅

Other PortMaster-class ARMHF systems already receive runtime path, library,

video, audio and controller detection, but only the three devices above are

physically validated in this release. If you test another device, please share

the exact hardware and firmware.

## How first-time setup works

This is a **BYO-data** port. The public download contains no APK, OBB, native

game library, audio or other proprietary game payload.

You provide your own legal, exact Android 1.2.7d APK and its three matching

OBBs. Our public NXExtract recognizes the files by content, validates their

hashes and integrity, recovers both ARMv7 and x86 libraries, normalizes the

unusual old APK, prepares the offline shop and only publishes all eight

generated outputs after the entire transaction passes. Wrong, incomplete or

corrupt data can never become a “completed” install.

A genuinely new profile follows the native sequence: legal terms, the original

cloud/offline notice, controller presentation, progressive loading and

gameplay. Press one face/action button once on the legal screen. Only that

first action becomes the touch needed for `ACCEPT`; all later controller input

remains normal.

## Install

  1. Download `asm2.zip` from the latest release inside the project GitHub.

  2. Extract it at the storage root that contains the `ports` directory.

  3. This is not APK-only. Put the 1.2.7d APK and these three untouched cache

    files in `ports/asm2_127/gamedata/`:

    - `main.12032.com.gameloft.android.ANMP.GloftASHM.obb`

    - `patch.12438.com.gameloft.android.ANMP.GloftASHM.obb`

    - `patch.12723.com.gameloft.android.ANMP.GloftASHM.obb`

  4. Launch **The Amazing Spider-Man 2** from Ports.

  5. Let NXExtract finish and press one action button if the legal screen

    appears.

The first setup validates and copies more than 1 GiB, so older storage may

take a few minutes. Later launches use a validated fast path. For an update,

extract the new ZIP over the existing installation; owner data, saves,

preferences and cache are preserved.

Project, download and source — the post's only link:

- https://github.com/NextOs-Ports/tasm2-nextos

Support is available through the Discord listed in my profile and inside the

project GitHub.

The game, characters and trademarks remain the property of their respective

rightsholders. This independent project is not affiliated with or endorsed by

them, and no proprietary game files are distributed.

u/Next0s — 20 days ago
▲ 151 r/R36S+1 crossposts

Horizon Chase rodando nativamente no R36S (RK3326, 1 GB) — port de compatibilidade AArch64 open source, unity

Estas são capturas diretas do build universal nos caminhos validados de

640×480 e 1280×720, sem mockups. O R36S de teste expõe cerca de 639 MB de RAM

utilizável e usei 512 MB de swap como margem de segurança durante a validação.

Uma corrida completa terminou com música e efeitos originais, controle nativo,

save persistente e retorno limpo ao ArkOS.

Não é emulação Android nem streaming. O loader de compatibilidade AArch64,

publicado sob GPL-3.0, mapeia as bibliotecas ARM64 originais do Unity

2022.3.33f1/IL2CPP, segue a ordem nativa de inicialização Android e fornece as

interfaces necessárias de lifecycle, JNI e Bionic, enquanto o jogo renderiza

no EGL/OpenGL ES real da GPU Mali.

O mesmo binário do loader foi validado sem alteração em Mali-450 com

SDL `mali`/fbdev, Mali-G31 com KMSDRM e Mali-G310 com KMSDRM. No R36S, ASTC,

ETC1 e ETC2 permanecem comprimidos e são enviados nativamente à GPU. O perfil

de pouca RAM limita apenas texturas cruas ou decodificadas muito grandes,

reduz arenas do alocador e mantém a cadência original de lifecycle Android em

30 Hz.

Código, documentação e download estão neste único repositório:

https://github.com/NextOs-Ports/horizonchase-nextos

É um port BYO-data. O download não inclui APK, `libunity.so`, `libil2cpp.so`,

bundles originais, música ou payload executável proprietário; o repositório

usa capturas de tela apenas para identificação e documentação. O usuário

fornece sua cópia legal ARM64 Android 2.6.9. Na primeira abertura, o NXExtract

1.1.1 identifica pelo conteúdo, valida hashes e ABI, prepara o asset pack e

instala de forma transacional, com retomada e rollback.

Horizon Chase e seus dados continuam pertencendo aos respectivos detentores.

Este é um projeto independente de interoperabilidade, sem afiliação ou

endosso da publicadora do jogo ou da Unity Technologies.

u/Next0s — 21 days ago

Streets of Rage 4 native AArch64 port - open source, runs on 1GB handhelds (BYO game data)

Screenshots are straight off an R36S with only 639 MB of usable RAM.

Native Linux port, not Android emulation: a self-contained .NET 9 CoreCLR host runs the game's managed assembly directly, on a MonoGame backend patched for OpenGL ES. The original ASTC textures are uploaded natively and kept under an 80 MB bounded pager, which is what makes original-resolution art fit in 1 GB. It ships in the PortMaster layout, so it drops into the usual ports/ folder.

Source and package (GPL-3.0): https://github.com/NextOs-Ports/sor4-nextos

BYO-data: zero game content in the package. You supply your own legal ARM64 Android v1.4.5 APK (or a split/.apks/.apkm/.xapk bundle) and the first run validates fingerprints, extracts and prepares everything, with per-file resume and rollback.

The launcher probes real GLES/ASTC/ETC2 capability and picks a memory profile from physical RAM, so it adapts across devices. Tested end to end on an R36S; reports from other AArch64 handhelds are welcome.

u/Next0s — 22 days ago

Streets of Rage 4 native AArch64 port (BYO-data) - runs on 1GB handhelds, now open source

Native AArch64 port of Streets of Rage 4, packaged in the PortMaster layout, running on an R36S (ArkOS) with only 639 MB of usable RAM. Screenshots are captured straight off the device.

How it works: a self-contained .NET 9 CoreCLR host runs the game's managed assembly directly on Linux (no Android emulation, no so-loader), on top of a MonoGame backend patched for OpenGL ES. The 23k original ASTC textures are uploaded natively and kept under an 80 MB bounded pager, which is what makes original-resolution art fit in 1 GB.

The launcher does a real GLES/ASTC/ETC2 capability probe and picks a memory profile from physical RAM (1gb / 2gb / high), then runs a transactional first-run setup with per-file CRC resume and rollback.

Source and package (GPL-3.0): https://github.com/NextOs-Ports/sor4-nextos

BYO-data: zero game content in the package. The user supplies a legal ARM64 Android v1.4.5 APK, or every split of one complete install, or an .apks/.apkm/.xapk bundle; setup validates exact fingerprints (25,905 assets, all 613 WEM files) before committing.

Tested end to end on the R36S. It targets any 1 GB AArch64 handheld, and ships last-resort FreeType/HarfBuzz fallbacks for firmwares that lack them. Feedback from other devices is very welcome.

u/Next0s — 22 days ago

Streets of Rage 4 running natively on the R36S (RK3326, 1GB) - open-source port, no Android emulation

Screenshots are straight off an R36S running ArkOS, with only 639 MB of usable RAM.

This is a native Linux port, not Android emulation and not streaming: a self-contained .NET 9 CoreCLR host runs the game's managed assembly directly, on top of a MonoGame backend we patched for OpenGL ES. The game's 23k original ASTC textures are uploaded in their native format and kept under an 80 MB bounded pager, which is what makes original-resolution art fit on a 1 GB device.

We just released the whole port as open source under GPL-3.0, with the ready-to-run package on the Releases page: https://github.com/NextOs-Ports/sor4-nextos

BYO-data: the package contains zero game content. You supply your own legal ARM64 Android v1.4.5 APK (or split/.apks/.apkm/.xapk bundle) and the first run validates fingerprints, extracts and prepares everything, with resume and rollback.

Install is the usual PortMaster layout: extract into ports/, drop your APK inside the sor4 folder, launch. Profiles adapt to the device: 1GB / 2GB / high, picked from physical RAM.

Tested end to end on the R36S; it should also fit other 1 GB AArch64 handhelds (RG351/RG353, TrimUI and similar). Happy to answer technical questions - the memory pager and the ASTC format detection were the interesting parts.

u/Next0s — 22 days ago

Streets of Rage 4 running natively on the R36S (RK3326, 1GB) - open-source port, no Android emulation

Screenshots are straight off an R36S running ArkOS, with only 639 MB of usable RAM.

This is a native Linux port, not Android emulation and not streaming: a self-contained .NET 9 CoreCLR host runs the game's managed assembly directly, on top of a MonoGame backend we patched for OpenGL ES. The game's 23k original ASTC textures are uploaded in their native format and kept under an 80 MB bounded pager, which is what makes original-resolution art fit on a 1 GB device.

We just released the whole port as open source under GPL-3.0, with the ready-to-run package on the Releases page: https://github.com/NextOs-Ports/sor4-nextos

BYO-data: the package contains zero game content. You supply your own legal ARM64 Android v1.4.5 APK (or split/.apks/.apkm/.xapk bundle) and the first run validates fingerprints, extracts and prepares everything, with resume and rollback.

Install is the usual PortMaster layout: extract into ports/, drop your APK inside the sor4 folder, launch. Profiles adapt to the device: 1GB / 2GB / high, picked from physical RAM.

Tested end to end on the R36S; it should also fit other 1 GB AArch64 handhelds (RG351/RG353, TrimUI and similar). Happy to answer technical questions - the memory pager and the ASTC format detection were the interesting parts.

u/Next0s — 22 days ago
▲ 114 r/R36S

[Release] Streets of Rage 4 running natively on the R36S — open-source port, free on GitHub (BYO game data)

Streets of Rage 4 running NATIVELY on the R36S (639 MB usable RAM) — no Android emulation, no streaming. It's a .NET 9 + patched MonoGame GLES port that streams the game's original ASTC textures through a bounded memory pager, so you get original-resolution art on a 1 GB handheld.

We just open-sourced the whole port under GPL-3.0 — the ready-to-use zip is on the Releases page.

BYO-data: the package contains ZERO game content. You drop your own legal Android v1.4.5 APK next to the port and the first run validates and prepares everything automatically.

Install: extract into your ports/ folder, add your APK, launch. Tested on ArkOS on this exact device; also targets other 1 GB AArch64 handhelds (RG351/RG353, TrimUI...).

Links:

GitHub (source + download): https://github.com/NextOs-Ports/sor4-nextos

Screenshots captured straight from the device. Happy to answer technical questions about how it fits in 639 MB!

u/Next0s — 22 days ago