Commit Graph

12781 Commits

Author SHA1 Message Date
Eladash
3e84a2acc0 PKG: Implement SDATA decryption 2021-09-17 22:15:48 +02:00
Eladash
77c252a4c0 PKG: Debugging messages 2021-09-17 22:15:48 +02:00
Eladash
e4f92ddf77 GUI: PARAM.SFO formatting 2021-09-17 22:15:48 +02:00
Eladash
1f3b1e1c99 Implement Emulator::GetFakeCat()
I still have nightmares about that cat.
2021-09-17 22:15:48 +02:00
Eladash
73bdf7481e Emu: Fix disc game move from hdd0/game 2021-09-17 22:15:48 +02:00
kd-11
c2ab3c664c rsx: Fix stupid overflow 2021-09-17 20:12:08 +03:00
Eladash
ddec5d6908 CPUThread: Prevent recursive check_state calls 2021-09-17 14:02:22 +03:00
Eladash
975aae1d13 SPU MFC: Implement MFC commands execution shuffling 2021-09-17 11:38:10 +03:00
Nekotekina
9e62ca562b SPU LLVM: implement SQRT and DIV pattern detection (xf) 2021-09-17 10:23:43 +03:00
Nekotekina
d28b0ba2fa SPU LLVM: implement spu_re, spu_rsqrte
Improve matching with peek_through_bitcasts() helper.
Implement erase_stores() helper.
2021-09-17 10:23:43 +03:00
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