Unknown
03814e8d02
Qt: implement compatibility column
2017-12-05 16:53:14 +04:00
kd-11
970d2a06e0
rsx: Properly fix DATA3F_M register alignment
2017-12-04 18:22:18 +03:00
kd-11
9853027f72
rsx/vp: Decide default return values in case of undefined attributes based on location ID
...
- Different default values should be returned for different attributes
2017-12-04 18:22:18 +03:00
kd-11
90c2324e47
rsx: Program cache fixes
...
- Reorganize storage hash vs ucode hash
- Scan for actual fragment program start in case leading NOPed code precedes the actual instructions
-- e.g FEAR2 Demo has over 32k of padding before actual program code that messes up hashes
2017-12-04 18:22:18 +03:00
kd-11
f5145943b2
d3d12: Fix fragment shader compile
2017-12-04 18:22:18 +03:00
kd-11
960f26f84e
rsx:: fixes for framebuffer setup
...
- provide a DSV if depth and/or stencil testing is enabled
2017-12-04 18:22:18 +03:00
kd-11
cdd4fd9867
rsx/fp: Explicitly insert global functions.
...
- Functions such as pack/unpack ops must exist before the shared gather functions are declared
2017-12-04 18:22:18 +03:00
Nekotekina
bfb3144f34
sys_net: Force AF_INET
2017-12-02 12:36:05 +03:00
Unknown
8f314c5101
Input: handle MMJOY reconnection (pad still needs to be online on start)
2017-12-01 20:28:06 +00:00
Unknown
2ec4f66427
Input: improve evdev and mmjoy stick input
2017-12-01 20:28:06 +00:00
Unknown
7165001b68
Qt: Fix SettingsDialog crash introduced by removal of groupboxes
2017-12-01 20:28:06 +00:00
Unknown
c077426e95
Input: Fix filter button for evdev and DS4
2017-12-01 20:28:06 +00:00
Unknown
c870bbb885
Input/MMJOY: handle Axis and POV capabilities
2017-12-01 20:28:06 +00:00
kd-11
3fbc960c44
gl/vk: Better handling of inter-format data copies
...
- RGBA8->RG16 does not require special instructions so the overlay pass is disabled for OGL
2017-12-01 21:00:50 +03:00
kd-11
896c8991de
rsx/fp: Properly implement PK/UP instructions based on NV_fragment_program documentation
2017-12-01 21:00:50 +03:00
kd-11
bec6c1a939
gl: Implement rgba8 -> fp16 casting pass
...
-- Is this actually necessary? The two format are binary compatible
2017-12-01 21:00:50 +03:00
kd-11
fe9090bd39
rsx/fp: Implement register gather (only for UP(X) instructions)
...
- Workaround for temp register aliasing between H and R variants
- TODO: Implement temp regs as 128 bit-blocks with r/w as pack/unpack
2017-12-01 21:00:50 +03:00
kd-11
44e34064de
vulkan: Do not clear non-existent surfaces
2017-12-01 21:00:50 +03:00
kd-11
a18ae0f6ac
rsx/fp: Reimplement PK(X) and UP(X) opcodes. The read back values are obviously in normalized range
...
- Confirmed with a GOW shader which writes result of UP8 to BGRA8 output
2017-12-01 21:00:50 +03:00
kd-11
08b829dc22
rsx: wcb scaling fixes
2017-12-01 21:00:50 +03:00
kd-11
9d27ac359b
gl: Minor wcb tweaks
2017-12-01 21:00:50 +03:00
kd-11
6c9c300fe0
rsx: Fix texture cache memory usage statistics
2017-12-01 21:00:50 +03:00
kd-11
17340c44cc
rsx: method register fixes
...
- Fix VERTEX_DATA_3F_M element alignment (its 16 bytes per attribute)
- Fix DATA_2S_X interpretation type. Its signed 16-bit unnormalized (s32k) and not signed normalized (s1)
2017-12-01 21:00:50 +03:00
kd-11
90a3f3af30
rsx: Discard queue if RET is found without CALL
2017-12-01 21:00:50 +03:00
kd-11
da1e97618b
rsx: Changes to surface pitch handling
...
- Zeta pitch is ignored by real HW for some reason
- Monitor ptch value changes as well since they may affect disabled surfaces
- TODO: Verify if MRT pitch is really taken into consideration
2017-12-01 21:00:50 +03:00
kd-11
89bc333295
vk: Compliance fixes; vkCmd state affects currently bound descriptor set!
2017-12-01 21:00:50 +03:00
kd-11
3350e7ee55
rsx: Fixes for framebuffer setup code
2017-12-01 21:00:50 +03:00
kd-11
ddebc334bf
rsx: Fixes
...
- Discard intentionally invalidated framebuffer resources. These are created after a flush has happened, forcing reupload since contents cannot be guaranteed (strict mode only)
- Fix for blits using vulkan; dont use the copy method if formats do not match, use generic blit instead
2017-12-01 21:00:50 +03:00
kd-11
145ecb00fc
rsx: Texture cache hotfixes
2017-12-01 21:00:50 +03:00
kd-11
75d0ff177d
gl: Avoid null deref
2017-12-01 21:00:50 +03:00
kd-11
4d75e98647
rsx/fp: Do not apply input mods to all types of inputs
...
- Temp registers are confirmed to be affected
- Const registers are confirmed to be unaffected
- Varying inputs are not confirmed yet
2017-12-01 21:00:50 +03:00
kd-11
3bfdcf698d
rsx: More tuning for depth/color buffer selection
2017-12-01 21:00:50 +03:00
kd-11
51891039dd
rsx: improve depth/color contested memory allocation heuristics
...
- Needs more tests to prove correct behaviour
2017-12-01 21:00:50 +03:00
kd-11
07fe5f87ae
gl: Fix face winding
...
- Face winding is always calculated based off the top left corner
2017-12-01 21:00:50 +03:00
kd-11
de5a4fe083
rsx: Reimplement depth <-> RGBA reinterpretation code
...
- Implements proper channel order for fp24-ARGB8 conversion
- Takes swizzle remap into account when reconstructing source bytes
2017-12-01 21:00:50 +03:00
kd-11
5cf2d774f3
fp32 precision on GPUs is embarassing
...
- Division seems to suffer from drift easily on GPUs due to limited precision
2017-12-01 21:00:50 +03:00
kd-11
ccc0383f75
vulkan: Implement overlay shader passes
...
- Implements vk::overlay_pass and vk::depth_convert_pass
- Also added a sanity check in RSX core for depth replace shaders
2017-12-01 21:00:50 +03:00
kd-11
680ca1d12a
rsx: Zcull refactoring and vulkan implementation
2017-12-01 21:00:50 +03:00
kd-11
c926868758
vk: Dont always assume framebuffers exist
...
- TODO: Use temporary renderbuffers for these outputs
2017-12-01 21:00:50 +03:00
kd-11
30269e5bad
rsx/gl: Use strict method of gathering the depth buffer bits
...
- Performance difference on modern GPUs is negligible
2017-12-01 21:00:50 +03:00
kd-11
07f61db24a
rsx: Try to take the context for the surface creation into account
2017-12-01 21:00:50 +03:00
kd-11
63f261a66d
rsx: Improve framebuffer check heuristics for contested memory buffers
2017-12-01 21:00:50 +03:00
kd-11
33f3a3e014
rsx: Major fixes
...
- Handle aliased depth + color target by disabling depth writes. This looks to be the correct way
- Add support for generic passes that cannot be done using general imaging operations. Lays the framework for tons of features and effects
- Implement RGBA->D24D8 casting. Sometimes games will split depth texture into RGBA8 then use the new RGBA8 as a depth texture directly
-- This happens alot in ps3 games and I'm not sure why. Its likely the ps3 did not sample fp values with linear filtering so this is a workaround
-- Only implemented for openGL at the moment
-- Requires a workaround for an AMD driver bug
2017-12-01 21:00:50 +03:00
kd-11
8646f51fa3
rsx: Add more validation to framebuffer setups. Game devs sometimes do crazy things
2017-12-01 21:00:50 +03:00
kd-11
0aaae000b3
rsx: Minor improvements
2017-12-01 21:00:50 +03:00
kd-11
db58cd7513
rsx: Invalidate both depth and color surfaces when binding a new surface
2017-12-01 21:00:50 +03:00
Jake
d17093e65b
spu: Fix interrupt jump check - also change interrupt variable to atomic bool for ease of setting/checking
2017-12-01 20:29:59 +03:00
Jake
34e01ba3d8
mfc: Fix support for list transfer stall bit with partial support for out of order execution - Also give Sync commands a size so they are properly detected by queue checks
2017-12-01 20:29:59 +03:00
Jake
8b476b5bfa
spu: Recompiler Interrupt optimizations - Pigeonhole optimize for branching pattern that is used to enable and disable interrupts used in code, this should lower amount of blocks that are compiled and avoid falling out of a block - Recompiled interupt check in some cases to stay in block instead of falling out to dispatcher
2017-12-01 20:29:59 +03:00
Jake
ad97780c4f
spu: Implement DFCMGT for interpreter and recompiler
2017-12-01 20:29:59 +03:00