Commit Graph

3962 Commits

Author SHA1 Message Date
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
squidbus
0f094cb6c8
build: Explicitly turn off AVX512 (#4478) 2026-05-25 19:21:42 +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
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
Stephen Miller
e5c406d809
Upstreaming valid changes from others (#4469)
* Fix nids for strcmp vs strncmp

Co-Authored-By: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>

* Fix sign_bit_set logic

Co-Authored-By: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>

* Fix IterateDirectory on mounts

IterateDirectory would just retrieve the base path when trying to iterate /app0, since GetHostPath for the other path types would still return the base path.

Co-Authored-By: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>

* Fix function resolves

If multiple modules export the same library and module, then we would only check the first one we find for the symbol. This can end up breaking the font library stack

Co-Authored-By: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>

* Update fs.cpp

Co-Authored-By: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>

* Oops

---------

Co-authored-by: m33ts4k0z <3597723+m33ts4k0z@users.noreply.github.com>
2026-05-24 09:42:31 +03:00
Marcin Mikołajczyk
19f299714a
Handle abs and clamp modifiers only for VOP3A instructions (#4467) 2026-05-23 14:40:58 -07:00
Marcin Mikołajczyk
65ab88dd11
Fix v_mad_u64_u32 (#4466) 2026-05-23 11:41:18 -07:00
Marcin Mikołajczyk
d7eacc8a17
Set AccessFlagBits::eNone for PresentSrcKHR image layout (#4465) 2026-05-23 11:38:43 -07:00
georgemoralis
00339cf010
http part6 (#4460)
* added http* epolls

* changed info to debug

* one more info to debug

* helper function
2026-05-21 20:57:55 +03:00
georgemoralis
82beca2bbf
http part5 (#4453)
* added async state sending support

* typo

* implemented blocking

* clang is not my friend

* fixed stephen's review

* code organize / nothing changed
2026-05-21 17:14:03 +03:00
Stephen Miller
03ebac577b
Lib.VideoOut: Properly remove events on close (#4456)
* Fix flip status on close

* Store equeues by handle instead of pointer

As is, a game could call sceKernelDeleteEqueue on the equeue registered for flip/vblank events, and terminate the equeue while our VideoOut driver retains a valid pointer to it.
Changing to storing the equeue handle means we can check if the equeue still exists and prevent this.

* Remove flip and vblank events on sceVideoOutClose

* Don't forget to clear vectors

* Oops

Intended to erase the memset on FlipStatus, not VblankStatus.
2026-05-20 14:31:37 -07:00
kalaposfos13
f95edd27e0
major skill issue (#4451) 2026-05-20 09:31:23 +03:00
georgemoralis
6b5adca8a5
added some libScePosix functions (#4452) 2026-05-19 13:08:31 -05:00
Stephen Miller
7572c51c0e
Lib.Audio3d: Implement sceAudio3dPortGetAttributesSupported based on currently handled attributes (#4450)
* Stub sceAudio3dPortGetAttributesSupported to return no supported attributes

* Report supported attributes

* Slight fix
2026-05-19 08:25:33 +03:00
georgemoralis
112a4561cf
Http part4 (#4449)
* fix validation sequence in sceHttpCreateRequestWithURL2 as well

* Added timeout settings functions

* added redirect functions settings

* connection should snapshot the template's settings at creation

* sceHttpSetInflateGZIPEnabled,sceHttpSetRequestContentLength

* Https- enable/disable options functions
2026-05-18 23:43:23 +03:00
georgemoralis
88e562f63d
http_part3 (#4443)
* verified sceHttpGetLastErrno with decompile

* sceHttpCreateRequest2 fixed validation order
2026-05-18 08:28:17 +03:00
Stephen Miller
caec23154c
Lib.SystemService: Add SDK checks for console language (#4444)
* Add proper SDK checks for language values

Fixes some crashes caused by otherwise valid languages in older titles.

* Rename firmware constants

Makes more sense this way, and works better in case we find an SDK check added in a more minor update.
Instead of 1.00 being 10, 1.50 being 15, and so on, this commit changes 1.00 to 100, 1.50 to 150, and so on.

* Claaaaang
2026-05-17 18:35:36 -07:00
georgemoralis
94786d70ca
Http part2 (#4441)
* more uri work based on decompile and tests

* fix includes

* fix loader stubs

* cleanups

* sceHttpParseStatusLine matches decompile and tests

* sceHttpParseResponseHeader implemenation and tests

* try fixing no-internet path in sendrequest

* minimal state machine to support proper erroring of no-internet available

* more improvements

* more implementation based on stephen's comments

* some more fixes based on decompile
2026-05-17 22:54:34 +03:00
Stephen Miller
c7686e33a8
Core: Fix file position after read-only file mmaps (#4442)
* Fix file position after file mmaps

* Oops
2026-05-17 22:29:13 +03:00
Connor Harrison
482d17c6e1
Load custom modules stored in custom_modules/<gameid> (#4440)
* Load custom modules stored in custom_modules/<gameid>

* Fix formatting
2026-05-17 21:11:21 +03:00
Ultra
e9cbc02c01
Update Debugging.md (#4438) 2026-05-17 19:12:40 +03:00
squidbus
f4b787f264
externals: Update MoltenVK (#4436) 2026-05-16 04:44:03 -07:00
georgemoralis
7337364f4c
Http part1 (#4431)
* add parameters and logging

* added sceHttpUriBuild , fixes to sceHttpUriEscape ,sceHttpUriParse

* return an error to statuscode , this should be enough for no-connection
2026-05-15 23:35:31 +03:00
Niram7777
5b23711d04
Revert sdl3 bad rebase (#4433) 2026-05-15 21:29:40 +02:00
Stephen Miller
425f26c749
Let guest override argv[0] (#4432) 2026-05-15 20:46:12 +03:00
kalaposfos13
4fae53f791
Quadruple stub array capacity and rewrite generation logic to C++ templates (#4424)
* Quadruple stub array capacity and rewrite generation logic to C++ templates

* remove apple ifdef
2026-05-15 19:10:44 +03:00
Niram7777
b7a85c13b2
Flush log on terminate (#4429)
* Flush log on terminate

* Flush on unhandeld signal

* hexa code

Co-authored-by: kalaposfos13 <153381648+kalaposfos13@users.noreply.github.com>

---------

Co-authored-by: kalaposfos13 <153381648+kalaposfos13@users.noreply.github.com>
2026-05-15 18:36:27 +03:00
¥IGA
70f98ee85b
[CI] Use VS 2026 (#4209) 2026-05-15 17:47:42 +03:00
georgemoralis
6b932bd6a6
Submodules updates (libusb,libressl,cpp-http,CLI11,openal) (#4428)
* update libusb

* libressl

* updated cpp-httplib

* update CLI11

* updated openal
2026-05-15 17:06:33 +03:00
kalaposfos13
e36dff45f4
Add setting to toggle Enter button from cross to circle (#4427)
* Add setting to toggle Enter button from cross to circle

* clang is not my friend :(
2026-05-15 14:05:00 +03:00
squidbus
b89e356cfa
videoout: Implement sceVideoOutSubmitChangeBufferAttribute (#4408) 2026-05-15 13:11:38 +03:00
kalaposfos13
50d33b4dbf
Assert on attempting to login the same user for two different slots (#4421) 2026-05-15 12:50:28 +03:00
kalaposfos13
40237afd1d
Update SDL3 submodule (#4422)
* Update SDL3 submodule

* new steam controller keybinds
2026-05-15 11:19:01 +03:00