AN0DIN
83db2efec3
shader: pack v_cvt_pkrtz_f16_f32 with the native half conversion (GTA V) ( #1520 )
...
* shader: pack v_cvt_pkrtz_f16_f32 with the native half conversion
The round-toward-zero pack was emulated with integer operations: about 20 to 30 operations
per half. GTA V uses it in 613 of its 656 pixel shaders, about 16 times in each G-buffer
pixel shader.
The pair is now packed with PackHalf2x16, unpacked again, and each half whose magnitude
exceeds its input's takes one unit off. Half signs and magnitudes are separate, so that is
the next value toward zero, whatever rounding the native conversion uses as long as it
returns one of the two neighbours. Same bits as before for every finite input and infinity;
a NaN stays a NaN. Checked against the old code on 2 million values on the CPU, and on an
Apple M5 GPU through Metal (400 000 values, subnormals included, safe and fast math).
GTA V on an Apple M5 (MoltenVK), 1080p, fixed script camera, three places, A B B A between
launches: -1.7 to -2.8 ms per frame (+4 to +6 %).
Scope: generic
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* shader: remove half-pack commentary and unused shift helper
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
Co-authored-by: nmzik <Nmzik@mail.ru >
KytyPS5-2026-10-16-83db2ef
2026-10-16 02:56:35 +02:00
opcod3
13e4c315b6
agc: Cleanup names so they match NIDs ( #1508 )
...
* agc: Cleanup names so they match NIDs
Simple commit tidying up libSceAgc function names so they match their
NIDs. This just a tidy-up commit that makes it more obvious what each
function is.
* agc: Preserve unknown fused shader size name
KytyPS5-2026-10-16-13e4c31
2026-10-16 02:16:19 +02:00
Felipe
4242ec5a64
Add add-on (DLC) support ( #1519 )
...
Add add-on content support
Co-authored-by: nmzik <Nmzik@mail.ru >
KytyPS5-2026-10-16-4242ec5
2026-10-16 02:09:39 +02:00
NeySlim
c6b8210d7c
test: fix the Linux and Windows CI test builds ( #1504 )
KytyPS5-2026-10-15-c6b8210
2026-10-16 01:43:24 +02:00
Mr. Big Britches
6568fe9a84
Implement Missing NGS2 System Functions Lock & Unlock ( #1542 )
...
* Implement NGS2 SystemLock
* Implement NGS2 SystemUnlock
* Add guard for system_handle value of 0
* Return correct error code from system_handle guard
* Validate NGS2 system handles before locking
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-10-16 01:39:40 +02:00
Felipe
57c4a6ee11
Make trophy toast duration configurable (5-10s, default 6s) ( #1538 )
...
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com >
2026-10-16 01:37:51 +02:00
Hector Mödinger S.
54abbf48f2
kernel: implement vectored writes for profile index saves
2026-10-16 01:27:57 +02:00
overlordxrz-source
56d3ce98f0
kernel: implement path-based truncate for replay files
2026-10-16 01:27:53 +02:00
nmzik
cbe5b62947
file: keep independent Linux file handles coherent
2026-10-16 01:26:56 +02:00
nmzik
f7ae86c982
kernel: optimize virtual range edits with an ordered map
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-10-16 00:58:57 +02:00
shadowbeat070
30a4673c60
libs: port entitlement requests and fixed-refresh VRR status
2026-10-16 00:16:01 +02:00
nmzik
a5ceb48184
agc: encode acquire-memory byte ranges in standard packets
2026-10-15 23:34:42 +02:00
nmzik
c8caa27936
shader: preserve folded native constants for descriptor provenance
2026-10-15 23:22:30 +02:00
nmzik
e4019af522
shader: remove disabled legacy stage register checks
2026-10-15 22:31:45 +02:00
nmzik
f7226ca7dc
graphics: emit PS5 register object and primitive IDs to RT7
2026-10-15 22:28:01 +02:00
nmzik
d172ab75ca
shader: reuse selector domains proven by prior resource accesses
2026-10-15 22:28:01 +02:00
nmzik
bcf13e101e
shader: validate texture mip ranges and channel selectors
2026-10-15 22:28:01 +02:00
nmzik
2caf2f7e4e
shader: retain runtime count bounds for finite descriptor choices
2026-10-15 22:28:01 +02:00
nmzik
df92a08990
shader: report descriptor materialization rejection context
2026-10-15 22:28:01 +02:00
nmzik
e291589177
shader: resolve GPU-selected parent pointers and bounded child image tables
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
2285a25182
shader: prove narrowing loop masks through shared implication analysis
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
a50e4de389
shader: recognize reversed unsigned greater-than resource bounds
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
959bee4799
graphics: checkpoint live Vulkan pipeline cache after new compilations
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
232e2f2593
shader: bound waterfall buffer descriptors with same-lane guards
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
b4406b0467
graphics: render packed 11-11-10 UNorm targets with exact rounding
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
fb213e8ae5
shader: share packed color component encoding
2026-10-15 22:28:01 +02:00
nmzik
87d938139d
graphics: log complete per-target state before format resolution
2026-10-15 22:28:01 +02:00
nmzik
2a4ccaa5d5
shader: share proven selector domains for paired images and samplers
2026-10-15 22:28:01 +02:00
nmzik
9c04abacc5
shader: resolve shared selector keys once per materialization
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
5916a184cc
shader: preserve affine image heap candidate domains
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
fcab4e5d0d
shader: trace unsupported sampled image candidate provenance
2026-10-15 22:28:01 +02:00
nmzik
fe23334ff0
shader: remove unreachable candidate diagnostic branches
2026-10-15 22:28:01 +02:00
nmzik
81169d77ea
shader: materialize compact image and paired sampler tables
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
7d24972b8f
shader: report rejected indirect buffer candidate context
2026-10-15 22:28:01 +02:00
nmzik
1d3fd07fe6
shader: share indirect buffer format geometry lookup
2026-10-15 22:28:01 +02:00
nmzik
28766a915b
audio: decode PS5 ATRAC9 discrete multichannel streams
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
279bc95941
graphics: track HTile clears across PS5 depth array slices
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
12c522bba5
graphics: log cached GPU completion beside dispatch submission ticks
2026-10-15 22:28:01 +02:00
nmzik
65a6f30f51
shader: compare real nested descriptor pointer instructions
2026-10-15 22:28:01 +02:00
nmzik
bb2d6dbeb3
shader: share scalar condition results with direct subgroup votes
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:01 +02:00
nmzik
50844badbf
shader: map debug SPIR-V blocks to native RDNA2 PCs
2026-10-15 22:28:01 +02:00
nmzik
c1f6838e40
shader: share repeated raw indirect buffer load bodies
2026-10-15 22:28:01 +02:00
nmzik
6455546f26
shader: admit bounded multi-component formatted buffer loads
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:00 +02:00
nmzik
dcc642551f
graphics: classify signed byte textures for native sampling
2026-10-15 22:28:00 +02:00
nmzik
dd429ef858
shader: decode high-half formatted buffer stores
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:00 +02:00
nmzik
bc2664cefa
shader: decode comparison gathers with explicit LOD
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:00 +02:00
nmzik
8b81f665a2
shader: separate indirect buffer candidates from tracked root limits
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 21:19:38 +02:00
nmzik
1039c54f5d
shader: share indirect buffer array access after an empty root
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 21:17:44 +02:00
nmzik
b24ce3440d
shader: track buffer liveness and offsets by resource count
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 21:11:14 +02:00
nmzik
2f6ee0e91d
shader: support RDNA2 high-half short buffer stores
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 20:55:50 +02:00