Commit graph

1874 commits

Author SHA1 Message Date
psucien
bad3d5a68e sceKernelWaitEventFlag log noise reduced 2024-09-05 18:25:56 +02:00
TheTurtle
b08baaeb13
video_core: Improve handling of image buffer aliases (#757)
* texture_cache: Use invalidate threshhold

* It's possible for shaders to bind huge buffers and only write to lower portion of it. This is a problem if upper parts of the buffer overlap with render targets. If the image is very far away from buffer base it's unlikely the shader will want to write it, so skip invalidation for it

* video_core: Allow using texture cache to validate texture buffers

* texture_cache: Use buffer cache in all cases for data source

* Allows to correctly handle compute written micro tiled textures

* texture_cache: Fix depth pitch

* kernel: Remove missed code

* clang format

* video_core: Adjust depth format

* buffer_cache: Do not cache buffer views

* thread_management: Do not call createMutex on unlock

* temp: Revert this when pr is done

* buffer_cache: Dont skip cpu uploads with image sync

* Sometimes image does not fully overlap with a region

* fix build

* video_core: Improve invalidate heuristic

* small fixes

* video_core: Hopefully fix some vertex explosions
2024-09-05 17:25:45 +03:00
psucien
4e0dc91040 hot-fix: don't skip draws with DS decompression 2024-09-05 09:58:51 +02:00
Daniel R.
eb2520a240
video_core/renderer_vulkan: Ignore unsupported shader stages (#778)
* video_core/renderer_vulkan: Ignore unsupported shader stages

* clang-format
2024-09-05 00:55:06 +03:00
Stephen Miller
76f4ceda31
Forgot one (#783)
I forgot to readd the processed variable to the for loop.
2024-09-05 00:24:30 +03:00
Stephen Miller
89fb1a024f
Update sceBatchMap2 (#782)
* Update sceKernelBatchMap2

Improves placement of new BatchMap op types, and re-adds the BatchMap2 changes from https://github.com/shadps4-emu/shadPS4/pull/602.

* Update some logs.
2024-09-05 00:12:04 +03:00
psucien
28feb77982
Surface management rework (3/3) (#370)
* texture_cache: images overlap support

* renderer_vk: log messages on surfaces which require degamma

* missing barriers

* forced sync2 + better barriers

* Handling of depth target aliasing; added formats compatibility check

* Don't bind empty texel buffers

* Promote r32f textures to depth target if shader expects so

* Promote textures to depth if they use depth tiling

* fix for image leaking; detiler stream buffer removed
2024-09-04 23:47:57 +03:00
menaman123
b9c6093717
Implemented sceKernelMTypeProtect and sceKernelMProtect (#387)
* Fixed ORBIS_KERNEL_MAP_OP_TYPE_PROTECT for batchmap2

* Fix merge

* Changed 4 to ORBIS_KERNEL_MAP_OP_TYPE_PROTECT

* Removed MProtect from AddressSpace

* Added Mtyprotect and moved Mprotect to ORBIS_KERNEL_MAP_OP_PROTECT

* Changed Protect for Windows

* reverted the previous function

* Fixed Mtypeprotect and MProtect

* ''

* ''

* Took out logs stopping build

* clang-format issues

* Fixed the order of mtypeprotect and mprotect in batchmap2

* ''

* update branch

* ''

* Fixed nits

* ''

* Update submodules to latest commits

* ''

* reverted ffmpeg

* ''

* Fixed the nits

* ''

* ''

* ''

* ''

* ''

* Fix clang formatting, DEBUG_ASSERT, and extra spacing

* Fix build issues

* Revert "Fix build issues"

This reverts commit 9185f96ec9.

* ''

* ''

* ''

* Changes for MemoryProt Format

* ''

* ''

* ''
2024-09-04 23:36:23 +03:00
georgemoralis
0dd6e257c5
Merge pull request #573 from polybiusproxy/shader_recompiler/format
shader_recompiler/frontend: Miscellaneous fixes
2024-09-04 23:21:23 +03:00
georgemoralis
bea5f643ca
Merge pull request #764 from StevenMiller123/scePadOpenFix
Add "support" for ORBIS_PAD_PORT_TYPE_REMOTE_CONTROL
2024-09-04 17:55:05 +03:00
Sebastian Kassai
0a5c36482e
shader_recompiler: change ir.SetScalarReg() -> SetDst() (#777)
Fixes an out-of-bounds crash on Amplitude and Rock Band 4 startup.
2024-09-04 17:30:43 +03:00
georgemoralis
2709b45877
Merge pull request #756 from DanielSvoboda/main
adds TR in all missing places
2024-09-04 12:57:11 +03:00
offtkp
f31c92ffd1 Get rid of unnecessary jump 2024-09-04 12:31:12 +03:00
squidbus
9eadec849c misc: Fix a few compiler warnings. 2024-09-03 21:32:19 -07:00
Stephen Miller
0b0c82452e Add "support" for pad type remote control
Needed for the Dragon Ball Xenoverse titles.
2024-09-03 19:57:24 -05:00
DanielSvoboda
8ccec1b956 Game List 2024-09-03 20:41:55 -03:00
squidbus
b87e6f3838
vulkan: Emulate depth clip control when extension is not available. (#762) 2024-09-04 01:07:05 +03:00
DanielSvoboda
d24f8ddf03 Icon,Name,Serial,Region,Firmware,Size,Version,Path 2024-09-03 18:42:43 -03:00
georgemoralis
e340583a7f
Merge pull request #736 from StevenMiller123/MoreVirtualQuery
Additional VirtualQuery improvements
2024-09-03 23:05:01 +03:00
psucien
34ffd95306
video_core: added VK_LAYER_LUNARG_crash_diagnostic (#751) 2024-09-03 21:56:23 +02:00
DanielSvoboda
d7f799c6b7 fix PL text 2024-09-03 16:19:16 -03:00
DanielSvoboda
3a388fec1e Save,Apply,Restore Defaults,Close
Save,Apply,Restore Defaults,Close
2024-09-03 16:08:49 -03:00
oltolm
e9ef726185
Fix warnings (#749)
* suppress warning in vk_mem_alloc.h

* fix warnings in cheats_patches.cpp
2024-09-03 21:41:59 +03:00
Paris Oplopoios
42ab101908
Set CF correctly on BLSR/BLSMSK patch (#724)
* Set CF correctly on BLSR patch

* Set CF correctly on BLSMSK patch
2024-09-03 21:40:46 +03:00
squidbus
d48836d5ae
shader_recompiler: Limit src0 to 4-bit in V_CVT_OFF_F32_I4 (#759) 2024-09-03 21:37:52 +03:00
squidbus
6012e3cc86
vulkan: Improve format support info for vertex buffer formats. (#753) 2024-09-03 21:08:29 +03:00
Paris Oplopoios
cfe49fbfba
Preserve flags on some patched instructions (#720)
* Preserve flags on some patched instructions

* Move flag saving to Save/RestoreContext
2024-09-03 20:41:35 +03:00
Paris Oplopoios
f4ff0d493c
Set CF correctly on BLSI patch (#722)
* Set CF correctly on BLSI patch

* Remove redundant CLC
2024-09-03 20:41:22 +03:00
illusion0001
1b37f61102
Update patch url (#755)
* Update patch url

* Update cheats_patches.cpp
2024-09-03 20:39:32 +03:00
DanielSvoboda
6877cc12c1 Merge branch 'main' of https://github.com/DanielSvoboda/shadPS4 2024-09-03 14:18:33 -03:00
DanielSvoboda
ee7e6f0b1d add more information download patches
If the patch does not appear, it may be that it does not exist for the specific serial and version of the game. It may be necessary to update the game.
2024-09-03 14:17:57 -03:00
DanielSvoboda
83a7bac945
Update src/qt_gui/translations/pl_PL.ts
Co-authored-by: Marcin Mitura <mitura07@wp.pl>
2024-09-03 13:45:43 -03:00
DanielSvoboda
51610cba43 add TR for PR 700 2024-09-03 13:27:51 -03:00
TheTurtle
f087f43736
shader_recompiler: Implement render target swizzles when no format is available (#739)
* shader_recompiler: Use null image when shader is compiled with unbound sharp

* video_core: Refactor and render target swizzles

* liverpool_to_vk: Add missing swap format from RDR

* video_core: Refactor shader recompiler interface

* Makes it much easier to pass runtime information to the recompiler and have it treated as part of the shader key. Also pulls out most runtime state from Info struct

* shader_recompiler: Avoid some asserts
2024-09-03 14:04:30 +03:00
baggins183
3f8a8d3a24
video_core: Add bounds checking for subspan use in liverpool functions (#717) 2024-09-03 13:58:45 +03:00
squidbus
af107d4ef9 vulkan: Better support for directly linking a Vulkan support library. 2024-09-03 01:40:51 -07:00
Stephen Miller
04fbd7b9e7 Clang 2024-09-02 10:04:56 -05:00
Stephen Miller
9a772aa2f5 Clang fix 2024-09-02 10:03:39 -05:00
Stephen Miller
dc1313ea3c Always assign memory_type and offset
The memory_type default is based on fpPS4 behavior.

I'm not entirely sure how the offset should be handled, but since the value we use defaults to 0 anyway, that should be better than leaving random data in that area.
2024-09-02 09:43:27 -05:00
Stephen Miller
0503054b40 Grammar 2024-09-02 09:39:46 -05:00
Stephen Miller
f8d71b59d9 Fix MemoryManager::VirtualQuery header
The headers for these functions were technically not the same as the actual function definition. This didn't cause any emulation issues, but caused some weird issues with my IDE.
2024-09-02 09:30:32 -05:00
Stephen Miller
816288962b Assign is_stack and is_pooled
Properly set these values to avoid potential errors, and future proof for when these types of memory are emulated.
2024-09-02 09:28:35 -05:00
RDN000
0a1fed9b75
Update Albanian translation 2024-09-02 10:14:54 +02:00
RDN000
26201f3dae
Add Albanian translation 2024-09-02 08:37:54 +02:00
georgemoralis
3b0e251518
Merge pull request #729 from StevenMiller123/VirtualQuery-Fixes
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
baggins183
101aeb920d
Implement V_BFM_B32 and V_FFBH_U32 (#663)
* Implement V_BFM_B32

* Render.Recompiler: Implement V_FFBH_U32

* fix clang-format
2024-09-01 22:20:42 +03: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
georgemoralis
2311070203
Merge pull request #716 from mavethee/main
translations: Correct machine translations in Polish
2024-09-01 22:18:37 +03:00
Grégoire Hage
1bd9317509
Implement V_READFIRSTLANE_B32 (#681)
* Implement V_READFIRSTLANE_B32

* refactor
2024-09-01 21:49:42 +03:00