Dean
05f9995704
Merge pull request #8469 from hypermoist/feat/agcdriver-firmware-constants
...
feat(libSceAgcDriver): add the retail debug, capture and GPU reset results
2026-10-21 16:23:27 +13:00
Dean
51a30d567a
Merge pull request #8297 from thuanquang/docs/trunc-coord-debt
...
docs(agc): record that the host sampler replaces TRUNC_COORD's rounding
2026-10-21 16:09:49 +13:00
Dean
394170059f
Merge pull request #8069 from thuanquang/fix/force-degamma-unchanged-formats
...
fix(agc): sample formats that FORCE_DEGAMMA leaves unchanged without it
2026-10-21 15:44:22 +13:00
Dean
d686bb0b19
Merge pull request #8046 from klosixgaming-arch/fix/agc-clip-disable-no-depth-clamp
...
fix(agc): accept PA_CL_CLIP_CNTL CLIP_DISABLE without depth clamp
2026-10-21 14:27:32 +13:00
Dean
926ed2eda1
Merge pull request #7480 from Scramblrrrr/codex/videoout-force-sdr-main
...
feat(videoout): allow forcing SDR output
2026-10-21 12:28:40 +13:00
Dean
50e0624d7a
Merge pull request #7154 from XairRrR/fix/agc-depth-plane-buffer-coherence
...
fix(agc): keep depth planes coherent with buffer reads and writes of their memory
2026-10-21 09:38:25 +13:00
Adrià
4cfcb003de
Merge pull request #7862 from parl0v/fix/storage-budget-sampled-reserve
...
fix(agc): reserve only the sampled textures alive from the storage image budget
2026-10-20 16:45:56 +02:00
XairRrR
4a2aecc21c
Merge main into pr-7154
2026-10-20 15:57:09 +02:00
Adrià
277671f838
Merge pull request #7683 from Longziip/fix/agc-indirect-register-reread
...
fix(agc): reread an invalid indirect register list where its packet executes
2026-10-20 15:18:56 +02:00
Adrià
3cde166e45
Merge pull request #7650 from alex73630/fix/agc-cached-image-msaa-guard
...
fix(agc): enforce MSAA guards for ordinary image cache hits
2026-10-20 15:18:50 +02:00
hypermist and Claude Opus 5.5
9204f9d64f
feat(libSceAgcDriver): add the retail debug, capture and GPU reset results
...
Export 24 absent driver calls with the constant results and output
zeroing of the retail libSceAgcDriver.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 02:10:55 +13:00
Josip Parlov
321460a4ed
fix(agc): reserve only the sampled textures alive from the storage image budget
...
StorageTextureBudget reserved the larger of the sampled textures alive
and their 2 GiB floor. The sampled budget already reserves
TextureCacheBudget, at least the storage cap, for the storage cache, so
on an 8 GB card the two caches each kept the other's maximum: with
3936 MiB used outside the caches on a 7189 MiB budget and 49 MiB of
sampled textures, the storage budget came out at 306 MiB and sat at its
512 MiB floor while about 2.7 GB of the budget stayed free.
The storage budget now reserves the sampled textures alive and gives
room back as they grow, at its next read. Where they hold 2 GiB or more
the budget is unchanged.
2026-10-20 13:09:20 +02:00
Adrià
d2d9b1057b
Merge pull request #7533 from hugodearaujo/fix/agc-cube-extra-slices
...
fix(agc): decode cube descriptors with slices past their last whole cube
2026-10-20 12:24:46 +02:00
Dean
d14a186f46
Merge pull request #7933 from veosett/codex/windows-pipeline-journal-paths
...
fix(agc): support long Windows pipeline journal paths
2026-10-20 22:35:05 +13:00
thuanquang and Claude Opus 5.5
e3e91de963
docs(agc): record that the host sampler replaces TRUNC_COORD's rounding
...
On RDNA 2, an S# with TRUNC_COORD 0 rounds the scaled coordinate to 8
fractional bits, ties to even, and one with TRUNC_COORD 1 truncates it,
for point and bilinear filters. The S# decoder ignores the bit, and
AMD's Windows driver truncates for nearest samplers and rounds for
linear ones, so a TRUNC_COORD 0 point sample just below a texel edge
reads the texel below it. The code comment said the bit moves texel
selection by half a texel at most; the debt entry records the measured
rule instead.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-20 16:20:55 +07:00
Kovalev Vladislav
80024c48fd
test(agc): serialize journal replay result capture
2026-10-20 14:40:12 +06:00
Kovalev Vladislav
08fe08fadc
docs(agc): record remaining long pipeline cache path limits
2026-10-20 14:26:34 +06:00
Dean
f9012eed0d
Merge pull request #7080 from Rengundom/feat/trace-bench-fields
...
feat(trace): record host, title and per-frame benchmark data
2026-10-20 21:19:24 +13:00
Ethan Barcus
a8e06fb008
Merge branch 'main' into feat/trace-bench-fields
2026-10-20 02:57:23 -05:00
Rengundom and Claude Opus 5.5
2e70f478e8
test(trace): check again that a failed benchmark rewrite keeps the previous file
...
The blocked-destination case checks a different file, so an in-place
rewrite passed it. The earlier case is back beside it: a directory at
<name>.tmp makes the write fail, and the previous aps5-bench.json.gz must
be unchanged. It is left out of Windows builds, where the
std::ios_base::failure thrown inside the MinGW ofstream did not unwind to
the test's catch.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-20 02:47:24 -05:00
Leonardo Feitosa
eca73e1e40
revert(agc): track DCC storage images with more than one mip as one unit
2026-10-20 04:38:56 -03:00
Dean
1edbe4b5e0
Merge pull request #7006 from TheSovietWaffle/fix/recompiler-stencil-replay-every-value
...
fix(recompiler): replay every eight-bit stencil reference a pixel shader may export
2026-10-20 20:30:46 +13:00
Dean
68323bae74
Merge pull request #8165 from xXPBSXx/docs-agc-cmask-entry-rx6400-correction
...
docs(debt): say that the RX 6400 device loss of the CMASK clear pass is not reproduced
2026-10-20 18:08:35 +13:00
Dean
32e88ad847
Merge pull request #7986 from xXPBSXx/docs/debt-pm4-type0
...
docs(agc): record the PM4 type-0 packets a submission is rejected for
2026-10-20 17:17:21 +13:00
Dean
b5813c0740
Merge pull request #7746 from YossiYad/fix/front-face-all-bits-uint-target
...
test(agc): export the front-face bits through a uint target as uint
2026-10-20 15:52:03 +13:00
hugodearaujo
086e98a42a
fix(agc): decode cube descriptors with slices past their last whole cube
...
# Conflicts:
# docs/dev/debt/libSceAgcDriver.md
2026-10-19 23:11:53 -03:00
Adrià
b50976750d
Merge pull request #7640 from Pipodi/perf/texture-cache-scan-admission
...
perf(agc): refuse uncached textures while the sampled cache's least recently used entry is still in use
2026-10-20 02:57:27 +02:00
xXPBSXx and Claude Sonnet 5.5
6cbfe3e4c5
docs(debt): say that the RX 6400 device loss of the CMASK clear pass is not reproduced
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-20 02:42:50 +02:00
Dean
3aa35dc014
Merge pull request #6730 from EagleBearerYS/perf/agc-remember-evicting-refusals
...
perf(agc): remember an evicting import request's budget refusal until it could succeed
2026-10-20 12:52:11 +13:00
Dean
053034f41b
Merge pull request #7579 from LeoFeitosa/fix/dcc-mip-block-units
...
fix(agc): track DCC storage images with more than one mip as one unit
2026-10-20 11:52:35 +13:00
Dean
89369fdc6a
Merge pull request #6557 from simonbronk/fix/native-msaa-depth-iterate256
...
fix(agc): import native multisample depth whose HTILE is not ITERATE_256
2026-10-20 11:51:50 +13:00
Adrià
9b4b3cf463
Merge pull request #6941 from kq62/fix/mesh-barycentric-emulation
...
feat(shader): emulate barycentrics and per-vertex parameters on the mesh path
2026-10-20 00:17:49 +02:00
Dean Galvin
8ea85e6d55
Merge main into pr-7579
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/include/TextureTiling.hpp
# core/libs/prx/libSceAgcDriver/Graphics/src/TextureTiling.cpp
# docs/dev/debt/libSceAgcDriver.md
2026-10-20 11:01:23 +13:00
Adrià
a01b3287c6
Merge pull request #7432 from MarcZX10/codex/7017-failed-collect-unwatch
...
fix(agc): save pending results when a fresh write collect fails
2026-10-19 23:43:48 +02:00
Yossi Yadgar
3bdd430a32
docs(debt): note a float color export into a uint target is accepted
2026-10-20 00:07:54 +03:00
XairRrR
0e9d052541
Merge main into pr-7154
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/include/Texture.hpp
2026-10-19 23:07:50 +02:00
Dean Galvin
5e88d5f83e
Merge main into pr-6730
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/src/GuestBufferMemory.cpp
# core/libs/prx/libSceAgcDriver/tests/BdaResources.cpp
# docs/dev/debt/libSceAgcDriver.md
2026-10-20 09:56:39 +13:00
Dean
3756c72dc6
Merge pull request #6479 from EagleBearerYS/perf/agc-host-import-blocks
...
perf(agc): take the host import budget from the device's memory budget
2026-10-20 09:52:09 +13:00
Dean
524259954a
Merge pull request #6457 from EagleBearerYS/perf/agc-host-import-aligned-blocks
...
perf(agc): import adjacent host ranges as aligned blocks and stop re-trying budget refusals
2026-10-20 09:51:55 +13:00
Dean Galvin
f1ac3be50c
Merge main into pr-6557
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/tests/execution/NativeMultisampleDepth.cpp
2026-10-20 09:15:59 +13:00
Adrià
cde1ffdedd
Merge pull request #7254 from gjonn/feat/agc-layered-2d-array-color-views
...
feat(agc): render layered draws into 2D array color views
2026-10-19 22:05:15 +02:00
Adrià
f745930f03
Merge pull request #7413 from thuanquang/fix/table-call-hoisted-descriptor
...
fix(shader): link a table call whose descriptor load sits before its loop
2026-10-19 21:50:42 +02:00
XairRrR
a1c0f34f4b
Merge main into pr-7154
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/src/ShaderResources.cpp
2026-10-19 21:43:06 +02:00
Adrià
d7e62d8e25
Merge pull request #7258 from Pipodi/fix/sampled-array-viewed-slices
...
fix(agc): build sampled array views from the slices they read
2026-10-19 21:16:23 +02:00
thuanquang and Claude
eeb1c4f034
fix(agc): sample formats that FORCE_DEGAMMA leaves unchanged without it
...
Co-Authored-By: Claude <[email protected] >
2026-10-20 01:58:42 +07:00
battleblob1 and Claude Opus 5.5
f4a4b8aea9
fix(recompiler): replay every eight-bit stencil reference a pixel shader may export
...
Without VK_EXT_shader_stencil_export (NVIDIA), stencil reference exports
are emulated by replaying the draw once per value. An export the prover
could not bound to at most 16 values was refused. The replay shader
compares the export's low eight bits, so an unbounded export now
replays all 256 values, and proven values are reduced to their low
eight bits as the comparison sees them.
Refs #4276
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-19 21:57:24 +03:00
klosixgaming-arch
f8f797282d
fix(agc): accept PA_CL_CLIP_CNTL CLIP_DISABLE without depth clamp
...
DecodeState and DrawRejection rejected PA_CL_CLIP_CNTL bit 16
(CLIP_DISABLE), skipping draws that set it. Vulkan handles viewport
guard-band clipping automatically without requiring explicit clip
toggles. Accept bit 16 in ClipControlMask without altering depthClamp,
and record the unmodelled console clipping behavior in technical debt.
Tested with agc_driver_graphics_tests.
2026-10-19 13:43:12 -05:00
xXPBSXx and Claude Sonnet 5.5
4e3e810a79
docs(agc): describe the zero-header run in the PM4 type-0 debt entry
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-19 20:23:05 +02:00
xXPBSXx and Claude Sonnet 5.5
3cf8eec26a
docs(agc): record the PM4 type-0 packets a submission is rejected for
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-19 20:22:44 +02:00
Adrià
544f29106d
Merge pull request #7250 from milescoviello/feat/msaa-dcc-refill
...
feat(agc): take a full DCC fill of a resident multisampled target as its fast clear
2026-10-19 20:17:24 +02:00