Commit graph

7138 commits

Author SHA1 Message Date
Eladash
141d62fbf9 Implement ::as_rvalue 2020-04-11 21:58:36 +03:00
Eladash
e407018bb5 rsx: Write ref+get atomically
May contribute to better FIFO synchronization in some cases.
2020-04-11 21:21:15 +03:00
Eladash
ff74c241c7 rsx: Fix get_optimal_blit_target_properties for local memory 2020-04-11 21:21:15 +03:00
Eladash
d69bec8f59 rsx: Fix vblank thread stop regression 2020-04-11 21:21:15 +03:00
Eladash
504ba8d824 rsx: Fix grammer issue (binded -> bound) 2020-04-11 21:21:15 +03:00
Eladash
8228fa1ece sys_rsx: Warn if RSX is not idle during crucial points 2020-04-11 21:21:15 +03:00
Eladash
1f9f455801 sys_rsx: Implement error checks for Zcull/Tiles binding
* Check zcull/tiles offset if bigger than max MAIN/LOCAL size.
* Check memory mapping of offset if location is MAIN.
* Check pitch/size for 0 as coming from hw tests.
* In addition: fix 'bound' check of tiles, seem to rely on the bits location is in.
* Add locks for zcull/tiles/displaybuffer binding.
2020-04-11 21:21:15 +03:00
Eladash
5ba26e247b sys_rsx: Implement LLE cellGcmSysGetLastVBlankTime 2020-04-11 21:21:15 +03:00
Eladash
93b8f3b5db idm: Minor update to use std::static_pointer_cast 2020-04-11 10:58:24 +03:00
Eladash
d451a0b7b7 SPU LLVM: Improve FNMS
Should be more accurate with postive/negative zero inputs according to docs while being more optimized.
TODO: Check SPU precise interptreter.
2020-04-09 17:27:14 +03:00
Eladash
158b24ec25 SPU LLVM: Add accurate double-precision FMA support 2020-04-09 17:27:14 +03:00
Nekotekina
1b68f90e42 Tweak TSC calibration
Round to 3 digits after dot (count in MHz).
2020-04-09 16:23:33 +03:00
clienthax
765b14a8ba
Implement cellRtc HLE (#7933) 2020-04-09 15:54:41 +03:00
Eladash
36fd1d0f0d
rsx: Optimize transform constants load methods (#7992) 2020-04-09 15:53:43 +03:00
Eladash
cce946f10e spu: typo fix 2020-04-08 19:23:13 +03:00
Eladash
c948c9305c sys_ppu_thread_create: read function descriptor immediately and save it 2020-04-08 19:23:13 +03:00
Eladash
c0f4fb6e35 SPU debugger: dump reservation address 2020-04-08 14:35:44 +03:00
Eladash
cc8f024c6c Fixup ppu/spu_thread::dump_all() 2020-04-08 14:35:44 +03:00
Eladash
995fa63f4c sys_rsx: Fixup after #7978 2020-04-08 11:33:26 +03:00
Eladash
f7536bbce0 sys_rsx: Fix gcm events spam
In realhw the events are only sent if they are masked in driver_info->handlers as well.
2020-04-07 20:43:28 +03:00
Eladash
3f48450408 sys_rsx: Minor atomicity fixes 2020-04-07 20:43:28 +03:00
Víctor "IlDucci
a38d2461c9
Linguistic changes (#7917) 2020-04-07 17:10:04 +02:00
Nekotekina
91d80aa7b9 Implement jit_compiler::check
Instead of checking file existence (because file may be damaged).
2020-04-07 16:09:47 +03:00
Nekotekina
7939160178 Shorten SPU LLVM Worker name to SPUW.#
For debugging.
2020-04-07 15:55:30 +03:00
Nekotekina
3eabec0030 SPU: Fix SPU Precise interpreter 2020-04-07 15:42:27 +03:00
Eladash
8f3ad8b81a
Fix cellGameDataCheckCreate2 error broken check (#7976) 2020-04-07 14:03:03 +03:00
Megamouse
078c31c1da Qt: fix lupdate warnings (used for translation) 2020-04-06 20:59:58 +02:00
Megamouse
b1fdbc7fcc Move some format functions 2020-04-06 20:59:58 +02:00
Eladash
e7d5d17fd8 rsx: Adjust FIFO recovery to be a bit more merciful 2020-04-05 17:40:23 +03:00
Eladash
bbbd06dcee Make vm::_test_map aware of overflow
+ remove vm::find_map 1024mb limit.
2020-04-05 17:40:23 +03:00
Silent
fd09dde911 cellSearch: Change search state before invoking callbacks 2020-04-05 16:35:56 +03:00
kd-11
0b6e2b26fa rsx: Fix DST instruction
- It's the old-school distance vector, not the more modern distance() function
- There is seemingly no glsl function that maps to it directly.
2020-04-05 16:35:20 +03:00
kd-11
b301fecfd8 gl: Fix async shader compiler
- Removes glFinish hack.
- Adds proper server-side synchronization.
- Adds primary context detection to allow worker threads to be identified.
2020-04-05 16:35:20 +03:00
Eladash
dc5cdb3bb4 sys_ppu_thread: reduce global memory stats after thread creation 2020-04-05 15:23:09 +03:00
Eladash
72d1efa383 rsx: Batch transform contants load methods 2020-04-05 15:21:56 +03:00
RipleyTom
f33373ca1b Add Lego Dimensions Portal to usb passthroughs 2020-04-05 14:23:54 +03:00
Nekotekina
ae140a1ac9 SPU LLVM: improve stack mirror format in Mega mode
Store first instruction for additional validation.
Should fix some problems.
I didn't touch ASMJIT.
2020-04-04 21:40:42 +03:00
Nekotekina
8053d2602a SPU LLVM: implement bisect helper (debugging tool)
Added two new settings: SPU LLVM Lower/Upper Bound
By manipulating values, conditionally avoid compiling programs.
It uses hash of the programs (64-bit start hash of SHA-1).
Programs which aren't compiled run with interpreter.
2020-04-04 21:38:40 +03:00
Nekotekina
18dbd788e6 SPU DisAsm: fix disasm for BINZ and similar instruction 2020-04-04 21:38:40 +03:00
Nekotekina
a53d0d50b3 SPU LLVM: add alternative ROTQBY implementation
Used if SSSE3 is not available (exec_rotqby).
2020-04-04 21:38:40 +03:00
Nekotekina
f05e24e8e8 SPU LLVM: make LS loads/stores volatile
Fixes PS1 classics and possibly something else.
2020-04-04 21:38:40 +03:00
Eladash
0b24b09a06 sys_fs: Lock dev_hdd1 mount point at cellSysCacheClear 2020-04-04 19:36:16 +01:00
Eladash
a178374052 sys_fs: Limit NPDRM FDs to 16
Co-Authored-By: Silent <cookieplmonster@users.noreply.github.com>
2020-04-04 19:36:16 +01:00
Eladash
63080c22a3 Fix ppu_thread::dump_callstack() 2020-04-04 00:06:51 +03:00
Eladash
55baaea8e7 liblv2 HLE: Fix sys_lwcond_signal mode 3 2020-04-03 19:42:25 +03:00
Eladash
13820d6802 SPU debugger: Show channels data 2020-04-03 18:37:21 +03:00
Eladash
0beea91d5e Minor debugger fixups 2020-04-03 18:37:21 +03:00
Eladash
3f559cd86e
Fix sys_cond_destroy (#7931)
Dereference cond count in sys_cond_destroy
2020-04-03 12:45:59 +03:00
Nick Renieris
6cbb12e5cd PPUThread: String & hex previews for register pointers in register dump 2020-04-03 01:36:35 +01:00
Nick Renieris
1231274e0f CPUThread: Split dump() info to separate methods 2020-04-03 01:36:35 +01:00