Skip to content

Releases: EapRules/realracing3-native-arm

v1.0.6 — ROCKNIX/panfrost GL fix

Choose a tag to compare

@EapRules EapRules released this 12 Aug 01:22

Fixed

  • ROCKNIX devices in panfrost mode could not start. The port bundles its own libraries (built against an old glibc so it runs on every firmware) and puts them first on the library path. Mesa's EGL driver is loaded by glvnd through a plain dlopen, which walks that same path — so on a firmware with newer Mesa, the bundled libstdc++ shadowed what libgallium needed (GLIBCXX_3.4.29), the driver failed to load, and glvnd silently ended up with no driver at all. The symptom was eglGetDisplay -> EGL_NO_DISPLAY / EGL_BAD_PARAMETER, which looks like a broken EGL and was really the port's own search path.

    The Mesa driver is now probed first, and only if it fails does the port let the firmware's copies of the shadowed libraries take precedence — reverted if that does not help, since a firmware with older libraries must keep the bundled ones. The driver's dependency audit is written to log.txt either way.

    Diagnosed from field logs on the Dead Space port by @AmmoniumDichromate.

ROCKNIX status

  • libmali mode: works — set the device's GPU driver to libmali.
  • panfrost mode: reaches a live GL context now (it could not before) but renders black and crashes shortly after — a fixed-function GLES 1.1 path on Mesa/Panfrost. Documented in the README as a known limitation.

Everything else

No changes for ArkOS/dArkOS/muOS — those use the vendor blob path, which this does not touch.

v1.0.5 — muOS face layout

Choose a tag to compare

@EapRules EapRules released this 10 Aug 18:36

Fixed

  • ABXY on muOS (RG 40XX-H report, #10): the launcher now sets the face-button layout by CFW, as Dead Space and Mass Effect Infiltrator already do. muOS curates its SDL mappings to match the printed labels, so the port's Nintendo-style swap double-swapped there and the buttons felt Xbox-mapped. REALRACING3_FACE_LAYOUT still overrides either way.

Compatibility

  • RG 40XX-H (muOS) joins the list: install, video and audio confirmed working on v1.0.4 by @twinch1 — this release fixes the last reported item (face buttons).

No other changes. If you're on v1.0.4 and not on muOS, there is no need to update.

v1.0.4

Choose a tag to compare

@EapRules EapRules released this 10 Aug 16:06

ROCKNIX / Wayland fix (please test!): on firmwares that run a Wayland compositor, the port picked the vendor GL wrapper and its EGL could not join the session (EGL_NOT_INITIALIZED after a clean install — RG-DS reports). The launcher now detects the Wayland session and uses the firmware's own Mesa EGL, which is how ROCKNIX's official ports run.

muOS ABXY fix: the face-button default now follows the CFW — no more Xbox-feeling layout on the RG 40XX-H family, and no .sh editing that an update wipes.

Update via autoinstall + reboot; imported game data is kept.

v1.0.3

Choose a tag to compare

@EapRules EapRules released this 10 Aug 01:35

Fix for "unusable GPU driver" on ArkOS R36S: some ArkOS builds keep their working 32-bit GL set in /usr/local/lib/arm-linux-gnueabihf, a path the launcher didn't search — the port refused to start with "This firmware ships no 32-bit Mali blob" even though the driver was there. The launcher now searches that path first. Credit to Bheathy on Reddit for finding it.

Update via autoinstall + reboot; your imported game data is kept. No .sh editing needed anymore.

v1.0.2

Choose a tag to compare

@EapRules EapRules released this 10 Aug 00:59

ROCKNIX fix: on firmwares whose mali-hook resolves libmali.so.1 for its gbm entry points (reported on an RG DS running ROCKNIX), the port's GL shim shadowed the real blob with a GLES1 alias and the screen stayed black after a successful install. The shim now hands that soname to the firmware's own blob.

Also ships eapx 0.4.4: your game data is now accepted as loose files, as an Android/obb backup zip, or as that backup's extracted folder — and the first-boot import screen renders correctly on the console.

If you hit the black screen on ROCKNIX, please update and report back.

v1.0.1 — Knulli support, out of the box

Choose a tag to compare

@EapRules EapRules released this 07 Aug 22:15

The Knulli release

Credit: Slimybirch on Reddit got this game running on Knulli Gladiator with a hand-edited launcher and shared the exact change. This release turns it into automatic detection:

  • New GL tier: firmwares shipping a split wrapper set (libEGL.so + libGLESv2.so, the Batocera/Knulli layout) are detected and used directly — with the game's mixed GLES1+GLES2 dispatch kept on a single driver.
  • SDL video backend by capability: the port asks your firmware's SDL which drivers it carries and selects the vendor mali backend when present.
  • Complete diagnostics: the log states its version, surveys your firmware's GL stack, tests drivers step by step, and lists missing 32-bit libraries by name.
  • Devices that already worked are untouched (verified identical on the R36S).

Knulli users: update and try WITHOUT manual edits — reports welcome either way (performance there is still 'good enough to play', per the first field report).

Install

Drop the zip in ports/autoinstall/ and reboot. Updating keeps your imported game data.

Real Racing 3 v1.0.0

Choose a tag to compare

@EapRules EapRules released this 03 Aug 04:11

First public release.

Runs the original Android 2.7.0 (ROW, armeabi-v7a) library natively on Linux/ARM handhelds - no emulator, no Android runtime.

Bring your own game. This release contains zero EA game content. You need two things: the 2.7.0 APK for the native libraries, and a backup of the app's data directory (~2.4 GB) for everything else. The data can no longer be downloaded - the game's asset server is gone. Get the Mali/ETC texture family. The first launch imports whatever you drop in ports/realracing3/ - folder, ZIP or APK, any filename.

Required library: lib/armeabi-v7a/libRealRacing3.so, SHA1 615c9aa4a92faaf9a0f34750e344e5e8a6b9aedf. Any legitimate 2.7.0 copy works; validation checks the bytes the loader patches, not one whole-file hash.

Tested on an R36S (RK3326, Mali-G31) at 640x480, around 15-20 fps. Reports from other devices very welcome.