psucien
2aab7e05ee
libraries: gnmdriver: sceGnmResetVgtControl
added ( #965 )
2024-09-17 22:10:50 +02:00
baggins183
bc66fe8fb5
Fix copyGpuBuffers when resize invalidates commands in flight ( #876 )
...
* Fix copyGpuBuffers when resize invalidates commands in flight
* Use _MB macro for size constant
2024-09-12 21:54:54 +02:00
TheTurtle
b0bbb16aae
video_core: Add fallback path for pipelines with more than 32 bindings ( #837 )
...
* video_core: Small fixes
* renderer_vulkan: Add fallback path for pipelines with more than 32 bindings
* vk_resource_pool: Rewrite desc heap
* work
2024-09-10 20:54:39 +03:00
psucien
34ffd95306
video_core: added VK_LAYER_LUNARG_crash_diagnostic
( #751 )
2024-09-03 21:56:23 +02:00
psucien
766c286d62
libraries: gnmdriver: sceGnmValidateCommandBuffers
added
2024-08-31 22:01:08 +02:00
psucien
ca1613258f
video_core: added support for indirect draws ( #678 )
...
* video_core: added support for indirect draws
* barriers simplified
2024-08-30 22:59:56 +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
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
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
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
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
squidbus
3e84d2b76c
Define tessellation_factors_ring_addr relative to end of system reserved area.
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
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
georgemoralis
c49afb4c17
Merge pull request #287 from polybiusproxy/dev
...
gnmdriver: Implement shader functions
2024-07-15 07:47:33 +03:00
psucien
ed37fb32a7
review comments applied
2024-07-14 23:25:41 +02:00
psucien
034301de88
libraries: gnmdriver: added missing ASC PM4 dump
2024-07-14 18:27:28 +02: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
psucien
465cb0413e
kernel: equeue: minor refactoring
2024-07-11 13:14:42 +03:00
psucien
c7af8df2ad
gnmdriver: added sceGnmFindResourcesPublic
stub
2024-07-07 13:47:01 +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
410ba37ec2
code: Add additional logging during init
2024-07-01 13:56:14 +03:00
psucien
1f55eff9d8
libraries: gnmdriver: added initialization preamble to every first submit in a frame
2024-06-30 18:22:39 +02: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
psucien
7fd832b68c
things prettified
2024-06-27 15:47:18 +02:00
psucien
91940781b8
libraries: gnmdriver: complete HW stat init functions
2024-06-27 13:36:55 +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
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
psucien
fd8ceacef7
video_core: shaders hash switched to one from binary header
2024-06-15 23:24:32 +02:00
psucien
142ad54876
gnmdriver: fix for pm4 dump name in some erroneous cases
2024-06-15 23:20:14 +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
raphaelthegreat
fc887bf3f5
core: Rework memory manager
2024-06-10 02:13:44 +03:00
psucien
d902339867
gnmdriver: sceGnmDrawInitDefaultHardwareState175
added
2024-06-08 23:42:09 +02:00
psucien
edaeee194d
libs: gnmdriver: get tessellation ring factor address
2024-06-08 01:19:52 +02:00
psucien
9ca083ee06
libs: gnmdriver: map compute queue
2024-06-08 01:19:52 +02:00
psucien
863d80c16c
fix for name of the first dumped cmdb
2024-06-02 18:59:41 +02: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
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
psucien
2963790e0d
video_core: initial support for CE and ASC queues
2024-05-26 12:39:30 +02:00
psucien
62fd72009b
video_core: a fix for multi submits processing (temporary code)
2024-05-22 22:20:33 +02:00
TheTurtle
8730968385
video: Import new shader recompiler + display a triangle ( #142 )
2024-05-22 01:35:12 +03:00