Nekotekina
70cd8afafa
VFS: improve vfs::escape (escape NUL, LPT, COM...)
...
Windows legacy trash.
2020-03-14 15:07:59 +03:00
Nekotekina
6a8f5e6b38
VFS: fix vfs::get
...
Escape each path element separately.
2020-03-14 14:25:37 +03:00
Nekotekina
6c234b48ce
VFS: Fix possible out of range in vfs::escape
2020-03-14 13:33:25 +03:00
Nekotekina
bf957a575c
VFS: fix out of range problem in vfs::unescape
...
Also improve unescape with "!" allowing any character
2020-03-14 13:15:46 +03:00
Nekotekina
0c65a1721d
VFS: escape multidot names like ...
2020-03-14 12:34:28 +03:00
Eladash
5d78d81c00
cellSaveData: Filter directory lists to allowed savedata directories
...
Filters "." and "..", as well as possible wrong directories added by the user.
2020-03-13 22:43:27 +03:00
Eladash
b21b4faca8
cellSaveData: Fixed savedata lock after fmt::throw_exception
2020-03-13 22:43:27 +03:00
Eladash
d58f52ff31
cellSaveData: Add some listSet error checks
...
* Check listSet->fixedListNum.
* Check listSet->fixedList for nullptr and its directory items names.
* Check listSet->focusDirName for nullptr and directory name.
* Check listSet->newData->iconPosition.
* Check listSet->newData->dirName for nullptr and directory string.
* Check statSet->setParam->parental_level for old sdk.
* Return an error if listSet->focusPosition is NEWDATA and listSet->newData is nullptr.
* Simplify savedata directory list selection.
2020-03-13 22:43:27 +03:00
Eladash
54af8ec544
cellSaveData: funcFile fixes
...
* Allow '_' at filenames start and extension.
* Check if reading offset is valid, fix error code to CELL_SAVEDATA_ERROR_FAILURE.
* Don't create empty file on error of write ops.
* Don't allow "." and ".." filenames on funcFile, return CELL_SAVEDATA_ERROR_BROKEN.
2020-03-13 22:43:27 +03:00
Eladash
fdf47f43d8
cellSaveData: refactor param error 70 checks
...
Also extend the check to check empty name.
2020-03-13 22:43:27 +03:00
kd-11
2ae83782e1
vk: Fix potential MTRSX deadlock in case of a race condition
2020-03-13 22:06:04 +03:00
Eladash
f3877d11e8
rsx: Fix initial boolean state of m_textures_dirty and m_vertex_textures_dirty
2020-03-12 21:36:43 +01:00
Eladash
c04abac630
rsx capture: Fix exceptions handler, fix tiny race condition on capture new capture
2020-03-12 21:36:43 +01:00
kd-11
7e9dbeff7b
vk: Fix MTRSX deadlock ( #7766 )
2020-03-12 22:29:58 +03:00
Nekotekina
04dedb17eb
Disable exception handling.
...
Use -fno-exceptions in cmake.
On MSVC, enable _HAS_EXCEPTION=0.
Cleanup throw/catch from the source.
Create yaml.cpp enclave because it needs exception to work.
Disable thread_local optimizations in logs.cpp (TODO).
Implement cpu_counter for cpu_threads (moved globals).
2020-03-12 16:03:08 +03:00
kd-11
47bbfdd2aa
vk: Change texture cache memory management for disposed textures
...
- Use global resource manager instead of using the 2-frame hold behavior.
- Fixes high VRAM usage in some games
2020-03-11 16:29:34 +03:00
Nekotekina
92eeec39b7
Improve Stop Watchdog
...
Make it less possible to interfere with the debugger.
2020-03-10 23:00:23 +03:00
kd-11
7989de9d16
vk: Properly release dma resources.
2020-03-10 22:02:02 +03:00
Megamouse
3ea94c286b
input/overlays: fix premature pad interception removal
...
shader compilation and trophy notifications shouldn't cancel the pad interception during proper dialogs
2020-03-10 19:04:32 +01:00
Bird Egop
4e25daffa6
Explicitly rename has_512 into has_avx512 ( #7751 )
2020-03-10 19:21:00 +03:00
kd-11
12b73c8bdc
rsx: Fix copypasta
2020-03-09 17:20:24 +03:00
Eladash
636ed4a48b
HLE cellGcmSys: Avoid calling sys_rsx syscalls in rsx code
2020-03-09 16:07:14 +03:00
Eladash
af7cdcb5c7
Add forgotten error check in sys_spu_thread_group_connect_event
2020-03-09 16:07:14 +03:00
kd-11
2985a39d2e
rsx: Rewrite async decompiler
2020-03-09 14:59:25 +03:00
Nekotekina
609c0d46af
Implement stop watchdog
...
Shows fatal error if stopping takes more than 5s.
2020-03-09 13:20:49 +03:00
Nekotekina
9dca2887d8
Fixup for Emu.Pause()
...
Remove some reduntant calls.
Don't pause on unknown sys_fs_fcntl operation.
2020-03-08 22:03:16 +03:00
Nekotekina
07e1766a7c
Implement thread_ctrl::emergency_exit()
...
Replace exception throws with this.
2020-03-08 15:11:02 +03:00
illusion0001
814c73407d
overlay: set minimum update interval to 1ms
2020-03-08 15:05:42 +03:00
Eladash
5692c3de04
Fix sceNpUtilCmpNpId
2020-03-08 12:49:34 +03:00
kd-11
8214425a3c
rsx: Fix framebuffer native layout for X32_FLOAT
...
- It was not matching the order laid out for normal textures uploaded from CPU.
2020-03-08 11:43:49 +03:00
kd-11
84a542fbce
rsx: Blit engine improvements
...
- Detect writes to the display output memory and handle it specially.
It already defines a known 2D region.
- Try and detect situations where raw transfers would be of benefit.
2020-03-08 10:30:13 +03:00
Megamouse
0c45457101
Qt: Add title and title id to button tooltips
2020-03-08 00:06:48 +01:00
Eladash
892f74d762
rsx: Improve frame-limiter ( #7723 )
...
* rsx: Improve frame-limiter accuracy
* lv2: Improve lv2_obj::wait_timeout response time for aborting threads
* rsx: Make stretch to display area setting dynamic
* rsx: Redefine 'auto' frame limiter to obey vblank rate
* rsx: Make frame limiter setting dynamic
* rsx: Make frame-limiter compatible with dynamic changes
2020-03-08 01:11:35 +03:00
Eladash
deb6bd3e25
Atomic sys_prx_load_module_list error checks
2020-03-07 22:03:38 +03:00
Eladash
5e86ef2371
rsx: Make force cpu blit setting dynamic
2020-03-07 21:17:26 +03:00
kd-11
149d550f7e
gl: Restore commented out line
...
- Byte order step was disabled for debugging and not restored
2020-03-07 17:23:25 +03:00
kd-11
70f2577b9e
vk/gl: Use best-fit semantics when scanning texture cache for flippable images
...
- Allows sourcing flip data from the blit engine resources which avoids expensive flush and re-upload
2020-03-07 16:58:35 +03:00
kd-11
93295f7f50
vk: Fix image properties for flip temporary images to be samplable.
...
- In case of gamma correction or other effects, they may require shader access.
- BGRA8_UNORM is usually safe to use directly without staging memory.
2020-03-07 16:58:35 +03:00
kd-11
1725f7a34b
rsx: Add anaglyph 3D filter
2020-03-07 16:58:35 +03:00
kd-11
6e3406b3f5
video: Allow selection of 3D stereo resolutions
2020-03-07 16:58:35 +03:00
Nekotekina
12a3cdf0e8
Move Log.cpp to util/logs.cpp
...
Minor cleanup
2020-03-07 13:31:10 +03:00
Nekotekina
e4a81b1d13
Move Log.h to util/logs.hpp
2020-03-07 12:29:23 +03:00
Nekotekina
a166d3680e
Don't throw on invalid whence (return fs::error::einval)
2020-03-07 11:52:54 +03:00
Eladash
1669e95870
Implement lv2_file::open()
...
Return accurate error codes in prx_load_module, sys_spu_image_open and overlay_load_module.
2020-03-06 21:16:46 +03:00
Nekotekina
acd50eefaf
Try to use designated initializers
2020-03-06 09:42:49 +03:00
Nekotekina
7514e53385
Fix SPRX/firmware installation (use a mutex)
2020-03-06 08:39:24 +03:00
Megamouse
9e449db0c2
Qt/Input: piggyback on existing callback for battery_level
...
removes ds4 timer workaround
2020-03-05 22:37:48 +01:00
Adiost
f776910966
Qt/Input: new ds4 LED settings
2020-03-05 22:37:48 +01:00
Eladash
f6cf36f6a7
Fix _sys_prx_get_module_info p0pt->filename writing with 0 size
2020-03-05 18:28:56 +03:00
Nekotekina
7a8772dafa
Replace std::string::npos with umax
2020-03-05 14:05:23 +03:00