georgemoralis
3b0e251518
Merge pull request #729 from StevenMiller123/VirtualQuery-Fixes
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
Fix VirtualQuery
2024-09-02 07:18:33 +03:00
Stephen Miller
f3a62891ed
Fix VirtualQuery
...
Found this issue while looking at code from fpPS4. VirtualQuery was setting is_commited to true when the queried region was reserved.
Also sets the protection value in the VirtualQueryInfo, as I'd assume not storing that could cause issues in games.
This fixes all games currently hanging on the sceKernelmprotect stub.
2024-09-01 22:39:22 -05:00
Paris Oplopoios
f514fdfd18
Replace recursive_mutex with mutex ( #708 )
...
* Replace recursive_mutex with mutex
* Move mutex lock outside of ObtainBuffer
2024-09-01 22:20:22 +03:00
Emulator-Team-2
e4d8857eb5
Adding missing data format - (1_5_5_5) ( #701 )
...
* added data_format=17 and num_format=0
* Set `sceSaveDataDialogIsReadyToDisplay` temporary to 1 until is properly implemented.
2024-09-01 21:49:01 +03:00
georgemoralis
63d78aee0a
Merge pull request #703 from squidbus/mac-tcb
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
macos: Remove need for TLS patch by storing TCB pointer in FS.
2024-09-01 17:34:23 +03:00
georgemoralis
9b6cd9ec9f
Merge pull request #686 from Exhigh/savedata-fix-5
...
savedata: Handle a missing case in saveDataMount
2024-09-01 17:11:14 +03:00
squidbus
9e5047947b
macos: Remove need for TLS patch by storing TCB pointer in FS.
2024-09-01 02:22:42 -07:00
georgemoralis
3abc7d6b43
Merge pull request #685 from squidbus/patch-fixes
...
core: Fix CPU patch stack issues
2024-08-31 23:43:26 +03:00
psucien
766c286d62
libraries: gnmdriver: sceGnmValidateCommandBuffers
added
2024-08-31 22:01:08 +02:00
Exhigh
ebfed28f6b
savedata: Handle a missing case in saveDataMount
...
This should potentially fix the mount issue in Resistance : Retribution (CUSA32636)
Testing is welcome.
2024-08-31 08:21:23 +04:00
squidbus
61db246c5e
core: Fix CPU patch stack issues
2024-08-30 20:47:07 -07:00
psucien
ca1613258f
video_core: added support for indirect draws ( #678 )
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
* video_core: added support for indirect draws
* barriers simplified
2024-08-30 22:59:56 +02:00
Xphalnos
7886761476
Reorganization of includes (Part 2)
2024-08-30 15:48:21 +02:00
squidbus
6e552aac6a
Initialize patch stack before thread TLS.
2024-08-30 04:43:11 -07:00
georgemoralis
cdd193d5b1
Merge pull request #638 from squidbus/f16c
...
Add patches for F16C instructions under Rosetta 2.
2024-08-30 11:16:21 +03:00
squidbus
a17150960f
Add patches for F16C instructions under Rosetta 2.
2024-08-29 17:31:25 -07:00
TheTurtle
66e96dd944
video_core: Account of runtime state changes when compiling shaders ( #575 )
...
* video_core: Compile shader permutations
* spirv: Only specific storage image format for atomics
* ir: Avoid cube coord patching for storage image
* spirv: Fix default attributes
* data_share: Add more instructions
* video_core: Query storage flag with runtime state
* kernel: Use std::list for semaphore
* video_core: Use texture buffers for untyped format load/store
* buffer_cache: Limit view usage
* vk_pipeline_cache: Fix invalid iterator
* image_view: Reduce log spam when alpha=1 in storage swizzle
* video_core: More features and proper spirv feature detection
* video_core: Attempt no2 for specialization
* spirv: Remove conflict
* vk_shader_cache: Small cleanup
2024-08-29 19:29:54 +03:00
Dzmitry Dubrova
8827c72a1c
Add DLC support ( #596 )
...
* fs/core: Add DLC support
* fs/core: Fix extraction paths
* Fix DLC mounting
* gui: Add translations
2024-08-29 12:55:40 +03:00
DanielSvoboda
614a23b369
Cheats/Patches ( #493 )
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
* Cheats/Patches
Adds the possibility of applying cheats/patches according to the specific game serial+version
The logic for adding modifications has not yet been implemented!
Interface based on issues/372 https://github.com/shadps4-emu/shadPS4/issues/372
[X]Front-end
[]Back-end
Create a synchronized fork of the cheats/patches repository
* Clang Format
* separate files
The code has been separated into separate files as suggested by georgemoralis.
Added the Patch tab, which has not been implemented yet.
Added the 'applyCheat' area to apply the modification, not implemented yet...
And added LOG_INFO.
* reuse
* initial implementation of cheat functionality
* Update cheats_patches.cpp
sets all added buttons to the size of the largest button.
and fixes some aesthetic issues.
* move eboot_address to module.h
fixes the non-qt builds and makes more sense to be there anyway
* Patchs menu and fixes
adds the possibility to download Patches, it does not modify the memory yet.
and some other fixes
* MemoryPatcher namespace, activate cheats on start
* format
* initial patch implementation
* format
* format again...
* convertValueToHex
* Fixes
Choosing which cheat file to use.
And some other fixes
* fix bytes16, bytes32, bytes64 type patches
If a patch is any of these types we convert it from little endian to big endian
* format
* format again :(
* Implement pattern scanning for mask type patches
* add check to stop patches applying to wrong game
previously if you added a patch to a game, but closed the window and opened a different game it would still try to apply the patch, this is now fixed
* format
* Fix 'Hint' 0x400000 | and Author
* Management |save checkbox | shadps4 repository
MENU - Cheats/Patches Management (implementing Patches)
save patches checkbox
add shadps4 repository
* Load saved patches, miscellaneous fixes
* Fix an issue with mask patches not being saved
* format + remove debug log
* multiple patches | TR translation for cheats/patches
* clang
* ENABLE_QT_GUI
* OK
* move memory_patcher to qt_gui
* clang
* add cheats hu_HU
* fix log
* Remove the item from the patchesListView if no patches were added (the game has patches, but not for the current version)
---------
Co-authored-by: CrazyBloo <CrazyBloo@users.noreply.github.com>
2024-08-29 07:18:50 +03:00
georgemoralis
e57d55e6e9
Merge pull request #624 from Exhigh/savedata-fix-4
...
savedata: Add another missed case in saveDataMount
2024-08-28 18:07:50 +03:00
counter185
bc661039c5
get rid of one space
2024-08-28 14:25:07 +02:00
counter185
2e2f3bb2c6
clang format
2024-08-28 14:22:59 +02:00
counter185
4e6e90dfb9
add touchpad support, auto reconnect
2024-08-28 13:48:50 +02:00
squidbus
905d49fd96
memory: Fixes for direct memory allocation. ( #615 )
...
* memory: Size direct memory based on requested flexible memory.
* memory: Guard against OrbisProcParam without an OrbisKernelMemParam.
* memory: Account for alignment in direct memory suitability checks and add more debugging.
2024-08-28 13:42:53 +03:00
georgemoralis
dcc4762c7e
Merge pull request #628 from squidbus/pkg-fix
...
crypto: Fix deallocation of key data while in use.
2024-08-28 13:42:01 +03:00
squidbus
4a6ce1e0d6
crypto: Fix deallocation of key data while in use.
2024-08-28 03:39:51 -07:00
georgemoralis
878fac7f94
Merge pull request #626 from InvoxiPlayGames/special-pad
...
pad: add support for configurable special pad class
2024-08-28 13:24:37 +03:00
squidbus
da966bedfd
kernel: Reimplement POSIX semaphores using std::counting_semaphore. ( #600 )
2024-08-28 13:13:33 +03:00
InvoxiPlayGames
9d59ea06c7
clang-format fix: scePadOpenExt
2024-08-28 11:10:20 +01:00
InvoxiPlayGames
550cf0188d
return proper error code for scePadOpen failure
2024-08-28 10:51:30 +01:00
InvoxiPlayGames
79e86a39fc
add support for configurable special pad type
2024-08-28 10:27:51 +01:00
Exhigh
ed42db47af
savedata: Add another missed case in saveDataMount
...
This should potentially fix Deadpool (CUSA03528) #554 .
2024-08-28 08:52:20 +04:00
Semenov Herman
860b935054
crypto: added destructors fix memleak FakeKeyset, DebugRifKeyset, PkgDerivedKey3Keyset
2024-08-28 01:32:14 +03:00
psucien
3eb47226d9
libraries: kernel: fix scePthreadMutexattrSettype
error value return
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
2024-08-27 22:25:46 +02:00
Lizardy
59b651be07
[Libs] Error Codes ( #612 )
...
* ngs2: all errors w/ official names
* ajm errors
* gnm errors
* random errors
* clang
* random error
* linux
---------
Co-authored-by: microsoftv <6063922+microsoftv@users.noreply.github.com>
2024-08-27 15:53:38 +03:00
Vladislav Mikhalin
2d354a095a
AvPlayer: Handle Initialization errors
2024-08-27 09:32:42 +03:00
psucien
af4356bfe1
shader_recompiler: fix for pattern detection in TryDisableAnisoLod0
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
Also fix for forgotten log message params.
2024-08-26 23:49:36 +02:00
psucien
3e94b533b6
libraries: kernel: skip for protection op; processing logic fixes ( #602 )
2024-08-26 23:14:22 +02:00
Exhigh
7c7d04133e
savedata: Handle another missed case in saveDataMount
...
This should potentially fix (CUSA01019) - The Walking Dead: The Complete First Season.
2024-08-26 19:34:35 +04:00
Plínio Larrubia
ad8373095a
fix typo in LOG_INFO ( #559 )
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
fix: file name typo constant_propogation_pass.cpp
fix typo from 'symbol_vitrual_addr' variable
fix typo in emit_spirv_context_get_set.cpp
fix typo from constant_propagation_pass.cpp in CMakeLists
fix typo in these some config.cpp functions
- setSliderPosition
- setSliderPositionGrid
- getSliderPosition
- getSliderPositionGrid
fix typo inside src\core\aerolib\stubs.cpp
fix typo in a comment from src\core\file_format\pkg.cpp
fix typo inside src\core\file_sys\fs.cpp + fs.h
- NeedsCaseInsensiveSearch -> NeedsCaseInsensitiveSearch
fix 2 function typos: sceAppContentAddcontEnqueueDownloadByEntitlemetId and sceAppContentAddcontMountByEntitlemetId
fix typo on comment inside src\core\libraries\kernel\file_system.cpp
fix typo on src\core\libraries\videoout\driver.cpp
fix typo in src\core\memory.cpp
fix typo from comment in src\qt_gui\game_list_utils.h
fix typo in src\video_core\amdgpu\liverpool.h
- window_offset_disble to window_offset_disable
fix typo from comments in src\video_core\host_shaders\detile_m32x1.comp + detile_m32x2.comp
- subotimal -> suboptimal
fix typo from comment in src\video_core\renderer_vulkan\renderer_vulkan.cpp
- dimentions -> dimensions
fix typo from enum in src\common\debug.h and other files
- MarkersPallete -> MarkersPalette
fix last typo in src\video_core\amdgpu\pm4_opcodes.h
- PremableCntl -> PreambleCntl
2024-08-26 15:22:11 +03:00
georgemoralis
3627393707
Merge pull request #593 from shadps4-emu/fix/better_timings
...
libraries: kernel: fix for inaccurate `sceKernelGetProcessTime`
2024-08-26 10:56:54 +03:00
psucien
78e24852f8
libraries: kernel: fix for inaccurate sceKernelGetProcessTime
2024-08-26 08:54:38 +02:00
Daniel R.
fae0c0ae85
core/kernel: Miscellaneous memory fixes ( #557 )
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
* core/libraries/kernel: Fix inaccurate direct memory size
* core/memory: Fix available dmem query on non-free dmem areas
* core/kernel: return ENOMEM if memory area size is zero
* core/kernel: Fix returns on `sceKernelAvailableDirectMemorySize`
* core/memory: Remove unneeded size alignment
2024-08-26 04:14:21 +03:00
psucien
b687ae5e34
GnmDriver: Clear context support ( #567 )
...
* gnmdriver: added support for gpu context reset
* shader_recompiler: minor validation fixes
* shader_recompiler: added `V_CMPX_GT_I32`
* shader_recompiler: fix for crash on inline sampler access
* compilation warnings and dead code elimination
* amdgpu: fix for registers addressing
* libraries: videoout: reduce logging pressure
* shader_recompiler: fix for devergence scope detection
2024-08-25 23:01:05 +03:00
TheTurtle
c79b10edc1
video_core: Bloodborne stabilization pt1 ( #543 )
...
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
* shader_recompiler: Writelane elimination pass + null image fix
* spirv: Implement image derivatives
* texture_cache: Reduce page bit size
* clang format
* slot_vector: Back to debug assert
* vk_graphics_pipeline: Handle null tsharp
* spirv: Revert some change
* vk_instance: Support primitive restart on list topology
* page_manager: Adjust windows exception handler
* clang format
* Remove subres tracking
* Will be done separately
2024-08-24 22:51:47 +03:00
georgemoralis
208575d392
Merge pull request #560 from vladmikhalin/avplayer-and-texture-cache-fixes
...
Fixed video dimensions alignment and image cache
2024-08-24 17:24:36 +03:00
georgemoralis
8b0fd59149
Merge pull request #558 from Exhigh/savedata-fix-2
...
savedata: Add another missing case to saveDataMount
2024-08-24 17:14:10 +03:00
Vladislav Mikhalin
41dec15869
Fixed video dimensions alignment and image cache
2024-08-24 16:59:30 +03:00
Exhigh
6a84f6e188
savedata: Add another missing case to saveDataMount
...
This helps Five Nights at Freddy's: Sister Location (CUSA17983) boot and is playable.
Fixes issue #554
2024-08-24 17:48:39 +04:00
Herman Semenov
243fd0be78
core,shader_recompiler: align structures for 64-bit platforms ( #447 )
...
Decreased sizes:
* TextureDefinition 32 bytes -> 24 bytes
* PortOut 72 bytes -> 64 bytes
* Request 48 bytes -> 40 bytes
* WindowSystemInfo 32 bytes -> 24 bytes
2024-08-24 16:18:12 +03:00
Herman Semenov
a0774c0e87
Fixed invalid set public exponent Crypto::DebugRifKeyset_init()
2024-08-23 22:04:55 +03:00
Exhigh
6545b09b74
savedata: Handle missed case in saveDataMount
...
This should help P5D get past the intro.
P.S: The game requires Fiber and USBD modules to boot.
2024-08-23 16:27:03 +04:00
georgemoralis
83bcced16c
Merge pull request #502 from Borchev/ROMappedFileWorkaround
...
Workaround for readonly memory mapping of files issue
2024-08-22 13:49:19 +03:00
georgemoralis
12a65e3fb8
LLE libc removal
2024-08-22 11:24:31 +03:00
Herman Semenov
aed9a737d6
Added const reference params if possible, removed less 16 size
2024-08-22 02:56:01 +03:00
Vladislav Mikhalin
79680c50c0
Misc fixes ( #517 )
...
* Misc fixes
* Removed the skip for draw calls without RTs
* Remove Srgb image stores to rework later
2024-08-21 23:54:23 +03:00
georgemoralis
3426ad8cc0
Merge pull request #511 from dima-xd/sample
...
avplayer: Fix data returned by sceAvPlayerGetAudioData
2024-08-21 16:53:01 +03:00
Dzmitry Dubrova
6d0d2eaa59
avplayer: Fix sceAvPlayerGetAudioData
2024-08-21 14:37:34 +03:00
Borchev
fc300b5265
Fix unmapping bug
2024-08-20 20:07:32 -07:00
Borchev
6596fe091c
Workaround for readonly memory mapping of files issue
2024-08-20 16:10:38 -07:00
TheTurtle
3f9c86ad33
vk_pipeline_cache: Avoid recompiling new shaders on each new PL ( #480 )
...
* cfg: Add one more divergence case
* Seen in RDR shaders
* renderer_vulkan: Reduce number of compiled shaders
* vk_pipeline_cache: Remove some unnecessary checks
2024-08-21 02:00:24 +03:00
Lizardy
32cb3649d3
rtc errors ( #485 )
...
* rtc errors
* add system libs to cmakelists
* this.[func]
* fix errors
* declaration
* log handle addr
* missed
---------
Co-authored-by: microsoftv <6063922+microsoftv@users.noreply.github.com>
2024-08-21 00:47:17 +03:00
georgemoralis
8d90e6d997
Merge pull request #475 from bax-cz/main
...
PlayGo: basic implementation, credits to red-prig
2024-08-20 11:43:37 +03:00
bax-cz
0b3356bd1a
linux build fix
2024-08-20 09:28:07 +02:00
bax-cz
8f7b3c2e8c
clang: fixed formatting
2024-08-19 20:40:23 +02:00
Dzmitry Dubrova
1f416134e7
Add messages to asserts ( #476 )
2024-08-19 15:29:13 +03:00
bax-cz
516a3e7104
PlayGo: basic implementation, credits to red-prig
2024-08-19 13:14:14 +02:00
Lizardy
138c9ce787
[WIP] libSceNgs2 ( #439 )
...
* init ngs2
* clang
* ngs2 HLE for missing LLE
* clang
* clang
* orbis ngs2 error codes
* resolve, error codes, ngs2_impl
* clang
* clang
* mac atomic
* clang
* mac
* clang
---------
Co-authored-by: microsoftv <6063922+microsoftv@users.noreply.github.com>
2024-08-19 10:03:05 +03:00
georgemoralis
43e92bb987
Merge pull request #456 from StevenMiller123/sem_fix
...
Improve posix_sem functions
2024-08-17 10:57:19 +03:00
Stephen Miller
2935ca0fef
clang-format fix
2024-08-16 17:22:06 -05:00
Stephen Miller
9fce6f7c01
Add SetPosixErrno function
...
I used a switch statement for future proofing, as some codes differ between Windows, Mac, Linux, or Orbis. Right now I've only added the codes that should be possible to encounter.
2024-08-16 17:20:21 -05:00
Stephen Miller
93f14e8ae9
Might fix clang-format?
2024-08-16 15:10:20 -05:00
Stephen Miller
6510af90be
another clang-format fix
2024-08-16 15:07:19 -05:00
Stephen Miller
f36440dc09
clang-format fix
2024-08-16 14:55:55 -05:00
Stephen Miller
786db80742
Improve posix_sem functions
...
Use ErrSceToPosix to update g_posix_errno appropriately after sem function calls.
2024-08-16 14:33:48 -05:00
Dzmitry Dubrova
dcb057dd7f
misc changes, part ?/? ( #441 )
...
* gui: add option to boot a game by choosing elf file
* core: some small implementations
* fs: implement open func
* add some validations
* spirv: add image format
* video_core: add eR16Uint to formats
2024-08-16 20:16:15 +03:00
Dzmitry Dubrova
9e810b7524
core: Some small pad stubs ( #424 )
...
* core: Some small pad stubs
* core: handle scePadSetLightBar wrong lightbar setting
2024-08-16 20:11:55 +03:00
TheTurtle
1d1c88ad31
control_flow_graph: Initial divergence handling ( #434 )
...
* control_flow_graph: Initial divergence handling
* cfg: Handle additional case
* spirv: Handle tgid enable bits
* clang format
* spirv: Use proper format
* translator: Add more instructions
2024-08-16 20:05:37 +03:00
Herman Semenov
c1fb5d5bca
core,shader_recompiler: added const ref filesystem::path and removed if type size less 16 ( #446 )
2024-08-16 11:36:05 +03:00
Vladislav Mikhalin
23dddca1f0
last minute fixes
2024-08-16 10:30:48 +03:00
Vladislav Mikhalin
b3ef959b25
Fixed threading, migrated to CVs, added looping
2024-08-15 22:02:04 +03:00
Vladislav Mikhalin
5c4ac98d49
fixing build on linux and mac
2024-08-15 22:00:51 +03:00
Vladislav Mikhalin
0d6e8e227a
Fixed some sound and threading issues.
...
Details:
* Switched SDL audio mutex to RW lock. This fixes games that continiously call SetVolume in a different thread (like Ghostbusters)
* Added contition to buffer audio packets independent of video packets. This fixes choppy audio across many games.
* Increased the number of audio frame buffers from 2 to 4. Just in case.
* Migrated to std::jthread and std::mutex from pthreads.
* Fixed a race condition with joins on avplayer close that caused a crash.
2024-08-15 22:00:51 +03:00
Vladislav Mikhalin
e33ff10212
Added some logs, fixed some crashes, fixed align.
2024-08-15 22:00:51 +03:00
Vladislav Mikhalin
b5c69189e5
avplayer WIP
2024-08-15 22:00:51 +03:00
psucien
d32e584839
libraries: vide_out: redundant assert removed
2024-08-15 17:41:53 +02:00
¥IGA
8c77d4dde6
Ability to change username ( #432 )
2024-08-15 12:33:10 +03:00
Dzmitry Dubrova
6f4e1a47b9
core: misc changes ( #430 )
...
* core: misc changes
* video_core: add some formats for detiling
* clang format
2024-08-14 20:37:05 +02:00
Stephen Miller
5f963772a0
scePthreadAttrSetstack implementation ( #391 )
...
* scePthreadAttrSetstack implementation
Used by Final Fantasy XV
* Address Comments
Verify parameters before calling the pthread_attr_setstack function.
Swap uses of SCE prefix with ORBIS prefix.
* Quick fix
Addresses the newest review and appears to fix issues caused in games by my previous commit.
2024-08-14 18:43:00 +02:00
Daniel R.
6cc4a682fd
core/memory: Fix error on virtual queries of reserved regions
2024-08-14 15:34:17 +02:00
psucien
27cb218584
video_core: CPU flip relay ( #415 )
...
* video_core: cpu flip is propagated via gpu thread now
* tentative fix for cpu flips racing
* libraries: videoout: better flip status handling
2024-08-14 11:36:11 +02:00
TheTurtle
d8b9d82ffa
video_core: Various fixes ( #423 )
...
* video_core: Various fixes
* clang format
2024-08-13 20:05:10 +03:00
counter185
bb159eafb9
Basic gamepad support through SDL ( #407 )
...
* Add basic gamepad support through SDL
* lightbar, vibration, code style changes
* okay fine
* one day clang format will finally pass
2024-08-13 12:54:08 +03:00
TheTurtle
1fb0da9b89
video_core: Crucial buffer cache fixes + proper GPU clears ( #414 )
...
* translator: Use templates for stronger type guarantees
* spirv: Define buffer offsets upfront
* Saves a lot of shader instructions
* buffer_cache: Use dynamic vertex input when available
* Fixes issues when games like dark souls rebind vertex buffers with different stride
* externals: Update boost
* spirv: Use runtime array for ssbos
* ssbos can be large and typically their size will vary, especially in generic copy/clear cs shaders
* fs: Lock when doing case insensitive search
* Dark Souls does fs lookups from different threads
* texture_cache: More precise invalidation from compute
* Fixes unrelated render targets being cleared
* texture_cache: Use hashes for protect gpu modified images from reupload
* translator: Treat V_CNDMASK as float
* Sometimes it can have input modifiers. Worst this will cause is some extra calls to uintBitsToFloat and opposite. But most often this is used as float anyway
* translator: Small optimization for V_SAD_U32
* Fix review
* clang format
2024-08-13 09:21:48 +03:00
Lizardy
5eecd089ab
thread_management.cpp: Various Mandatory Threading Fixes | Resolve #398 ( #394 )
...
* Handle empty mutex attribute
- scePthreadMutexInit did not return default when the mutex attributes were empty, now it does
* fix conditional unsafety
* Update thread_management.cpp
fix deref
* accurate heap api
- modified HeapAPI to a struct with preset function fields
- utilized the full array parameter passed to _sceKernelRtldSetApplicationHeapAPI
* fallback to std malloc
* clang format
* Declare all HeapAPI replacement functions
- calloc, realloc, memalign, reallocalign, malloc_stats, malloc_stats_fast, malloc_usable_size
- posix_memalign corrected parameters
* resolve suggestions
- `using` definition replacement for AppHeapAPI
- linux uses heap_malloc, windows uses std::malloc
---------
Co-authored-by: microsoftv <6063922+microsoftv@users.noreply.github.com>
2024-08-13 09:08:03 +03:00
Borchev
18f1799280
Add partial unmap support ( #322 )
...
* Add partial unmap support
* undo accidental whitespace removal
* Fix assertions
* Adjust Reserve and Free functions for partial unmapping
2024-08-13 09:05:30 +03:00
psucien
3d0fdf11f0
Build stabilization ( #413 )
...
* shader_recompiler: fix for float convert and debug asserts
* libraries: kernel: correct return code on invalid semaphore
* amdgpu: additional case for cb extents retrieval heuristic
* removed redundant check in assert
* amdgpu: fix for linear tiling mode detection fin color buffers
* texture_cache: fix for unexpected scheduler flushes by detiler
* renderer_vulkan: missing depth barrier
* texture_cache: missed slices in rt view; + detiler format
2024-08-12 17:23:01 +03:00
psucien
3e2d4d6b79
Gnmdriver: More functions ( #410 )
...
* libraries: gnmdriver: added `sceGnmGetGpuCoreClockFrequency`
* libraries: gnmdriver: `sceGnmSetVgtControl` added
* amdgpu: gpuclock64 in write eop packet
2024-08-12 13:29:57 +02:00
georgemoralis
834e3a500e
added a fix for audio (seems that some games calls sceAudioOutInit twice) Thanks Roamic for tracing this!
2024-08-11 13:16:50 +03:00
georgemoralis
425e5491a8
added setting for change language
...
(reference to https://github.com/shadps4-emu/shadPS4/wiki/PS4-Modules#supported-languages for values)
2024-08-09 11:58:42 +03:00
georgemoralis
250b2e4969
small playgo adjustments
2024-08-09 00:02:26 +03:00
georgemoralis
3ef69cae5e
some pad fixes (fixing metal slug 3 and risk of rain)
2024-08-09 00:02:25 +03:00
georgemoralis
7b7d1cb26f
added missing NIDs in thread management
2024-08-09 00:02:25 +03:00
georgemoralis
816700d34d
fixed to scePadGetControllerInformation , (fixes CUSA04892 - power rangers multi user issue)
2024-08-09 00:02:25 +03:00
Stephen Miller
48c58d5ce0
Kernel-Related Fixes ( #386 )
...
* Fix OrbisKernelBatchMapEntry struct
UE4 games and GTA V cause the BatchMap offset to overflow on Windows. Changing the type fixes this, and doesn't seem to cause any regressions on Windows or Linux.
* Implement posix_sem_trywait
Grand Theft Auto V needs this.
* Add missing scePthreadAttrGetdetachstate NID
Noticed this missing NID while testing games.
2024-08-08 23:42:51 +03:00
TheTurtle
381ba8c7a5
video_core: Implement guest buffer manager ( #373 )
...
* video_core: Introduce buffer cache
* video_core: Use multi level page table for caches
* renderer_vulkan: Remove unused stream buffer
* fix build
* oops forgot optimize off
2024-08-08 15:02:10 +03:00
TheTurtle
159be2c7f4
video_core: Minor fixes ( #366 )
...
* data_share: Fix DS instruction
* vk_graphics_pipeline: Fix unnecessary invalidate
* spirv: Remove subgroup id
* vector_alu: Simplify mbcnt pattern
* shader_recompiler: More instructions
* clang format
* kernel: Fix cond memory leak and reduce spam
* liverpool: Print error on exception
* build fix
2024-08-05 13:45:28 +03:00
georgemoralis
0ac9f8ffa4
Merge pull request #346 from shadps4-emu/savedata_1
...
SaveData Fixes
2024-07-31 17:34:44 +03:00
Dzmitry Dubrova
0fe766db6c
core: Implement sceRandomGetRandomNumber ( #350 )
2024-07-31 14:01:22 +03:00
raziel1000
d017bab21e
Kernel: added sceKernelConvertLocaltimeToUtc
2024-07-31 00:21:23 -06:00
raziel1000
d7acb93d6f
- Implemented sceSaveDataSetParam and sceSaveDataGetParam
...
- Fixed sceSaveDataDirNameSearch
2024-07-30 22:55:58 -06:00
TheTurtle
a7c9bfa5c5
shader_recompiler: Small instruction parsing refactor/bugfixes ( #340 )
...
* translator: Implemtn f32 to f16 convert
* shader_recompiler: Add bit instructions
* shader_recompiler: More data share instructions
* shader_recompiler: Remove exec contexts, fix S_MOV_B64
* shader_recompiler: Split instruction parsing into categories
* shader_recompiler: Better BFS search
* shader_recompiler: Constant propagation pass for cmp_class_f32
* shader_recompiler: Partial readfirstlane implementation
* shader_recompiler: Stub readlane/writelane only for non-compute
* hack: Fix swizzle on RDR
* Will properly fix this when merging this
* clang format
* address_space: Bump user area size to full
* shader_recompiler: V_INTERP_MOV_F32
* Should work the same as spirv will emit flat decoration on demand
* kernel: Add MAP_OP_MAP_FLEXIBLE
* image_view: Attempt to apply storage swizzle on format
* vk_scheduler: Barrier attachments on renderpass end
* clang format
* liverpool: cs state backup
* shader_recompiler: More instructions and formats
* vector_alu: Proper V_MBCNT_U32_B32
* shader_recompiler: Port some dark souls things
* file_system: Implement sceKernelRename
* more formats
* clang format
* resource_tracking_pass: Back to assert
* translate: Tracedata
* kernel: Remove tracy lock
* Solves random crashes in Dark Souls
* code: Review comments
2024-07-30 23:32:40 +02:00
georgemoralis
ac6dc20c3b
Merge pull request #343 from Borchev/AddPthreadGetStackSizeThunk
...
Add pthread_attr_getstacksize thunk
2024-07-30 23:36:39 +03:00
Borchev
361271826e
Fix SearchFree function bug ( #339 )
2024-07-30 22:40:42 +03:00
Borchev
867f38fe13
Add pthread_attr_getstacksize thunk
2024-07-30 12:37:05 -07:00
georgemoralis
c1d01709be
kernel: Implement sceKernelSetVirtualRangeName ( #338 )
...
* Fix in searchFree should fix #337
* clang format fix
* sceKernelSetVirtualRangeName implementation
* improved vaddr conversion
* updated VirtualQuery to include name too
* unmap also removed name thanks @red_prig
* fixed copy...
2024-07-29 19:08:06 +03:00
squidbus
43d60a8ac9
Add sem_timedwait polyfill for macOS.
2024-07-28 16:42:33 -07:00
Dzmitry Dubrova
aa7c8ca2b6
Implement some pthread calls ( #332 )
2024-07-28 18:43:44 +03:00
TheTurtle
0d6edaa0a0
Move presentation to separate thread/improve sync ( #303 )
...
* video_out: Move presentation to separate thread
* liverpool: Better sync for CPU flips
* driver: Make flip blocking
* videoout: Proper flip rate and vblank management
* config: Add vblank divider option
* clang format
* videoout: added `sceVideoOutWaitVblank`
* clang format
* vk_scheduler: Silly merge conflict
* externals: Add renderdoc API
* clang format
* reuse
* rdoc: manual capture trigger
* clang fmt
---------
Co-authored-by: psucien <168137814+psucien@users.noreply.github.com>
2024-07-28 15:54:09 +02:00
Vinicius Rangel
361412031c
fix tls patch on windows ( #328 )
...
* fix tls patch on windows
based on TlsGetValue in kernel32.dll
* fix tls patch on windows for expansion slots
2024-07-27 20:16:21 +03:00
TheTurtle
d84b4adc83
semaphore: Yet another race condition fix ( #327 )
2024-07-27 17:18:18 +03:00
raziel1000
600a13c38f
fs: added /download0 mount
...
fs: get rid of double slashes
2024-07-26 08:07:22 -06:00
georgemoralis
2841eba538
added /dev/urandom
2024-07-26 08:50:39 +03:00
georgemoralis
a4912b8245
commented sem_timedwait for linux untill @squidbus fix it
2024-07-26 08:16:32 +03:00
georgemoralis
64d305faeb
cleanup memory_management
2024-07-26 08:08:47 +03:00
raziel1000
fa76a723ad
Applied feedback from @raphaelthegreat
2024-07-26 07:59:35 +03:00
georgemoralis
b4916ef2ca
some fixup to playgo , makes Worms go further
2024-07-26 07:53:45 +03:00
raziel1000
a475b38e5f
- fixed sceAppContentTemporaryDataMount2
2024-07-26 07:53:19 +03:00
raziel1000
f29293c9fb
thread_management: some pthread functions
2024-07-26 07:53:18 +03:00
raziel1000
02d4af27df
save_data: fix/accuracy for saveDataMem functions
2024-07-26 07:53:18 +03:00
TheTurtle
a2cd1669b6
memory: Cleanups and refactors ( #324 )
...
* memory: Various fixes
* Added (Partial) sceKernelBatchMap/sceKernelBatchMap2
* memory: Rename and implement batch unmap
* memory: Remove uneeded assert
* memory: Commonize free search routine
* memory: Contains check is inclusive
* memory: Address some alignment issues
* clang format
---------
Co-authored-by: raziel1000 <ckraziel@gmail.com>
2024-07-25 23:01:12 +03:00
georgemoralis
8fa6a8c036
clang fix
2024-07-25 11:59:39 +03:00
IndecisiveTurtle
8bb6c0ddf0
address_space: Fix windows placeholder mapping
2024-07-24 22:59:56 +03:00
georgemoralis
062ee9e092
one more memory fix
2024-07-21 23:16:46 +03:00
georgemoralis
fe9b07da54
memory fix
2024-07-21 23:14:40 +03:00
georgemoralis
36ec7a1a43
Merge pull request #312 from Borchev/main
...
Add sceKernelGetDirectMemoryType, update sceKernelReserveVirtualRange
2024-07-21 22:52:50 +03:00
squidbus
70708fc69b
Allocate more system reserved space on macOS and document restrictions.
2024-07-21 22:36:12 +03:00
squidbus
615f4e770f
Support RIP relative memory operands in patched instructions.
2024-07-21 22:36:12 +03:00
squidbus
426d82d07b
Only use date library on macOS.
2024-07-21 22:36:12 +03:00
squidbus
b557de2c62
Make sure only system managed region can be moved on Windows.
2024-07-21 22:36:12 +03:00
squidbus
26e0fc6ad5
Only patch BMI1 instructions under Rosetta 2.
2024-07-21 22:36:12 +03:00
squidbus
3e84d2b76c
Define tessellation_factors_ring_addr relative to end of system reserved area.
2024-07-21 22:36:12 +03:00
squidbus
e2adbd75c3
Reduce system reserved space to 0x700000000 and map fixed on macOS.
2024-07-21 22:36:12 +03:00
squidbus
f943ce2710
Address review comments around memory and patches.
2024-07-21 22:36:12 +03:00
squidbus
b3d97dcd89
Make sure system managed memory is in correct location on macOS.
2024-07-21 22:36:12 +03:00
squidbus
e06039d727
Set minimum macOS target to 11 and fix compile errors.
2024-07-21 22:36:12 +03:00
squidbus
d9231b239c
Migrate TLS patches to new patching system.
2024-07-21 22:36:12 +03:00
squidbus
66fa29059c
Add initial macOS support.
2024-07-21 22:36:12 +03:00
Borchev
5419212088
Fix formatting
2024-07-21 12:35:01 -07:00
Borchev
f556f85279
Add sceKernelGetDirectMemoryType and update sceKernelReserveVirtualRange to search for free region when virtual_addr==0
2024-07-21 11:29:24 -07:00
psucien
64459f1a76
Surface management rework (1/3) ( #307 )
...
* amdgpu: proper CB and DB sizes calculation; minor refactoring
* texture_cache: separate file for image_info
* texture_cache: image guest address moved into image info
* texture_cache: surface size calculation
* shader_recompiler: fixed sin/cos
Thanks to red_pring and gandalfthewhite0173
* initial preparations for subresources upload
* review comments
2024-07-20 12:51:21 +03:00
georgemoralis
25e95c959a
Merge branch 'main' into miscFixes6
2024-07-18 18:18:10 +03:00
Dzmitry Dubrova
485d4fd0fb
kernel: Implement posix_pthread_once ( #297 )
...
* kernel: Implement posix_pthread_once
* Fix clang format
2024-07-17 23:34:22 +03:00
georgemoralis
0ed9ea5b85
force imedialog to input "shadps4" as name . That way we can pass games that want username . temp solution till imgui dialog prepared
2024-07-17 20:32:14 +03:00
IndecisiveTurtle
01dc7f5bfc
Add comments
2024-07-17 15:52:40 +03:00
IndecisiveTurtle
b6f011c8f6
event_queue: Add clear flag to events and don't return error
2024-07-17 14:50:26 +03:00
IndecisiveTurtle
c64694c673
gnmdriver: Fix incorrect trailing nop insertion in indirect draws
2024-07-17 14:48:30 +03:00
IndecisiveTurtle
815ce11d2b
fs: Defeat games with double slashes
2024-07-17 14:46:37 +03:00
georgemoralis
7ad44317f8
Merge pull request #252 from qurious-pixel/patch-1
...
Move "game_data" to RW directory inside user folder for linux
2024-07-16 23:05:29 +03:00
squidbus
3ff11818ab
Return EBUSY from sceKernelPollEventFlag instead of ETIMEDOUT.
2024-07-16 04:53:37 -07:00
TheTurtle
0dda5eb6ef
fs: Fix nullptr check in GetFile
2024-07-15 16:52:24 +03:00
TheTurtle
3b0a5aed33
fs: Use proper append operator
2024-07-15 15:42:35 +03:00
georgemoralis
0de914995f
Merge pull request #293 from shadps4-emu/misc-fixes3
...
Various linux fixes
2024-07-15 15:25:20 +03:00
IndecisiveTurtle
3c8b3f9a29
fs: Remove some unnecessary string conversions
2024-07-15 15:14:04 +03:00
IndecisiveTurtle
10a7110c7d
Merge branch 'misc-fixes3' of https://github.com/shadps4-emu/shadPS4 into misc-fixes3
2024-07-15 15:05:29 +03:00
IndecisiveTurtle
356b59b041
kernel: Remove linux hack
...
* Breaks many games, only benefits BB. Tbd
2024-07-15 14:51:45 +03:00
IndecisiveTurtle
0599f4e6a5
fs: Fix case of getting the mount itself
2024-07-15 14:50:28 +03:00
georgemoralis
0298889131
windows std::filesystem fixes
2024-07-15 14:50:23 +03:00
georgemoralis
ba0be91c73
clang format fix
2024-07-15 14:18:28 +03:00
georgemoralis
c49afb4c17
Merge pull request #287 from polybiusproxy/dev
...
gnmdriver: Implement shader functions
2024-07-15 07:47:33 +03:00
jas0n098
6ec4a3d1b9
Replace deprecated pthread functions ( #290 )
...
pthread_attr_(set,get)stackaddr are deprecated and don't exist anymore on musl libc
2024-07-15 03:55:58 +03:00
IndecisiveTurtle
ce6a01bd41
clang format
2024-07-15 03:47:10 +03:00
IndecisiveTurtle
dbeed80e3b
fs: Actually functional linux case insensitive search
2024-07-15 03:37:30 +03:00
IndecisiveTurtle
26f8fbf628
tls: Use gs segment for linux
2024-07-15 01:48:57 +03:00
IndecisiveTurtle
dd7d232ac3
event_queues: Use std placeholders
2024-07-15 01:28:08 +03:00
psucien
ed37fb32a7
review comments applied
2024-07-14 23:25:41 +02:00
raziel1000
02cba0100d
Some functions called by Stardew Valley
2024-07-14 23:23:11 +03:00
georgemoralis
056dcf52ca
initial ime dialog handling
2024-07-14 23:23:10 +03:00
georgemoralis
b07bbecab4
replace unreachable with default return in sceKernelClockGettime
2024-07-14 23:23:10 +03:00
raziel1000
ecad6cd1a7
- sceSaveDataDirNameSearch wip, needs testing and more work.
2024-07-14 23:23:10 +03:00
psucien
034301de88
libraries: gnmdriver: added missing ASC PM4 dump
2024-07-14 18:27:28 +02:00
psucien
746792eda0
libraries: kernel: added sceKernelGetEventId
2024-07-14 18:20:31 +02:00
Live session user
a1fbab5de7
Move game_data to RW directory inside user folder for linux
2024-07-13 16:44:13 -07:00
Daniel R.
0649234fc2
clang-format
2024-07-12 11:03:55 +02:00
Daniel R.
88426e0399
gnmdriver: Implement shader functions
2024-07-12 11:00:11 +02:00
Daniel R.
a049bd3135
Fix Linux builds
2024-07-11 15:16:50 +02:00
Daniel R
914aa10875
Misc implementations and fixes. ( #250 )
...
* Implement `sceKernelFtruncate` and `sceKernelUnlink`.
* Remove unused variable.
* Implement `sceKernelReserveVirtualRange`, misc fixes
* Fix `sceKernelReserveVirtualRange`.
* Add TODO on reserve
* Replace comment with assert.
* Add missing copyright header
* Add `UNREACHABLE` for `IOFile::Unlink`.
* Move NT API initialization out of the header
* Fix bug where files were always mapped as read only.
* `clang-format`
2024-07-11 15:35:58 +03:00
Vladislav Mikhalin
989f88837d
Filesystem errors and Base Array Layers ( #280 )
...
* Filesystem errors and Base Array Layers
* Fixed build for POSIX
* forgot 1 file
2024-07-11 14:37:21 +03:00
psucien
ba5fb78c5a
fix for large delays precision + Linux build
2024-07-11 13:14:42 +03:00
psucien
0bb5240202
kernel: added HR timers and asio service thread
2024-07-11 13:14:42 +03:00
psucien
465cb0413e
kernel: equeue: minor refactoring
2024-07-11 13:14:42 +03:00
georgemoralis
5a078e3902
forgot to register avplayer module
2024-07-10 19:15:58 +03:00
georgemoralis
5beb607435
More HLE stuff and fixes ( #273 )
...
* sceKernelOpen truncate is not neccesary
* fixup scePthreadCondSignal
* dummy error , ime dialogs stubbed
* sceErrorDialog implemenation (no ui)
* small fix in sceSaveDataGetEventResult and sceAppContentTemporaryDataMount2.
* ime dialog structs and functions definations
* added stubbed avplayer
* Open folder should be first on context menu
---------
Co-authored-by: raziel1000 <ckraziel@gmail.com>
2024-07-10 19:20:19 +03:00
Vinicius Rangel
574b8a458c
Fix sceAudioOutOpen not handling audio param attributes
...
and returning error incorrectly when some mask is applied
2024-07-08 01:29:58 -03:00
georgemoralis
189033ae24
Merge pull request #253 from shadps4-emu/graphics/features_and_fixes
...
Graphics: missing features and fixes
2024-07-07 20:42:13 +03:00
psucien
c7af8df2ad
gnmdriver: added sceGnmFindResourcesPublic
stub
2024-07-07 13:47:01 +02:00
TheTurtle
379ec554a8
memory: Set virtual query offset
2024-07-07 01:26:17 +03:00
psucien
986ed0662c
gnmdriver, amdgpu: added gpu idle IRQ; submission lock logic improved
2024-07-06 18:03:34 +02:00
georgemoralis
bf74888be4
Merge pull request #239 from shadps4-emu/miscFixes3
...
Misc fixes 3
2024-07-06 11:16:53 +03:00
TheTurtle
38080b60af
shader_recompiler: Check usage before enabling capabilities ( #245 )
...
* vk_instance: Better feature check
* shader_recompiler: Make most features optional
* vk_instance: Bump extension vector size
* resource_tracking_pass: Perform BFS for sharp tracking
* The Witness triggered this
2024-07-06 02:42:16 +03:00
georgemoralis
4ae879875e
scePthreadMutexTimedlock added
2024-07-05 15:23:35 +03:00
raziel1000
7ea87f69ea
forgot duplicate.
2024-07-04 21:02:59 -06:00
Younes
8ce6ed4b59
Merge branch 'main' into miscFixes2
2024-07-04 20:51:04 -06:00
TheTurtle
3f123bbce2
thread_management: Fix windows build
2024-07-05 00:20:55 +03:00
TheTurtle
6ceab6dfac
shader_recompiler: Implement most integer image atomics, workgroup barriers and shared memory load/store ( #231 )
...
* shader_recompiler: Add LDEXP
* shader_recompiler: Add most image integer atomic ops
* shader_recompiler: Implement shared memory load/store
* shader_recompiler: More image atomics
* externals: Update sirit
* clang format
* cmake: Add missing files
* shader_recompiler: Fix some atomic bugs
* shader_recompiler: Vs outputs
* shader_recompiler: Shared mem has side-effects, fix format component order
* shader_recompiler: Inline constant buffer impl
* video_core: Fix regressions
* Work
* Fixup a few things
2024-07-05 00:15:44 +03:00
georgemoralis
fd39c50910
improved sceAppContentAppParamGetInt
2024-07-04 13:49:11 +03:00
georgemoralis
8d17f87a08
improved file not found return in sceKernelOpen
2024-07-04 11:38:23 +03:00
raziel1000
bdcadf63d2
scePthreadSetprio, scePthreadGetprio
2024-07-04 02:22:43 -06:00
raziel1000
e22ad65e70
....
2024-07-04 01:57:03 -06:00
raziel1000
1968b2aa81
...
2024-07-04 01:54:50 -06:00
raziel1000
c2c55fea87
mr clang format
2024-07-04 01:53:06 -06:00
raziel1000
0ecc54032c
- Several SaveData functions. Dysmantle and we are doomed should save and load now.
2024-07-04 01:51:46 -06:00
georgemoralis
3875c00281
fixed linux compile?
2024-07-04 09:38:25 +03:00
georgemoralis
0228b5861c
added scePthreadGetthreadid
2024-07-03 20:05:21 +03:00
georgemoralis
608301f86c
dummy sceAppContentGetAddcontInfoList and fixed structs
2024-07-03 20:04:56 +03:00
georgemoralis
dc8d3b208c
Merge pull request #230 from shadps4-emu/stabilization12
...
reduced logging
2024-07-01 23:53:59 +03:00
georgemoralis
3b87c3c128
moved elf logging to DebugDump fuction , which can be enabled in config . This reduces main log file a lot
2024-07-01 23:07:57 +03:00
IndecisiveTurtle
a603bc7d88
shader_recompiler: More instructions
2024-07-01 22:42:45 +03:00
IndecisiveTurtle
7d4f0da40e
video_core: Fix some regressions
2024-07-01 18:26:22 +03:00
IndecisiveTurtle
410ba37ec2
code: Add additional logging during init
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
7c7e9427ba
tls: Switch to trace logs
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
22b930ba5e
video_core: Track renderpass scopes properly
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
ad10020836
video_core: Fix a few problems
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
114f06d3f2
tls: Fix linux crash
2024-07-01 13:56:14 +03:00
georgemoralis
1f83824a8a
Merge pull request #225 from shadps4-emu/stabilization/10
...
Various fixes and improvements
2024-07-01 13:09:11 +03:00
georgemoralis
d2c1e58313
Merge pull request #220 from shadps4-emu/stabilization9
...
HLE stuff
2024-07-01 01:18:41 +03:00
georgemoralis
90b27352f8
eventflag : changed an assert to log as error
2024-07-01 00:51:38 +03:00
georgemoralis
24f78fac20
fixed name style
2024-07-01 00:50:07 +03:00
psucien
1f55eff9d8
libraries: gnmdriver: added initialization preamble to every first submit in a frame
2024-06-30 18:22:39 +02:00
georgemoralis
1413a70a92
added posix error write to errno
2024-06-30 10:40:06 +03:00
georgemoralis
d0278715cb
added case for savedata (needed by flow)
2024-06-30 10:12:07 +03:00
georgemoralis
084b2ab6d5
added sceKernelDeleteEventFlag
2024-06-30 10:11:44 +03:00
psucien
2386b46726
libraries: gnmdriver: sceGnmDrawInitToDefaultContextState
and sceGnmDrawInitToDefaultContextState400
implementation
2024-06-30 01:21:39 +03:00
psucien
3663c60f3d
libraries: gnmdriver: fix for incorrect offset in sceGnmDrawInitDefaultHardwareState175
2024-06-30 01:21:39 +03:00
georgemoralis
b3f15dfe2e
fixed posix_open return code
2024-06-28 23:19:33 +03:00
georgemoralis
1e717ab046
sceKernelOpen handle directory doesn't exist case
2024-06-28 23:06:15 +03:00
georgemoralis
a810e47876
few more sceNet work
2024-06-28 23:00:01 +03:00
georgemoralis
e54d574241
implemented a part of sceNet calls
2024-06-27 18:42:36 +03:00
georgemoralis
059f54838a
Merge pull request #219 from shadps4-emu/gnmdriver/hw_init
...
Complete HW state init functions
2024-06-27 17:33:58 +03:00
psucien
7fd832b68c
things prettified
2024-06-27 15:47:18 +02:00
georgemoralis
0ada442cbc
Stabilization8 ( #218 )
...
* disable configured flexible memory size (caused issues in some games)
* fixed case S_OR_B64 for blazing chrome
* submodules updates and fixes for latest SDL
* stubbed _sigprocmask (not handled and spams too much)
* added ReplaceOp case in Stencilop
* dummy ajm module added
2024-06-27 16:37:17 +03:00
psucien
91940781b8
libraries: gnmdriver: complete HW stat init functions
2024-06-27 13:36:55 +02:00
georgemoralis
521ff4d14b
clang format fixes
2024-06-26 20:32:08 +03:00
IndecisiveTurtle
c8ed338d5a
kernel: Const correctness
2024-06-26 18:24:06 +03:00
IndecisiveTurtle
e94149340e
kernel: Fix pread and pwrite
2024-06-26 18:09:58 +03:00
IndecisiveTurtle
3a80df007e
linker: More null check
2024-06-26 18:05:31 +03:00
IndecisiveTurtle
9bd3898829
kernel: Rework semaphore implementation
2024-06-26 17:57:18 +03:00
IndecisiveTurtle
a2394109ee
kernel: Cleanup filesystem code
2024-06-26 17:54:36 +03:00
psucien
3532fd1c9c
Merge pull request #215 from shadps4-emu/miscFixAgain
...
Misc fixes (mostly LLE)
2024-06-26 14:15:07 +02:00
georgemoralis
8a617be3b7
missed from previous commit
2024-06-26 14:57:18 +03:00
georgemoralis
7ef11a7bd8
added sceKernelGetFsSandboxRandomWord and dummy posix_connect
2024-06-26 14:56:41 +03:00
georgemoralis
c511b1b0cf
sceAudioOutGetPortState added
2024-06-26 14:48:32 +03:00
georgemoralis
84a39e2fb0
load existing lle modules from sys_module folder
2024-06-26 14:43:01 +03:00
Alexandre Bouvier
a2224a9b6b
fix system include paths
2024-06-25 18:17:16 +02:00
georgemoralis
8f45be7d44
Merge pull request #213 from shadps4-emu/hle/trophies
...
A better stub for trophies
2024-06-25 18:38:35 +03:00
psucien
9b3a89467e
fix for Linux build
2024-06-25 17:14:12 +02:00
georgemoralis
c8a149c983
Merge pull request #214 from shadps4-emu/miscFixes
...
Misc fixes
2024-06-25 17:55:57 +03:00
psucien
3b2a312f15
kernel: thread_management: silence compilation warning
2024-06-25 09:56:19 +02:00
psucien
ff64dd74f6
libraries: trophy: a better stubs implementation
2024-06-25 09:43:26 +02:00
psucien
8475a62a46
common: Common
namespace for the slot vector container
2024-06-25 09:31:32 +02:00
psucien
c04fbb75d8
libraries: gnm_driver: added sceGnmDrawIndexIndirect
and sceGnmDrawIndirect
2024-06-24 22:53:59 +02:00
psucien
508d034263
libraries: gnm_driver: added sceGnmSetEmbeddedPsShader
2024-06-24 14:51:17 +02:00
georgemoralis
1b6cb32b34
re-fix
2024-06-24 13:46:45 +03:00
georgemoralis
640354667e
insure we reset padData
2024-06-24 13:41:18 +03:00
georgemoralis
ad4db71e00
missing touchpad reset in scePadReadState
2024-06-24 13:26:18 +03:00
georgemoralis
6d2b2779ea
added sceKernelPwrite
2024-06-24 13:25:50 +03:00
psucien
cb6b21de1f
Initial instancing and asynchronous compute queues ( #207 )
...
* gnm_driver: added `sceGnmRegisterOwner` and `sceGnmRegisterResource`
* video_out: `sceVideoOutGetDeviceCapabilityInfo` for sdk runtime
* gnm_driver: correct vqid index range
* amdgpu: indirect buffer, release mem and some additional irq modes
* amdgpu: added ASC commands processor
* shader_recompiler: added support for fetch instance id
* amdgpu: classic bitfields for T# representation (debugging experience)
* renderer_vulkan: skip zero sized VBs from binding
* texture_cache: image upload logic moved into `Image` object
* gnm_driver: `sceGnmDingDong` implementation
* texture_cache: `Image` usage flags moved; correct VO buffer pitch
2024-06-22 19:50:20 +03:00
georgemoralis
94b9992d99
more clang format fix (final)
2024-06-22 18:17:40 +03:00
georgemoralis
11a3906243
clang fix
2024-06-22 18:12:04 +03:00
IndecisiveTurtle
73d60b7e8d
linker: Set rela bits for all symbol types
2024-06-22 18:09:04 +03:00
IndecisiveTurtle
11bfdf2348
kernel: Add noreturn
2024-06-22 18:09:04 +03:00
IndecisiveTurtle
30199fe701
kernel: Add scePthreadExit
2024-06-22 18:09:04 +03:00
IndecisiveTurtle
30351ad112
linker: Fix TLS for dynamic modules
...
* Technically not fully accurate but it works. TlsGetAddr should handle dynamic allocation of TLS blocks
2024-06-22 18:09:04 +03:00
IndecisiveTurtle
2506a285f4
kernel: Implement some functions
2024-06-22 18:09:03 +03:00
IndecisiveTurtle
7bdaeafdfd
kernel: Make sceKernelUsleep interruptible
2024-06-22 18:09:03 +03:00
georgemoralis
7519d4610c
added missing buttons and analog buttons to keyboard
2024-06-21 14:37:49 +03:00
georgemoralis
19edb8155f
fixed stupid directory iterator issue
2024-06-20 22:29:08 +03:00
georgemoralis
1b2c3ccc42
better dirents
2024-06-20 21:13:17 +03:00
georgemoralis
49601f58ed
initial dents support
2024-06-20 18:09:40 +03:00
georgemoralis
0325e4795a
posix_pthread_yield , scePadGetHandle
2024-06-20 17:10:14 +03:00
georgemoralis
48d6ccd9bb
partially added analog controls
2024-06-17 12:52:25 +03:00
georgemoralis
57c65cadb8
fixes to the old pad code
2024-06-17 09:02:06 +03:00
georgemoralis
9501bd77d4
clang fix
2024-06-17 09:02:06 +03:00
georgemoralis
0aa29428e1
new pad module structured using modulegenerator , added common pad structures and function signatures
2024-06-17 09:02:06 +03:00
raziel1000
52f3b74fdd
Missing sceKernelUuidCreate nid
2024-06-15 17:01:20 -06:00
TheTurtle
ca25333a1e
core: Address a few more regressions ( #202 )
...
* tls: Actaully fix TLS on linux
* emulator: Remove nptoolkit
* Not quite supported yet, makes games misbehave
* kernel: Back to SCHED_OTHER
* kernel: Remove unused signal function
* address_space: Fix Unmap call on linux
* clang format
2024-06-16 01:50:07 +03:00
psucien
e6f773f950
videoout: register buffers in texture cache at VO creation time
2024-06-15 23:24:33 +02:00
psucien
fd8ceacef7
video_core: shaders hash switched to one from binary header
2024-06-15 23:24:32 +02:00
psucien
a0fe34b01f
tracy: added PthreadMutex markup
2024-06-15 23:20:14 +02:00
psucien
142ad54876
gnmdriver: fix for pm4 dump name in some erroneous cases
2024-06-15 23:20:14 +02:00
psucien
1e69f83d9e
libraries: fix for Windows crash during LLE libc initialization
2024-06-15 20:04:36 +02:00
Younes
0fa7d5d02c
- sceKernelUuidCreate, sceAppContentAppParamGetInt, sceAppContentTemporaryDataMount2 ( #199 )
...
- PlayGo
- stub libusbd
-added /temp0 and /data mounts at emu start.
(Ghost Files: Memory of a Crime, Abyss: The Wraiths of Eden)
- some posix functions
2024-06-15 17:51:51 +03:00
TheTurtle
c5d1d579b1
core: Many things ( #194 )
...
* video_core: Add a few missed things
* libkernel: More proper memory mapped files
* memory: Fix tessellation buffer mapping
* Cuphead work
* sceKernelPollSema fix
* clang format
* fixed ngs2 lle loading and rtc lib
* draft pthreads keys implementation
* fixed return codes
* return error code if sceKernelLoadStartModule module is invalid
* re-enabled system modules and disable debug in libs.h
* Improve linux support
* fix windows build
* kernel: Rework keys
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-06-15 14:36:07 +03:00
raziel1000
080ec3e23e
Added LibPngDec
...
(tested with Metal Slug 3, Risk of Rain, Deadbolt and Nidhogg)
2024-06-14 01:37:26 -06:00
TheTurtle
31bd502764
core: Fixup linux support ( #195 )
...
* tls: Implement for linux
* core: Implement memory manager for linux
2024-06-14 00:58:57 +03:00
georgemoralis
400d910743
Merge pull request #184 from shadps4-emu/externals/tracy
...
Tracy profiler
2024-06-12 17:19:44 +03:00
georgemoralis
8362e2c497
fixed windows qt build
2024-06-11 23:26:13 +03:00
georgemoralis
8612907831
really fixed typo
2024-06-11 22:41:35 +03:00
georgemoralis
991d44bde6
fix typo
2024-06-11 19:36:17 +03:00
georgemoralis
e8fa9e0e89
added libScePosix nanosleep
2024-06-11 16:42:15 +03:00