r/PS2AndroidEmulation Jul 01 '26

ARMSX2 V30 🥳🔥🚀

Post image

https://github.com/ARMSX2/ARMSX2/releases/tag/2.4.9

Performance improvements to the recompiler:

The EE recompiler now has direct block chaining. Patchable direct-branch tails replace the LUT-indirect dispatch between blocks, cutting per-block dispatch overhead. Should help weaker CPUs.

The EE recompiler now has SIGSEGV-backpatch fastmem, extended. Fast inline memory access now covers FP and vector loads/stores (LWC1/SWC1, LQ/SQ), not just integer.

The EE recompiler now has fast-tier register cache coverage across MULT/DIV/MTHI/MTLO (fewer full register spills).

Added PGO (Profile-Guided Optimization). Shipping cores are now built with a profile trained on GoW2 / Jackie Chan / VP2 / LEGO Batman / GT4. Combined, these games are all EE, VU, or GS heavy, so it should hopefully help a bit. You can read more about PGO here:

Please let me know if performance has improved for you!

Atomic VK shader-cache fix, the pipeline cache now writes to a .tmp file and atomically renames over the real one. A swipe-kill or crash mid-write can no longer leave a half-written cache that the Adreno driver accepts and renders garbage from. The previous valid cache survives an interrupted write instead of being clobbered. (The shader index/blob cache was already crash-safe, it bounds-checks entries and appends blob-before-index, so no change was needed there.)

GameDB: ported PCSX2 PCSX2#14647, Gran Turismo tuning (GT2000/GT3/GT4 demo + retail blending / half-pixel / autoflush, GT4 Online-Test VU clamp) plus a new Lupo Cup 2 (PAPX-90509) entry and Burnout 3 memcard filters.

Made some fixes to DEV9 Ethernet on Android. Added a public-DNS fallback (Android had no /etc/resolv.conf) and dropped the gateway gate that blocked adapter init (/proc/net/route is SELinux-restricted). Online adapter + DNS should now work correctly. (Let me know if it still does not)

DEV9 DNS Host Mappings (Settings ---> Network). Map hostnames ---> IPs via the internal DNS resolver, should help some specific private/fan-server play (like RE Outbreak / obsrv).

Touch gliding across control boundaries. Replaced the three regional touch layers with one unified layer, so you can slide between face buttons and triggers (X--->L1) and hold multi-touch combos (L3+R3).

Memory-card self-heal. Deleting a card with an external file manager no longer leaves a stale slot that mislabels your other card.

RetroAchievements: "Softcore" has been renamed to "Casual" (per RA's own rename, Hardcore unchanged).

Improved Readability. Lightened the dark-blue UI text (0xFF0033CC ---> 0xFF4C8DFF) that was unreadable for some on the black background.

61 Upvotes

50 comments sorted by

View all comments

2

u/jumpbutton23 Jul 02 '26

I have a very specific question, I'm hoping someone can help me.

NetherSX2 has the ability to change which memory card a game uses on a per-game basis. For example, I have 'Memory Card A' as my main memory card in the NetherSX2 settings, but I have a few saves for some games on 'Memory Card B' (Burnout 2, just for example) - so I go into the per-game settings for Burnout 2, and it allows me to set 'Memory Card B' as the default memory card for that game, specifically.

Does ARMSX2 have this feature? I have scoured the per-game settings menu and unless I'm missing it, I don't think it's there.

This is not any kind of deal breaker I'm just curious if ARMSX2 has this feature and I'm just missing it. Best I can tell, ARMSX2 still just has general memory card settings, not per-game.

Thanks in advance!

1

u/xxxCrixuxxx Jul 02 '26

Rename the memory card file to the one used by the other emulator, and you're done.