kd-11
406a519400
rsx: Implement deferred transform constants load
2024-05-12 21:26:25 +03:00
kd-11
c1aaa1bcf6
Get reworked RSX to compile
2024-04-13 03:29:57 +03:00
kd-11
10fe14e783
rsx: Separate register context from RSX thread
2024-04-13 03:29:57 +03:00
Megamouse
b501953d41
rsx: remove unused param
2023-12-30 19:07:35 +01:00
kd-11
2b9bfc0ec2
rsx: Pick tiler/detiler according to actual block size
2023-12-30 12:35:23 +01:00
kd-11
475191cf7f
rsx: Fix typo
2023-12-27 21:25:46 +01:00
kd-11
69a463ad02
rsx: Support DMA tiling in the CPU blit path
2023-12-26 18:30:00 +03:00
kd-11
51fc193395
rsx: De-spaghettify nv3089::image_in
...
- This function was a disaster with random code added in without much thought over a decade.
- Restructures the logic into decode and transfer steps for easier management.
2023-12-26 18:30:00 +03:00
kd-11
ab6bcd32a9
rsx: Improve strict mode check in 308a::color
...
- The chances that someone is using strict mode is lower than the odds of having default ZCULL
2023-12-09 22:34:02 +03:00
kd-11
67f97b0e15
rsx: Let 308a::color have a synchronization side-effect in strict mode
...
- Some games use 308a::color to implement custom sync primitives (ETQW).
- When the color data is written, the engine assumes all occlusion reports are ready which can cause severe flickering if we don't flush the pipeline.
2023-12-09 22:34:02 +03:00
Eladash
5fde96d563
rsx: Discard color mask writes with reserved bits
2023-08-25 05:41:54 +03:00
Megamouse
16f869fe5a
logging: minor trace optimizations
2023-06-15 19:48:15 +02:00
kd-11
d0c029c83e
rsx: Ignore bad face mode configuration
2023-01-28 21:11:32 +03:00
kd-11
6adcabda29
rsx: Fix graphics state foot-gun
2023-01-26 11:42:39 +03:00
kd-11
719e7a9d56
rsx: Fix inadvertent signal override for MSAA
2023-01-17 02:24:21 +03:00
kd-11
bd69466e94
rsx: Fix some pipe state signal propagation routines
2023-01-16 15:20:53 +03:00
kd-11
2752cd1390
rsx/vk: Fix some problems with dynamic state updates
2023-01-11 16:48:53 +03:00
kd-11
29c1b20b41
Fix compilation
2023-01-11 16:48:53 +03:00
kd-11
71efb3bc84
rsx: Use gcm cast to handle input enum validation
2023-01-11 16:48:53 +03:00
kd-11
c7fed20f3c
vk: Short-circuit program load if state did not change
...
- TODO: Incorporate VK_EXT_extended_dynamic_state
2023-01-11 16:48:53 +03:00
kd-11
3dd6e5664c
rsx: Do not call a dynamic function to simply test-and-set. Do it inline.
2023-01-11 16:48:53 +03:00
kd-11
eae1ac6558
refactor: Fix build
2023-01-11 16:48:53 +03:00
kd-11
3dba894369
rsx: Minor refactoring RSXThread
...
- Part 1 of many
2023-01-11 16:48:53 +03:00
kd-11
388d090b91
rsx: Propagate surface format changes to shader ROP control
2022-12-19 23:13:25 +03:00
Eladash
151a0955cf
rsx: Implement draw call stepping
2022-12-10 15:09:42 +01:00
kd-11
0737c788fc
rsx: Fix parsing of broken command streams with hanging begin/end commands without a pair.
...
- While these are game bugs, the parser shouldn't break on encountering them.
2022-10-12 11:19:52 +03:00
kd-11
d6d7ade6e3
vk: Reload state on dynamic state changed
2022-10-09 03:00:39 +03:00
kd-11
ffe8133865
vk: Avoid unnecessary dynamic state updates
2022-10-07 11:53:34 +03:00
kd-11
5281a85b67
rsx: Fix compiler warnings
2022-09-28 12:55:31 +03:00
kd-11
de28c812e8
rsx: Re-evaluate color MRT setup when the surface target type changes
2022-09-28 12:55:31 +03:00
Nekotekina
6ff6a4989a
Implement at32() util
...
Works like .at() but uses source location for "exception".
2022-09-26 18:04:15 +03:00
Nekotekina
b49a1f27eb
Warning fixes
2022-09-17 16:35:02 +03:00
Elad Ashkenazi
cd2adbad9a
Update rsx_methods.cpp
2022-08-03 17:15:59 +03:00
Elad Ashkenazi
99730ac4f9
Update rsx_methods.cpp
2022-08-03 17:15:59 +03:00
Elad Ashkenazi
d2ab3383ad
Update rsx_methods.cpp
2022-08-03 17:15:59 +03:00
Elad Ashkenazi
3b15a6b39e
Update rsx_methods.cpp
2022-08-03 17:15:59 +03:00
Elad Ashkenazi
651e58f443
rsx: Trivial optimization
2022-08-03 17:15:59 +03:00
Eladash
ab27ee4cf4
Savestates/RSX: Save NV406E semaphore waiting
2022-07-12 15:15:42 +03:00
Eladash
4ade06f36f
Savestates/RSX: Restore the ZCULL control state
...
And fix the ZCULL control state at the initial state of RSX.
2022-07-10 14:19:59 +03:00
Eladash
4ac88fa8d3
Savestates/RSX: Save drawing context
2022-07-08 12:57:43 +03:00
Eladash
7422ab9e55
rsx: Do not discard flip notifications
2022-06-25 15:30:41 +02:00
Eladash
f66256cc13
rsx: PS3 Native frame limiter improvements, add Infinite frame limiter
...
* Do not wait on DEVICE 0x30 semaphore, it seems like it is something to do with queue command synchronization.
- This also fixes cellGcmSetFlipWithWaitLabel which is built specifically to enable accurate RSX flipping time, its waiting command is confirmed to be placed **AFTER** DEVICE 0x30 waiting.
* Fix default vsync state to be enabled. (and set it to enabled in cellGcmSetVBlankFrequency as well)
* Add experimental "Infinite" frame limiter mode.
* Fix spurious enabling of second vblank.
2022-06-25 15:30:41 +02:00
Eladash
264253757c
rsx: Improve Null Renderer
2022-06-12 20:54:42 +03:00
Elad Ashkenazi
280aa6da91
rsx: Fix NV406E semaphore_acquire timeout detection ( #12205 )
2022-06-12 12:34:29 +03:00
Eladash
f9bc7458d4
rsx: Resurgence of HLE GCM
2022-06-06 12:56:25 +02:00
Elad Ashkenazi
9bb7e8d614
rsx: Implement atomic FIFO fetching (stability improvement) (non-default setting) ( #12107 )
2022-06-04 15:35:06 +03:00
Nekotekina
76c72351a5
rsx_methods: fix warning
2022-06-02 12:56:49 +03:00
kd-11
7c8fbc35bc
rsx: Move PS3-compliant behavior to a new option
2022-05-21 16:35:35 +03:00
kd-11
d52bb78d2c
rsx: Trivial non-blocking display synchronization
2022-05-21 16:35:35 +03:00
Eladash
cd74fb6a6d
rsx: Implement HW accurate frame limiter
2022-05-20 22:40:48 +02:00