Commit Graph

12871 Commits

Author SHA1 Message Date
Nekotekina
aba332d4c4 SPU LLVM: make intrinsics for most xfloat instructions 2021-09-17 10:23:43 +03:00
Nekotekina
543fb7a9cb LLVM DSL / SPU LLVM: implement infinite precision shifts
Remove old make_*** helpers in favor of matcheable expressions.
2021-09-17 10:23:43 +03:00
Nekotekina
67b3fc70f8 LLVM DSL: implement absd and match helpers
Matcheable expression absd(a, b) (absolute difference).
2021-09-17 10:23:43 +03:00
Nekotekina
2268aa9093 LLVM DSL: reimplement fre, frsqe, fmax, fmin 2021-09-17 10:23:43 +03:00
Nekotekina
4b8ee85995 LLVM DSL: reimplement pshufb, add 'calli'
Implement postponed custom intrinsic replacement.
Make bitcast operator static like other ones.
2021-09-17 10:23:43 +03:00
Nekotekina
86ead1b93b SPU LLVM: implement FI instruction
Use approximate reciprocal in FRSQEST.
2021-09-17 10:23:43 +03:00
Nekotekina
7ec7f261b1 LLVM DSL: implement fpcast 2021-09-17 10:23:43 +03:00
Nekotekina
1685769bd9 LLVM DSL: reimplement fmuladd, force hw fma if present 2021-09-17 10:23:43 +03:00
Nekotekina
2acb6ed60d SPU LLVM: optimize SHUFB for permutation-only shuffles
Drop constant generation when unused.
2021-09-17 10:23:43 +03:00
Nekotekina
144244e902 SPU LLVM: implement missing constant mask handling in SHUFB 2021-09-17 10:23:43 +03:00
Nekotekina
7cf9d1380b LLVM DSL: add line number in get_const_vector automatically 2021-09-17 10:23:43 +03:00
Nekotekina
f188019244 LLVM DSL: reimpelement fsqrt, fabs 2021-09-17 10:23:43 +03:00
Nekotekina
38dfc88e8d LLVM DSL: reimplement avg 2021-09-17 10:23:43 +03:00
Nekotekina
95c36221fa LLVM DSL: reimplement ctlz, ctpop 2021-09-17 10:23:43 +03:00
NicknineTheEagle
b30ac48513 Refresh game list after installing RAP files via menus 2021-09-16 23:54:53 +02:00
NicknineTheEagle
4fcc1c0f31 Fully implement sceNpDrmVerifyUpgradeLicense 2021-09-16 23:54:53 +02:00
Megamouse
1a2fad4eac
cellSearch: more stubs and implementations (#10578) 2021-09-16 22:05:29 +01:00
Megamouse
da4f4dafbd overlays: Show feedback while stopping ppu compilation 2021-09-16 22:18:43 +02:00
Eladash
e5876b3a1b Fix BDVD path setting 2021-09-16 21:28:52 +03:00
Eladash
9c2d94ca1a sys_prx: Improve sys_prx_get_module_info error checking 2021-09-16 19:09:18 +03:00
Eladash
ae4f837f57 sys_prx: Implement sys_prx_get_module_id_by_address 2021-09-16 19:09:18 +03:00
polar
c6c4aa4634
cmake corrections (#10782) 2021-09-16 13:59:08 +01:00
xddxd
bcda172ae7 Switch from r16ui to r16 2021-09-16 14:09:21 +03:00
xddxd
d511e76a63 Enable the precise occlusion query feature 2021-09-16 14:09:21 +03:00
Megamouse
56e982375e
Qt: add changelog to updater (#10844) 2021-09-16 04:34:06 +01:00
Megamouse
e3eaf5f29e Qt: Reset stick positions on pad handler change
Fixes weird stick positions when pads are disconnected or not sticks are not supported.
2021-09-15 21:43:29 +02:00
Megamouse
e56609d836 Qt: Relocate pad handler parameter changes 2021-09-15 21:43:29 +02:00
Megamouse
460fb66949 Qt: reset config when null pad handler is selected 2021-09-15 21:43:29 +02:00
Megamouse
b955469721 Qt: fix player selection checks 2021-09-15 21:43:29 +02:00
Megamouse
6378e16fdf Emu.Load: add more logging 2021-09-15 21:43:29 +02:00
Eladash
8b48fd95fe Fix sys_prx_start/stop_module for older firmware
The old structure is only 32 bytes long, not containing prologue/epilogue functions.
2021-09-15 18:08:58 +03:00
Eladash
5600430a05 Fix user_interface::alloc_thread_bit() usage 2021-09-13 22:36:53 +03:00
Eladash
50ad7ba1f6 vm: Fix vm::unmap
* Make vm::unmap atomic, squash the memory unmapping process inside this function while still using the same VM mutex ownership.
* Make vm::unmap not fail due to random vm::get calls, shared_ptr reference count is no longer a condition.
* Fix sys_mmapper_free_address spuriously failing with EBUSY due to random vm::get calls.
* Fix sys_vm_unmap race condition due to non-atomic vm::unmap.
* Add an optional verification block ptr arg to vm::unmap, used by patches.
2021-09-13 20:53:34 +03:00
Eladash
fe6cb4774e
Fixup default config-path (#10863)
Fixes #10862
2021-09-12 21:28:48 +03:00
Eladash
91fefd4671 Fix vm::try_alloc regression 2021-09-12 19:05:26 +03:00
Eladash
677d5f09ce Add debugging info for when sys_tty_write is executed 2021-09-12 19:05:26 +03:00
Eladash
c7f5475b56 Improve sys_fs_close logging 2021-09-12 19:05:26 +03:00
陈俊嘉
42e3add6a1
BUILD: a couple of cmake msvc compile fixes (#10799)
* cmake: a couple of msvc compile fixes

Throw error when using multi-config generators.
Add USE_MSVC_STATIC_CRT option for statically linking with CRT.
Set curl's CURL_STATIC_CRT aligned with USE_MSVC_STATIC_CRT.
Fix cmake configs of 7z and OpenAL in msvc build.
Remove unecessary hard coded compiling and linking flags.
Use debug option in windeployqt when configuring for a debug build.
Search for windeployqt tool in configure time.
Add vcpkg's Qt support.

* Fix some typos
2021-09-11 23:55:53 +02:00
Megamouse
8dc98bbc1b Add support for sc vtrm crypto
For VSH for @Clienthax
2021-09-11 21:13:46 +02:00
Eladash
f98595bee5 Patches/PPU: Add jump_link patch type 2021-09-10 11:46:39 +03:00
Eladash
fafefb2cf5 Fixup No.3 after #10779 2021-09-10 11:46:39 +03:00
Eladash
1cbcf7e1ad Reimplement config selection for game startup
* Implement manual selection of config file.
* Implement default config option.
* Fix bug which led to 'force global config' to not work in some games. (any game using process relaunch such most game collections, RDR, MGS4 etc)
* Relax CLI config purpose - instead the emulator forever ignoring any other config except for the one provided in arg, use it only for the CLI-booted game.
2021-09-09 21:56:50 +02:00
Eladash
df080fbc53 Ensure frozen emulation for special executables inspection modes 2021-09-09 19:30:54 +02:00
Eladash
bd66dfedc9 Do not allow to unpause after fatal error occured in emulation
* Plus fix #10590
2021-09-09 19:30:54 +02:00
Megamouse
69faf14a79 System: remove deprecated custom config location 2021-09-08 21:56:50 +02:00
Megamouse
1a443cf6b5 Qt: remove deprecated playtime code 2021-09-08 21:56:50 +02:00
Megamouse
2fb68bfc03 Qt: release scaled pixmaps from memory if possible 2021-09-08 20:40:34 +02:00
Megamouse
4d70c483b2 Qt: release unused data when switching list modes 2021-09-08 20:40:34 +02:00
Megamouse
29256df5b1 input: make pad_thread a named_thread 2021-09-08 20:15:28 +02:00
Megamouse
a74156fe5b input: reimplement lost optimization
We don't need to check all the buttons constantly
2021-09-08 20:15:28 +02:00