Adrià
b65d6b71be
Merge pull request #1190 from MichonGoddijn231849/feat/flat-shared-private-apertures
...
feat(recompiler): FLAT addresses in the shared and private apertures reach LDS and scratch
2026-10-11 00:18:33 +02:00
Adrià
3c46fa6f4a
Merge pull request #3078 from MarcZX100/codex/carry-3048-fcntl
...
feat(libkernel): implement sceKernelFcntl
2026-10-11 00:15:30 +02:00
Adrià
a883f22f1c
Merge pull request #1157 from alfalfa-star/perf/agc-dma-copy-host-memory
...
perf(agc): sync only the source for DMA_DATA copies into host-only memory
2026-10-11 00:14:46 +02:00
Adrià
2b831510be
Merge pull request #3080 from MarcZX100/codex/carry-3071
...
feat(libSceAmpr): implement Dinkumware thread helpers
2026-10-11 00:07:57 +02:00
Adrià Franch
df25847fca
fix(test): pass the gpu argument to GuestAllocations::Add in FlatApertures
2026-10-11 00:06:53 +02:00
Michon
f4f05d2e6a
fix(recompiler): flat apertures are 4 GB windows; an aperture access past the end is dropped whole
...
Measured on RDNA2 (gfx1035) in review:
- the shared and private apertures are 4 GB windows (the gfx9+ layout of kfd_flat_memory.c), so a flat
address routes by its whole high dword, 0x80000000 or 0x70000000, not by its top 16 bits;
- a dword or short access whose last byte is past the end of LDS reads 0 or writes nothing as a whole;
multi-dword accesses are checked per dword.
The aperture test gets rows that straddle and pass the end of LDS; the TechnicalDebt line names the
public source of the layout and keeps only the PS5's base values as inferred.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 00:06:44 +02:00
Michon
41144bea53
fix(recompiler): multi-dword FLAT stores route the shared and private apertures
...
Main's StoreAddressU32x2..x4 (one BDA lookup per wide store, b95842597 ) bypassed the aperture routing:
a flat_store_dwordx2 into the shared aperture went to BDA at 0x8000000000000000 and LDS kept its old
value. The wide store now stores each component through the aperture like the 32-bit store, and keeps
the single BDA lookup outside the apertures.
The aperture test's V# word 3 is 0x31016fac (OOB_SELECT 3, raw), as in main's other execution tests:
with OOB_SELECT 0 its output buffer read as out of range after #639 , which was the failure reported on
four drivers.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 00:06:44 +02:00
Michon
c35f29b6be
fix(recompiler): every FLAT access kind routes the shared and private apertures; table test
...
Sub-dword stores and unaligned dword accesses go byte-wise; 32- and 64-bit FLAT atomics
route to LDS (64-bit under the workgroup lock), scratch (read-modify-write) or BDA.
agc_driver_flat_apertures covers them in 121 rows, with mixed-address waves and wave64.
The aperture bases and the unmodelled operands 235-238 are listed as inferred.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 00:06:43 +02:00
Michon
6a1301f329
feat(recompiler): FLAT addresses in the shared and private apertures reach LDS and scratch
...
A compute FLAT access whose address has the console's shared aperture in its high dword (0x8000xxxx)
reads or writes the workgroup's LDS at its low dword, and one in the private aperture (0x7000xxxx)
the lane's scratch; other addresses stay guest memory through BDA. GTA V's ray traversal keeps its
stack in LDS and spills it to scratch through such addresses; treated as guest memory the pushes were
lost and the traversal never ended (device lost). An execution test round-trips both apertures.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-11 00:06:34 +02:00
David
9902f137af
feat(libkernel): implement sceKernelFcntl
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit f0c649704dbf0b84077c29ea914e0e4799714fe1)
2026-10-11 00:06:02 +02:00
Adrià
0de1dfdff8
Merge pull request #3046 from MarcZX100/codex/libc-secure-format-scan-3032
...
feat(libc): implement vsnprintf_s and vsscanf_s
2026-10-11 00:05:28 +02:00
Adrià
61a85df9d4
Merge pull request #2865 from babyhuey/feat/posixforwebkit-arc4random-buf
...
feat(libScePosixForWebKit): implement arc4random_buf
2026-10-11 00:05:00 +02:00
Adrià
685905b67c
Merge pull request #3006 from babyhuey/feat/libsceaudioin-init
...
feat(libSceAudioIn): export sceAudioInInit
2026-10-11 00:04:53 +02:00
Adrià
b680612fbb
Merge pull request #2967 from babyhuey/feat/libscelibcinternal-utime
...
feat(libSceLibcInternal): implement guest utime
2026-10-11 00:03:19 +02:00
Adrià
d3f9dd07e6
Merge pull request #2968 from babyhuey/feat/libc-hostname
...
feat(libc): implement guest gethostname
2026-10-11 00:02:54 +02:00
Adrià Franch
fddcb00a40
fix(libSceAmpr): give _Thrd_sleep the console signature and move its TechnicalDebt line
...
The title's libc.prx _Thrd_sleep takes a second xtime* (remaining) and returns int.
The TechnicalDebt entry no longer sits at the end of its section.
2026-10-11 00:01:46 +02:00
Adrià
ecafb64f28
Merge pull request #3083 from MarcZX100/codex/carry-3077-wide-conversions
...
feat(libc): implement Dinkumware wide conversion exports
2026-10-11 00:01:31 +02:00
David
b446119c76
feat(libSceAmpr): implement the Dinkumware thread, sleep and spin lock exports
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-11 00:01:28 +02:00
Adrià
d9dc6614e0
Merge pull request #3081 from MarcZX100/codex/carry-1578-flockfile
...
feat(libc): implement flockfile and funlockfile
2026-10-11 00:00:53 +02:00
Adrià
dc105f8abf
Merge pull request #2973 from babyhuey/feat/libkernel-rwlockattr
...
feat(libkernel): implement pthread_rwlockattr_init and pthread_rwlockattr_destroy
2026-10-10 23:53:36 +02:00
Adrià
bdfcf3d75d
Merge pull request #2932 from AchrafReyani/feat/libc-atol-atoll
...
feat(libc): implement atol and atoll
2026-10-10 23:53:28 +02:00
Adrià
c051e83c4e
Merge pull request #3005 from babyhuey/feat/libkernel-preadv
...
feat(libkernel): implement preadv and pwritev
2026-10-10 23:52:58 +02:00
Adrià Franch
db2743e377
docs(technical-debt): describe the vsnprintf_s/vsscanf_s constraint behaviour as implemented
2026-10-10 23:52:18 +02:00
MarcZX100
4d537755e9
test(libc): cover vsscanf_s capacity limits
2026-10-10 23:52:11 +02:00
pushkarreddyy
e251de849d
feat(libc): implement vsnprintf_s and vsscanf_s
...
(cherry picked from commit 4ca866ea3b989da6947ad110f4d6c7f4efbe27c8)
2026-10-10 23:52:11 +02:00
Adrià
5a8844676c
Merge pull request #2995 from CnRJay/feat/agc-branch-patch-target-0300
...
feat(agc): implement sceAgcBranchPatchSetThenTarget_0300 and SetElseTarget_0300
2026-10-10 23:52:01 +02:00
Hannah Lyons
92c9296ae3
feat(libc): implement flockfile and funlockfile
...
(cherry picked from commit d32eaf181aadf79efc4199b22591f1f5f228d00c)
2026-10-10 21:49:58 +00:00
David
51fca3cec3
feat(libc): implement _WStoul, _Iswctype and swscanf_s
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-10 23:44:00 +02:00
David
63cce467e7
fix(libc): stop strtol at a 0x prefix without hex digits on Windows
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-10 23:40:19 +02:00
Dean
262c031692
Merge pull request #2907 from oneandonlydean/carry/libkernel-reserved-range-hint
...
fix(libkernel): map non-fixed hints inside a reserved range in place
2026-10-11 09:26:41 +13:00
Dean
3da4c3b665
Merge pull request #2653 from oneandonlydean/up2/descriptor-web-blocks
...
fix(recompiler): split descriptor webs whose Phis sit in different blocks
2026-10-11 09:26:31 +13:00
Hannah Lyons
6f1ef27953
feat(libSceAudioIn): export sceAudioInInit
2026-10-10 16:25:50 -04:00
Hannah Lyons
0c2d85238b
feat(libkernel): implement preadv and pwritev
2026-10-10 16:21:56 -04:00
Dean
56fb1b3b95
Merge pull request #2923 from MarcZX100/fix/hw-oracle-wave64-batch
...
fix(hw-oracle): batch wave64 probes into 512-row dispatches
2026-10-11 09:16:41 +13:00
Dean
7c83d020f9
Merge pull request #2937 from oneandonlydean/up3/vertex-barrier
...
fix(shader): drop s_barrier in vertex programs that share nothing between waves
2026-10-11 09:16:31 +13:00
Dean
b8284f667f
Merge pull request #2936 from oneandonlydean/up3/emulated-compare-array-on-2d
...
fix(shader): give an emulated comparison of a 2D-array access a plain 2D mode
2026-10-11 09:16:22 +13:00
Dean
b8a083b253
Merge pull request #2946 from SleglJan/fix/libSceSharePlay-null-heap
...
fix(libSceSharePlay): accept a null heap in sceSharePlayInitialize
2026-10-11 09:13:01 +13:00
Dean
7db7c9f908
Merge pull request #2919 from XairRrR/feat/libscevoice-mute-flag
...
feat(libSceVoice): track the port mute flag
2026-10-11 09:12:51 +13:00
Dean
94416bd6ad
Merge pull request #2764 from Get-fix/fix/audioout-ex-exports
...
fix(audio): export the sceAudioOutEx bitstream port functions
2026-10-11 09:12:41 +13:00
Dean
6c008c180e
Merge pull request #2935 from AchrafReyani/feat/libkernel-siglongjmp
...
feat(libkernel): implement siglongjmp
2026-10-11 09:09:18 +13:00
Dean
ea6661cce8
Merge pull request #2934 from AchrafReyani/feat/libc-nextafterf
...
feat(libc): implement nextafterf
2026-10-11 09:09:09 +13:00
Dean
230ce25b97
Merge pull request #2933 from AchrafReyani/feat/libc-llroundf
...
feat(libc): implement llroundf
2026-10-11 09:09:00 +13:00
Chad
402bc1cdfc
feat(agc): implement sceAgcBranchPatchSetThenTarget_0300 and SetElseTarget_0300
2026-10-10 15:05:43 -05:00
Dean
a2cc109e64
Merge pull request #2931 from AchrafReyani/feat/libc-isinf
...
feat(libc): implement __isinf
2026-10-11 09:05:37 +13:00
Dean
43d2a7c4c0
Merge pull request #2911 from MarcZX100/codex/fix-libc-rename-win-errors-2403-latest
...
fix(libc): match FreeBSD rename errors on Windows
2026-10-11 09:02:14 +13:00
Dean
0ed05471e5
Merge pull request #2899 from MarcZX100/codex/mutexattr-prioceiling-2689
...
feat(libkernel): implement mutex priority ceiling attributes
2026-10-11 09:02:05 +13:00
Dean
97d347cf33
Merge pull request #2897 from LeandroLP23/feat/libkernel-pthread-sigmask
...
feat(libkernel): implement pthread_sigmask
2026-10-11 09:01:55 +13:00
Dean
1f6a7aa404
Merge pull request #2263 from jweidenh/fix/overlap-dependencies-without-colon
...
fix(tools): honor dependency declarations without a colon
2026-10-11 09:01:46 +13:00
Dean
a8d24c7e44
Merge pull request #2910 from AchrafReyani/fix/unlink-readonly
...
fix(libkernel): unlink read-only files on Windows
2026-10-11 08:58:25 +13:00
Dean
17d73d7fe7
Merge pull request #2896 from MarcZX100/fix/avplayer-autostart-race
...
fix(avplayer): keep title-started playback running
2026-10-11 08:58:15 +13:00