github ARMSX2/ARMSX3 1.6.7
ARMSX3 1.6.7

one hour ago

ARMSX3 1.6.7

image

Most of this release is @J1coding's work: fixes he found while bringing ARMSX3 to iOS, now on Android too.

New

  • Faster boots: ARMSX3 now keeps a game's compiled SPU code between boots. The first boot after an update builds it once, and every boot after that loads it. On an Odin 3, Spider-Man: Web of Shadows' SPU step takes 2.5 s instead of 16 s. It lives in ARMSX3's own cache folder on the phone, which Android can clear like any app cache, and it switches itself off when the phone has less than 1 GB free. Done by @J1coding.
image image

Rare-case fixes

  • Leaving a game no longer gets stuck on memory the graphics side had locked. Done by @J1coding.
  • Two rare freezes fixed: a PPU write and the graphics thread no longer wait on each other, and a game waiting on a graphics flush gets it right away. Done by @J1coding.
  • Fewer crashes when video memory runs low: textures and render targets stay valid while memory is freed. Done by @J1coding.
  • Damaged files are handled safely: a cut-off shader cache file is rebuilt, and a damaged savestate is turned away with a message. Done by @J1coding.
  • SPU list transfers keep the graphics lock for every part, so the graphics side never reads them half-written. Done by @J1coding.
  • No crash when a PPU starts a raw SPU transfer, or when two threads reach the same occlusion report at once. Done by @J1coding.
  • XMB Mode opens reliably: the player picture appears once the emulator is ready.
image

Rare graphics fixes

  • 3D textures with mipmaps decode correctly on the GPU. Done by @J1coding.
  • Instanced draws get all the vertex data they read. Done by @J1coding.
  • Textures over overlapping colour and depth targets read the right one. Done by @J1coding.
  • Textures never ask for more mip levels than their size holds. Done by @J1coding.
  • Shaders that start with a constant decode from the right place; only those shaders build again once. Done by @J1coding.
image image

Everything else

  • The boot-time SPU build checks each program on its own. Done by @J1coding.
  • Smaller logs: calls some games make every frame are logged at trace level. Done by @J1coding.
image image image

ARMSX3 for iOS, by @J1coding, releases later today.

image

Don't miss a new ARMSX3 release

NewReleases is sending notifications on new releases.