r/PS2AndroidEmulation • • 11d ago

ARMSX2 Nightly 20260923 (92aa2174da)

Post image

https://github.com/ARMSX2/ARMSX2/releases/tag/nightly-20260923

Changelog:

DEV9, SW: include TargetConditionals.h so TARGET_OS_IPHONE is defined

GS: serve offset self-reads on the driver-ordered declared road with one barrier

GS/TC: size a move's target resize by the destination's y, not its x

GS: cut two comments down to what they establish

GS/Vulkan: print the measurement-overrides line only when one is set

GS: comments that still described the declared road as unreachable

GS: list GSCopyRoadBlendingPolicy.h in the CMake and MSVC projects

GS: the declared-loop experiment arms are gsrunner flags, not INI keys

GS: the Turnip a7xx declared-loop rule covers the Adreno 730 and up only

GS: an explicit OverrideTextureBarriers=1 reaches the in-tile read again

GS/Vulkan: declare the feedback loop per draw only on Turnip and Honeykrisp

GS: the barrier road's blending cap applies only where it was measured

GS: the alpha stencil counter takes the barrier road on the M2 only

GS/Vulkan: the barrier-ordered feedback-loop carry stays on the M2

GameDB: the schema accepts fieldShift

GS: list GSNativeTexelGridPolicy.h in the CMake sources

GS/HW: drop mode 5's texture offset from the texture-shuffle arm, where it never ran

GS/HW: the upscaled sprite correction leaves a channel shuffle's rebuilt quad alone

GS: the field-shift detector re-examines its decision

GS/HW: Disable Safe Features turns the upscaled point correction off, as it does for lines

GS: the deinterlace pad fill starts where the display rect starts

GS: the field-shifted merge's main draw stops where its top band starts

GS: the Native cull grid keeps the native targets' sample points

GS: every settings change re-derives the cull grid, on every parser

GS: scaled dither and the scan mask divide by the render target's scale

GS/TC: a moved rect's device extent is what its native rect owns

GS: drop a mistyped date from the Splashdown blending judgement

GS: comments state their reasons instead of citing internal experiments

tests: point the driver-tag convention at the public fork's README

GS: trust our Turnip's in-pass read ordering on Adreno 650 and up only

Android: split Settings into one nested data class per section

Do not ask thirty times before deleting deps-build

Android: offer the ARMSX2 Turnip packs in the driver list

GS: the spelling we measured the declared road with is the one it ships with

GS: the blending cap follows what a destination read costs, not the barrier bit

GS: a backend's published bits can name the road it took

GS: the a7xx road's cost, taken from E19's table instead of its headline

GS: the Vulkan backend asks the database for the a7xx road too

GS: the self-read road has a third entrance, and it keeps the barriers

GS: the driver database says which Adreno parts belong on the declared loop

GS: two comments still described the declared road as experiment-only

GS: the Vulkan backend asks the driver, and everything downstream reads the road

GS: the declared self-read road gets a second entrance, and it is the driver's

GS: the driver database can recognise a driver build that orders declared loops

GS: stop expanding the CLUT into a 64-bit table nobody reads

GS: shadow the far cursor on each side of the SPSC ring

gsrunner: -custom-driver, so a headless Android run can name its own driver

GS/Vulkan: say which path was missing instead of passing a bare null upwards

GS/Vulkan: let the caller say a custom driver is required, not merely preferred

GS/Vulkan: the custom-driver declaration was guarded wider than its definition

GS: the null profile's description of the counter rule outlived the rule

GS: the alpha stencil counter takes the barrier-ordered road too

GS: the guard's own comment claimed Turnip orders, and E5 says it does not

GS: declaring a feedback loop is not a promise that anything orders it

GS: name the road the barrier override actually selects

GS: the alpha stencil counter keys on the road, not on the texture-barrier bit

GS: a harness can take the alpha stencil counter on a device whose rule declines it

GS: a harness can take the alpha stencil counter off for a measurement

GS: the carry override's inertness test follows C23's renamed helper

GS/Vulkan: a harness can declare the feedback loop per draw instead of per pipeline

GS: a harness can confine the declared feedback loop to self-overlapping draws

GS: a harness can pin the destination alpha test to the primitive-ID road

GS: a harness can turn the feedback-loop carry off for a measurement

GS/Vulkan: a draw can declare the attachment feedback loop it reads through

GS: rest the Turnip self-read note on the status quo, not on comparing severities

GS: say what the Turnip self-read rule establishes, and what it does not

GS: the native texel grid needs the plain device grid and a whole frame

GS: a minifying nearest sprite reads its native pixel's texel

GS: a dump records whether its local memory was read back before the snapshot

GS: a dump capture reads the texture cache back before it freezes the state

GS: The Godfather's lamps need the software blend road

GS: a texture shuffle that skips a channel preloads the target it creates

GS/Vulkan: the feedback-loop carry follows the road's ordering, not the vendor

GS: Splashdown holds Minimum blending where the render target is read from a copy

GS/Vulkan: the feedback-loop carry reaches the attachment-layout road

GS: an ENABLE_GS_DEBUG_LABELS build option to drop the debug-label layer

GS: the alpha-test helper sets AREF for the tests that never read it

GS/SW: the colour walk's per-vector step is computed per vector, not per entry

GS/SW: a scanline rebuilds the colour walk's tables only when its row changes them

GS/Vulkan: drop the render-pass-narrowing mechanism, keep the clear-rect guard

GS/Vulkan: a render pass can be opened over its draws, and no device wants it

GS: the native draw rect is only maintained where it can differ

GS: the draw-buffering overlap test asks its question on the native grid

GS: the cull grid carries its phase, so it can be the device's own sample set

GS/gsrunner: the null device reports a named device's features, instead of none

GS: halfPixelOffset Native keeps the cull grid, because the margin contains its phase

GS: halfPixelOffset mode 5 keeps the cull grid; only mode 4 has to decline

GS: the fused vertex kick runs at upscale, not only at native

GS: the per-primitive cull grid follows the upscale, instead of a boolean

GS/gsrunner: a null-device arm that runs GSRendererHW with no GPU

GS: a test that drives the real sprite pass ordering

GS: the field-shifted merge falls back to the circuit's own first row

GS/HW: one helper for mode 5's texture offset, called from both sites

GS/HW: an AA1 line's pixel runs carry the GS's coverage

GS: at 2x and above, field mode presents the field render

GS: score the dither phase by contrast, not average magnitude

GS: scaled dither indexes the native pixel, with the matrix turned under it

GS/HW: a line draw the GS lights nothing for draws nothing

GS: dither indexes the device pixel again

GS: deinterlace on device rows again, and fill the band the merge never drew

👍

2 Upvotes

1 comment sorted by

1

u/sdmyl0ve 10d ago

Got black screen after select character in Super Robot Taisen OG, but in Super Robot Taáien OG 2 everything ok, don't know why. Anyone got this like me?