Commit Graph
3217 Commits
Author SHA1 Message Date
Dean a86577e464 Merge pull request #7178 from AlxcBTW/pr/depth-clear-2
perf(agc): replace the plane copies around a depth plane's UAV clear by a depth clear
2026-10-18 16:52:16 +13:00
Dean f28ae2d5a4 Merge pull request #7139 from AlexOfTheForest/feat/poll-files
feat(libkernel): poll files, directories, the random device and stdio as FreeBSD does
2026-10-18 16:52:12 +13:00
Dean Galvin 57d3e85ca8 Merge main into pr/depth-clear-2 2026-10-18 16:37:09 +13:00
Dean 1e2d9b369b Merge pull request #7346 from thuanquang/fix/depth-bits-32-guest-memory
fix(agc): read a 32-bit depth-bits T# over guest memory through a float view
2026-10-18 16:22:26 +13:00
Dean d9656f1283 Merge pull request #7353 from T3cm0/bionic/mergesort
feat(libc): implement mergesort
2026-10-18 16:22:12 +13:00
Dean Galvin 67e7043332 Merge main into feat/poll-files 2026-10-18 16:04:36 +13:00
Dean c4fea909a5 Merge pull request #7335 from EagleBearerYS/prep/np-trophies-part2
feat(libSceNpTrophy2,libSceNpUniversalDataSystem): record trophy unlocks and statistics
2026-10-18 15:58:22 +13:00
Dean 1d8524be7c Merge pull request #7352 from T3cm0/bionic/inet-aton-ntoa
feat(libSceLibcInternal): implement inet_aton, inet_addr and inet_ntoa
2026-10-18 15:52:20 +13:00
Dean 628047ef6c Merge pull request #7349 from T3cm0/bionic/posix-spawnattr-accessors
feat(libSceLibcInternal): implement the remaining posix_spawnattr accessors
2026-10-18 15:52:17 +13:00
Dean 3ef424a7f6 Merge pull request #7348 from T3cm0/bionic/paf-mspace
feat(libc): implement the sceLibcPafMspace allocation exports
2026-10-18 15:52:13 +13:00
Dean b39d90bf14 Merge pull request #7357 from T3cm0/bionic/seed48-lcong48
feat(libc): implement seed48 and lcong48
2026-10-18 15:20:36 +13:00
Dean 5cc435f02f Merge pull request #7355 from T3cm0/bionic/uchar-conversions
feat(libc): implement the uchar.h conversions, mblen and wctomb
2026-10-18 15:20:29 +13:00
Dean 82a119ad69 Merge pull request #7354 from T3cm0/bionic/long-double-math
feat(libc): implement long double, Bessel and integer math exports
2026-10-18 15:20:26 +13:00
Dean 5a240614e4 Merge pull request #7351 from thuanquang/fix/amd-robust-buffer-access2
fix(agc): keep robustBufferAccess2 off on AMD's proprietary driver
2026-10-18 15:20:22 +13:00
Dean 0e94c5d434 Merge pull request #6243 from EagleBearerYS/perf/shader-direct-cpu-evaluable-images
perf(shader): select the record of a T# whose offset the CPU evaluates
2026-10-18 15:00:57 +13:00
Dean 199e2ceb2f Merge pull request #7262 from EagleBearerYS/prep/np-trophies
feat(libSceNpTrophy2): report the title's trophy data from trophyNN.ucp
2026-10-18 15:00:53 +13:00
T3cm0andClaude Opus 5.5 26898755e5 feat(libc): implement seed48 and lcong48
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:44:32 -05:00
T3cm0andClaude Opus 5.5 58697488a2 feat(libc): implement the uchar.h conversions, mblen and wctomb
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:43:39 -05:00
T3cm0andClaude Opus 5.5 24a999c499 feat(libc): implement long double, Bessel and integer math exports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:43:13 -05:00
T3cm0andClaude Opus 5.5 8283831a19 feat(libc): implement mergesort
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:42:46 -05:00
T3cm0andClaude Opus 5.5 300b7ff34c feat(libSceLibcInternal): implement inet_aton, inet_addr and inet_ntoa
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:42:20 -05:00
thuanquangandClaude Opus 5.5 48b394d1ec fix(agc): keep robustBufferAccess2 off on AMD's proprietary driver
Since #4048 enabled robustBufferAccess2, AMD's Windows driver draws
nothing in agc_driver_layered_volume_draw and agc_driver_layered_volume_vertex,
and the selected loads make the high half of agc_driver_subvector_loop's
wave64 skip its loop. Until the cause is found, that driver does not get
the feature, and its loads keep their selections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 08:42:00 +07:00
T3cm0andClaude Opus 5.5 f9b7b230fc feat(libSceLibcInternal): implement the remaining posix_spawnattr accessors
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:41:26 -05:00
T3cm0andClaude Opus 5.5 66247cef5c feat(libc): implement the sceLibcPafMspace allocation exports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:40:58 -05:00
thuanquangandClaude Opus 5.5 0563713626 fix(agc): read a 32-bit depth-bits T# over guest memory through a float view
A sampled 32_UINT or 32_SINT T# with a depth swizzle that no live depth
surface matches threw, while the 16-bit case already falls back to guest
memory through an R16_UNORM view. The 32-bit case now reads the guest
bytes through an R32_SFLOAT view, which the shader casts back to the
stored dword.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 08:25:21 +07:00
Dean 4b2563e2ef Merge pull request #3186 from fma-rc/feat/libscejobmanager-compute
feat(libSceJobManager): implement compute sequences and compute dispatches
2026-10-18 14:04:33 +13:00
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
Yunus Shaikh 8c6765be71 Merge main into perf/shader-direct-cpu-evaluable-images
Main's #7325 adds verifyChainedTableOffset to the image table tests
where this branch adds its selected-record tests. Keep both, with
main's call after this branch's.
2026-10-17 17:32:11 -07: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
fma-rc 394ac01946 fix(libSceJobManager): refuse shutdown with compute work in flight and check the handler wait 2026-10-18 02:14:02 +02:00
fma-rc 051a610798 feat(libSceJobManager): implement compute sequences and compute dispatches 2026-10-18 02:12:57 +02:00
Dean 97c37af020 Merge pull request #6239 from ArjenS-LA/fix/audit-named-homebrew-imports
fix(tools): audit ordinary homebrew import names
2026-10-18 12:57:29 +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
Yunus Shaikh 8e927be27f docs: say that a malformed trophy or stat record line fails the query 2026-10-17 23:30:58 +00:00
Yunus Shaikh be9ade0f01 docs: say which posted trophy unlocks are refused and what stops a title
USAGE.md describes the refused posted unlocks and their log line, and
says that the icon queries and a damaged or unwritable unlock or
statistics file stop the game with an error. The debt entries of
libSceNpTrophy2 and libSceNpUniversalDataSystem no longer say that any
posted id is stored. Both USAGE.md and the libSceNpTrophy2 entry say
that without trophy data the platinum is not unlocked when the other
trophies are.
2026-10-17 23:29:24 +00:00
Yunus Shaikh 75ca9e469a docs: describe trophy statistics in USAGE 2026-10-17 23:29:17 +00:00
Yunus Shaikh 4362803457 feat(libSceNpUniversalDataSystem): unlock trophies through the title's statistics
Events other than the trophy events go through the title's
sce_sys/uds/udsNN.ucp: stats_definition.json gives the statistics that
keep their latest uint32 or uint64 value, and stats_extraction.json the
event property ($.name, dotted for nested objects) that sets each one.
Statistics are kept per user and service label in
_trophy/<user id>_<service label>.stats.txt next to the unlocks.

After each event that sets a statistic, every trophy's unlockCondition
(ge, gt, le or lt against its targetValue) is checked on the values that
event set and the stored values of the other statistics, so a later
event setting the same statistic cannot hide what this one reached.
Reached trophies unlock through the same path as _UnlockTrophy.
Progressive trophies report their statistic as progress, and
APS5_TRACE_UDS prints each statistic an event sets. A missing udsNN.ucp
is ignored and a malformed one is logged once.
2026-10-17 23:28:56 +00:00
Yunus Shaikh 42ddbdf89e docs: describe trophy unlocks in USAGE 2026-10-17 23:28:50 +00:00
Yunus Shaikh 98c700ea02 feat(libSceNpUniversalDataSystem): keep event properties and record posted trophy unlocks
Events and property objects keep their typed properties instead of
dropping them. PostEvent records an _UnlockTrophy event with an int32
_trophy_id for the user and service label of its context, logs why a
trophy event is ignored, and prints every posted event with
APS5_TRACE_UDS.
2026-10-17 23:28:11 +00:00
Yunus Shaikh 95179c1d61 feat(libSceNpTrophy2): record trophy unlocks per title and user
Unlocks are kept in _trophy/<user id>_<service label>.txt in the title's
run directory, one "<trophy id> <RTC tick>" line per trophy, and each new
unlock logs "[trophy] <title id> unlocked trophy <id> for user <id>".
GetTrophyInfo, GetTrophyInfoArray, GetGroupInfo, GetGroupInfoArray and
GetGameInfo report the recorded unlocks, their times, the unlocked
counts by grade and the progress percentage. An unlock also unlocks the
platinum the trophy names once every trophy naming that platinum is
unlocked. Unlock listeners let a later notification subscribe. Removing a
listener waits for its running callback, and a listener removed during a
dispatch is not called by it.
2026-10-17 23:27:39 +00: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
Yunus Shaikh 61e12c75fd docs: describe trophy data in USAGE 2026-10-17 23:26:06 +00:00