Dean
e0644fbce1
Merge pull request #7212 from milescoviello/perf/denormal-free-guarded-products
...
perf(shader): drop the result flush of a product behind its tiny-product check
2026-10-18 13:56:43 +13:00
Dean
e99938800e
Merge pull request #7323 from MontyMcK/feat/psvr2-no-headset
...
feat(libSceHmd2): report a console without a PS VR2 headset
2026-10-18 13:56:39 +13:00
Dean
63da333b7a
Merge pull request #4048 from Mouad-Scriptz-0/perf/recompiler-select-load-guards
...
perf(recompiler): select guest memory loads instead of branching around them
2026-10-18 13:56:36 +13:00
Dean
dfd7ad6d56
Merge pull request #6058 from notaxeltv/feat/libScePlayerSelectionDialog-ppsa34015
...
feat(libScePlayerSelectionDialog): run common-dialog state machine without UI
2026-10-18 13:26:44 +13:00
Dean
55366489fb
Merge pull request #7276 from T3cm0/bionic/coredump-exports
...
feat(libkernel): implement three coredump exports from the console module
2026-10-18 13:26:40 +13:00
Dean
eeea684a0b
Merge pull request #7280 from T3cm0/bionic/mspace-reallocalign-order
...
fix(libc): take sceLibcMspaceReallocalign's alignment before its size
2026-10-18 13:26:35 +13:00
Dean
6eea4e0c2e
Merge pull request #7282 from T3cm0/bionic/unlocked-stream-queries
...
feat(libc): implement clearerr_unlocked, fileno_unlocked and fgetln
2026-10-18 13:26:31 +13:00
MontyMcK
68355e4269
refactor(libSceHmd2): implement the exports where their stubs were
2026-10-18 13:20:55 +13:00
Dean
54c5eff8ac
Merge pull request #7308 from DavidSamir/feat/shader-barycentric-tessellation
...
feat(shader): emulate barycentrics through tessellation on devices without geometry shaders
2026-10-18 12:57:13 +13:00
Dean
5b7ec4a9bd
Merge pull request #7272 from OskarLGS/fix/relinker-decoder-osize-branches
...
fix(relinker): decode near branches with an operand-size prefix as AM…
2026-10-18 12:56:40 +13:00
MontyMcK
4d741c26de
feat(libSceHmd2): report a console without a PS VR2 headset
2026-10-18 12:31:32 +13:00
Dean
bd58561708
Merge pull request #7294 from Amoenus/codex/feat-thick-s4kb-x-main64df
...
feat(agc): support thick 4 KiB standard XOR volumes
2026-10-18 12:26:42 +13:00
Dean
f1dc7b4c19
Merge pull request #7293 from milescoviello/fix/trace-title-shader-threads
...
fix(agc): trace the title threads that register shaders
2026-10-18 12:18:13 +13:00
Dean
3954aed289
Merge pull request #7289 from LaunchDoesntCode/fix/itimer-sigalrm-pending
...
fix(libkernel): leave a blocked SIGALRM expiry pending
2026-10-18 12:18:09 +13:00
Dean
582de4cc1c
Merge pull request #7300 from hugodearaujo/fix/ampr-busy-when-full
...
fix(ampr): return EBUSY when a command does not fit and EPERM before a buffer is bound
2026-10-18 12:09:00 +13:00
Dean
56da45636d
Merge pull request #7306 from jagrat04/feat/libSceProprietaryVoiceChatHelperPrx-get-voice-chat
...
feat(libSceProprietaryVoiceChatHelperPrx): export sceProprietaryVoiceChatHelperGetVoiceChat
2026-10-18 12:08:57 +13:00
Dean
cfaba870d1
Merge pull request #7207 from gjonn/fix/agc-color-11-11-10-float
...
feat(agc): implement 11_11_10 float color targets through 32-bit uint attachments
2026-10-18 12:08:54 +13:00
Dean
51cee90311
Merge pull request #7295 from ionut27001/fix/libkernel-pshared-private-only
...
fix(libkernel): reject PTHREAD_PROCESS_SHARED as the PS5 does and add the missing pshared accessors
2026-10-18 12:02:32 +13:00
David
a968198710
Merge remote-tracking branch 'origin/main' into feat/shader-barycentric-tessellation
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/src/Pipeline.cpp
# docs/dev/debt/shader.md
2026-10-18 02:30:39 +04:00
jagrat Singh
7f1e12a4e1
feat(libSceProprietaryVoiceChatHelperPrx): export sceProprietaryVoiceChatHelperGetVoiceChat
2026-10-18 03:54:32 +05:30
hugodearaujo
12813101d2
fix(ampr): return EBUSY when a command does not fit and EPERM before a buffer is bound
2026-10-17 19:23:26 -03:00
Romans Pokrovskis
b2d9880700
feat(agc): support thick 4 KiB standard XOR volumes
2026-10-18 01:22:36 +03:00
Dean
b4f05ab328
Merge pull request #6631 from AlxcBTW/perf/dcc-key-presync
...
perf(agc): pre-sync the DCC key writers of a dispatch's images before the GPU mutex
2026-10-18 11:18:56 +13:00
Dean
0381ac76d1
Merge pull request #6632 from AlxcBTW/perf/handoff-spin
...
perf(agc): spin before blocking on the GPU mutex and the draw committer hand-offs
2026-10-18 11:18:40 +13:00
Dean
2a1aa7e84e
Merge pull request #7231 from ErenYeager1836/feat/voiceqos-set-remote-endpoint-attribute
...
feat(libSceVoiceQoS): implement sceVoiceQoSSetRemoteEndpointAttribute
2026-10-18 11:18:34 +13:00
Dean
fbb76ae3e6
Merge pull request #7095 from milescoviello/feat/sysarch-gsbase
...
feat(libkernel): read and set the GS base through sysarch
2026-10-18 11:18:15 +13:00
David
91d5f577ea
docs(shader): record the tessellation route of the barycentric emulation
2026-10-18 02:17:01 +04:00
Dean
b51c65dd11
Merge pull request #7263 from thuanquang/fix/buffer-atomic-misaligned-base
...
fix(shader): run buffer atomics through a V# off a DWORD boundary
2026-10-18 11:02:26 +13:00
ionut27001 and Claude Opus 5.5
c00c58ae34
fix(libkernel): reject PTHREAD_PROCESS_SHARED in pthread_condattr_setpshared and add pthread_condattr_getpshared
...
On a PS5 (firmware 12.70), of the values 0, 1, 2 and -1,
pthread_condattr_setpshared accepts only 0 and leaves the attribute
unchanged otherwise. pthread_condattr_getpshared reports 0 and returns
EINVAL for a null, uninitialized or destroyed attribute, also with a
null output. With an initialized attribute a null output crashes the
console; here it throws.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-18 00:50:09 +03:00
ionut27001 and Claude Opus 5.5
bdf3adb379
feat(libkernel): add pthread_rwlockattr_getpshared and pthread_rwlockattr_setpshared
...
Measured on a PS5 (firmware 12.70): the getter reports 0, and of the
values 0, 1, 2 and -1 the setter accepts only 0 and checks the value
before the attribute. A null or uninitialized attribute, or a null
output, crashes the console; here it throws.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-18 00:50:09 +03:00
ionut27001 and Claude Opus 5.5
db504f6b9c
fix(libkernel): reject PTHREAD_PROCESS_SHARED in pshared setters as the PS5 does
...
On a PS5 (firmware 12.70), of the values 0, 1, 2 and -1,
pthread_spin_init, pthread_barrierattr_setpshared and
pthread_mutexattr_setpshared accept only PTHREAD_PROCESS_PRIVATE (0);
1, 2 and -1 return EINVAL and leave the attribute unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-18 00:49:58 +03:00
Dean
5e9074999f
Merge pull request #7252 from thuanquang/fix/videodec2-decode-after-flush
...
fix(libSceVideodec2): decode after a flush without a reset
2026-10-18 10:38:59 +13:00
milescoviello and Claude Opus 5.5
f7cd8df309
fix(agc): trace the title threads that register shaders
...
Shader registration and the shader ABI resolves run on the title's own
threads, which never bound a trace buffer, so their Shader.Register and
Shader.Resolve* scopes were missing from every trace and summary. Those
entry points now bind the calling thread as `title` with the 32,768-event
buffer the shader preparation threads use.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 21:33:53 +00:00
Dean
55b968a239
Merge pull request #7245 from ErenYeager1836/fix/msgdialog-native-validation
...
fix(libSceMsgDialog.native): validate null argument and busy state across dialog lifecycle
2026-10-18 10:33:44 +13:00
Gjon Gojcevic
49b0e805f0
feat(agc): implement 11_11_10 float color targets through 32-bit uint attachments
...
Color format 7 (COLOR_11_11_10, float) keeps its 10-bit component in the
low bits; with the reversed component order (COMP_SWAP 2) that is blue,
with red in the high 11 bits. Vulkan has no such layout, so the target was
refused at decode.
Render it the way 10_11_11 unorm targets are rendered: an R32_UINT
attachment, the reversed export mapping 0xc6, and a new
ColorExportPacking::Float11_11_10 that makes the pixel shader pack each
export with the format-43 image store conversion (toward zero, overflow to
the largest finite value, negatives to zero, NaN kept). Blending, partial
writes, 16-bit integer exports, DCC and the other component orders throw.
AI-assisted: yes
2026-10-17 17:29:21 -04:00
Dean
8690d92f07
Merge pull request #7071 from SleglJan/fix/storage-budget-pressure
...
fix(agc): let the storage image cache budget follow the heap's use like the sampled one
2026-10-18 10:29:01 +13:00
Dean
e815fb4170
Merge pull request #7251 from thuanquang/fix/rect-list-last-provoking-vertex
...
fix(agc): draw rect lists in last provoking vertex mode
2026-10-18 10:28:06 +13:00
Dean
fb20d5d4ec
Merge pull request #6053 from ThatsLeo/perf/shader-plan-first-lane
...
perf(shader): judge first-lane and constant reads by what they read
2026-10-18 10:24:44 +13:00
LaunchDoesntCode and Claude Opus 5.5
1bc029da6d
fix(libkernel): leave a blocked SIGALRM expiry pending
...
An ITIMER_REAL or alarm expiry while SIGALRM is blocked is marked on the
pending set of sigtimedwait instead of throwing, as kern_psignal leaves a
blocked signal pending. sigwait, sigwaitinfo and sigtimedwait take it,
repeated expiries merge into one pending signal, and unblocking it runs a
guest handler on the unblocking thread or, with the default disposition,
exits the process with status 142 as FreeBSD's default action does.
The expiry rechecks the mask after marking the signal, so an unblock that
races it does not leave SIGALRM pending while unblocked, and TakePending
clears the bit with the value it read so one signal is taken once.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 16:22:59 -05:00
Dean
8f0e276c61
Merge pull request #6402 from Pipodi/feat/image-table-stores
...
feat(agc): store to images selected through image tables
2026-10-18 10:22:39 +13:00
Dean
6447ed1ed7
Merge pull request #7241 from ErenYeager1836/fix/savedata-native-transaction-resource-validation
...
fix(libSceSaveData.native): validate initialization and parameters in transaction resource lifecycle
2026-10-18 10:19:36 +13:00
Dean
8532632d4e
Merge pull request #7249 from Lorkydey/feat/libc-binary-word-io
...
feat(libc): implement getw and putw
2026-10-18 10:18:50 +13:00
T3cm0 and Claude Opus 5.5
22c584acd3
feat(libc): implement clearerr_unlocked, fileno_unlocked and fgetln
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 16:17:27 -05:00
T3cm0 and Claude Opus 5.5
3802f887f2
fix(libc): take sceLibcMspaceReallocalign's alignment before its size
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 16:17:22 -05:00
T3cm0 and Claude Opus 5.5
70ff799fdb
feat(libkernel): implement three coredump exports from the console module
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 16:17:05 -05:00
Dean
cf217c51c6
Merge pull request #7211 from simonbronk/codex/secure-scan-null-20261017
...
fix(libc): reject null secure scan destinations
2026-10-18 10:16:38 +13:00
Dean
5ba257cb0a
Merge pull request #7237 from ErenYeager1836/feat/netctl-http-proxy-port-and-nat-info
...
feat(libSceNetCtl): support NET_CTL_INFO_HTTP_PROXY_PORT and validate null in sceNetCtlGetNatInfo
2026-10-18 10:13:57 +13:00
Dean
ae12023436
Merge pull request #7236 from ErenYeager1836/fix/system-gesture-touch-event-index-validation
...
fix(libSceSystemGesture): validate gesture handle and recognizer in sceSystemGestureGetTouchEventByIndex
2026-10-18 10:13:22 +13:00
Dean
11acfdd84e
Merge pull request #7234 from ErenYeager1836/fix/savedata-dialog-progressbar-not-running
...
fix(libSceSaveDataDialog.native): return NOT_RUNNING from progress bar updates when not running
2026-10-18 10:11:25 +13:00
Dean
af7972ce91
Merge pull request #7229 from nicolasfalesy/feat/libkernel-export-nmount
...
feat(libkernel): export nmount
2026-10-18 10:10:15 +13:00