IndecisiveTurtle
73d4aafc09
liverpool: Num submits should be atomic
2024-07-15 01:28:36 +03:00
psucien
dc50cc55fb
missing line fix
2024-07-14 17:11:54 +02:00
psucien
b8916787b2
renderer: debug markers for ability to match cmdlists with rdoc captures
2024-07-14 11:37:52 +02:00
psucien
8144f835a9
amdgpu: additional heuristic for CB extents detection
...
Found in CUSA00144
2024-07-14 10:59:22 +02:00
psucien
1b94f07a6a
recompiler: proper VS inputs initialization
2024-07-13 01:00:24 +02:00
psucien
cfbe8b9e6d
renderer: added support for instance step rates
2024-07-06 18:03:43 +02:00
psucien
986ed0662c
gnmdriver, amdgpu: added gpu idle IRQ; submission lock logic improved
2024-07-06 18:03:34 +02: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
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
IndecisiveTurtle
7d4f0da40e
video_core: Fix some regressions
2024-07-01 18:26:22 +03:00
IndecisiveTurtle
6774216038
shader_recompiler: Apply buffer swizzle on vertex attribs
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
b4d24d8737
renderer_vulkan: Prefer depth stencil read-only layout when possible
...
* Persona reads a depth attachment while it is being attached with writes disabled. Now this works without spamming vk validation errors
2024-07-01 13:56:14 +03:00
IndecisiveTurtle
22b930ba5e
video_core: Track renderpass scopes properly
2024-07-01 13:56:14 +03:00
psucien
c4061c3b95
amdgpu: fix for wrong constant ram offset in WriteConstRam
decoding
2024-06-30 01:21:39 +03:00
psucien
2cbbcbd371
Metadata support ( #223 )
...
* texture_cache: more image usage flags
* texture_cache: metadata registration
* renderer_vulkan: initial CMask support
* renderer_vulkan: skip redundant FCE and FMask decompression passes
* renderer_vulkan: redundant VO surface registration removed
* renderer_vulkan: initial HTile support
* renderer_vulkan: added support for MSAA attachments
* renderer_vulkan: skip unnecessary metadata updates
2024-06-29 16:49:59 +03:00
psucien
91940781b8
libraries: gnmdriver: complete HW stat init functions
2024-06-27 13:36:55 +02:00
IndecisiveTurtle
550bfa1c88
liverpool: Fix assert for compute queues
2024-06-26 20:00:09 +03:00
psucien
c04fbb75d8
libraries: gnm_driver: added sceGnmDrawIndexIndirect
and sceGnmDrawIndirect
2024-06-24 22:53:59 +02: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
IndecisiveTurtle
741427040f
shader_recompiler: Even more instructions
2024-06-22 18:09:04 +03:00
psucien
fd8ceacef7
video_core: shaders hash switched to one from binary header
2024-06-15 23:24:32 +02: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
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
psucien
04b1226e9c
tracy: basic markup and project palette
2024-06-11 12:14:33 +02:00
TheTurtle
7b1a317b09
video_core: Preliminary storage image support and more ( #188 )
...
* vk_rasterizer: Clear depth buffer when DB_RENDER_CONTROL says so
* video_core: Preliminary storage image support, more opcodes
* renderer_vulkan: a fix for vertex buffers merging
* renderer_vulkan: a heuristic for blend override when alpha out is masked
---------
Co-authored-by: psucien <bad_cast@protonmail.com>
2024-06-10 22:35:14 +03:00
TheTurtle
998d046210
video_core: Add depth buffer support and fix some bugs ( #172 )
...
* memory: Avoid crash when alignment is zero
* Also remove unused file
* shader_recompiler: Add more instructions
* Also fix some minor issues with a few existing instructions
* control_flow: Don't emit discard for null exports
* renderer_vulkan: Add depth buffer support
* liverpool: Fix wrong color buffer number type and viewport zscale
* Also add some more formats
2024-06-07 16:26:43 +03:00
psucien
e790ec775f
texture_cache: detiler: more verbosity in print
2024-06-07 00:12:16 +02:00
raphaelthegreat
ae7e6dafd5
shader_recompiler: Add more instructions and fix a few thinhs
2024-06-05 22:22:34 +03:00
psucien
0b63a76b51
amdgpu: render target size hint for old runtime
2024-06-05 16:34:04 +02:00
psucien
d491bbf366
amdgpu: tiling mode introduced
2024-06-04 12:40:08 +02:00
psucien
d7d324ac76
amdgpu: surface bits per element LUT
2024-06-02 22:46:40 +02:00
psucien
23cc60bf06
video_core: amdgpu: simply crash if an exception occured in coro
2024-06-02 19:16:05 +02:00
raphaelthegreat
02a50265f8
shader_recompiler: Better branch detection + more opcodes
2024-06-02 03:05:40 +03:00
psucien
f624f7749c
Fixes and QoL ( #159 )
...
* to ensure that we're not unlocking submits too early
* a final touch
* video_core: texture_cache: fix for page table corruption
* core: linker: a name for the game main thread
* libraries: gnmdriver: an option to dump application command lists
* libraries: kernel: named guest threads
* video_core: added a heuristic for determination of CB/DB surface extents
* fix for rebase leftover
2024-06-01 23:50:03 +03:00
psucien
365df2a3ac
video_core: renderer_vulkan: write mask fallback
2024-05-30 16:27:39 +02:00
psucien
9227a2b868
video_core: multiple color attachments support
2024-05-30 11:21:26 +02:00
raphaelthegreat
58de7ff55a
video_core: Implement basic compute shaders and more instructions
2024-05-30 01:39:24 +03:00
psucien
5f37a6be83
video_core: amdgpu: fix for a deadlock in wait on idle
2024-05-29 16:03:37 +02:00
psucien
e5486cc57f
video_core: amdgpu: proper destruction of processing thread
2024-05-29 16:02:51 +02:00
raphaelthegreat
4d728e943d
video_core: Address some feedback
2024-05-27 22:13:55 +03:00
raphaelthegreat
d59b102b6f
video_core: Add image support
2024-05-27 18:25:45 +03:00
georgemoralis
729e166cd3
Merge pull request #146 from shadps4-emu/video_out/new_gpu_frontend
...
video_core: initial support for CE and ASC queues
2024-05-27 13:50:25 +03:00
psucien
09c7379fe0
fix for leaks of coroutine handle
2024-05-27 13:48:35 +03:00
TheTurtle
8dfa5782b2
video_core: Add constant buffer support ( #147 )
2024-05-26 15:51:35 +03:00
psucien
2963790e0d
video_core: initial support for CE and ASC queues
2024-05-26 12:39:30 +02:00
TheTurtle
3c90b8ac00
video_core: Bringup some basic functionality ( #145 )
...
* video_core: Remove hack in rasterizer
* The hack was to skip the first draw as the display buffer had not been created yet and the texture cache couldn't create one itself. With this patch it now can, using the color buffer parameters from registers
* shader_recompiler: Implement attribute loads/stores
* video_core: Add basic vertex, index buffer handling and pipeline caching
* externals: Make xxhash lowercase
2024-05-25 15:33:15 +03:00
psucien
62fd72009b
video_core: a fix for multi submits processing (temporary code)
2024-05-22 22:20:33 +02:00
psucien
d752aa5357
config, video_core: null gpu configuration added
2024-05-22 20:19:42 +02:00
TheTurtle
8730968385
video: Import new shader recompiler + display a triangle ( #142 )
2024-05-22 01:35:12 +03:00
psucien
8455574615
gnmdriver: submission lock moved out from gpu
2024-05-17 23:31:19 +02:00