Commit Graph

857 Commits

Author SHA1 Message Date
georgemoralis
4695aaa830
sceKernelAio* implementation (#2160)
* draft Aio from https://github.com/GoldHEN/GoldHEN_Plugins_Repository

* cleanup and fixes to Aio
2025-01-16 18:27:52 +02:00
squidbus
34a5f2319c
network: Remove firing Np callbacks from check stubs. (#2161) 2025-01-16 13:17:07 +02:00
Stephen Miller
5a7d45fdfa
Missing pthread exports (#2144) 2025-01-15 18:37:20 +03:00
Stephen Miller
c10f9b8269
Add libSceNpWebApi (#2150)
Includes a dummy return for sceNpWebApiInitialize, to make it return a positive value.
2025-01-15 13:19:41 +02:00
squidbus
5040be1640
renderer_vulkan: Handle depth-stencil copies through depth render overrides. (#2134) 2025-01-15 08:48:40 +03:00
Stephen Miller
c6ab149c56
libSceHttp2 Stubs (#2139)
* Auto-generate libSceHttp2

* Improved stub for sceHttp2Init

Needed for updated versions of Cyberpunk 2077.

Parameters are based on fpPS4, while the stub itself is based on similar stubs in our other networking libraries.

* Clang

I guess the line length calculations in the moduleGenerator are still not perfect?
2025-01-12 22:27:54 +02:00
Stephen Miller
8a309c30a9
Check thread param on posix_pthread_rename_np (#2133) 2025-01-12 11:24:49 +02:00
Stephen Miller
466e071c97
Add libSceSsl2 stubs (#2132)
* Auto-generate libSceSsl2 stubs

* Copy over sceSslInit stub

* Update CMakeLists.txt

* Swap to Lib_Ssl2 log category

* Fix compile

Since libSceSsl has many functions of the same name, these functions get treated as overloaded functions and break compiling.

* Clang
2025-01-12 11:24:12 +02:00
Stephen Miller
62bbad62fc
Implement sceNpCmp functions (#2114) 2025-01-11 17:58:07 +01:00
Stephen Miller
fc50567fc2
Unmap Fixes (#2080)
* Fix unmapping reserved memory

* Fix bug with unmapping before reserve

* Clang

* Ignore free memory pages

* Handle pooled memory
2025-01-08 14:08:54 +02:00
squidbus
8f5bcb0f1c
file_sys: Consolidate separate update directory handling. (#2041) 2025-01-08 13:23:40 +02:00
squidbus
af8c748e9c
elf_info: Fix GCC build. (#2089) 2025-01-07 17:37:08 +02:00
georgemoralis
121328eced
dummy sceMouse module and change sceMouseRead to debug to reduce spam (#2074) 2025-01-06 18:45:53 +02:00
Stephen Miller
e5f638b378
fix scePlayGoGetLocus (#2067)
Due to an issue with the if statement, scePlayGoGetLocus outputs an extra locus compared to real hardware.
2025-01-06 00:46:26 +02:00
psucien
7459d9c333 hot-fix: amdgpu: use different indirect dispatch packet on ASC 2025-01-04 22:23:12 +01:00
squidbus
f42b8acf47
sdl_audio: Remove buffer samples hint. (#2038) 2025-01-04 14:33:07 +02:00
psucien
ddc658f8c8 clang-format 2025-01-04 00:32:17 +01:00
squidbus
7153bc8d8f
kernel: Check PSF for neo mode support. (#2028) 2025-01-04 00:29:09 +01:00
squidbus
9434cae458
gnmdriver: Implement neo mode differences. (#2011)
* gnmdriver: Implement neo mode differences.

* gnmdriver: Move init sequences to separate file.
2025-01-03 21:22:27 +01:00
georgemoralis
4e1733222f
fixed deadzones (#2025) 2025-01-02 23:21:43 +02:00
Stephen Miller
67c531298a
Fixup returns (#2023)
On a signed out console, these two functions return ERROR_SIGNED_OUT.
2025-01-02 22:51:47 +02:00
polyproxy
55ccec4a38
fix typos 2025-01-02 18:40:10 +01:00
Vinicius Rangel
c977011d2f
Merge pull request #2014 from viniciuslrangel/save-fixes-vi
Save Fixes VI
2025-01-02 12:40:05 -03:00
¥IGA
b87bca2e46
Reduce USBD Log Spamming (#2019) 2025-01-02 17:37:19 +02:00
squidbus
55b50171f8
audio: Improve port state guards. (#1998) 2025-01-02 17:33:53 +02:00
liberodark
596f4cdf0e
Fix amdgpu & other issues (#2000) 2025-01-02 15:39:39 +02:00
polyproxy
1926900945
hotfix: reset stop source on thread stop 2025-01-02 12:30:05 +01:00
Vinicius Rangel
3109bd245f
savedata: Avoid Save memory concurrency 2025-01-02 05:04:54 -03:00
georgemoralis
4e0757ed55
Removed LLE libs (#2012)
* Removed LLE fiber, JpegEnc modules . HLE replacements are good enough

* fixup
2025-01-01 23:08:56 +02:00
psucien
40211642ca kernel: memory: PRT mapped area setter/getter 2025-01-01 21:04:59 +01:00
psucien
444016df7e
Fix for trophy decryption (#2005)
* fix for trophy decryption

* more sanity checks

* switch back to strings for simplicity

* get rid of unnecessary span
2025-01-01 19:11:30 +01:00
kalaposfos13
15c9bb0e83
Motion controls (#1984)
* Initial motion controls

* Store sensor polling rate, and add more logging

* Revert commented out logging for testing purposes

* Code cleanup & clang

* New orientation handling

* clang
2025-01-01 20:05:22 +02:00
Stephen Miller
5631a31640
Fix flags (#1999) 2025-01-01 19:34:40 +02:00
georgemoralis
283442b42f
Storing encryption trophy key in config.toml (#1930)
* get trophy key from toml file

* clang format fix

* get trophy key from toml file

* clang format fix

* merge fixes

* Update config.cpp
2025-01-01 12:04:51 +02:00
psucien
174b5c0f95 kernel: equeue: added missing sceKernelDeleteHRTimerEvent 2024-12-31 17:24:56 +01:00
squidbus
48c51bd9ef
audio: Accurate audio output timing. (#1986)
* audio: Accurate audio output timing.

* audio: Handle SDL audio queue stalls.

* audio: Format info cleanup.
2024-12-31 12:38:52 +02:00
squidbus
f41829707d
equeue: Fix regression from Filter type. (#1992) 2024-12-31 12:16:26 +02:00
Stephen Miller
9091223396
Fix sceKernelGetEventFilter (#1987) 2024-12-31 05:59:14 +02:00
Nenkai
ac2e8c2602
gnmdriver: remove redundant EqEventType assert (#1975) 2024-12-29 19:15:04 +01:00
Vladislav Mikhalin
ee72d99947
ajm: added stubbed statistics instance (#1924)
* ajm: added stubbed statistics instance

* fixed a typo, thanks poly

* fixed clang-format

* removed unused struct

* small fixes

* fixed typedefs, added per codec statistics
2024-12-29 12:53:06 +02:00
squidbus
f8177902a5
cubeb_audio: Make sure COM is initialized on Windows. (#1958) 2024-12-29 12:46:59 +02:00
squidbus
248220fef3
pthread: Change minimum stack for HLE to additional stack. (#1960) 2024-12-29 12:37:37 +02:00
polyproxy
ee974414d2
hotfix: fix fiber initialization 2024-12-28 17:43:29 +01:00
polybiusproxy
851995d444
libraries/fiber: implement context switching (#1950) 2024-12-28 17:33:40 +01:00
polybiusproxy
817a62468e
core: better memory configuration (#1896) 2024-12-28 12:03:00 +01:00
mailwl
55f78a0b94
libraries: Add libSceMove HLE skeleton (#1945)
* libraries: Add libSceMove HLE skeleton

* Fix clang-format issue
2024-12-28 12:58:37 +02:00
psucien
04933ac863 hot-fix: handle ASC ring wrap 2024-12-28 11:44:11 +01:00
squidbus
49ffb7b120
sdl_audio: Implement SetVolume and add more error checking. (#1935) 2024-12-28 00:07:16 +02:00
georgemoralis
3218c36b22
knack fixes by niko (#1933) 2024-12-27 23:03:03 +02:00
squidbus
333f35ef25
audio: Implement cubeb audio out backend. (#1895)
* audio: Implement cubeb audio out backend.

* cubeb_audio: Add some additional safety checks.

* cubeb_audio: Add debug logging callback.

* audioout: Refactor backend ports into class.

* pthread: Bump minimum stack size to fix cubeb crash.

* cubeb_audio: Replace output yield loop with condvar.

* common: Rename ring_buffer_base to RingBuffer.
2024-12-27 21:04:49 +02:00
Nenkai
f95803664b
equeue: sceGnmGetEqEventType/sceKernelGetEventData impl (#1839) 2024-12-27 20:33:45 +02:00
mailwl
0677d7a214
Avoid to access invalid iterator (#1892) 2024-12-27 16:43:10 +02:00
Vinicius Rangel
edc027a8bc
Devtools IV (#1910)
* devtools: fix popen in non-windows environment

* devtools: fix frame crash assertion when hidden

* devtools: add search to shader list

* devtools: add copy name to shader list

* devtools: frame dump: search by shader name
2024-12-26 23:08:47 +02:00
IndecisiveTurtle
0bb1c05aff hot-fix: Drop key
* Caution is best
2024-12-26 17:41:40 +02:00
Daniel R.
cbb13fa39b
hotfix: fix incorrect appcontent available space size 2024-12-26 13:18:53 +01:00
squidbus
95638d5ca5
exception: Fix raising exceptions on POSIX systems (#1868) 2024-12-25 00:21:32 +02:00
IndecisiveTurtle
8f7eb2d0e9 semaphore: Attempt to acquire before checking timeout
* The posix specification says that if the object can be acquired immediately, timeout doesnt matter
2024-12-24 15:39:17 +02:00
Daniel R.
c284cf72e1
Switch remaining CRLF terminated files to LF 2024-12-24 13:56:31 +01:00
Daniel R.
2c0f986c52
core/libraries: HLE fiber reimplementation (#1836) 2024-12-24 13:33:00 +01:00
psucien
43fd8fa44a hot-fix: macos release build 2024-12-22 23:11:16 +01:00
rainmakerv2
433d9459e0
Disable trophy pop-up with config setting (#1834) 2024-12-22 15:46:45 +02:00
squidbus
fac21a5362
audio: Move port logic out of SDL backend and define backend interface. (#1848) 2024-12-22 11:46:28 +02:00
squidbus
7e890def48
fs: Return nullptr when file descriptor is out of bounds. (#1842) 2024-12-22 02:49:34 +02:00
alvinkim101
39fed1f469
Fix splash assert (#1832) 2024-12-20 19:27:27 +01:00
georgemoralis
b0b74243af clang-fix 2024-12-19 10:25:03 +02:00
TheTurtle
adf4b635f7
hot-fix: Proper abi on init_routine 2024-12-18 22:11:09 +02:00
ElBread3
aa5c1c10df
More Fixes for Separate Update (#1487)
* handle getdents + fix condition + add info to description

* fix not handling dents errors

* to not overwrite it, only gather separate update entries when normal folder is done

* fix always setting entries to 0 and guest name including "UPDATE"

* reset indexes on completion

* don't use concat, fixes long standing bug

* make sce_module module loading take both paths into account
2024-12-17 12:42:21 +02:00
squidbus
3c8e25e8e4
fs: Fix wrong mounts being matched by partial guest path. (#1809) 2024-12-17 12:34:43 +02:00
psucien
e7c4ffe032 hot-fix: Tracy operation restored; memory leak fix as a bonus 2024-12-15 20:53:29 +01:00
psucien
0fd1ab674b
GPU processor refactoring (#1787)
* coroutine code prettification

* asc queues submission refactoring

* better asc ring context handling

* final touches and review notes

* even more simplification for context saving
2024-12-15 00:54:46 +02:00
baggins183
3c0c921ef5
Tessellation (#1528)
* shader_recompiler: Tessellation WIP

* fix compiler errors after merge

DONT MERGE set log file to /dev/null

DONT MERGE linux pthread bb fix

save work

DONT MERGE dump ir

save more work

fix mistake with ES shader

skip list

add input patch control points dynamic state

random stuff

* WIP Tessellation partial implementation. Squash commits

* test: make local/tcs use attr arrays

* attr arrays in TCS/TES

* dont define empty attr arrays

* switch to special opcodes for tess tcs/tes reads and tcs writes

* impl tcs/tes read attr insts

* rebase fix

* save some work

* save work probably broken and slow

* put Vertex LogicalStage after TCS and TES to fix bindings

* more refactors

* refactor pattern matching and optimize modulos (disabled)

* enable modulo opt

* copyright

* rebase fixes

* remove some prints

* remove some stuff

* Add TCS/TES support for shader patching and use LogicalStage

* refactor and handle wider DS instructions

* get rid of GetAttributes for special tess constants reads. Immediately replace some upon seeing readconstbuffer. Gets rid of some extra passes over IR

* stop relying on GNMX HsConstants struct. Change runtime_info.hs_info and some regs

* delete some more stuff

* update comments for current implementation

* some cleanup

* uint error

* more cleanup

* remove patch control points dynamic state (because runtime_info already depends on it)

* fix potential problem with determining passthrough

---------

Co-authored-by: IndecisiveTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-12-14 12:56:17 +02:00
rainmakerv2
8bb1e8fcdb
Resize trophy pop up windows based on window size (#1769) 2024-12-14 10:17:00 +02:00
TheTurtle
cfbd869126
texture_cache: Improve support for stencil reads (#1758)
* texture_cache: Improve support for stencil reads

* libraries: Supress some spammy logs

* core: Support loading font libraries

* texture_cache: Remove assert
2024-12-13 18:28:19 +02:00
TheTurtle
8acefd25e7
hot-fix the hot-fix 2024-12-13 18:26:16 +02:00
TheTurtle
bab00dbca8
kernel: Fix module finding
Patch by Elbread
2024-12-13 18:23:01 +02:00
georgemoralis
2a19d915e8
fix for detecting more that 2 players and play both with player 1 keys (#1750) 2024-12-12 22:46:20 +02:00
squidbus
5789d1a5fb
playgo: Lower scePlayGoGetLocus log to debug. (#1748) 2024-12-12 09:47:07 +02:00
TheTurtle
7f4265834a
hot-fix: Fix race in rwlock
Resetting the owner should be before the lock is unlocked, otherwise a waiter might lock and set a new owner before its reset.
2024-12-12 03:33:49 +02:00
TheTurtle
0a9c437ec8
hot-fix: Enforce minimum stack size of 64KB
Fixes some crashes in BB from unity pt 1
2024-12-11 21:17:55 +02:00
Daniel R.
b82993c568
core/kernel: implement condvar signalto 2024-12-11 20:12:35 +01:00
squidbus
14f7dc3527
cache: Invalidate pages for file reads. (#1726)
* cache: Invalidate pages for file reads.

* texture_cache: Simplify invalidate intersection check.

* vk_rasterizer: Make aware of mapped memory ranges.

* buffer_cache: Remove redundant page calculations.

Called functions will convert to page numbers/addresses themselves.

* file_system: Simplify memory invalidation and add a few missed cases.
2024-12-11 21:11:24 +02:00
¥IGA
8db1beaec6
Displays FPS before frame latency (#1736) 2024-12-11 19:44:18 +01:00
Martin
b8a443c728
Fix compiling due to typedefs varying across platforms (#1729)
* Fix compiling on modern C++ compilers

cd9fc5d0e9 broke it

* Fix order

* Test

* Test putting flags in old order

* Remove designated initializer
2024-12-10 22:15:43 +02:00
squidbus
41fd1c84cf
semaphore: Use handles to properly handle semaphore double-delete. (#1728) 2024-12-10 14:43:32 +02:00
squidbus
bf41ab6c40
memory: Handle 0 alignment in MemoryManager::Allocate (#1692) 2024-12-10 13:13:34 +02:00
squidbus
cd9fc5d0e9
thread: Apply alternate signal stack to created threads. (#1724) 2024-12-10 13:08:53 +02:00
Vinicius Rangel
f1b23c616e
Devtools - Shader editing (#1705)
* devtools: shader editing and compiling

* devtools: patch shader at runtime

* devtools: shader editing load patch even with config disabled
2024-12-09 21:11:11 +01:00
Stephen Miller
f938829f12
Implement sceGnmDingDongForWorkload (#1707)
Seen in Final Fantasy XV.
2024-12-08 22:04:33 +02:00
Daniel R.
fea2593ab4
The way to Unity, pt.3 (#1681) 2024-12-08 18:30:33 +02:00
auser1337
1940ac0fec
ajm: support for multiple contexts (#1690)
* ajm: support for multiple contexts

* fix sceAjmInitialize
2024-12-08 10:18:12 +02:00
Ada Ahmed
dad5953e8c
fix: fix #1457 again by moving av_err2str to a common header (#1688) 2024-12-08 00:52:03 +02:00
psucien
119e03cb58 hot-fix: fix for incorrect asc qid 2024-12-07 22:28:31 +01:00
¥IGA
2266622dcf
Support for Vulkan 1.4 (#1665) 2024-12-07 19:41:41 +02:00
squidbus
e1ecfb8dd1
semaphore: Add GCD semaphore implementation. (#1677) 2024-12-06 23:46:44 +02:00
Daniel R.
7ffa581d4b
The way to Unity, pt.2 (#1671) 2024-12-06 22:04:36 +01:00
IndecisiveTurtle
77da8bac00 core: Return proper address of eh frame/add more opcodes 2024-12-06 00:47:11 +02:00
Alexandre Bouvier
874508f8c2
cmake: unbundle stb (#1601) 2024-12-05 23:10:27 +02:00
Daniel R.
15ae7a094d
hotfix: fix inverted operator on GetDents 2024-12-05 18:45:55 +01:00
Daniel R.
98f0cb65d7
The way to Unity, pt.1 (#1659) 2024-12-05 17:21:35 +01:00
Vinicius Rangel
2380f2f9c9
Virtual device abstraction (#1577)
* IOFile: removes seek limit checks when file is writable

* add virtual devices scaffold

* add stdin/out/err as virtual devices

* fixed some merging issues

* clang-fix

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-12-05 18:00:17 +02:00