Commit Graph

4008 Commits

Author SHA1 Message Date
georgemoralis
0ccfcd0795 fixed a single tests isssue 2026-06-07 13:36:37 +03:00
georgemoralis
4fe5996391 fixed tests 2026-06-07 13:17:29 +03:00
georgemoralis
bc6df4624b http tests 2026-06-07 13:08:42 +03:00
georgemoralis
da516d8a7d more stephen reviews 2026-06-07 11:08:33 +03:00
georgemoralis
3b5bd7ea2c stephen's reviews 2026-06-07 00:01:38 +03:00
georgemoralis
44d20ca658 .. 2026-06-06 23:50:06 +03:00
georgemoralis
e63f16c4cf fixup 2026-06-06 23:43:49 +03:00
georgemoralis
545cbd362f added url override 2026-06-06 23:38:00 +03:00
georgemoralis
05fa358890 make kernelstub configurable 2026-06-06 23:04:55 +03:00
georgemoralis
1e1bf7e0f9
Merge branch 'main' into http_part7 2026-06-06 18:08:25 +03:00
Stephen Miller
a3e9390be6
Kernel.Pthreads: Restructure PthreadMutex struct (#4528)
* Restructed PthreadMutex struct

When libc creates mspaces, they modify the data of a PthreadMutex to set the mutex's private flag. Previously, on Linux, this would modify internal data of our TimedMutex, and on Windows this would modify the m_yieldloops variable.

This makes it so our m_flags is at the same offset as the real pthread_mutex struct, so no data corruption occurs.

* Further struct changes

To address review comments
2026-06-06 07:38:38 -07:00
Niram7777
42849b6590
CI print CPU info (#4530) 2026-06-06 02:04:55 -07:00
Stephen Miller
deb9908452
Swap NpWebApi global mutex to recursive (#4529)
It's recursive in the actual library, and since our implementation in thoroughly based on the actual library, this is needed for our code to function appropriately.
2026-06-06 09:07:22 +03:00
Ploo
5b8b66ab12
fix: zlib-ng on GH runner using native instructions instead of the global config (#4521)
Co-authored-by: lizzie <lizzie@eden-emu.dev>
2026-06-05 12:31:06 -07:00
Arthur Cuesta
35255bccef
core/memory: handle Fixed mapping with zero addr in callers (#4507)
Add check in sceKernelReserveVirtualRange, sceKernelMapNamedDirectMemory, and
sceKernelMapNamedFlexibleMemory per StevenMiller123 review:
- FW >= 1.70 returns EINVAL for Fixed + addr == 0
- Older FW clears Fixed flag to fall through to managed allocation

Co-authored-by: opencode <dev@shadps4.local>
2026-06-05 22:11:57 +03:00
junminlee2004
6c282aa1da
kernel: fix recursive read-lock deadlock on PthreadRwlock (#4517) 2026-06-03 22:26:34 +03:00
Marcin Mikołajczyk
e777f56964
Prevent opening duplicate windows of a shader dump (#4512) 2026-06-02 15:55:42 -07:00
Stephen Miller
0b9eb3dd17
Core: Only initialize logging once (#4509)
* Only initialize logging once

* Swap LOG macros for std::cerr and std::cout use.

* Add quick exit when trying to log before logger init

* Revert "Swap LOG macros for std::cerr and std::cout use."

This reverts commit a14d46d383.

* Use fmt's functions instead of cerr

Makes the commits a tad cleaner.

* Revert macro change

If I remember right, the if check here was to make sure we didn't throw exceptions after terminating the logger, which can happen due to a race involving some debug libSceVideoOut logs.

* Oops
2026-06-02 08:03:18 +03:00
kalaposfos13
87e774c4a1
Fix grammatical and factual mistakes (#4505)
* Fix grammatical and factual mistakes

* Update game-bug-report.yaml
2026-06-01 23:21:41 +03:00
Niram7777
012f8e4068
game-bug-report no dbg no force kill (#4459)
* game-bug-report no dbg no force kill

* Update game-bug-report.yaml valid log
2026-06-01 22:33:35 +03:00
georgemoralis
461fab2df2
Merge branch 'main' into http_part7 2026-06-01 22:31:54 +03:00
Connor Garey
9a6d2d1553
Bump version from 0.15.1 to 0.16.1 (#4502) 2026-06-01 20:06:09 +03:00
georgemoralis
6d2e6a439a started 0.16.1 WIP 2026-06-01 19:14:07 +03:00
georgemoralis
5be3f0a30b tagged 0.16.0 release 2026-06-01 18:47:16 +03:00
georgemoralis
73d841544c updated cache versions 2026-06-01 18:30:26 +03:00
kalaposfos13
4ac417b74f
Implement trophy migration (#4501)
* Implement trophy migration

* Respect user choice from save migration

* yet another nested subfolder iterator

* refactoring and remove original hardcoded forced migration code
2026-06-01 15:13:56 +02:00
Stephen Miller
0e23d468ca
Clean up trophy extraction logic (#4498)
This code has been an absolute mess since the trophy rework. This eliminates several redundant loops through game trophy files, and separates the logic into it's own function.
2026-06-01 15:00:15 +02:00
Stephen Miller
48283da2a6
Core: Remove old config code (#4499)
* Remove old config backend

Trophy key migration now uses the toml library directly, like our config transfer code.

* Don't retrieve user_dir in main

No longer needed.
2026-06-01 10:00:24 +03:00
kalaposfos13
2736ce8c2e
Implement save migration (#4496)
* Implement save migration

* Slightly cursed macro programming

* Line break

* add const

* Remove std::filesystem redefine

---------

Co-authored-by: Stephen Miller <56742918+StevenMiller123@users.noreply.github.com>
2026-05-31 16:16:43 -05:00
Connor Garey
5f89834cb5
Refactoring of the nix file. (#4494)
* Fix version number.

* Use the packages.x86_64-linux namespace.

* linux. prepend no longer required.

* Created build-shadps4 module.

.

.

.

.

.

.

.

* Move dependency list to generator function parameters.

* Using call package to run builder.

* Pull in matching names and use inherit.

* Paths need to be wrapped in a "".

* Put , on the packages.

* And inherit does not need any , .

* Fixups.

* release and releaseWithDebugInfo now use the same builder.

* Set default pacakge to releaseWtihDebugInfo.

* Rename to build, moved down a directory and deleted modules/

.

* Seperated devshell into shell.nix

.

.

.

.

.

* Double ".nix"

* Nix Formatting.

* Included missing dependencies for shell.

.

.

.

.

* Update Lock file.

* Removed old unused shell.nix.

* Collapse shell and build into flake.nix

.

* Window bar patch

.

.

.

* Removed unused patches list.

* As older nix shell was removed. Also remove old documentation.
2026-05-31 23:56:16 +03:00
kalaposfos13
d1030d01db
Don't log asserts/unreachables twice on Windows (#4497) 2026-05-31 23:15:21 +03:00
kalaposfos13
dd18a5f29f
Increase default inner deadzone (#4492) 2026-05-31 18:15:34 +03:00
Connor Garey
4ce43a6a88
Further additions to flake (#4489)
* Create a mkderivation wrapper lambda.

.

.

* Removed execName

* Call new wrappers instead of duplicated mkDerivation.

* Removed finalAttrs

* Use more semi-colons

* Used clang and the build environment instead of the standard gcc.

* Replaced "git" with current nightly version.

* Automatically pass the required environment variables into the development shell instead of requiring them as part of cmake command.

* Change to an if statement because ! hurts the brain.

* Added perf to devshell package list.

* Added Nix formatter.

.

* Collision with the ++ operator in the environment variable.

* Nix Format.
2026-05-29 22:36:33 +03:00
Marcin Mikołajczyk
02010acd42
image_get_lod: respect dmask value when writing lod (#4488) 2026-05-29 00:06:36 +02:00
Connor Garey
1d885f2b5f
Nix flake changes (#4485)
* Changed Release to RelWithDebInfo for CMake flag.

* Added miniz and libressl
2026-05-27 17:34:51 +02:00
Lander Gallastegi
2ff3487dbc
video_core: check if depth image is valid before using it (#4479)
* check if depth image is valid before using it

* fix uid usage
2026-05-27 14:49:34 +03:00
Valdis Bogdāns
f1873bb1d8
Core: Enhance AvPlayer with improved error handling and stream duration calculations (#4483) 2026-05-27 14:37:21 +03:00
Niram7777
78053e70b7
CI release without avx512 (#4481)
* Revert "build: Explicitly turn off AVX512 (#4478)"

This reverts commit 0f094cb6c8.

* CI disable AVX512 Windows, Linux
2026-05-26 22:46:38 +03:00
kalaposfos13
2b5aa0b1c3
Attempt to fix yet another input regression in some Unity games (#4480)
* Set dummy GameController's m_connected to false

* Remove this check and handle it differently

* Save one reverse lookup on a map
this is mostly irrelevant on performance

* i have no clue so let's just log stuff

* apparently this is the correct default

* swap this to debug logging

* the loathsome clang-formatter
2026-05-26 10:54:16 -05:00
georgemoralis
11859761fb
Merge branch 'main' into http_part7 2026-05-25 19:21:56 +03:00
squidbus
0f094cb6c8
build: Explicitly turn off AVX512 (#4478) 2026-05-25 19:21:42 +03:00
georgemoralis
6a0bebfb1d
Merge branch 'main' into http_part7 2026-05-25 18:32:13 +03:00
squidbus
8a08bb46ee
cpu_patches: Log full instruction on JIT patch failure. (#4477) 2026-05-25 08:31:31 -07:00
squidbus
a57b3f3b74
Revert quad/rect list parameter forwarding changes (#4476)
* Revert "shader_recompiler: Pad number of TES passthrough outputs to fragment inputs if needed"

This reverts commit 6436063025.

* Revert "shader_recompiler: Only forward declared number of vertex inputs. (#4293)"

This reverts commit 47f5cc1437.
2026-05-25 06:55:20 -07:00
squidbus
19381b30e8
shader_recompiler: Pad number of TES passthrough outputs to fragment inputs if needed (#4471) 2026-05-25 05:13:30 -07:00
Stephen Miller
86a64fb980
Lib.Kernel: Various (mostly signal-related) fixes (#4463)
* sigaddset, sigdelset, sigismember

* Some define fixups

Based on decomp, PS4 sigset is defined as a u32[4]. This doesn't change any behavior, but makes my decomp-based sigaddset and sigdelset implementations function appropriately.
Additionally, define handler and sigaction functions as PS4_SYSV_ABI.

* Fix returns

* Implement signal, export _sigintr

In libkernel, signal just uses sigaction. No harm in implementing it, since we've got our own implementations for everything except sigaction (and sigaction is implemented for Unix platforms).

* Fix and cleanup posix_select defines

Swaps use of defines for just having static functions, and fixes the pd_set_posix struct to match FreeBSD/Orbis properly (sizeof(long) == 4 on Windows, which does not match Orbis).

* Fix siginfo struct

Again, sizeof(long) differs on different platforms. Need to use our proper typedef to ensure accuracy.

* Clang, the bane of my existance.

* Oops
2026-05-25 10:27:55 +03:00
georgemoralis
88703135dd
Merge branch 'main' into http_part7 2026-05-25 10:13:12 +03:00
georgemoralis
9dada49956
np score initial (#4472)
* move np_score to /np_score folder

* added more logging to np functions

* using common np_error file

* moved web_api to dedicated folder

* implemented some context creations for np_score so logging would be more productive
2026-05-25 09:38:43 +03:00
TheTurtle
5be4fb8584
vk_rasterizer: Fully initialize clear value of depth attachment (#4473)
Prevents redundant renderpass breaks from render state mismatching due to stale values being left in the array
2026-05-24 16:24:48 -07:00
Xupie
c0d35332af
Lib.Audio3d: implement sceAudio3dPortCreate and update sceAudio3dPortOpen (#4457)
* implement sceAudio3dPortCreate and closer implementation to sceAudio3dPortOpen

* clang format and forgot to remove some lines

* refactor port creation, small cleanups and openal

* rename parameter arguments

* idk might be correct

* floor size_this to closest multiple of 8
2026-05-24 20:07:04 +03:00