Commit graph

2203 commits

Author SHA1 Message Date
georgemoralis d10638aef2 clang-fix 2024-12-19 10:25:03 +02:00
TheTurtle 8d76bbf97a ir: Add heuristic based LDS barrier pass (#1801)
* ir: Add heuristic based LDS barrier pass

* Attempts to insert barriers after zero-depth divergant conditional blocks in shaders that use shared memory

* lds_barriers: Limit to nvidia

* Intel has historically had problems with cs barriers, will debug other time
2024-12-19 10:18:28 +02:00
TheTurtle 5b67ceea67 hot-fix: Proper abi on init_routine 2024-12-18 22:11:09 +02:00
Mahmoud Adel c95c6800d1 add R8Uint in image Detiling (#1812)
used by InFamous, and maybe other games
2024-12-18 22:06:30 +02:00
Stephen Miller a507eed037 Misc UE4 fixes (#1821)
* Add ExecLo case to S_SAVEEXEC_B64

Seen in CUSA38209

* S_BCNT1_I32_B32

Turtle said our implementation of S_BCNT1_I32_B64 was meant to be for S_BCNT1_I32_B32, so renaming the opcode is the fix.
2024-12-18 22:05:35 +02:00
Marcin Mikołajczyk 28b19f38af Handle setting Vcc in Translator::SetDst64 (#1826) 2024-12-18 21:57:58 +02:00
Marcin Mikołajczyk 98d8906722 Handle 32bit int ImageFormat (#1823) 2024-12-18 21:48:00 +02:00
squidbus 5c671ed7f3 vk_instance: Add additional fallback for missing D16UnormS8Uint. (#1810) 2024-12-18 07:56:08 +02:00
squidbus 7a5d796848 mac: Choose whether system Vulkan is needed at runtime. (#1780) 2024-12-17 15:04:19 +02:00
ElBread3 428b8989b8 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 c1d6a93246 fs: Fix wrong mounts being matched by partial guest path. (#1809) 2024-12-17 12:34:43 +02:00
Richard Habitzreuter 05a1523f0e style: add rounded borders and focus color styling to the search bar (#1804) 2024-12-17 12:32:30 +02:00
squidbus c94645d950 spirv_emit_context: Prevent double-add of GS in attributes to interface. (#1800) 2024-12-16 02:11:15 +02:00
psucien e2bf6b3292 hot-fix: Tracy operation restored; memory leak fix as a bonus 2024-12-15 20:53:29 +01:00
DanielSvoboda 500ee94ddb Keybord on README / Fix Play Time (#1786)
* Keybord on README F10_F11_F12

* Update game_list_frame.cpp
2024-12-15 16:30:53 +02:00
baggins183 f85151decf Fix some compiler problems with ds3 (#1793)
- Implement S_CMOVK_I32
- Handle Isoline abstract patch type
2024-12-15 16:30:19 +02:00
Richard Habitzreuter 23d02395a0 style: add Gruvbox theme (#1796) 2024-12-15 16:28:36 +02:00
psucien 7f25af0ecc 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
Connor Garey a5f1626d84 Fix for "shadPS4" not being given on Linux volume mixers (#1789) 2024-12-14 23:30:17 +01:00
Vladislav Mikhalin d07dd1ca82 recompiler: emit a label right after s_branch to prevent dead code interferrence (#1785) 2024-12-14 22:46:55 +02:00
squidbus f6094249d3 resource_tracking_pass: Fix converting dimensions to float for normalization. (#1790) 2024-12-14 22:46:35 +02:00
squidbus 1fe2ca7b03 vk_instance: Remove unused dynamic state 2 features struct (#1791) 2024-12-14 22:46:19 +02:00
TheTurtle 265fc2dc19 Revert "DmaData and Recompiler fixes (#1775)" (#1784)
This reverts commit cafd40f2c2.
2024-12-14 16:17:14 +02:00
squidbus 665aae453b externals: Update sirit to fix debug assert (#1783) 2024-12-14 16:12:41 +02:00
squidbus 85f950f5c0 shader_recompiler: Fixups from stencil changes (#1776) 2024-12-14 14:33:24 +02:00
Vladislav Mikhalin b8d1ebe666 DmaData and Recompiler fixes (#1775)
* liverpool: fix dmadata packet handling

* recompiler: emit a label right after s_branch to prevent dead code interferrence

* specialize barriers
2024-12-14 14:33:06 +02:00
baggins183 c765f16e97 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
squidbus a3c38812e8 renderer_vulkan: Remove some fallbacks and misc format queries that are no longer needed. (#1773) 2024-12-14 12:04:30 +02:00
squidbus a38157b1e1 shader_recompiler: Support VK_AMD_shader_image_load_store_lod for IMAGE_STORE_MIP (#1770)
* shader_recompiler: Support VK_AMD_shader_image_load_store_lod for IMAGE_STORE_MIP

* emit_spirv: Fix missing extension declaration.
2024-12-14 12:03:42 +02:00
squidbus d45eef13b8 externals: Add MoltenVK as an external. (#1767) 2024-12-14 10:20:04 +02:00
rainmakerv2 997f621902 Save main window together with config to avoid rare crash (#1772) 2024-12-14 10:18:34 +02:00
Alexandre Bouvier d5faf4363a cmake: fix double alias (#1771) 2024-12-14 10:18:05 +02:00
rainmakerv2 b209272d75 Resize trophy pop up windows based on window size (#1769) 2024-12-14 10:17:00 +02:00
Diego Cea López 0fd63ab1cb vk_shader_hle: Don't alter the order of the skipped copies. (#1757)
* vk_shader_hle: Don't alter the order of the skipped copies.

* Simplification.

* Format.

* More simplification.
2024-12-14 00:27:09 +02:00
squidbus 858db678b8 shader_recompiler: Implement FREXP instructions. (#1766) 2024-12-13 21:51:39 +02:00
TheTurtle d3450cef2d graphics: Improve handling of color buffer and storage image swizzles (#1763)
* liverpool_to_vk: Remove wrong component swap formats

* shader_recompiler: Handle storage and buffer format swizzles

* shader_recompiler: Skip unsupported depth export

* image_view: Remove image format swizzle

* Platform support is not always guaranteed
2024-12-13 21:49:37 +02:00
squidbus 5f34759c4a shader_recompiler: Emulate unnormalized sampler coordinates in shader. (#1762)
* shader_recompiler: Emulate unnormalized sampler coordinates in shader.

* Address review comments.
2024-12-13 21:49:07 +02:00
MajorP93 7a04a1be25 ci: Use link-time optimization for building (#1636)
* ci: Use link-time optimization for building

* cmake: Set CMP0069 policy to new for external dependencies
* This enables LTO also when building external dependencies that do not
  handle CMP0069 in their CMake scripts.
2024-12-13 18:30:16 +02:00
TheTurtle 8d681fb789 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 5c3734e89d hot-fix the hot-fix 2024-12-13 18:26:16 +02:00
TheTurtle 5d55b2b4ec kernel: Fix module finding
Patch by Elbread
2024-12-13 18:23:01 +02:00
rainmakerv2 ac626f6004 Fix for adding game folders (#1761)
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
2024-12-13 09:52:54 +02:00
rainmakerv2 082dad09f7 Fix lowercase filenames fox Linux (#1760)
Fix uppercase config filenames

Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
2024-12-13 08:27:36 +02:00
TheTurtle 5fb7aa3f71 hot-fix: Fix order of operands 2024-12-13 00:31:49 +02:00
rainmakerv2 2fd81a12c9 Resubmit - Prevent settings from being saved when close button is pressed instead of save (#1747)
* Do not save settings when close button pressed instead of save

* Update src/common/config.h

Co-authored-by: TheTurtle <geoster3d@gmail.com>

* Revert "Update src/common/config.h"

This reverts commit 125303ea86.

---------

Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
Co-authored-by: TheTurtle <geoster3d@gmail.com>
2024-12-12 22:46:31 +02:00
georgemoralis 35dae6abb4 fix for detecting more that 2 players and play both with player 1 keys (#1750) 2024-12-12 22:46:20 +02:00
Diego Cea López 39eab0d0a9 Fix HLE buffer copy not executed when there's only 1 copy. (#1754) 2024-12-12 22:45:56 +02:00
squidbus 96ae25b39b renderer_vulkan: Fix some color attachment indexing issues. (#1755) 2024-12-12 20:45:18 +02:00
Osyotr c8cd59f678 video_core: add eR5G5B5A1UnormPack16 support to the detiler (#1741) 2024-12-12 15:45:59 +02:00
squidbus 0908d69002 renderer_vulkan: Disable culling for RectList. (#1749) 2024-12-12 11:05:59 +02:00