kd-11
9d981de96d
rsx: Fix offloader deadlock
...
- Do not allow offloader to handle its own faults. Serialize them on RSX instead.
This approach introduces a GPU race condition that should be avoided with improved synchronization.
- TODO: Use proper GPU-side synchronization to avoid this situation
2019-08-25 22:09:20 +03:00
Nekotekina
6165bd68c0
Use g_fxo for avconf_manager
2019-08-22 15:14:33 +03:00
Megamouse
94dd6c2007
cellSaveData: improve param.sfo creation
2019-08-22 08:05:12 +02:00
Megamouse
896cfd2ade
cellSaveData/cellMsgDialog: implement cellSaveDataDelete
2019-08-22 08:05:12 +02:00
Megamouse
0b720aeb59
cellSaveData: ignore dot and dotdot
2019-08-22 08:05:12 +02:00
Megamouse
2d29a33ea8
cellSaveData/overlays: initialize with focused entry
2019-08-22 08:05:12 +02:00
Megamouse
b3c1759853
cellSaveData/overlays/Qt: fix some warnings and a possible nullptr deref
2019-08-22 08:05:12 +02:00
Eladash
ec9b896fbf
Fix vm::reserve_map logic
2019-08-22 03:53:40 +03:00
Nekotekina
c43a126f62
Fix VFS initialization
2019-08-22 02:46:21 +03:00
Nekotekina
8cf025bf71
Use g_fxo for cellWebBrowser
...
Rename browser_t -> browser_info
2019-08-22 02:13:39 +03:00
Nekotekina
2b55bde104
Use g_fxo in cellRudp
...
Rename rudp_t -> rudp_info
2019-08-22 02:13:39 +03:00
Nekotekina
02fe1ef7ff
Use g_fxo for cellSearch
...
Rename search_t -> search_info
2019-08-22 02:13:39 +03:00
Nekotekina
4ac1e2d8f5
Use g_fxo for vfs_manager
2019-08-22 02:13:39 +03:00
Nekotekina
93d5c0a38e
Use g_fxo for cellRec
...
Rename rec_t -> rec_info
2019-08-22 02:13:39 +03:00
Nekotekina
2740fafa64
Use g_fxo for page_fault_notification_entries
2019-08-22 02:13:39 +03:00
Nekotekina
54952f6ad6
Use g_fxo for LoadedNpdrmKeys_t
...
Rename to loaded_npdrm_keys
2019-08-22 02:13:39 +03:00
Nekotekina
a85a8796d3
Use g_fxo for page_fault_event_entries
2019-08-22 02:13:39 +03:00
Nekotekina
606601441d
Use g_fxo for cellMusic
...
Replace music_t with music_state
2019-08-22 02:13:39 +03:00
Nekotekina
2882220cbd
Implement cpu_thread::stop_all()
2019-08-22 02:13:39 +03:00
Nekotekina
8517ccfdfa
Add new typemap for always existing objects
...
Not to be confused with singletons or global variables.
2019-08-22 02:13:39 +03:00
Nekotekina
7db2e2537f
Don't call lv2_obj::awake_all with empty list
...
Fixup after #5883
2019-08-22 02:13:39 +03:00
kd-11
7c5bde4aeb
rsx: Update tag timestamp to match newest inherited data
...
- Avoids memory appearing older when used for depth test without depth write
The write_barrier before the call will inherit new data but the tag will not update as no new information is added.
2019-08-21 21:17:15 +03:00
kd-11
c67c97844e
rsx: Fixup for blit engine range calculations
2019-08-21 21:17:15 +03:00
kd-11
5d1b7eb945
rsx: Fix reference leaks in texture_cache<->surface_cache communication
...
- Properly commit orphaned blocks not invalidating existing cache structures
- Do not ignore overwritten objects when commiting as unprotected fbo. Avoids stale references to invalidated surface objects.
2019-08-21 21:17:15 +03:00
kd-11
ca8b0da141
gl: Invalidate range before reading to prevent deadlock
2019-08-21 21:17:15 +03:00
kd-11
141072023b
rsx: Fix handling of ARGB8 memory
...
- Load into memory as straightforward BGRA
- Fixes a bug in vulkan caused by byte shuffling in blit engine vs shader access
- Removes the need for memory shuffling when transferring into a rendertarget
2019-08-21 21:17:15 +03:00
kd-11
9cd5325962
rsx: Free memory 'held hostage' by storage sections in the surface cache
...
- Once the memory has been captured by another surface, release the allocation
2019-08-21 21:17:15 +03:00
kd-11
be98554b40
rsx: Fix surface split logic
...
- Calculations are supposed to be done based on the properties of the outgoing surface
2019-08-21 21:17:15 +03:00
kd-11
67dac94704
rsx/fp: Zero-initialize FragDepth register to match hw
2019-08-21 21:17:15 +03:00
kd-11
35e61c77e0
gl: Fixup for D24S8 readback
2019-08-21 21:17:15 +03:00
Megamouse
9c64318e8a
Qt: Fall back to VERSION in game list
2019-08-21 07:57:44 +02:00
Alex James
b0d0f51d8d
crypto: implement AES-NI acceleration
...
This is based off the upstream implementation in mbedTLS as well as an
external pull request [1] for MSVC support (using intrinsics).
1: https://github.com/ARMmbed/mbedtls/pull/1355
2019-08-19 23:39:40 +03:00
JohnHolmesII
bd8cbcdb21
Reapply old template depth to compilers (fixes Gentoo building)
2019-08-19 20:12:31 +03:00
kd-11
dca29def5e
rsx: Temporary workaround for race condition in blit engine
2019-08-18 20:45:48 +03:00
kd-11
5e299111cc
rsx/vk: Restructure surface access barriers and implement RCB/RDB
...
- Implements render target data load (aka Read Color Buffer/Read Depth Buffer)
- Refactors vulkan surface barrier to be much cleaner.
- Removes redundant surface barrier invocations after doing a merged load
from surface cache.
- Adds explicit access modes when gathering surfaces from cache.
2019-08-18 20:45:48 +03:00
kd-11
dfe709d464
rsx: Surface cache restructuring
...
- Further improve aliased data preservation by unconditionally scanning.
Its is possible for cache aliasing to occur when doing memory split.
- Also sets up for RCB/RDB implementation
2019-08-18 20:45:48 +03:00
JohnHolmesII
5817e2a359
Fix mismatched enum string formats in sys_config
2019-08-18 18:39:17 +02:00
Silent
87ffa04a2b
Improvements to XInput vibration:
...
- use std::chrono to measure 20ms between XInputSetState calls, because clock() measures cpu time and not real time (so calls were made more often than intended)
- fixup data types for cached vibration values to prevent u8 values overflowing and giving false positives on m_dev->newVibrateData
2019-08-18 18:03:20 +02:00
Megamouse
b3aff3a1c6
cellKb: fix large ASCII characters for some compilers
2019-08-18 08:18:15 +02:00
Megamouse
eedf96e1f4
Qt: fix diacritics in keyboard handler
2019-08-18 08:18:15 +02:00
Megamouse
7408f50d71
cellKb: improve key conversion
2019-08-18 08:18:15 +02:00
Megamouse
86a8b5924a
Add option for keyboard layout
2019-08-18 08:18:15 +02:00
Megamouse
8a31c7a7c8
Qt/input: windows workaround to fix shift on the basic keyboard handler
2019-08-18 08:18:15 +02:00
Eladash
62414cee15
Do not allow SYS_SYNC_PRIORITY_INHERIT in sys_semaphore_create (EINVAL)
2019-08-18 04:01:16 +03:00
eladash
0af342a978
PPU Precise: FPCC handling on float ops implemented
2019-08-18 04:01:16 +03:00
Nekotekina
dd86aa472d
Fix _sys_lwcond_queue_wait
...
Fixup after #5883
2019-08-18 00:19:31 +03:00
Nekotekina
6535fb0603
Fix _sys_lwcond_signal_all
...
Fixup after #5883
2019-08-18 00:19:31 +03:00
Nekotekina
11a43e25d7
typeindices.hpp - start index from 0
...
Starting it from 1 makes it more error-prone to use.
2019-08-17 23:40:51 +03:00
max
92e6dee60f
[rpcs3] refactor includes and additional dependencies
2019-08-17 23:30:23 +03:00
max
c5440c95c8
[MSbuild] Extend support to v142 toolset
...
- Added support for current default toolset, explitly specified c++17 standard and 8.1 win sdk.
- properties were defined via `common_default.props` and `common_default_macros.props`
Note: There are 2 files because some properties need to be imported before `Microsoft.Cpp.Default.props` , but other common properties can be imported after but they require marco defined in `Microsoft.Cpp.Default.props`.
- Added hidapi and libusb project files to repository to simplify msbuild changes.
2019-08-17 23:30:23 +03:00
yahfz
1444492eab
lv2: Allow sys_sync_priority_inherit
2019-08-17 23:11:08 +03:00
eladash
050339bb3e
PPU/LV2: Make thread-lists scheduling atomic
2019-08-17 22:46:36 +03:00
Eladash
500a4fa2fb
rsx: Fix potential out of range methods execution (can result in segfaults)
2019-08-17 17:26:04 +01:00
Eladash
0d88f037ff
Add new accuracy control for PUTLLUC accuracy setting (non-TSX)
...
With the option enabled GET commands are blocked until the current PUTLLC/PUTLLUC executer on that address finishes
Additional improvements:
- Minor race fix of sys_ppu_thread_exit (wait until the writer finishes)
- Max number of ppu threads bumped to 8
2019-08-17 00:42:46 +03:00
Eladash
d8402008dd
Stub sys_process_get_number_of_object(object == SYS_SPUPORT_OBJECT)
2019-08-16 23:49:24 +03:00
Eladash
0dce6be8cb
Implement lv2_spu_image
...
- Improved sys_spu_image_.. error checking
- sys_process SYS_SPUIMAGE_OBJECT handling implemented
2019-08-16 23:49:24 +03:00
Eladash
80827aa31a
Stub sys_process_get_number_of_object(object == SYS_TRACE_OBJECT)
2019-08-16 23:49:24 +03:00
Eladash
6540fecdc3
Add another pattern to ppu analyzer imports
2019-08-16 22:55:04 +03:00
Pierre-Loup A. Griffais
f342f4b826
Work around a crash on startup on current versions of KDE on Linux.
...
https://bugs.kde.org/show_bug.cgi?id=401637
2019-08-16 20:37:41 +03:00
Pierre-Loup A. Griffais
56011cbddd
vk: don't die on VK_SUBOPTIMAL_KHR in AcquireNextImage, and recreate swapchain
...
vkAcquireNextImageKHR can also return VK_SUBOPTIMAL_KHR and is non-fatal.
However, it's a good idea to still recreate the swap chain later to maintain
optimal presentation paths after temporary occlusion.
2019-08-16 20:09:37 +03:00
msuih
42ff93d30c
Add advanced tab
2019-08-16 19:58:19 +03:00
Eladash
f2a2dfda3a
Improve unknown settings values dialog text message
2019-08-16 09:45:24 +02:00
Eladash
f0c267ecb0
Change default Sleep Timers Accuracy setting's value to "Usleep Only"
2019-08-16 09:45:24 +02:00
kd-11
a0f0c418d7
gl:Implement proper support for packed 16-bit rendertargets
...
- Also some minor refactoring
2019-08-15 14:00:17 +03:00
kd-11
7f85b18b46
gl: Add support for 4444 typeless texture
2019-08-15 14:00:17 +03:00
Megamouse
9f854dba98
Qt: move default stylesheet to stylesheets.h
2019-08-14 23:54:09 +02:00
Megamouse
503d43889d
rename rpcs3_app to headless_application
2019-08-14 23:54:09 +02:00
Megamouse
0dc7841d0f
Add cli arg for hidpi
2019-08-14 23:54:09 +02:00
Megamouse
13367071b0
update some comments
2019-08-14 23:54:09 +02:00
RipleyTom
2040a11585
header shuffling
2019-08-14 23:54:09 +02:00
Megamouse
8debdfcd09
handle empty callback returns
2019-08-14 23:54:09 +02:00
Megamouse
08c581947d
Create headless application [WIP]
2019-08-14 23:54:09 +02:00
Nekotekina
4df1c16099
Implement stx::typeinfo_v (util/typeindices.hpp)
...
Move and generalize logic from typemap.h
2019-08-14 21:04:25 +03:00
Nekotekina
f8f3067deb
Always check page_allocated in vm::check_addr
2019-08-14 20:28:34 +03:00
Nekotekina
d45c743877
Remove lib_loading_type::automatic
...
This is former default and is now obsolete.
2019-08-14 20:28:34 +03:00
Nekotekina
4f22559ff0
Remove dumb overloads of atomic_op, fetch_op
...
And lf_queue::apply.
Fix inlining problem by passing F by value.
2019-08-14 20:28:34 +03:00
Nekotekina
cf16ee5eb5
Implement lib_loading_type::liblv2list
2019-08-14 20:28:34 +03:00
Nekotekina
ae46333e99
Implement lib_loading_type::liblv2both
2019-08-14 20:28:34 +03:00
RipleyTom
87bf0386c4
Screenshot function
2019-08-14 19:24:42 +02:00
MarioSonic2987
b3f4cd3a95
Update "Enable native user interface" description
...
Since the merge of native OSK, back in February 2019, RPCS3 is able to support more languages with native UI. However, the description hasn't been updated since then.
As far as I know, the languages that are now supported are English, French, German, Italian and Spanish.
Both Greek and Russian use different alphabets from Latin, therefore they aren't supported. Polish or Norwegian uses special Latin characters that aren't covered in extended ASCII character set. Chinese, Japanese and Korean aren't also supported.
2019-08-14 04:44:59 +01:00
Eladash
7fda07eb5b
rsx: UB fix (signed vs unsigned mismatch)
2019-08-13 20:48:50 +01:00
Eladash
519fe9309e
rsx: Fix nv0039::buffer_notify
2019-08-13 20:48:50 +01:00
Eladash
527b1bb071
rsx: Fix overlapping transfer of nv3089::image_in when out_pitch != in_pitch
...
or out_pitch != out_bpp * out_w
2019-08-13 20:48:50 +01:00
Eladash
19825366f5
Fixup for fixup
2019-08-13 17:55:45 +01:00
Eladash
a902874b01
Fixup after #6286
2019-08-13 13:34:14 +03:00
Eladash
a4896eb6df
Fix race on cellVdecClose TLS cleanup
2019-08-13 04:56:00 +03:00
Eladash
30c72b105e
Fix race on notifying vdec thread in cellVdecGetPicture
...
Can dereference nullptr if cellVdecClose was called simultaneously.
2019-08-13 04:56:00 +03:00
Eladash
14ac70dfbf
Avoid using _sys_ppu_thread_exit in _sys_interrupt_thread_disestablish
2019-08-13 04:56:00 +03:00
Eladash
4b82006984
ppu: Improve LWSYNC
...
Block load<->load reordering as real lwsync.
2019-08-13 04:56:00 +03:00
eladash
4f00af6000
ppu interpreter: Allow non-ssse3 to use fast path
...
byte shuffle is now removed which was the barrier for ssse3 check.
2019-08-13 04:56:00 +03:00
Eladash
6d3fc3a386
core config: Expose min/max ranges of integral settings and use it
2019-08-13 04:56:00 +03:00
Eladash
a6c94a0eaf
Fix possible infinite loop on vm area searching (sys_mmapper_allocate_address)
...
Specifically when allocation with 0x8000'0000 alignment fails.
2019-08-13 04:56:00 +03:00
Eladash
cd4e895c04
Use error_code in mmapper_thread_recover_page_fault
2019-08-13 04:56:00 +03:00
Eladash
629d8e3a51
Fix sys_time_get_current_time() date
2019-08-13 04:56:00 +03:00
Eladash
6d0f2ae58a
ppu interpreter: Improve SRD/SLD
2019-08-13 04:56:00 +03:00
Eladash
a560498cd4
ppu: Improve FCTIW, FCTIWZ, FCTID and FCTIDZ
2019-08-13 04:56:00 +03:00
Eladash
0a5b6ad928
Add missing EALIGN check for sys_mmapper_search_and_map
2019-08-11 21:43:13 +03:00
Eladash
a832581201
Fix sys_vm address boundary checks (fix vsize)
2019-08-11 21:43:13 +03:00
Eladash
ecb3b62787
Fix CELL_CAMERA_ERROR_NOT_INIT check in cellCameraSetNotifyEventQueue when camera set to null
...
Don't worry, this was a duplicated check for null camera setting.
2019-08-11 21:43:13 +03:00
Eladash
96527eee5b
idm: Fix bug in ID searching
...
* ID checking now checks if (id % step) == 0
* Extend possible ID range to allow UINT32_MAX (as long as base is non-zero)
2019-08-11 21:43:13 +03:00
Eladash
5c904bf3e2
Fix max allocations for DECR mode (sys_memory)
2019-08-11 21:43:13 +03:00
Eladash
cbcd06d1dc
ppu: Stack size allocation improvements
2019-08-11 21:43:13 +03:00
Eladash
3ce18fd960
Implement vm::page_executable ( #6330 )
...
Fixes segfaults when attenpting to set segfaults on non-executable memory.
2019-08-11 21:04:17 +03:00
Eladash
94d33003a3
Write zero in attr->pad (sys_memory_get_page_attribute)
...
Its included in lv2 as well.
2019-08-10 19:47:37 +03:00
Eladash
25e47e0de0
Fix vm::check_addr memory state check
2019-08-10 19:47:37 +03:00
kd-11
8866a3d6a9
rsx: Cleanup for blit engine fixes
2019-08-10 16:45:02 +01:00
msuih
8150095e8f
Qt warnings cleanup
2019-08-10 16:15:24 +02:00
Megamouse
f051f53e15
Qt: add setting for trophy manager icon background color
2019-08-10 15:13:36 +02:00
Megamouse
2f12226ff9
Qt: add setting for save manager background icon colors + fix icon size
2019-08-10 15:13:36 +02:00
Megamouse
d4c635a83c
Qt: change default icon background color to something friendlier looking
2019-08-10 15:13:36 +02:00
Megamouse
697128464b
Qt: add some sanity checks to prevent list crashes
2019-08-10 15:13:36 +02:00
Megamouse
0559e929d4
fix some warnings
2019-08-10 15:13:36 +02:00
Megamouse
efcb46658b
Qt: fix initial trophy icon background color
2019-08-10 15:13:36 +02:00
Megamouse
01720afba9
silence some warnings
2019-08-10 11:02:20 +02:00
kd-11
033836d88c
rsx: Minor fixup for nv3089::image_in
...
- Typo scale_x->scale_y
- Remove convoluted temp buffer creation and just use vector instead
2019-08-08 15:48:22 +03:00
Eladash
112ad9dda2
Allow to load liblv2.sprx with manual/both lib loading options ( #6274 )
2019-08-07 18:41:27 +03:00
RipleyTom
05813c7e90
Fixes suspend+stop threads not stopping
2019-08-04 21:16:19 +03:00
xddxd
6e89e4ebbf
Update game_list_frame.cpp
2019-08-04 13:29:45 +02:00
Megamouse
4ad784d614
Qt: select custom configs when opening the custom config folder
2019-08-04 08:45:52 +02:00
Eladash
c219417f62
sys_vm: Fix sys_vm_invalidate
2019-08-03 14:29:17 +01:00
Nekotekina
5bd17a44c9
Add fallback implementation for waitable atomics
...
May improve perf on OSX/BSD
2019-08-02 18:37:23 +03:00
Eladash
72fb3ba794
perf hotfix for sys_timer_usleep
2019-08-01 23:38:09 +03:00
kd-11
f0bd0b5a7c
rsx: Conditional render sync optimization
...
- ZCULL queue was updated to one-per-cb but the conditional render sync hint was not updated.
- Do not unconditionally flush the queue unless the upcoming ref is contained in the active CB.
- This avoids spamming queue flush, which frees up resources and improves performance
2019-07-30 21:13:42 +03:00
Malcolm Jestadt
d689a6e47b
vk: Don't warn RADV users on LLVM 8.0.1
...
- The 'back screen' issue on RADV was resolved with LLVM 8.0.1
2019-07-30 19:56:05 +03:00
eladash
e40b76b253
sys_lwcond: Extract protocol from lwmutex at creation
...
This is the only reason theres a need to specify lwmutex_sq id at creation. unlike sys_cond, lwcond isn't connected to lwmutex at the lv2 level.
SYS_SYNC_RETRY fix is done explicitly at the firmware level.
This fixes issues when the original lwcond and lwmutexol data got corrupted or deallocated, this can happen when the program simply memcpy the control data to somewhere else.
Or if it uses direct lv2 the lwcond conrol param can even be NULL which will make it access violate when dereferncing it. (This param is unchecked and can be anything)
2019-07-29 21:58:04 +03:00
eladash
7508ae6e65
Add EAGAIN check for sys_memory_contianer_create
2019-07-29 21:55:59 +03:00
eladash
1e5e0f3b5e
make sys_fs_closedir atomic
2019-07-29 21:55:59 +03:00
Nekotekina
949f33c8a4
Fix sys_config_get_io_event syscall name
2019-07-29 21:55:59 +03:00
Nekotekina
c6993d3f1c
Change bits of waitable atomics
...
Reduce max waiter count to 2^14.
Refactor code to use waiter_mask and signal_mask constants.
2019-07-29 21:55:59 +03:00
Nekotekina
e1db6cef6f
Remove ignored bits in waitable atomics
...
It was not implemented correctly.
2019-07-29 21:55:59 +03:00
Eladash
829047ecdb
ppu disasm: Improve ORI and ORIS disassembly
2019-07-29 18:28:39 +03:00
Nekotekina
f63e89f9b4
Implement waitable atomics
...
Moved Atomic.h to util/atomic.hpp
List source files in CMakeLists.txt
2019-07-29 03:04:55 +03:00
Nekotekina
ec2db8edbc
Correct get_int_t to get_uint_t.
...
Add get_sint_t.
2019-07-29 00:12:07 +03:00
Eladash
997e3046e3
vm/sys_overlay Improvements
...
- Implement sys_overlay_load_module_by_fd.
- Implement special segment allocation when ppc_seg flag is specified.
2019-07-28 14:23:58 +03:00
Megamouse
65134f73d6
Qt: properly scale icons in trophy manager
2019-07-27 15:29:05 +02:00
Megamouse
76a1fd5c88
Qt: simplify game list icon resize
2019-07-27 15:29:05 +02:00
kd-11
1de90bdb1f
rsx: Improve aliased data preservation
...
- Carve out inherited region if any
- Perform pitch compatibility test before assigning old_surface
2019-07-27 16:09:21 +03:00
msuih
738cfccbba
Save manager improvements
2019-07-27 11:48:37 +02:00
Eladash
230c3d55b6
Fixup
2019-07-27 04:03:29 +01:00
Eladash
fcc75c8b0f
rsx: Write atomically semaphore updates and fix zcull timestamp
2019-07-26 21:27:55 +03:00
Eladash
22994d15fb
Fix cellCamera events support with clocks scaling
2019-07-26 21:27:55 +03:00
Eladash
c53f0dd7b5
rsx: Fix gcm unmap events
2019-07-26 21:27:55 +03:00
Megamouse
b56b425b19
Emu: set m_title to the actual disc game title
2019-07-25 08:53:07 +02:00
Megamouse
b44b44b3c4
Qt: cleanup some comments
2019-07-25 08:53:07 +02:00
Megamouse
71c56b719c
Emu/overlays: fix background picture path
2019-07-25 08:53:07 +02:00
Nekotekina
090c71aa7c
TSX: Improve cpu_thread::suspend_all implementation
...
Implement low_lock and vip_lock (for shared_mutex).
Try to simplify suspend_all implementation with updated shared_mutex.
2019-07-24 17:25:52 +03:00
Eladash
49aefc0795
Prefetch MFC list elements ( #5345 )
...
* Prefetch mfc list elemets to protect from overwriting
Also move some stuff away from command processing such as a few constant arguments setup
2019-07-24 01:13:45 +03:00
Eladash
85b1152e29
Timers scaling and fixes
2019-07-23 00:09:01 +01:00
Eladash
d17be2c2ec
Fix similar bug in sys_rsx_context_iomap
...
TODO: Is there an rsxmem unmap event for those cases?
2019-07-22 15:16:43 +03:00
Eladash
cf4d715284
typo fix (to squash)
2019-07-22 15:16:43 +03:00
Eladash
2b721b9e29
correctness fix
...
Not that it really matters because of gcm's lwmutex but just in case the syscall is useb directly.
2019-07-22 15:16:43 +03:00
Eladash
492c9e3c7c
Fix sys_rsx_context_iounmap partial unmapping
2019-07-22 15:16:43 +03:00
Rui Pinheiro
070c3af50f
Initial sys_config implementation
2019-07-22 02:44:45 +03:00
Megamouse
6128fffd3e
Qt: make text labels in about dialog selectable
2019-07-21 20:07:19 +02:00
Silent
66c1143a65
Improvements to Virtual File System dialog:
...
- Replace Add Directory and Reset buttons with + and - buttons
- Add a confirmation message before Reset All
- Rename "Okay" to "Save" (to be in line with the rest of the UI) and add a Close option to quit without savin
2019-07-21 13:25:43 +02:00
Silent
f5f0a5aa19
Use move semantics with several shared pointers in vfs_dialog, they need not be copied
2019-07-21 13:25:43 +02:00
Megamouse
78ecacabcb
input: keep pads intercepted while regular buttons are still pressed
2019-07-21 10:18:59 +02:00
kd-11
9a7c2784f0
rsx: Do not clip scissor to viewport when doing buffer clear
2019-07-20 16:39:32 +03:00
kd-11
e2574ff100
rsx: Support CSAA transparency without multiple rasterization samples enabled
2019-07-19 15:49:08 +03:00
Malcolm Jestadt
79ddf55937
Fix decryption filtering for case sensitive platforms
...
- Filter for .BIN instead of .bin
2019-07-19 14:46:53 +03:00
kd-11
b5a2f0df68
rsx: Implement separate viewport raster clipping
...
- Merge viewport raster window and scissor into one clipping region
- Viewport raster clip is different from viewport geometry clipping in
hardware as the latter is configurable separately
2019-07-19 14:21:19 +03:00
Nekotekina
1b140c8e97
SPU Recompiler: optimize JIT memory consumption
...
Avoid rebuilding trampoline for every function at startup.
This should fix Out of Memory error in some cases.
2019-07-19 04:56:35 +03:00
msuih
95b6883ad4
Tiny typo fix
2019-07-18 19:16:17 +02:00
msuih
d9c311737d
Keep custom name when adding/removing game-specific config
2019-07-18 19:16:17 +02:00
scribam
a268415121
vk: Use macros from Vulkan SDK
2019-07-17 17:56:29 +03:00
kd-11
ea2f4d57fa
rsx: Fixups
2019-07-17 13:29:42 +03:00
kd-11
113a49e00c
rsx: Handle cyclic references when doing memory inheritance
2019-07-17 13:29:42 +03:00
kd-11
34b06453f9
rsx: Handle lost data due to unused data sections
...
- After splitting, the sections may not be referenced at all for anything other than just pixel storage
- In such cases, either merge down or sample from the upstream source instead
2019-07-17 13:29:42 +03:00
kd-11
998717659f
rsx: Fix reference leak when cloning surfaces
2019-07-17 13:29:42 +03:00
kd-11
009e01a347
rsx: Set up for multi-section inheritance
2019-07-17 13:29:42 +03:00
Alex James
397e5dd1ea
Qt/game_list_frame: Ignore file entries when adding disc/game directories
...
Fixes #6212 .
2019-07-16 15:58:52 +03:00
Nekotekina
736ec4035e
Fixup for SPU Recompilers, regression after #6210
2019-07-15 19:51:58 +03:00
Nekotekina
cb5c26f2b5
Fix SPU Interpreter regression after #6147
2019-07-15 16:34:34 +03:00
Eladash
1e2f81dd33
kernel explorer typo fix
2019-07-15 15:50:40 +03:00
Nekotekina
c01f1a8968
Avoid transitive include of vm_ref.h
...
Add forward declarations of vm::_ref_base
Remove default AT = u32 in _ptr_base and _ref_base (doesn't play well).
2019-07-15 15:46:46 +03:00
Nekotekina
cfa1416d64
sys_spu: add vm::temporary_unlock
2019-07-14 18:33:23 +03:00
Nekotekina
1a1eff66bc
sys_timer: add vm::temporary_unlock
2019-07-14 18:21:56 +03:00
Nekotekina
bc1617758c
sys_semaphore: add vm::temporary_unlock
2019-07-14 18:18:03 +03:00
Nekotekina
6126a98111
sys_rwlock: add vm::temporary_unlock
2019-07-14 18:14:15 +03:00
Nekotekina
e1293b14f8
sys_net: add vm::temporary_unlock
2019-07-14 18:11:00 +03:00
Nekotekina
f5ee8c1292
sys_interrupt: add vm::temporary_unlock
2019-07-14 18:08:18 +03:00
Nekotekina
0a88a23bf5
sys_event: add vm::temporary_unlock
2019-07-14 18:06:02 +03:00
Nekotekina
cbfa6cc91f
sys_vm: add vm::temporary_unlock
2019-07-14 17:55:26 +03:00
Nekotekina
38d4e3c184
sys_mmapper: add vm::temporary_unlock
2019-07-14 17:51:03 +03:00
Nekotekina
7398cfc950
sys_event_flag: add vm::temporary_unlock
2019-07-14 17:37:58 +03:00
Nekotekina
22e4ef147a
SPU TSX: fix "Preferred SPU Threads"
2019-07-14 17:33:20 +03:00
Megamouse
9ff6486c85
Qt: Fix small controller icon in pad settings for high dpi modes
2019-07-14 16:19:02 +02:00
Eladash
3de885c7a6
Dealloc exec cache after sys_prx/overlay_unload_module
...
Must come before vm::dealloc of it.
2019-07-13 16:59:58 +03:00
Megamouse
3d6c211382
Qt: fix app versions after a patch was removed from the game list
2019-07-13 10:50:41 +02:00
Malcolm Jestadt
94af3b3f03
vk: Fix Linux Vega float16_t workaround
...
- It was disabling float16_t for non Vega cards
2019-07-12 12:25:46 +03:00
yahfz
ae055f6792
Set the default SPU Decoder to LLVM and rename SPU LLVM to "fastest"
2019-07-11 23:39:27 +02:00
Eladash
17c8ac9ab8
rsx: Debugger output text fix
2019-07-12 00:19:56 +03:00
Eladash
c4d8ef4340
rsx: Allow to configure vblank rate
...
Removed "HLE protection" hack from sys_rsx_context_attribute
2019-07-12 00:19:56 +03:00
Eladash
efbae02a22
Fix Emu.Stop() with vulkan device enumeration hack
2019-07-11 23:34:29 +03:00
Silent
f3551cedb7
rsx: Swap R and B channels in SET_BLEND_COLOR since this color is BGRA, not RGBA
2019-07-11 22:51:01 +03:00
RipleyTom
6c6b973342
Microphone implementation
2019-07-11 20:13:12 +01:00
kd-11
2898309f68
vk: Silence some debug prints
...
- This message confuses some users
2019-07-11 13:22:13 +03:00
kd-11
fc09572648
rsx: Implement texel border decode
...
- Texel borders are no longer actually supported in modern APIs
- Removes the border texels and uses border color instead which is incorrect but should work fine
2019-07-11 13:22:13 +03:00
kd-11
d8f753f1e8
rsx: Do not allow framebuffer surfaces that exceed their allocated pitch dimensions
...
- Truncate surfaces to forcefully fit inside the declared region
2019-07-11 13:22:13 +03:00
Eladash
537d3f2548
Log last function on debug pause or exception, dump cpu_thread state on access violation
2019-07-10 17:35:39 +03:00
Eladash
d7a2d42d8f
MFC: Fix Tag Status report for sync/eieio/barrier commands
2019-07-10 17:35:39 +03:00
Silent
2016a33277
Fixed behaviour of buttons in Welcome, Find, Settings, VFS and Debugger dialogs - now reacting to button click, not press
2019-07-10 13:14:05 +03:00
Margen67
ab228d6407
Fix #6180 (typo in UI options)
2019-07-10 07:55:01 +02:00
Eladash
78e447e28c
rsx: Typo fix
2019-07-09 22:47:55 +03:00
kd-11
2548057ea0
vk: Improve AMD driver support
...
- Workaround broken fp16 in AMDVLK/RADV
- Do not disable primitive restart as the issue seems to have been fixed
2019-07-09 16:27:59 +03:00
kd-11
956270d9be
gl: Add readback/writeback config for format GL_R16
2019-07-09 16:27:59 +03:00
kd-11
c072c511a1
rsx: Add support for slice padding rows when gathering slices for cubemap/3d
2019-07-09 16:27:59 +03:00
kd-11
9ca6546dec
vk: When reusing resources, make sure to reinitialize the component layout
2019-07-09 16:27:59 +03:00
kd-11
0cc672dcb3
vk: "Improve" initialization hack
...
- Change default alpha to 1 from 0
- TODO: Implement memory tagging for synchronizing this
2019-07-09 16:27:59 +03:00
kd-11
219a5382f7
rsx: If no array streams are enabled, mark inline array as disabled (null render)
2019-07-09 16:27:59 +03:00
kd-11
7840cd914e
rsx: Fixup nv3089::image_in
...
- Correct pitch when sourcing from temp block
- Remove obsolete? double transfer that also introduced a stale pointer reference to freed memory
2019-07-09 16:27:59 +03:00
kd-11
c47f4fd59e
vk: Fix frame skipping
2019-07-09 16:27:59 +03:00
Nekotekina
b9130dd663
Remove redundant const on return value in rsx_methods.h
2019-07-09 12:09:21 +03:00
Nekotekina
d1db6a6827
Revert incorrect usage of le_t in name_u64
2019-07-09 12:07:58 +03:00
Eladash
6fba3dd90c
Misc correctness improvement
...
Use let_<u64> for name_64 and prefer it when possible.
2019-07-09 11:52:34 +03:00
Eladash
d57b4dc8f3
rsx: Refactor rsx_decode.h and bugfixes
2019-07-09 11:52:34 +03:00
Nekotekina
92c08be387
Build with -fno-strict-aliasing
...
Doesn't affect MSVC build since MSVC already works in a similar manner.
2019-07-08 19:39:44 +03:00
kd-11
50736263d2
gl: Fix native pitch computation
2019-07-08 18:04:56 +03:00
Eladash
6d65d3424f
rsx: Clamp fragment shaders address
2019-07-06 20:58:18 +03:00
Eladash
4c2fb54b99
Fix possible inconsistencies for sys_memory mem stats report
2019-07-04 22:35:22 +03:00
kd-11
ad10eb391e
vk: Reuse discarded memory whenever possible instead of recreating new
...
objects
- Memory allocations are surprisingly expensive when spammed
2019-07-03 15:52:16 +03:00
kd-11
71e809a78b
rsx: Implement dma abort in case of a reset after misprediction
2019-07-03 15:52:16 +03:00
kd-11
0f11939faf
vk: Refactor gc
2019-07-03 15:52:16 +03:00
kd-11
ae93b417ec
vk: Handle emergency commandbuffer close with dangling queries
...
- TODO: Refactoring
2019-07-03 15:52:16 +03:00
kd-11
d69e8288ad
vk: Restructure commandbuffer submission into tagged event IDs
...
- Tagged eventIDs can be used to safely delete resources that are no
longer used
- TODO: Expand gc to collect images as well
- TODO: Fix the texture cache to avoid over-allocating image resources
2019-07-03 15:52:16 +03:00
kd-11
ce04a797c3
vk: Fix event signal race when speculation fails to avoid a cache miss
...
- TODO: Proper GC for stale events
2019-07-03 15:52:16 +03:00
Malcolm Jestadt
b5d5113803
gl: Workaround slow PBO usage with Mesa
...
-Mesa is currently fastest with GL_STREAM_COPY
-See a338dc0186
-Also see https://bugs.freedesktop.org/show_bug.cgi?id=111043
2019-07-03 11:28:29 +03:00
msuih
690cdff0d3
Minor fixes
...
- Fix a typo in OpenAL
- Fix typo in cellHttp.h
- Unused variables in catch
- Use 64-bit shifts
- Use use_count with shared pointers, unique is depracated and getting removed
- Explicitly cast boolean to int
- Signed/unsigned issues with loop variables
- Fix missing return statement (the code path is unreachable, but compiler wants a return)
- */ ouside of comment
- Fix duplicate layout name
2019-07-01 04:33:23 +03:00
msuih
503e023815
Explicitly downcast integers
2019-07-01 04:33:23 +03:00
msuih
d57124d075
Explicitly cast size_t to integer types
2019-07-01 04:33:23 +03:00
msuih
146e43b6ec
Do not use negative unsigned literals
2019-07-01 04:33:23 +03:00
msuih
13a557fe67
Silence some warnings
...
These are technically UB but work just fine
2019-07-01 04:20:00 +03:00
Eladash
2bce367488
Fixup for fixup ( #6153 )
...
* Fixup for fixup
* Fix memory ordering for MTRSX
volatile doesnt block reordering.
* ugh
2019-06-30 12:47:42 +03:00
Eladash
43f919c04b
Fixup after #6143 ( #6146 )
...
vm::spu max address was overflowing resulting in issues, so cast to u64 where needed. Fixes #6145 .
Use vm::get_addr instead of manually substructing vm::base(0) from pointer in texture cache code.
Prefer std::atomic_thread_fence over _mm_?fence(), adjust usage to be more correct.
Used sequantially consistent ordering in semaphore_release for TSX path as well.
Improved memory ordering for sys_rsx_context_iounmap/map.
Fixed sync bugs in HLE gcm because of not using atomic instructions.
Use release memory barrier in lwsync for PPU LLVM, according to this xbox360 programming guide lwsync is a hw release memory barrier.
Also use release barrier where lwsync was originally used in liblv2 sys_lwmutex and cellSync.
Use acquire barrier for isync instruction, see https://devblogs.microsoft.com/oldnewthing/20180814-00/?p=99485
2019-06-29 18:48:42 +03:00
Eladash
1ee7b91646
Refactoring ( #6143 )
...
Prefer vm::ptr<>::ptr over vm::get_addr.
Prefer vm::_ptr/base over vm::g_base_addr with offset.
Added methods atomic_t<>::bts and atomic_t<>::btr .
Removed obsolute rsx:🧵 :Read/WriteIO32 methods.
Removed wrong check in semaphore_release.
Added handling for PUTRx commands for RawSPU MFC proxy.
Prefer overloaded methods of v128 instead of _mm_... in VPKSHUS ppu interpreter precise.
Fixed more potential overflows that may result in wrong behaviour.
Added io/size alignment check for sys_rsx_context_iounmap.
Added rsx::constants::local_mem_base which represents RSX local memory base address.
Removed obsolute rsx:🧵 :main_mem_addr/ioSize/ioAddress members.
2019-06-29 01:27:49 +03:00
msuih
e043412be4
Add timeout for vulkan device enumeration
2019-06-28 23:34:13 +03:00
JohnHolmesII
232a35b6fc
Various small warning fixes
...
-Indentation warnings
-prevent shift overflow
-This was declared extern in all contexts. Remove this for initialization
-Fix main return types. OH CANADA!
-Silence extraneos 'unused expression' warning
-Force use return value (warning)
-Remove tautological compare copy-pasta (char always < 256)
2019-06-28 01:45:29 +03:00
JohnHolmesII
948c1df969
Remove unecessary vulkan loader check var, per kd
2019-06-28 01:45:29 +03:00
JohnHolmesII
a124ec4a26
Remove braces around shader source strings (warnings)
2019-06-28 01:45:29 +03:00
JohnHolmesII
d0eae7bab1
Fix -Wsign-compare a little bit
...
Explicitly mark loop types (per review)
2019-06-28 01:45:29 +03:00
JohnHolmesII
22917084d9
Explcitly mark overflow in various SIMD functions. Doing so silently
...
created warnings.
2019-06-28 01:40:52 +03:00
JohnHolmesII
ebb1ae6408
Properly ignore SIMD macros to avoid warning
2019-06-28 01:40:52 +03:00
JohnHolmesII
23094b48bb
Fix warnings related to -Wswitch
...
Add default cases.
Move default breaks to newline
Add proper handling in some instances.
Add missing enums to switches
2019-06-28 01:40:52 +03:00
JohnHolmesII
be521ff0ab
Fix warnings related to parentheses
2019-06-25 20:36:32 -07:00
JohnHolmesII
32f8f40a4a
Disable warnings for stb_image.cpp. Should this file be moved to
...
3rdparty?
2019-06-25 20:36:32 -07:00
JohnHolmesII
27fca2ed33
CMake refactor
2019-06-25 20:36:32 -07:00
Nekotekina
1641be5e0c
Fix UTF-8 BOM in vm.cpp
2019-06-25 22:21:56 +03:00
Malcolm Jestadt
31afd046b0
lv2: sys_timer_usleep improvements for linux
...
-The minimum quantum on linux appears to be 50 microseconds by default, not 100
-Do not wait for the last quantum to avoid sleeping too long
2019-06-25 20:20:05 +01:00
kd-11
9ce7b8a401
vk: Add LLVM8 warning for RADV drivers
2019-06-25 20:50:54 +03:00
kd-11
009c55fcba
vk: Fix broken layout stream on first draw call
2019-06-25 20:50:54 +03:00
kd-11
4ff77a8555
rsx: Improve balancing of the offloader thread
...
- Use two counters to avoid atomic operations
- Yield instead of sleeping because some games are very sensitive to timing
2019-06-25 20:50:54 +03:00
kd-11
8249d51aa8
vk: Optimize occlusion pool management
...
- Do not consume a slot every draw call, instead batch as many draws as possible
- Since renderpasses are dispatched per-draw-clause, keeping occlusion queries outside the renderpasses works fine
- If renderpasses are reorganized, occlusion tasks will have to be reorganized again
2019-06-25 20:50:54 +03:00
kd-11
1ee675e1f4
facepalm of the year
...
- Typo fix
- This check leads to forever relocating memory if size never exceeds capacity!
2019-06-25 20:50:54 +03:00
kd-11
2b9c315374
rsx: Use rpcs3 thread construct for the offloader thread
2019-06-25 20:50:54 +03:00
kd-11
d26b25816d
rsx: Improve profiling setup
...
- Avoid spamming QPC when not needed
- Free performance when debug overlay is not enabled
2019-06-25 20:50:54 +03:00
kd-11
b893a75002
rsx: Rework RSX offloading
...
- Use a lockless queue
- Do not enqueue small transfers
2019-06-25 20:50:54 +03:00
kd-11
c32c1b0a62
gl: Minor API tweaks
...
- Avoid spamming the driver with samplerParameter calls unless the parameters have actually changed
2019-06-25 20:50:54 +03:00
kd-11
6a32f716db
rsx: Reimplement vertex layout streaming
...
- Remove string comparisons from the hot-path!
- Use attribute streaming and push constants to avoid forcing a descriptor block copy every other draw call/pass.
While this isn't so bad on nvidia cards, it makes AMD cards a slideshow.
2019-06-25 20:50:54 +03:00
kd-11
59ee74a275
rsx: Disable vertex cache if multithreaded memory access is enabled
...
- When multithreaded RSX is enabled, the vertex cache just lowers performance
- The small cost of upload is paid by the asynchronous thread, allowing RSX to work optimally
2019-06-25 20:50:54 +03:00
kd-11
0fa3bcc336
rsx: Asynchronous data transfer
2019-06-25 20:50:54 +03:00
kd-11
358169507c
rsx: Use SSE to accelerate index buffer uploads
2019-06-25 20:50:54 +03:00
kd-11
b645ebdb04
vk: Refactor device management and improve driver detection
2019-06-25 20:50:54 +03:00
kd-11
25bba9bf56
vk: API update
...
- use KHRONOS_validation instead of LUNARG_standard_validation which is deprecated
2019-06-25 20:50:54 +03:00
kd-11
f113cfe5c0
vk: Avoid some useless memory barriers
...
- Do format conversions only when necessary
2019-06-25 20:50:54 +03:00
kd-11
c9501b60ab
rsx: Use explicit fma for MAD emulation
2019-06-25 20:50:54 +03:00
kd-11
6be7c58fa4
glsl: Refactoring, cleanup and optimizations
...
- Avoid generating unused code
- Reduce GPR usage in emitted code
2019-06-25 20:50:54 +03:00
Lassi Hämäläinen
c963c51a60
Remove unnecessary header includes
...
- Manually removed lot of unneeded #includes to clean code and reduce
compilation time
- Reordered some of the #includes to be in more logical order
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
23432d420d
CMake: Disable RTTI for jit.cpp on MSVC
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
a070a414a6
Move rsx::constants and rsx::limits to rsx_utils.h
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
e9e87b8bd9
Add missing #includes to header files
...
- Multiple header files where missing #includes to other headers that
where used in the header. Correct header was included in correct
order in source files which caused everything to compile.
- Added missing #includes so header files correctly include all their
dependencies and fixes problems with IDEs being unable to parse
headers correctly due to missing symbols
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
499035512b
Split Emu/Memory into more logical headers
...
- Add vm_locking.h and vm_reservation.h and move relevant functions
and types to these headers.
- Change include order and make vm_ptr.h, vm_var.h and vm_ref.h headers
usable invidually and them including vm.h instead of other way around
- Because usage of vm::ptr now requires including vm_ptr.h instead of
vm.h updated multiple #includes
- Added additional #includes to vm_reservation.h and vm_locking to
where vm::reservation_* and locking related functions are used
2019-06-25 17:11:10 +03:00
Megamouse
8e942eb50c
Qt: add more filters to the decryption file dialog and fix file endings
2019-06-23 21:08:58 +03:00
Eladash
806a7bbf04
Fixup for #6115 ( #6120 )
2019-06-22 12:10:47 +03:00
Eladash
cd0ef99df5
Fix BE endianess arch support in semaphore_406e ( #6116 )
...
Add raw() methods for endianness support types and make use of it.
2019-06-21 19:29:49 +03:00
Eladash
ade291e73d
Fix potential overflow in sys_vm
2019-06-21 00:02:52 +03:00
Nekotekina
517a2bc34a
sys_lwcond: add vm::temporary_unlock
2019-06-20 14:46:32 +03:00
Nekotekina
a935203a18
sys_lwmutex: add vm::temporary_unlock
2019-06-20 14:46:32 +03:00
Nekotekina
b9b591bf02
Fix SPU Loop Detection
2019-06-20 14:46:32 +03:00
Megamouse
3602d45cb7
input: raise max mouse acceleration to x10
2019-06-20 10:23:50 +02:00
Megamouse
a0f2ade55d
gui/input: improve log message for GetNextButtonPress
2019-06-20 10:23:50 +02:00
Nekotekina
5753b3222e
sys_memory: add vm::temporary_unlock
2019-06-19 20:45:59 +03:00
Nekotekina
d021d9e14a
sys_mutex: add vm::temporary_unlock
2019-06-19 20:39:39 +03:00
Nekotekina
89a31292dc
sys_cond: add vm::temporary_unlock
2019-06-19 20:39:29 +03:00
Nekotekina
5d45a3e47d
Implement cpu_thread::suspend_all
...
Remove Accurate PUTLLC option.
Implement fallback path for SPU transactions.
2019-06-19 20:36:12 +03:00
Megamouse
17d0dcb7a2
gui/input: add evdev callback when no button was pressed
2019-06-18 18:15:19 +02:00
Eladash
d52953fca6
minor UB fix
2019-06-17 02:52:43 +03:00
Ivan
0fe26f8293
Add sys_rsx_context_iomap workaround
...
Don't fail with CELL_EINVAL on vm::main.
2019-06-17 01:17:02 +03:00
scribam
185fd3d257
rsx: Minor cleanup after #6055
2019-06-17 00:31:38 +03:00
Megamouse
5928dd826c
Qt: add Remove All Caches to the game context menu
2019-06-16 23:07:13 +03:00
Megamouse
b29a89807e
cellPad: set len to 0 if pads are being intercepted by the system
2019-06-15 00:24:10 +02:00
Megamouse
3f00b485a0
cellMsgDialogAbort: don't call on_close and properly re-enable pads
2019-06-15 00:24:10 +02:00
kd-11
8dafc8e542
cfg: Default MSAA level to auto
2019-06-14 17:19:55 +03:00
kd-11
e515d9b83a
vk: Fixup for missing resource reference
...
- Missing ref increment when using framebuffer could lead to use-after-free.
How master was not crashing is surprising
2019-06-14 16:19:52 +03:00
kd-11
c90186cf35
vk: Do not use pixel_center_origin as its use is explicitly restricted by spec
2019-06-14 16:19:52 +03:00
kd-11
98156d2a2c
vk: Avoid submitting wrong sample count in overlay passes
2019-06-14 16:19:52 +03:00
kd-11
4104d7a6a1
vk: Simplify WCB heuristics and fix out-of-bounds access
2019-06-14 16:19:52 +03:00
kd-11
86119f58d6
rsx: Typo fix
2019-06-14 16:19:52 +03:00
kd-11
9d166c5bed
rsx: Force invalidate of children by issuing a resolve notification whenever the parent is written to
...
- Fixes successive reads of an antialiased surface that is still bound between reads
2019-06-14 16:19:52 +03:00
kd-11
296e0105c4
vk: Fix WCB for antialiased memory
2019-06-14 16:19:52 +03:00
kd-11
9d0f5aedf3
vk: Add some missing barriers
2019-06-14 16:19:52 +03:00
kd-11
e4671c29a6
rsx: Fix typo
...
- Arguments to the transform function are xxyy not xyxy
2019-06-14 16:19:52 +03:00
kd-11
8a1cf2c913
rsx: Attempt to reduce stencil load overhead for nvidia cards
2019-06-14 16:19:52 +03:00
kd-11
ca82dd7200
vk: Improve overlay passes for resolve/unreolve
...
- Refactor overlays and resolve passes to support use of push constants instead of relying buffer map/unmap
- Add support for nvidia resolve (NV is the only vendor not supporting shader_stencil_export)
2019-06-14 16:19:52 +03:00
kd-11
c655036920
rsx/fp: Ease pressure on fragment shaders when emulating clamp16
...
- TODO: Option to completely skip clamping in some architectures as it is not needed in most games
- Mostly affects older GPUs that do not have access to native fp16
2019-06-14 16:19:52 +03:00
kd-11
5f34c0c59a
vk: Clean up WCB readbacks when resource is multisampled
...
- Resolve image first before performing any transfer operations
2019-06-14 16:19:52 +03:00
kd-11
9d314ca4ca
rsx: Correctly count number of valid entries if there are broken entries in the cache
2019-06-14 16:19:52 +03:00
kd-11
bca5f94b3f
rsx: Add option to toggle MSAA
2019-06-14 16:19:52 +03:00
kd-11
ea8409dcfd
rsx: Re-enable optional sample-to-pixel transformation
2019-06-14 16:19:52 +03:00
kd-11
acb14320da
rsx: Fixup for resolution scaling support
2019-06-14 16:19:52 +03:00
kd-11
4a5bbba277
rsx: Enable MSAA
...
- vk: Enable depth buffer resolve+unresolve
- vk: Add AMD stenciling extension support
- rsx: Temporarily disables MSAA-compatible hacks such as transparency AA
- TODO: Add paths to optionally disable MSAA
2019-06-14 16:19:52 +03:00
kd-11
f6f3b40ecc
rsx: Fix AA coordinate transforms
...
- Requires native_pitch value to take samples into account
2019-06-14 16:19:52 +03:00
kd-11
655eff29e8
rsx: Refactoring and cleanup after d3d12 separation
...
- Remove deprecated functionality
- Refactor to share code between common routines
2019-06-14 16:19:52 +03:00
kd-11
db5d56a22d
d3d12: Remove all shared code with other backends
2019-06-14 16:19:52 +03:00
kd-11
0d906d6974
rsx: Remove surface aa_mode hacks
2019-06-14 16:19:52 +03:00
Megamouse
ac3982d2b0
Input: fix evdev buttons
2019-06-13 19:12:46 +02:00
scribam
13671d9684
rsx: Apply Clang-Tidy fix "modernize-loop-convert" + const when relevant
2019-06-12 15:11:52 +03:00
scribam
1e327ad31b
rsx: Apply Clang-Tidy fix "readability-avoid-const-params-in-decls"
2019-06-12 15:11:52 +03:00
scribam
370dcd9d6e
rsx: Apply Clang-Tidy fix "readability-simplify-subscript-expr"
2019-06-12 15:11:52 +03:00
scribam
0b97d12a7b
rsx: Apply Clang-Tidy fix "modernize-use-using"
2019-06-12 15:11:52 +03:00
scribam
f1e939936a
rsx: Apply Clang-Tidy fix "modernize-use-override"
2019-06-12 15:11:52 +03:00
scribam
44265aa27d
rsx: Apply Clang-Tidy fix "modernize-use-equals-default"
2019-06-12 15:11:52 +03:00
scribam
635695ac78
rsx: Apply Clang-Tidy fix "modernize-use-emplace"
2019-06-12 15:11:52 +03:00
scribam
a555504142
rsx: Apply Clang-Tidy fix "modernize-deprecated-headers"
2019-06-12 15:11:52 +03:00
scribam
cba828384d
rsx: Apply Clang-Tidy fix "modernize-pass-by-value"
2019-06-12 15:11:52 +03:00
scribam
a02a8642b0
rsx: Apply Clang-Tidy fix "modernize-make-unique"
2019-06-12 15:11:52 +03:00
scribam
b91bcdbbca
rsx: Apply Clang-Tidy fix "modernize-use-bool-literals"
2019-06-12 15:11:52 +03:00
scribam
349e7c8708
rsx: Apply Clang-Tidy fix "readability-non-const-parameter"
2019-06-12 15:11:52 +03:00
scribam
35dc98be06
rsx: Apply Clang-Tidy fix "readability-string-compare"
2019-06-12 15:11:52 +03:00
scribam
ac7e89660f
rsx: Apply Clang-Tidy fix "readability-redundant-smartptr-get"
2019-06-12 15:11:52 +03:00
scribam
801fa0113f
rsx: Apply Clang-Tidy fix "readability-inconsistent-declaration-parameter-name"
2019-06-12 15:11:52 +03:00
scribam
c9b0a4afd0
rsx: Apply Clang-Tidy fix "performance-type-promotion-in-math-fn"
2019-06-12 15:11:52 +03:00
scribam
8f2647555a
rsx: Apply Clang-Tidy fix "readability-redundant-string-init"
2019-06-12 15:11:52 +03:00
scribam
331fe01762
rsx: Apply Clang-Tidy fix "performance-for-range-copy"
2019-06-12 15:11:52 +03:00
scribam
db926ee671
rsx: Apply Clang-Tidy fix "performance-unnecessary-value-param"
2019-06-12 15:11:52 +03:00
scribam
81a3b49c2f
rsx: Apply Clang-Tidy fix "readability-container-size-empty"
2019-06-12 15:11:52 +03:00
scribam
c4667133c4
gl/vk: Add constexpr to varying_registers and sync functions between the two backends
2019-06-12 10:59:31 +01:00
scribam
65581acbf9
rsx: Use constexpr for flattening_helper::m_register_properties
2019-06-12 10:59:31 +01:00
scribam
b3513cd7fa
Set minimum supported version of GCC to 8.x
...
And update the documentation accordingly
2019-06-11 00:48:11 +03:00
kd-11
d361eedbec
rsx: Clean up window management code
...
- Removes a lot of wm_event code that was used to perform window management and is no longer needed.
- Significantly simplifies the vulkan code.
- Implements resource management when vulkan window is minimized to allow resources to be freed.
2019-06-10 14:57:03 +03:00
kd-11
57196f0504
vk: Move frame present synchronization to the driver
...
- Just use a semaphore and let the driver handle it instead of manual framepacing.
We lose framepace control but drivers have matured in the past few years so it should work fine.
2019-06-10 14:57:03 +03:00
Talkashie
527f7a437a
important fix ( #6067 )
...
Fix typo in Pad Settings Dialog
2019-06-10 13:03:55 +03:00
RainbowCookie32
652e32341d
Update DS3 message in Pads settings
2019-06-10 00:52:22 +01:00
scribam
39fa1d7031
ci/vk: Bump Vulkan version (1.1.73.0/1.1.97.0 => 1.1.106.0)
...
VULKAN_SDK_MIRROR removed as the server is down
2019-06-09 23:43:57 +01:00
scribam
f9ad635856
rsx: TextGlyphs optimizations
2019-06-09 23:09:11 +01:00
Nekotekina
2bc0ea37ab
sys_fs: yield PPU on disk access ops
2019-06-08 19:34:55 +03:00
Megamouse
e8a516529b
fix games.yml
2019-06-08 15:47:11 +03:00
Nekotekina
9dc0368079
Rename cond_x16 to shared_cond
...
Extend capacity from 16 to 32.
Remove redundant m_total counter.
2019-06-04 16:37:50 +03:00
Nekotekina
447029a700
Implement fs::file::write_gather (Vectored I/O)
2019-06-03 23:18:39 +03:00
Nekotekina
31994dd3b2
Rename cond_one to unique_cond
...
Remove redundant in_cv in cellVdec
2019-06-02 23:22:16 +03:00
Nekotekina
dfd50d0185
Implement std::bit_cast<>
...
Partial implementation of std::bit_cast from C++20.
Also fix most strict-aliasing rule break warnings (gcc).
2019-06-02 23:22:16 +03:00