1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-26 04:32:35 +01:00
Commit Graph

7810 Commits

Author SHA1 Message Date
elad
90265edfcd SPU MFC: avoid copying of the lockline onto the stack in putllc/putlluc (#5392) 2018-12-04 21:09:55 +03:00
eladash
45942c4962 Fix segfault when scaled image dimension is less than clip's 2018-12-04 13:01:29 +03:00
eladash
fa5652fceb rsx image_in: Implement negative scaling 2018-12-04 13:01:29 +03:00
eladash
ce500c75c4 throw exceptions in case of invalid/unknown operations in image_in 2018-12-04 13:01:29 +03:00
eladash
6ecf2fb3d0 rsx: default lv2 semaphore context + dma_4097
extracted from vsh
2018-12-04 13:01:29 +03:00
eladash
28e4a9e0d0 rsx image_in: Fix in_pitch 0
The hw doesnt fix pitch, when specifying src pitch 0 it copies the same pixels line to dst. keep in mind out_pitch = 0 is not allowed in image_in.
Same goes for buffer_notify, though it allows out_pitch to be 0.
2018-12-04 13:01:29 +03:00
eladash
d1d3ac984e rsx image_in: Fix src size calculation when in_pitch != line_lengh 2018-12-04 13:01:29 +03:00
eladash
0a1da14a15 rsx image_in: remove clip h and w hack
If clip region is empty, dont execute
2018-12-04 13:01:29 +03:00
eladash
4ddafc481e remove unreachable code 2018-12-04 13:01:29 +03:00
eladash
b48a4b6459 rsx-capture: reduce capture size
* Dont bother capturing 'destination' blocks with no data. instead premap all main memory to ensure allocated
* Capture zcull and tile state as their compressed gcm forms
* Fix index array capturing, ignore empty sets
* hle gcm: Fix byteswaping in cellGcmSetZcull
2018-12-04 13:01:29 +03:00
NicknineTheEagle
32059bfaa2 Properly get PARAM.SFO and icons for C00 games (#5370)
* Added a helper function for fetching game's PARAM.SFO path

This should properly get SFO path for unlocked C00 games

* Normalized line endings

* Refresh game list after installing a RAP file
2018-12-04 01:46:01 +03:00
Megamouse
afdf0b74a0 VS: filter for trophy_manager_dialog.h 2018-12-03 22:37:31 +01:00
Megamouse
87be1abb9a Qt: fix play icon default tooltip 2018-12-03 22:37:31 +01:00
U-GUILLAUME-LAPTO\rameg
6f086fd5af Added ignore = dirty to all submodules to make git operations faster 2018-12-03 22:20:42 +03:00
kd-11
a56ba737b5 vk: Silence log spam 2018-12-03 20:01:23 +03:00
kd-11
504ab5a6d4 rsx: Minor cleanup to silence stupid compiler warnings 2018-12-03 20:01:23 +03:00
kd-11
f4c28eceef rsx: Fix null renderer 2018-12-03 20:01:23 +03:00
kd-11
9d0042f509 rsx: Fixup for the flattener
- Reset the flattener before use
- Better detection of FIFO misalignment
2018-12-03 20:01:23 +03:00
scribam
24a8d0aeef sceNp: add SCE_NP_ERROR_ID_NOT_FOUND for sceNpBasic*Entry* functions 2018-12-03 15:26:29 +03:00
RipleyTom
7f3eaed435 Fullscreen fix 2018-12-03 14:16:47 +03:00
Michał Janiszewski
1001831c8e Update hidapi to address mingw compilation issues
Includes https://github.com/RPCS3/hidapi/pull/5 to fix
https://github.com/RPCS3/rpcs3/issues/5375
2018-12-02 23:59:41 +03:00
RipleyTom
25414953e0 Fixes maximize window to properly update the render surface in Vulkan 2018-12-01 22:20:59 +03:00
msuih
8afc035aac Category filter for PS1/PS2/PSP games 2018-12-01 16:56:56 +01:00
Michał Janiszewski
62c9920f2e Improve path to discord-rpc with non-MSVC
The path is set in 96cabeadff/3rdparty/CMakeLists.txt (L159)
2018-12-01 14:17:19 +03:00
kd-11
ec768afbd9 rsx: Flip workarounds for applications that flip via syscall
- Do not assume flip marks end-of-frame if executed via syscall
- Also disables skip_frame for these applications as there is no frame boundary
- NOTE: QUEUE_HEAD cannot be relied on as it is seemingly possible to flip the same head and not need to queue it
2018-11-30 23:51:25 +03:00
kd-11
2168159d03 gl: Fix flip regression
- Restore graphics state after flip (including active fbo) because flip can be made through a syscall
2018-11-30 23:51:25 +03:00
kd-11
b96ed5cd4e gl: Do not rely on driver statistics for s3TC textures; they are inconsistent. 2018-11-30 23:51:25 +03:00
kd-11
f1c3b46d60 rsx: Fixup - undo vertex cache 'improvements' 2018-11-30 23:51:25 +03:00
kd-11
5b6e1420f3 rsx: Pipeline barriers fixed up
- Ensure barriers are invoked even if no draw occurs!
-- Ensures that deferred commands are executed eventually
2018-11-30 23:51:25 +03:00
kd-11
8a186bb97e rsx: Fix insertion of execution barriers
- Ignore barriers inserted after BEGIN but before any draw commands are emitted
- Properly process tail barriers inserted before END but after draw commands are submitted
- Ignore execution barriers with no effect (same register value written)
2018-11-30 23:51:25 +03:00
kd-11
1d19f71a46 rsx: Re-enable fifo error reset 2018-11-30 23:51:25 +03:00
kd-11
718a04c84f fixup: Clear disabled attrib entries 2018-11-30 23:51:25 +03:00
kd-11
833c25894f [WIP] rsx: Rebase cleanup 2018-11-30 23:51:25 +03:00
kd-11
5193c99973 rsx: Enable dynamic FIFO preprocessing
- Tries to detect when FIFO preprocessing is beneficial and only enables optimizations if the benefit outweighs the cost
- Current threshold is at least 500 draw calls saved at over 2000 draw calls to justify the overhead
- TODO: More tuning for other CPUs
2018-11-30 23:51:25 +03:00
kd-11
7b065d7781 rsx: Fixup; input attributes blob decoding
- Use an unstructured blob and index into the vec4 structures to extract the real data
2018-11-30 23:51:25 +03:00
kd-11
846daadd5d rsx: Fixups
- Improve vertex attribute layout format. Allows for full 16-bit attribute divisor
- Use actual pitch when declaring framebuffer rsx pitch instead of register value in case of swizzle? rendering
2018-11-30 23:51:25 +03:00
kd-11
2e32777375 rsx: Scrap the prebuffered queue approach
- Basically starting over
- The cost of making command copies into the queue has a measurable impact
2018-11-30 23:51:25 +03:00
kd-11
9deecd506a fixup: It is possible for NOP commands to contain other garbage 2018-11-30 23:51:25 +03:00
kd-11
26a56ef1f1 vk: Spec compliance.
- TODO: Implement push_constants path instead of copy + bind descriptor sets
2018-11-30 23:51:25 +03:00
kd-11
d6b4440ef9 gl: Separate vertex env from program env 2018-11-30 23:51:25 +03:00
kd-11
435afcb865 rsx: Fix fifo draw barriers 2018-11-30 23:51:25 +03:00
kd-11
2d88e41583 rsx: Fix some checks when using inlined array rendering 2018-11-30 23:51:25 +03:00
kd-11
54ec363e88 rsx: Critical pipeline fixes
- Fix scissor and viewport binding behavior
- Fixes recovery if empty scissor is specified and then 'fixed' later
- Optimizes state binding a bit
2018-11-30 23:51:25 +03:00
kd-11
1ad76ad331 rsx: Restructure programs
- Also re-enable pipeline optimizations
2018-11-30 23:51:25 +03:00
kd-11
b0a6b72ce8 rsx: Optimizations
- Replace a few more vectors with simple_array<T>
- Avoid unnecessary string comparisons in backends. We already know referenced textures from the program analysers!
2018-11-30 23:51:25 +03:00
kd-11
677b16f5c6 rsx: Fixups
- Also fix visual corruption when using disjoint indexed draws

- Refactor draw call emit again (vk)

- Improve execution barrier resolve
  - Allow vertex/index rebase inside begin/end pair
  - Add ALPHA_TEST to list of excluded methods [TODO: defer raster state]

- gl bringup

- Simplify
  - using the simple_array gets back a few more fps :)
2018-11-30 23:51:25 +03:00
kd-11
e01d2f08c9 rsx: Refactor FIFO
- Removes fifo structures from common RSXThread
- Sets up a dedicated FIFO controller
- Allows for configurable queue optimizations
2018-11-30 23:51:25 +03:00
Nekotekina
96cabeadff Rewrite condition variables
Implement helper functions balanced_wait_until and balanced_awaken
They include new path for Windows 8.1+ (WaitOnAddress)

shared_mutex, cond_variable, cond_one, cond_x16 modified to use it
Added helper function utils::popcnt16
Replace most semaphore<> with shared_mutex
2018-11-29 01:30:05 +03:00
Nekotekina
f442a8a84c SPU TG: add thread group stop counter
Fix possible race condition introduced by waiting on `running` value
2018-11-27 23:37:26 +03:00
Nekotekina
febe4d4a10 Implement class cond_x16
Use as reservation notifier
Limited to 16 threads but allows more precise control of contention
2018-11-26 00:23:29 +03:00