nmzik
783d9f8d6b
shader: read descriptor dependencies from the native raw buffer source
2026-10-04 18:39:34 +04:00
nmzik
57cf086886
shader: synchronize GPU-written descriptor dependencies through buffer cache
2026-10-04 18:39:34 +04:00
nmzik
46900d8042
memory: replace live direct mappings without exposing an inaccessible gap
2026-10-04 18:39:34 +04:00
nmzik
92c22d60ef
Support periodic kernel timers through shared event queue deadlines
2026-10-03 17:31:15 +04:00
nmzik
5766b241c3
Implement POSIX thread stack attribute import through kernel setter
2026-10-03 17:31:15 +04:00
nmzik
f9fd400dbb
memory: validate sparse uploads against the guest address-space owner
2026-09-29 21:56:38 +04:00
nmzik
650dc1e0af
graphics: upload streamed texture mips from sparse reservations
2026-09-29 21:56:15 +04:00
nmzik
6f24b031f5
kernel: block short sleep requests instead of busy waiting
2026-09-29 16:49:09 +04:00
Aspen
4b0de1b672
Zarchive Loading ( #724 )
...
* Simplify archive loading and harden filesystem integration
* Restore directory entry name length assertion
* Keep graphics-dependent filesystem tests out of CI
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-29 00:06:44 +04:00
nmzik
a107d1e333
filesystem: keep unmapped guest paths out of the host namespace
2026-09-28 19:17:03 +04:00
nmzik
34a3eb6b58
memory: recycle automatic backing through physical ownership
2026-09-28 18:01:49 +04:00
nmzik
c91fe80d64
memory: separate extended allocations from ordinary guest mappings
2026-09-28 18:01:49 +04:00
nmzik
0382d0ca58
Publish reserved guest mappings atomically after backing commit
2026-09-24 11:13:33 +04:00
Louis
b5ba482fc2
Implement missing kernel and startup library imports ( #772 )
...
* Implement missing kernel and startup library imports
* Remove chmod and test changes; guard vectored I/O size
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-23 15:57:42 +04:00
nmzik
8cecaf4e30
Merge PR #716 : Fix Unicode paths on Windows
...
Preserve native Windows paths for filesystem operations, command-line options,
and game icons. Complete Unicode handling in recursive file listings and file
logging, restore unmounting by host directory, and extend regression coverage.
Original implementation by Augusto Domingos (@AghastyGD); retain all five of
his PR commits and include the reviewed follow-up fixes.
Closes #714
Co-authored-by: Augusto Domingos <augustodomingosvasco@gmail.com >
2026-09-20 02:14:22 +04:00
Augusto Domingos
b61b3f2a40
handle UTF-8 command-line paths
2026-09-19 14:12:35 +02:00
nmzik
c5cebc1d19
remove unused helpers and the -64 suffix
2026-09-17 20:35:36 +04:00
nmzik
1211958b4e
clean up runtime helpers
2026-09-17 20:35:36 +04:00
nmzik
2bf78a94e0
remove string wrappers
2026-09-17 20:35:36 +04:00
nmzik
cc8e02380f
remove magic_enum wrappers
...
Co-authored-by: Saadi <cosxmos@gmail.com >
2026-09-17 20:35:36 +04:00
nmzik
18a1e0fadc
Remove global condition waiter registry that deadlocks exception delivery
...
Co-authored-by: Bipin <bipinkrish4@gmail.com >
2026-09-14 21:34:01 +04:00
nmzik
f3c82a317a
kernel: support timed umtx waits through shared address deadlines
...
Co-authored-by: BlackCAT <52720489+psnwd@users.noreply.github.com >
2026-09-14 06:58:32 +04:00
nmzik
b2fdad9e47
memory: preserve live POSIX mappings during partial unmap
...
Co-authored-by: Ali Almohaya <AliAlmohaya@gmail.com >
2026-09-14 06:58:32 +04:00
Mininaut
0f3674f531
kernel: release descriptors when rejecting read-only truncation ( #504 )
...
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-12 17:44:45 +04:00
nmzik
47b26e497f
pthread: fix per-thread wakeups
2026-09-12 13:40:10 +04:00
nmzik
733842cad4
kernel: index pthread key values per thread
2026-09-12 13:40:10 +04:00
nmzik
25a44371e3
refactor(graphics)
2026-09-12 13:40:10 +04:00
nmzik
d2fa86579b
kernel: share directory streams across seeks and reads
2026-09-10 14:36:15 +04:00
frangametv
1a3a15e4cf
Fix mount root opens and empty APR prefixes ( #439 )
...
* Fix opening mount root directories
* Allow empty APR path prefixes
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-09 12:31:23 +04:00
nmzik
dcaf4205cb
render: track pages for DMA fills and copies
2026-09-06 10:16:27 +04:00
nmzik
211242452b
kernel: use per-thread signal stacks for guest stack faults
2026-09-06 09:28:19 +04:00
Brandon Strong
16ea36eb4b
libkernel: register scePthreadRwlockTryrdlock and the timed rwlock variants ( #472 )
...
* libkernel: register scePthreadRwlockTryrdlock and the timed rwlock variants
* fix: initialize static rwlocks in newly registered APIs
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-03 01:58:38 +02:00
Brandon Strong
c85bd45604
kernel: implement sceKernelClearVirtualRangeName ( #466 )
2026-09-03 01:50:14 +02:00
Brandon Strong
1df53b169f
kernel: stop sign-extending batch-map protection and type ( #405 )
2026-08-30 01:46:43 +04:00
Mehmet Cambaz
947576363e
kernel: explain a commit-limit failure at startup ( #395 )
...
When CreateFileMapping cannot reserve the guest backing store the log only
carries the raw Win32 error, which gives no clue that the paging file is the
thing to change. Print the size that was asked for and say so directly when the
failure is ERROR_NO_SYSTEM_RESOURCES or ERROR_COMMITMENT_LIMIT.
2026-08-29 16:20:36 +04:00
nmzik
9da390bc0a
general: explicit SEC_COMMIT (Windows), default printf logging to silent
2026-08-29 15:31:20 +04:00
nmzik
f1413569ce
fix windows build
2026-08-29 14:46:54 +04:00
nmzik
146253afb6
renderer&guest_gpu: minor cleanup
2026-08-18 03:53:44 +02:00
shadowbeat070
e239210279
Rewrite RenderDoc capture flow and host exceptions
2026-08-18 03:53:44 +02:00
nmzik
af931d73c7
remove logging in hot path
2026-08-18 03:53:43 +02:00
nmzik
83ee040b4d
graphics: specialize invariant indirect image tables
2026-08-18 03:53:43 +02:00
nmzik
547b9b96cc
graphics: upload sparse PRT image backing
2026-08-18 03:53:43 +02:00
nmzik
6e82c376f6
kernel: allow renaming open save files
2026-08-18 03:53:42 +02:00
nmzik
4980efa9b7
refactor(subsystems&ime): RAII lifecycle
2026-08-11 16:12:38 +02:00
Stefanos Costa
87428d7a4b
kernel: do not release a waiter on a zero-count syncOnAddress wake (linux only) ( #168 )
...
* kernel: do not release a waiter on a zero-count syncOnAddress wake
sceKernelSyncOnAddressWake with a count of 0 must release no waiters. On
Linux it released exactly one.
WakeLinux passes the count straight to FUTEX_WAKE, which does not treat 0
as "wake nobody": the kernel's wake loop tests `if (++ret >= nr_wake) break`
after waking a waiter, so any waiter present is released before the loop can
break. A standalone futex program confirms it -- FUTEX_WAKE with val = 0
returns 1, and the waiter observes its wait return 0 with the word unchanged.
WakePortable already short-circuits count == 0, so the two backends of the
same ABI disagreed, with only the Linux one wrong.
TestWakeZeroIsNoOp in SyncOnAddressTests covers exactly this and fails on
Linux without the fix (15 consecutive failures on the assertion "zero-count
wake releases no waiters"); with the fix the suite passes 15 consecutive runs.
* kernel: shorten zero-count futex comment
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-08-08 08:17:56 +02:00
nmzik
3a7656336e
fix regression properly (fix pthread init abi)
2026-08-07 21:39:16 +02:00
nmzik
4b26d03dba
fix pthread init abi
2026-08-07 17:51:59 +02:00
nmzik
d5c95bc3ee
kernel: coalesce fragmented Windows placeholders before reuse
2026-08-07 03:13:01 +02:00
nmzik
b9aa0dc3b3
fix KernelLseek lock leak
...
Co-authored-by: Stefanos Costa <stefanos.costa1999@gmail.com >
2026-08-05 02:25:05 +02:00
nmzik
00a5dd32c0
Implement syncOnAddress ABIs (perf improvement)
2026-08-04 21:24:12 +02:00