Skip to content

Bannerlator 2.7

Choose a tag to compare

@github-actions github-actions released this 20 Jul 13:09

Bannerlator

2.7  versionCode 46  app-side update

Bannerlator 2.7

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

2.7 adds the Wrapper Version Manager. Graphics wrappers — the layer that turns a game's Vulkan calls into something your GPU understands — used to be a fixed list you couldn't touch. Now you can import, update, delete and tune any wrapper, browse a curated catalog of wrappers from across the Winlator family, and every wrapper's settings are auto-detected so you get proper toggles and sliders with zero setup. This release also brings an experimental, opt-in Mali DX12 driver. Like the last several releases it's entirely app-sideno ImageFS reinstall — your containers, themes, custom accent and per-game settings all carry over untouched. Just install over 2.6.

✨ Full feature list — click to expand everything Bannerlator offers

Everything the app offers, at a glance.

🍷 Windows compatibility

  • Wine — run native Win32/Win64 apps & games.
  • Box64 / Box86 x86(-64)→ARM translation with performance presets.
  • WOWBox64 for arm64ec containers.
  • FEXCore alt x86/x64 backend, with automatic unixlib (.so) matching per version.
  • arm64ec and x64 container support.

🎨 Graphics & translation layers

  • DXVK (DX8/9/10/11→Vulkan; GPLAsync & Sarek variants).
  • VKD3D-Proton (DX12→Vulkan).
  • WineD3D / DirectDraw OpenGL fallback for older titles.
  • Proton bionic layers (via GameNative) — Proton 11.0-1 & Proton 10.0-4 (arm64ec; FEX-unixlib + fast-yield), per-SDK (28 / 35).
  • VEGAS — Adreno-optimized DXVK (less stutter, real-time upscaling).
  • Turnip / Mesa Adreno drivers (+timeline-semaphore patches; turnip-26.1.0 as a direct ICD for Android 10 / pre-11).
  • Wrapper Version Manager (new) — bring your own graphics wrapper (.tzst): import / update / delete, a curated downloadable catalog from across the Winlator family, and auto-detected settings for every wrapper (controls read straight from what the wrapper actually supports).
  • BCn transcoding for Mali / Xclipse — "Wrapper + bcn_layer" driver + BCn settings panel.
  • Mali DX12 (experimental) — opt-in "Wrapper + compat + bcn" driver (leegao BCn + DX12 compat layer) with a GameNative-engine toggle, for Valhall-class Mali.

🖥️ Renderers

  • Vulkan / OpenGL / SurfaceFlinger / VirGL host renderers.
  • SurfaceFlinger colour fix — R/B-swap + crash fix, per-container/game toggle.
  • Native Rendering (Low-Latency Mode) — direct-scanout, cuts input lag (Vulkan & OpenGL).
  • Spatial upscalers — SGSR, FSR / FSR-Fit, NIS, Sharpen (RCAS), Linear / Nearest; live in-game, saved per game.
  • Fullscreen aspect modes — Off / Fit / Stretch / Fill / Integer, live switch, per game.
  • Supersampling — 1.25× / 1.5× / 2× render scale, Lanczos-2 downsample.
  • Screen effects (Vulkan & OpenGL) — FXAA, Toon, CRT, NTSC, colour grading, CAS, fake-HDR.
  • Debanding (Vulkan) — adjustable dither pass for smooth gradients.
  • ReShade — real .fx effects on DXVK / VKD3D, on-device compile, ~100-effect catalog + your own, live in-game tab, per game, solo or stacked.
  • VRR — match refresh to FPS (Auto or 60 / 90 / 120 / 144 Hz), all three renderers.
  • Adjustable resolution & frame-rate limit.

🎞️ Frame generation & pacing

  • Two engines — Off / bionic-fg (bundled) / lsfg-vk (bring your own Lossless.dll), shown as a badge in-game.
  • Live controls — Off / 2× / 3× / 4× + flow-scale slider, hot-reloaded.
  • Standalone FPS limiter — engine-independent present-pacing cap with quick 30 / 60 / 90 / 120 presets; steps aside when lsfg multiplies; both renderers.

📦 Containers

  • Multiple isolated Wine containers with redesigned spec-chip cards.
  • Run as administrator (per-container toggle) for installers/games needing elevation.
  • Auto-close on game exit (per-container toggle).
  • Import / export containers.
  • Per-container Wine / driver / DXVK / VKD3D / Box64 / drives / Z-drive / env-vars, with env-var presets.
  • Desktop wallpaper picker (per-container or global).
  • Compatibility Layers download menu — browse / install / remove every component with progress bars, continuing in the background.

🕹️ Games, shortcuts & input

  • Game library (grid / list, sort, filters) with redesigned cards.
  • Add shortcuts from storage; back up / restore saves (GameHub-compatible zips).
  • SteamGridDB cover scraping; per-game language / locale.
  • On-screen touch controls (theme-follow or per-game colour) + virtual gamepads.
  • Physical controllers (SDL2) + touchpad / mouse emulation; rebuilt binding screen.

🌐 Community Configs

  • Catalog browser (globe) with search, filters, sort, and "Matches my device".
  • One-tap Apply — surgically merges just that config's settings, preserving the rest.
  • Smart install of a config's missing DXVK / VKD3D / FEXCore / Turnip, then auto-applies.
  • Config detail — provenance, what-it-sets, before-apply diff, upvotes / downloads / comments.
  • Share your own — export the full recipe (never your files, logins or tuning), anonymous by default; My uploads to edit / delete.
  • Optional account (username + password, recovery-key, no email) so uploads follow you and carry your name — everything works anonymously without it.
  • Read-only for your setup — nothing changes unless you tap Apply.

🛒 Built-in stores & cross-store Download Manager

  • Steam — user/pass or QR, owned library, built-in depot engine (JavaSteam), 4-tier speed, session hardening, DLC picker, true-size fix, optional Goldberg patch.
  • Epic / Amazon — sign in, browse, download / install / launch (incl. Epic free games).
  • GOG — DRM-free library with cloud-save sync.
  • ⬇ Cross-store Download Manager — one view of all downloads + installed library, live progress, background + shade notifications, launch / verified uninstall.

🔒 Security & your store accounts

  • Third-party sign-ins (not affiliated with the stores) — use at your own risk.
  • Credentials redacted from logs — signed URLs, OAuth codes, GOG secret / refresh-token, account IDs — in logcat and shareable files.

🧰 Bundled Start-menu utilities

  • WFM, AIO Graphics Test, Game Controller Test; .lnk "Start in" working-directory support.

🎛️ Interface & in-game overlay

  • Jetpack Compose UI with an icon-led drawer; your theme recolours the whole app and the in-game drawer.
  • 16 themes + HSV custom-accent picker.
  • In-game overlay drawer + Task Manager (works on any renderer).
  • File Manager with Favorites — storage-badged, real thumbnails, doubles as the universal import picker.
  • Performance HUD — three overlay styles (Classic / GameHub / GameNative-style with live graphs), one shared FPS source + device-complete metrics (FPS / frame time / CPU-GPU load & temp / RAM / battery / power), accent outline, position saved per game.
  • FEX runtime indicator — live arm64ec vs x86-64, translator, and unixlib vs DLL.

📥 Builds & distribution

  • Three flavors (standard / PuBG / Ludashi), optimized release builds, AOSP-testkey signed, GitHub Actions CI + tagged releases.

✨ What's New

🧩 Wrapper Version Manager

Graphics wrappers are no longer a fixed list. From any container's Graphics Driver row (the ☁ icon), you can now:

  • Import, update and delete wrappers — drop in any .tzst wrapper, from another project or your own build; it validates on import and appears in the driver dropdown.
  • Browse a curated catalog — download wrappers pulled from across the Winlator family (WinlatorMali, WinNative, GameNative, leegao, Ludashi and the base Winlator wrappers), each credited to its source. Cards flag "Mali only" when a wrapper won't do anything on your GPU, and Update can pull a replacement straight from the catalog.
  • Auto-detected settings — the manager reads what each wrapper actually supports and builds the controls for you: real toggles, sliders and dropdowns with plain-English labels, not a wall of raw variables. Detection was ground-truthed against every wrapper's binary, so it shows genuine knobs and filters out driver internals and log noise.
  • Per-wrapper editing & details — an overflow (⋮) menu per entry with Update / Reset / Edit settings / Delete / Details, plus a pre-import inspection view so you can see what a wrapper is before you name it.

Requested in #132 by @6ui99uhkllj, and modeled on WinlatorMali's graphics-driver manager introduced in Bionic 1.1.

🧪 Mali DX12 — experimental, opt-in

A new opt-in 6th graphics driver, "Wrapper + compat + bcn", brings leegao's BCn transcode + DX12 compat layer together for Valhall-class Mali GPUs, with a "Use GameNative engine (DX12)" toggle for the DX12 path. This release folds in leegao's layer-composition fix (device hooks now propagate correctly when both layers stack). It is experimental and opt-in — it does nothing unless you select it, and it's inert on Qualcomm/Adreno. DX12 on Mali is still being proven on real hardware; treat it as a test path and please report back with logs.

🔧 Under the hood

  • Wrapper detection is grounded in each binary's real getenv usage, so imported wrappers surface correct, correctly-typed settings — and false positives (log tags, Mesa/driver internals, system env) are filtered out.
  • Everything above is app-side — no ImageFS reinstall; the updated Mali layers re-extract automatically on next launch.

🌐 Community — thank you 🙏

Everything you've shared directly to Bannerlator's own Community Config repo now adds up to:

235 Bannerlator games  274 Bannerlator configs  accounts growing

And because the in-app browser also merges the BannerHub catalog, the full set you can browse and one-tap-apply inside the app is bigger still — thousands of games and configs.

235 games and 274 configs shared straight to Bannerlator by the community — and thousands more usable in-app once the BannerHub catalog is merged in. All of it growing. Every config you share, every game you add, every account that joins makes this better for the next person. This project grows only because of the community's support and participation — thank you.

📥 Downloads

Variant File
Standard Bannerlator-2.7-standard.apk
PUBG Bannerlator-2.7-pubg.apk
Ludashi Bannerlator-2.7-ludashi.apk

ℹ️ Updating in-app? 2.7 is entirely app-side — the standard APK covers everything. There's no ImageFS reinstall: your containers, themes, custom accent, per-game settings and control colours all carry over. Just install over 2.6.

🙏 Credits

  • leegao — the Mali BCn transcode layer (bcn_layer) and the DX12 compat layer (compat_layer) that power the new "Wrapper + compat + bcn" driver are leegao's work, built from their own CI — including the just-landed layer-composition fix. Huge thanks.
  • GameNative — the GameNative wrapper is the engine behind the DX12 toggle, and Bannerlator's HUD, present path, FPS-limiter and SurfaceFlinger colour work build on GameNative's foundations. Thank you to the GameNative team.
  • WinlatorMali (GunaCharanTeja / Charan) — the Wrapper Version Manager is modeled on WinlatorMali's graphics-driver manager, introduced in Winlator Mali Bionic 1.1; a number of the catalog wrappers come from WinlatorMali too (each credited in-app). The feature was requested in #132 by @6ui99uhkllj — thank you both.
  • The wider stack — built on the Winlator → cmod → Star Bionic lineage (brunodev85, coffincolors, Pipetto-crypto, star-emu) with DXVK, VKD3D-Proton, Box64, FEXCore, JavaSteam, and wrappers credited to their upstreams (WinlatorMali, GameNative, leegao). Full attribution in the repo README.

🔗 Notes

  • The Mali DX12 driver is experimental and opt-in — inert unless you select it, and Qualcomm/Adreno devices are unaffected. DX12 on Mali is not yet fully proven on hardware; reports with logs are welcome.
  • Nothing about your existing containers or settings changes on update — install over 2.6.