kd-11
5f39a594ac
rsx: Clean up some unused legacy methods unnecessary after d3d removal
2019-11-10 17:53:12 +03:00
Eladash
3f3ce53c67
Fix string length check in cellGameThemeInstall
...
vm::ptr::size() returns sizeof type instead.
2019-11-10 14:32:15 +03:00
Eladash
e8cc9d1f52
Loader: Fix default sdk version
...
Note: sdk version checks are unsigned checks, such value results in always true.
2019-11-10 14:32:15 +03:00
Eladash
1986944c61
Implement sysutil_check_name_string
...
* Fully implement 3, 4, 16 and 17 error checks of cellSaveData.
* cellSysCacheMount restrict characters in ID.
* cellHddGameCheck restricts characters in dirName.
2019-11-10 14:32:15 +03:00
Emmanuel Gil Peyrot
56f82d2701
rsx: Wrap gsl::span definition into Utilities/span.h
2019-11-09 20:00:50 +01:00
Emmanuel Gil Peyrot
7e4d142682
Remove GSL as we don’t use it anymore
2019-11-09 19:30:06 +01:00
Emmanuel Gil Peyrot
f76720ceb0
Remove extraneous ::narrow<int>() calls
...
GSL’s gsl::span didn’t use the correct type for its index_type, which is
why they were needed.
2019-11-09 19:30:06 +01:00
Emmanuel Gil Peyrot
72cdf0b04c
Replace gsl::span’s implementation with tcbrindle’s
...
This implementation optimises correctly on all relevant compilers,
unlike GSL’s which gave extremely slow code on any compiler other than
MSVC.
Supersedes #6948 .
2019-11-09 19:30:06 +01:00
Emmanuel Gil Peyrot
25144caf12
Add tcbrindle’s span implementation
2019-11-09 19:30:06 +01:00
Nekotekina
a83cbf63c6
Remove gsl::finally only use
2019-11-09 19:30:06 +01:00
Emmanuel Gil Peyrot
ef368c5171
rsx: Replace gsl::byte with C++17’s std::byte
2019-11-09 19:30:05 +01:00
Nekotekina
6ea02c23a0
Fix SSSE3 usage in PPUInterpreter.cpp
...
Fixup
2019-11-09 20:39:56 +03:00
Nekotekina
1cca00ec3a
Fix SSSE3 usage in PPUThread.cpp
...
Remove legacy ifdefs, allow SSSE3 usage in AppImages.
2019-11-09 20:10:59 +03:00
Nekotekina
191675bf31
Remove gsl::finally only use
2019-11-09 19:11:01 +03:00
Nekotekina
0d629743ca
cellSysCache: poison opened cache files on cache clear
...
Make opened files return CELL_EIO after cache clear.
2019-11-09 14:50:41 +03:00
Nekotekina
73ee6abb0f
cellSysCache: return /dev_hdd1 root
...
It simplifies internal logic a little.
2019-11-09 14:43:19 +03:00
Nekotekina
e0bc276205
cellSysCache: keep mounted /dev_hdd1 after exitspawn
2019-11-09 14:43:19 +03:00
kd-11
7072489a6e
rsx: Implement point sprite coordinate generation
...
- When the point sprite flag is set, overrides the input similar to the
2D mask. The returned X and Y values are always the gl_PointCoord values
for the fragment.
- Stacks with the 2D mask to override the z and w coordinates.
2019-11-09 12:50:53 +03:00
Nekotekina
81c61e230f
Use std::from_chars in Emulator::SetUsr
2019-11-08 19:27:11 +03:00
Nekotekina
ccac9d4777
Remove throwing and catching cpu_flag::stop
...
Since there is spu_runtime::g_escape function now.
2019-11-08 19:27:11 +03:00
Nekotekina
e74a311931
GDB: remove wrong_checksum_exception
2019-11-08 19:27:11 +03:00
Nekotekina
587ae17aa2
Simplify fmt::throw_exception
...
Gradual exception deprecation: disallow choosing exception type.
However, the function itself can remain here forever.
2019-11-08 19:27:11 +03:00
Nekotekina
742bd633d8
Remove fs::file::set_delete
...
Since it's Windows-only functionality with limited use.
2019-11-08 19:27:11 +03:00
Nekotekina
d6087978b5
Fix vfs::host::unlink (Win32)
...
Use fs::get_virtual_device properly.
2019-11-08 19:27:11 +03:00
kd-11
63673b1a9f
rsx: Implement full color remap for the D24S8->ARGB8 converter
2019-11-08 19:11:59 +03:00
Nekotekina
24fdd24808
Fix vfs::host::remove_all
...
Separate WIN32-specific logic.
Don't call fs::remove_all on WIN32 path.
2019-11-07 21:21:21 +03:00
Eladash
af0bd7136d
PPU Disasm: Fix RC OE enabled instructions view
2019-11-07 14:09:23 +03:00
kd-11
8d1505752f
rsx: Validate depth test setup to avoid address contention
2019-11-07 11:32:44 +03:00
Nekotekina
03b9ee27c5
Virtualize cellSysCache
...
Allows caches from multiple games to coexist.
Also change the way of handling cache IDs (file-less).
2019-11-06 14:12:43 +03:00
kd-11
508ffcb775
vk: Compute kernel fixups
...
- Adhere to workgroup count limits as exposed by the GPU vendor.
They already execute properly even when going beyond the limits but this removes validation noise.
- Fix invocation counts for deswizzle kernel. The count was incorrect if blocksize was not 4, causing a bunch of useless work to be done.
2019-11-05 22:07:22 +03:00
kd-11
99d71fdc2a
vk: Implement layer batching for the GPU swizzle decoder
...
- Handles all LODs per layer meaning cubemaps are now fully handled in 6 passes instead of 6 * (log2(width)) passes.
- Handles all LODs of a 3D texture in one pass as well.
- The improvements do warrant dropping down the number of allowed compute invocations a bit
2019-11-05 22:07:22 +03:00
kd-11
7a0b94f343
vk: Minor compute optimizations
...
- Remove use of uniform buffers for compute static data. Use push
constants instead.
- Minor touchups to the deswizzle code to avoid redundant data copies.
2019-11-05 22:07:22 +03:00
kd-11
1266b63135
vk: Enable gpu deswizzling
2019-11-05 22:07:22 +03:00
kd-11
9cd3530c98
rsx: Set up framework for hw deswizzle
2019-11-05 22:07:22 +03:00
Nekotekina
da135fbfcc
SPU LLVM: Disable "special" branch patchpoints
2019-11-04 22:52:03 +03:00
kd-11
57d3c9e171
rsx: Take empty queries into account for engines that spam report reads.
...
- Some games will spam the report queue with requests but have zpass
statistics enabled.
2019-11-04 18:48:41 +03:00
kd-11
2a8f2c64d2
rsx: Implement report transfer deferring
...
- Allow delaying report flushes triggered by image_in or buffer_notify
- When the report is ready, all the delayed transfers will automatically
be done.
- TODO: Make this configurable?
2019-11-04 18:48:41 +03:00
kd-11
3e0f9dff4d
vk: Improve zcull synchronization
...
- Use zcull sync hints more aggressively
2019-11-04 18:48:41 +03:00
kd-11
fe3c290d03
vk: Reimplement occlusion result reading
...
- Implement partial result reads
2019-11-04 18:48:41 +03:00
kd-11
51e0eaaddc
rsx: Implement backend notification for upcoming zcull reads
2019-11-04 18:48:41 +03:00
kd-11
df63de8f16
rsx: Allow u32 restart index with full index width
2019-11-04 16:56:34 +03:00
kd-11
6b3af09fa5
vk: Improved crash message for missing MSAA features
2019-11-04 16:56:34 +03:00
Eladash
7475be99ab
lv2: Check ipc_key value if object is process shared
2019-11-03 14:59:47 +03:00
eladash
33fe0fdd6b
Add missng check for key in cellAudioSetNotifyEventQueue
...
key is checked once according to hw test.
2019-11-03 14:59:47 +03:00
Nekotekina
f75661bfae
Fix ALSA and PULSE building on Linux (workaround)
2019-11-01 20:41:16 +03:00
Nekotekina
35249d2578
Implement multi_cas with atomic2 type
...
stx::atomic2 is a "fat atomic" for use with multi_cas.
stx::multi_cas is minimal transaction routine.
2019-11-01 20:41:16 +03:00
kd-11
bbed791ee0
vk: Add explicit support for identity image views
...
- Allows bypassing all remap shenanigans to make some operations that
rely on the raw image to work correctly.
2019-11-01 19:35:46 +03:00
Emmanuel Gil Peyrot
03a2d36c7e
Audio: don’t build ALSA, PulseAudio or FAudio backends when disabled
2019-10-31 15:46:20 +03:00
kd-11
63bbf11a76
vk: Add video out calibration pass
...
- Adds gamma correction and RGB range filters to output to match PS3
2019-10-31 14:43:24 +03:00
kd-11
78aefe5b5e
rsx/overlays: Add support for other primitive types other than triangle_strips
2019-10-31 14:43:24 +03:00