Skip to content

Tags: ARMSX2/ARMSX2

Tags

2.6.5

Toggle 2.6.5's commit message
Android 2.6.5: Adreno Vulkan default, low-latency default, UI sounds,…

… RA client hardening, GameDB

Rendering
- Auto renderer now resolves to Vulkan HW on Adreno (OpenGL elsewhere).
- Mobile hardware ROV (Phase 0): tile-native depth feedback behind the ROV toggle.

Performance & input
- Low Latency frame pacing is the default on capable devices, with a one-time
  migration for existing installs; low-end devices keep the queued pacing.
- Reduce Android input latency and improve input handling (PR #403, Splaser).
- Experimental CPU clock hint (ADPF) toggle in Performance settings (default off).

Audio & UI
- Pop-up open/close sound cues (info, hardcore confirm, patches & cheats).
- Alternating controller navigation / slider tick sounds.

RetroAchievements
- Inject the RA client version from a build-time secret kept out of public source,
  with a stock-PCSX2 fallback (no hardcore) for secret-less builds. Applies to the
  iOS client token too. Prevents third parties from copying our User-Agent.

Game compatibility
- Delta Force: Black Hawk Down (SLUS-21124 / SLES-53299) GameDB fixes
  (PR #401, XDarkFallenX).

2.6.4.9

Toggle 2.6.4.9's commit message
Android refresh 2.6.4.9: background color + menu SFX, UX/controller f…

…ixes, AYANEO input

New:
- Menu background color: XMB preset palette, custom RGB (via a Custom chip), and an
  auto-cycling RGB mode, with live preview (App settings).
- Menu sound effects: bundled CC0 defaults plus user-importable packs; sounds for
  nav/select/back/menu-open/toggles/sliders/reset, a sleep chime, a wake chime, and a
  "Welcome Back!" banner. Default volume 15%.
- Launcher-only rotation, kept separate from the per-game renderer rotation (SnowyRole).
- Half-screen invisible touch analog sticks (JenoJodi).
- Quick-tap save/load touch buttons; long-press for the slot picker (kabl_knight).
- Memory card Export, alongside Import (SD712).
- Missables-only achievements filter (BoneKillerRole).
- Nightly-builds toggle in the in-app updater, github flavor only (Isshin).
- Manual screen-resolution override for mis-detected panels (#398, Druidiii).
- Index the new settings in settings search.

Fixed:
- Restore the "Missable" achievement badge on rows and in the in-game list, dropped in
  the July interface rebuild (BoneKillerRole).
- Library music: resume after another app takes audio focus, and restart after exiting a
  game (the emulator's own audio teardown outran the old retry window).
- Make the App-updates settings section controller-navigable (SettingSwitchRow and the
  check button were touch-only).
- Library search uses the built-in D-pad/touch keyboard instead of the system IME.
- AYANEO handhelds: free a re-enumerated controller's PadRouter slot on sleep/wake so it
  re-claims Player 1 instead of a dead slot (#394, Leunamme30); resolve the right trigger
  from a per-device axis so pads reporting it on AXIS_RZ (Xbox mode) work.

Bundled menu SFX are CC0 (obsydianx.itch.io Interface SFX Pack 1), credited in About.

2.6.4.8

Toggle 2.6.4.8's commit message
Android (github flavor): opt-in auto-check for updates on launch

Adds a "Check on launch" toggle to the App-tab updater panel, default OFF. When
enabled, a silent GitHub check runs once at boot (AutoUpdateGate, mounted at the app
root in setContent, gated on IN_APP_UPDATER) and pops the update prompt only if a
newer release exists -- no "up to date" popup on every launch, and nightly builds are
skipped via checkForUpdate's versionCode guard. Reuses the manual button's exact
check/download/install path.

Github flavor only, like the rest of the updater: AutoUpdateGate is real in src/github
and a no-op stub in src/play, so the boot-check + network code never enters the Play
AAB (build-play-aab.sh still fails closed on REQUEST_INSTALL_PACKAGES).

Requested by takanome9104.

2.6.4.7

Toggle 2.6.4.7's commit message
Android (github flavor): opt-in auto-check for updates on launch

Adds a "Check on launch" toggle to the App-tab updater panel, default OFF. When
enabled, a silent GitHub check runs once at boot (AutoUpdateGate, mounted at the app
root in setContent, gated on IN_APP_UPDATER) and pops the update prompt only if a
newer release exists -- no "up to date" popup on every launch, and nightly builds are
skipped via checkForUpdate's versionCode guard. Reuses the manual button's exact
check/download/install path.

Github flavor only, like the rest of the updater: AutoUpdateGate is real in src/github
and a no-op stub in src/play, so the boot-check + network code never enters the Play
AAB (build-play-aab.sh still fails closed on REQUEST_INSTALL_PACKAGES).

Requested by takanome9104.

2.6.4.6

Toggle 2.6.4.6's commit message
Android (github flavor): in-app GitHub-release updater

Adds a "Check for updates" panel to the top of the App settings tab, github
sideload flavor only. It queries the GitHub releases/latest API, semver-compares
the latest stable tag against the installed build, and offers to download the APK
and hand it to the system installer (progress bar + FileProvider). Nightly builds
(versionCode = Unix seconds, so > 1e6) are always ahead of any stable release, so
they short-circuit to "on the nightly channel" and are never prompted to a stable.

Kept entirely out of the Play build, the same way all-files access is:
- IN_APP_UPDATER BuildConfig flag (true github / false play) gates the App-tab hook.
- The real updater + REQUEST_INSTALL_PACKAGES + the FileProvider live in src/github;
  src/play ships a no-op UpdaterEntry stub so shared code still compiles for play.
- build-play-aab.sh now FAILS CLOSED if REQUEST_INSTALL_PACKAGES appears in the AAB
  (a self-updating app is a hard Play-policy violation).

Verified: the github APK ships the permission + FileProvider + updater code; the play
AAB has neither the permission, the FileProvider, nor the network/install code.

2.6.4.5

Toggle 2.6.4.5's commit message
Android (github flavor): in-app GitHub-release updater

Adds a "Check for updates" panel to the top of the App settings tab, github
sideload flavor only. It queries the GitHub releases/latest API, semver-compares
the latest stable tag against the installed build, and offers to download the APK
and hand it to the system installer (progress bar + FileProvider). Nightly builds
(versionCode = Unix seconds, so > 1e6) are always ahead of any stable release, so
they short-circuit to "on the nightly channel" and are never prompted to a stable.

Kept entirely out of the Play build, the same way all-files access is:
- IN_APP_UPDATER BuildConfig flag (true github / false play) gates the App-tab hook.
- The real updater + REQUEST_INSTALL_PACKAGES + the FileProvider live in src/github;
  src/play ships a no-op UpdaterEntry stub so shared code still compiles for play.
- build-play-aab.sh now FAILS CLOSED if REQUEST_INSTALL_PACKAGES appears in the AAB
  (a self-updating app is a hard Play-policy violation).

Verified: the github APK ships the permission + FileProvider + updater code; the play
AAB has neither the permission, the FileProvider, nor the network/install code.

2.6.4.4

Toggle 2.6.4.4's commit message
gamedb-overlay: let SLPM-74405 inherit InstantDMAHack from bin

The mobile GameDB base predated upstream PCSX2's addition of InstantDMAHack
("Stops hang when entering Sword Select screen") to Samurai: Complete Edition
and never resynced, so the Android/iOS copies carried EETimingHack alone. The
generated overlay faithfully reproduced that stale state, which the override
loader's clear-then-replace on gameFixes would re-inflict on mobile/ARM64-Linux.

The drop was never intentional (no commit in the Android line ever touched this
entry's fixes; the fix is an arch-neutral DMA-timing hang fix). Remove the
overlay entry so the mobile tiers inherit bin's full [EETimingHack,
InstantDMAHack].

nightly-20260723

Toggle nightly-20260723's commit message
Android (github flavor): opt-in auto-check for updates on launch

Adds a "Check on launch" toggle to the App-tab updater panel, default OFF. When
enabled, a silent GitHub check runs once at boot (AutoUpdateGate, mounted at the app
root in setContent, gated on IN_APP_UPDATER) and pops the update prompt only if a
newer release exists -- no "up to date" popup on every launch, and nightly builds are
skipped via checkForUpdate's versionCode guard. Reuses the manual button's exact
check/download/install path.

Github flavor only, like the rest of the updater: AutoUpdateGate is real in src/github
and a no-op stub in src/play, so the boot-check + network code never enters the Play
AAB (build-play-aab.sh still fails closed on REQUEST_INSTALL_PACKAGES).

Requested by takanome9104.

legacy-pre-transplant

Toggle legacy-pre-transplant's commit message
master as it stood before the jit-transplant line was promoted to mai…

…nline (2026-07-22)

2.6.4.3.r

Toggle 2.6.4.3.r's commit message
Android: library opacity, remove-from-recents, recents export, patche…

…s notice

- Library opacity slider (Settings -> App) fades the game rows and cards so the
  wallpaper shows through the list.
- Long-press -> Remove from Recently Played drops a single game from the shelf;
  the game menu now scrolls so no action is clipped in landscape.
- The recently-played list is mirrored to recent_games.json in the data root for
  companion apps, reworked from misantronic's PR #391 to run off the UI thread
  and to update on removal too.
- A notice on the Patches & cheats screen warns that outdated cheats/patches are
  the most common cause of false bug reports.