Skip to content

Bannerlator 2.9.9

Choose a tag to compare

@github-actions github-actions released this 10 Aug 13:48
· 1763 commits to main since this release

Bannerlator

2.9.9  versionCode 71  app-side update

Bannerlator 2.9.9

Run Windows apps and games on Android — no PC and no root required.

2.9.9 is a hotfix over 2.9.8. It turns the still-in-progress TV / external-display feature off for now, folds in a controller-input fix, and makes the log capture more useful for bug reports. As always it's entirely app-side — no ImageFS reinstall — your containers, themes, custom accent and per-game settings carry over untouched. Install straight over 2.9.8.

🙏 Sorry for the churn. 2.9.8 shipped the TV / external-display feature before it was really ready — it broke on Samsung DeX and Motorola desktop modes (games wouldn't go fullscreen, the HUD vanished, the mouse died), and a couple of other rough edges slipped through. That's on me. This quick 2.9.9 turnaround is to put things right by pulling that feature until it's actually finished, rather than leaving a half-working release up. Thanks for the reports and for your patience.

📺 TV / external-display output — temporarily turned off

After reports that it misbehaved on Samsung (DeX) and Motorola devices (#339) — the game would try to go fullscreen and fail, the FPS HUD would vanish, and the mouse would stop working — the whole TV output feature is disabled in 2.9.9 while it's finished and properly tested:

  • Plugging in a TV (or entering DeX) no longer pushes the game to the external display. The game stays on your handheld, with the HUD and pointer working normally.
  • The in-game TV tab is hidden, and the experimental wireless casting picker is off with it.
  • Nothing is lost — this is a clean on/off switch. Your saved TV settings stay on disk, and the whole feature (with the DeX fix in place) will return in a future build once it's solid.

If you were relying on wired external-display output, sit tight — it's coming back, fixed. This release removes it rather than shipping it half-working.

🎮 Controller & touch input fix

  • An explicit "-- Disabled --" touch-controls choice is now honored and stays disabled across launches — no more phantom on-screen pad reappearing, and no fake touchscreen timeout. Fixes #338 (thanks @NaufalFajri).
  • When a physical controller is already connected at launch, the smart-default on-screen pad no longer spawns — it was grabbing a player slot and fighting your real controller.

📝 Deeper log capture for bug reports

Log Manager → "Capture logcat now" now grabs up to 10,000 lines of the app's own log (was 1,000), so a captured log reaches much further back when something goes wrong. It's still app-scoped and redacted — safe to share — and captured on demand, never streamed, so it doesn't slow a game down.

➕ Everything from 2.9.8, carried forward

All of 2.9.8 is included — the audio that follows your headphones (plug/unplug wired · USB-C · Bluetooth · HDMI mid-game and the sound moves within about half a second, both directions) and audio recovery on background/foreground — on top of everything from 2.9.7 (the controller reliability overhaul, two-tier Free Memory, Task Manager Processor Affinity readback) and 2.9.6.

🔊 Coming soon in 3.0 — a ground-up audio stack

Not in this build, but in the works for 3.0: the guest audio path has been rebuilt from the ground up on PulseAudio 13.0 (cross-compiled from source) with a brand-new adaptive AAudio sink that smart-adjusts on the fly to keep sound smooth. It comes with real audio controls, too — a dedicated in-game Audio tab and a container-editor Audio panel with presets + fine-tuning and guest-latency control, applied live. Still cooking and being proven on-device — landing in a future release.

📦 Where to get Proton 9

The APK does not bundle Proton 9 — Wine installs from the in-app catalog on first run.

⚠️ A fresh install ships with no Wine at all. On first run, open Containers → the download icon and install a Proton before creating a container. Updating from 2.9.8 changes nothing — your existing containers and Wine installs are untouched.

Proton 9.0 — not bundled; grab whichever matches your setup (both also appear in the in-app catalog):

arm64ec (default for most devices):
https://github.com/The412Banner/Nightlies/releases/download/Proton/wine/proton-9.0-arm64ec.wcp
66.7 MB · sha256 f8a99fed387f1b097009129dc49368c8f500927640a9d4c7a192d850b1b2068c

x86_64:
https://github.com/The412Banner/Nightlies/releases/download/Proton/wine/proton-9.0-x86_64.wcp
50.7 MB · sha256 ec90286b2b266aaa9dd4c5265383a48f05ccc96890d078cb3529e78b89cba2ea

Install via Containers → download icon → install the .wcp. (Compiled as wcps by Xnick417x.)

File a Mali report  Browse all Mali reports

🙏 Credits

  • @NaufalFajri — #338, the touch-controls / timeout report.
  • @degortg-cell — #339, the Samsung DeX / Motorola desktop-mode report that prompted turning TV output off until it's finished.
  • isygold — Vegas DXVK, the community DXVK builds so much of our performance rides on.
  • Xnick417x — the Proton 9.0 arm64ec + x86_64 .wcps linked above.
  • And everyone reporting, testing build after build, and adding games and configs to BannerHub & Bannerlator. ❤️

ℹ️ Root is only needed for the root-gated performance tier (governor / CPU-clock / thermal / fan) and the Deep clean memory tier. Everything else — including non-root GPU max-clock on Adreno — needs no root. The root tier stays opt-in, gated behind an explicit "use at your own risk" agreement, and every change auto-reverts when you leave the game.

Entirely app-side — no ImageFS reinstall. Install over 2.9.8; everything carries over.