Commit Graph

13638 Commits

Author SHA1 Message Date
RipleyTom
bec0b6e8c3 Add regeneration for system flatbuffers users 2022-05-22 23:43:04 +02:00
RipleyTom
8c01612851 Warn about LTO and adds an option to remove LTO flags 2022-05-22 23:03:20 +02:00
MSuih
b0e5db0eb0 Limit range of wake-up delay slider + adjust tooltip 2022-05-22 22:32:19 +02:00
kd-11
7c8fbc35bc rsx: Move PS3-compliant behavior to a new option 2022-05-21 16:35:35 +03:00
kd-11
b637429e44 Fix display flickering 2022-05-21 16:35:35 +03:00
kd-11
d52bb78d2c rsx: Trivial non-blocking display synchronization 2022-05-21 16:35:35 +03:00
Eladash
1be36fe6a9 Remove all HDD0's temporary game data created by cellGame at boot 2022-05-21 10:57:12 +03:00
Eladash
1088375b38 Wipe clean VSH's temporary directory of choice at boot 2022-05-21 10:57:12 +03:00
Eladash
285322982f Do not dare to touch HDD1 cache during game process respawn! 2022-05-21 10:57:12 +03:00
kd-11
4e6be9172a rsx: Asynchronously flush the pipelines when handing ZCULL memory access violations 2022-05-21 10:06:32 +03:00
kd-11
0e1333ed5f rsx: Deadlock avoidance of accurate RSX reservations 2022-05-21 10:06:32 +03:00
Eladash
cd74fb6a6d rsx: Implement HW accurate frame limiter 2022-05-20 22:40:48 +02:00
kd-11
ec2d529832 rsx: Separate loop interrupts from graphics state
- The interrupts are for multithreaded signals andmake the main loop run more aggressively for the next cycle
2022-05-20 16:29:27 +03:00
kd-11
257556bbf5 rsx: Add eng lock before flagging memory unmap
- This is much better than polling on atomics every cycle for something that happens a few times during gameplay
2022-05-20 16:29:27 +03:00
kd-11
93d93b4805 rsx: Fix typo 2022-05-20 16:29:27 +03:00
kd-11
e368453751 rsx: Rework loop interrupts a bit
- Reset backend interrupt in core handler
- Separate memory config interrupt from regular backend interrupt
2022-05-20 16:29:27 +03:00
kd-11
d0dc095c84 rsx: Silence some log spam 2022-05-20 16:29:27 +03:00
kd-11
360fdca5ac vk: Avoid multimap when handling image views 2022-05-20 16:29:27 +03:00
kd-11
e1b95913ea rsx/zcull: Improve deadlock avoidance
- Do not acquire eng lock while holding the page lock
  RSXThread may be waiting on the page lock and will never ack the pause request
2022-05-20 16:29:27 +03:00
kd-11
a3ea9e2985 rsx/zcull: Less aggressive disabling of optimizations 2022-05-20 16:29:27 +03:00
kd-11
e9bf3e13d0 rsx/zcull: Pause the main thread before flushing reports 2022-05-20 16:29:27 +03:00
kd-11
9e02471ded Fix VS 2022-05-20 16:29:27 +03:00
kd-11
094fda0e73 Crash fix 2022-05-20 16:29:27 +03:00
kd-11
d2de560060 rsx: Improve sync_hint callback interface 2022-05-20 16:29:27 +03:00
kd-11
5315eb546f rsx: Stop spamming ZCULL update method
- This has a negative impact when ZCULL is active due to spamming __rdtsc
- While the method is fast, it is not free and some checks are done before the instruction can be emitted
  Let's use the saved time to actually get something useful done
2022-05-20 16:29:27 +03:00
kd-11
7fa521a046 rsx/vk: Redesign how conditional rendering hints work
- Pass a sync address to the backend
- Ignore the hint if the query is running in lazy mode
- Do not submit CBs too close to each other. Submits are expensive
2022-05-20 16:29:27 +03:00
kd-11
0244c4046e rsx: Lower performance hit due to frequency fetch 2022-05-20 16:29:27 +03:00
kd-11
7e8c93bea2 Random optimization 2022-05-20 16:29:27 +03:00
kd-11
8cd7a44a25 gcm: Force HLE of cellGcmGetTimestamp
- This is the only way to know if a report is being used for ZCULL or timestamps only.
  If the game is not reading the ZCULL data, the access guards will detect it and optimize usage around that.
2022-05-20 16:29:27 +03:00
kd-11
9a1e6cc3e8 rsx: Implement RSX reports area access detection and optimize around it
- If nobody is reading RSX reports, do not be in a hurry to write them
- Requires HLE of some methods (cellGcmGetTimestamp) to function correctly
2022-05-20 16:29:27 +03:00
kd-11
34220ec447 lv2: Make some struct declarations uniform 2022-05-20 16:29:27 +03:00
kd-11
f0135a02f5 vk: Unconditionally enable hw acceleration for conditional evaluation 2022-05-20 16:29:27 +03:00
kd-11
0b7e013fbe rsx: Simplify ZCULL logic a bit 2022-05-20 16:29:27 +03:00
kd-11
850eef0c1a rsx: Move ZCULL logic to its own file
- It's over 1k lines of code in its own namespace; it really should be in its own file
2022-05-20 16:29:27 +03:00
Elad Ashkenazi
5a581f46df Add a constraint about vm area approx matching 2022-05-19 21:29:18 +03:00
Eladash
b334621d76 PPU DisAssembler: Prevent false function descriptor detection 2022-05-19 21:29:18 +03:00
Elad Ashkenazi
a768855a7a Update PPUThread.cpp 2022-05-19 18:16:53 +03:00
Eladash
7ddeb0d00f Implement sys_process_exit3 2022-05-19 13:59:52 +03:00
Eladash
2ba437b6dc SPU: Implement timer freezing ability 2022-05-14 22:03:47 +03:00
Eladash
f2920bc30d Debugger: Fix instruction "pop-in" when resizing
Display incomplete elements.
2022-05-14 10:46:07 +02:00
Eladash
d043f46270 Fix recursion in the debugger 2022-05-14 10:46:07 +02:00
Megamouse
1e1b111678 sceNp: register custom menu 2022-05-13 21:52:14 +02:00
Eladash
1f5ce4f619 Loader: Fix out-of-bounds access of string
There was no need to manually align size, it only creates a bug with memcpy usage.
2022-05-13 19:53:48 +03:00
Eladash
524da5dc54 LV2: Memory state post-exitspawn fixes
* Fix memory capacity if SDK version of the following executable differs from the original process'.
* Keep user memory containers, they are not freed at exitspawn!

Hw test 4bf60023ee
2022-05-13 13:15:07 +03:00
Eladash
a2a6303a22 PPU LLVM: Precompile system-internal executables if booting a dev_flash's program 2022-05-12 19:55:07 +03:00
Eladash
6805d8c7e0 SPU: Fix race on SPU Mailbox last value reading 2022-05-12 13:44:12 +03:00
Megamouse
5ae9de4e3b CLI: add decrypt option 2022-05-11 21:13:20 +02:00
RipleyTom
2f9b930c6b Fix for ticket parsing 2022-05-11 19:03:54 +02:00
Nekotekina
e243ef5907 PPU: implement accurate FRES
Implemented with an accurate lookup table.
2022-05-11 10:46:08 +03:00
doesthisusername
7b162c7513 PPU: implement quasi-accurate FRSQRTE
Denormals are handled like zeros.
NaN handling is inaccurate in some cases.

Co-authored-by: Nekotekina <nekotekina@gmail.com>
2022-05-11 10:46:08 +03:00