Commit graph

487 commits

Author SHA1 Message Date
Megamouse
31cdd7bdd2 Prevent minor race in Progress Dialog Server 2021-01-31 12:18:32 +03:00
Megamouse
2025f02105 Search for more game data directories.
Also properly remove duplicate paths
2021-01-31 11:42:33 +03:00
Megamouse
1078626eea Fix ppu compilation progress dialog
We could only increase the value because we completely based the dialog on cellMsgDialog.
This led to an issue where the dialog would increase its maximum and thus decrease the current percentage.
It then couldn't decrease and was stuck on the old percentage.
2021-01-30 21:34:16 +01:00
Eladash
e3b3b0cda7
PPU LLVM: Precompile all executable (PRX, MSELF, overlay) code at startup (#9680)
* Precompile LLVM cache at startup of games, like the GUI "Create PPU Cache" option.
* Allow OVL (overlay) precompilation as well (used by certain games).

Co-authored-by: Megamouse <studienricky89@googlemail.com>
Co-authored-by: Nekotekina <nekotekina@gmail.com>
2021-01-30 16:08:22 +03:00
Eladash
d3bc96a201 Fix minor issue with usage of STL thread::hardware_concurrency() 2021-01-29 18:23:29 +03:00
Nekotekina
11ba6e45ab Add MSELF support to SPRX precompilation.
Add ppu_precompile() function in PPUThread.cpp

Co-authored-by: Eladash <elad3356p@gmail.com>
2021-01-29 13:34:43 +03:00
Nekotekina
6784301376 Check for rsx::thread existence in Emu.Stop/Pause/Resume 2021-01-28 20:23:13 +03:00
Eladash
0652870204 New RSX Debugger 2021-01-28 17:40:26 +03:00
Nekotekina
67dd6754a6 Seal cereal includes in util/cereal.cpp 2021-01-28 10:48:53 +03:00
Nekotekina
34274ec391 Purge unused typeid() invocations 2021-01-28 10:23:29 +03:00
Nekotekina
53267e283b PPU LLVM: implement ppu_finalize
Properly free certain compiled PRX/OVL modules (except dev_flash)
2021-01-27 18:03:49 +03:00
Megamouse
fbe91fb245 fix linux compilation 2021-01-12 14:13:15 +01:00
Nekotekina
db8e6fe7a7 Enable -Wunused-variable 2021-01-12 14:34:14 +03:00
Nekotekina
673e84920b fixed_typemap.hpp: remove useless reporters 2021-01-05 16:16:01 +03:00
Marin Baron
92e5bb88e8 Remove std typeinfo 2020-12-27 00:30:16 +03:00
Nekotekina
bd269bccaf types.hpp: remove intrinsic includes
Replace v128 with u128 in some places.
Removed some unused files.
2020-12-21 21:11:25 +03:00
Eladash
ef884642e4 Cleanup disasm classes a bit 2020-12-21 13:46:26 +03:00
Megamouse
b655e4aa47 Emu: implement on_exit callback 2020-12-18 16:05:40 +01:00
Nekotekina
1adec3d8e5 Hotfix: Emu.Quit after Emu.Stop 2020-12-18 13:37:14 +03:00
Nekotekina
db9b7db531 Cleanup and move sysinfo.h -> util/sysinfo.hpp 2020-12-18 12:55:54 +03:00
Nekotekina
fb29933d3d Add usz alias for std::size_t 2020-12-18 12:23:53 +03:00
Eladash
0445ef393f FW SPRX install: Fix IDM ID's leak 2020-12-15 11:16:45 +03:00
Eladash
7eb16e13bb PRX loader: Fix libfs_155.sprx loading
Fix relocations' segments referencing when there are "empty" (memsize=0) LOAD segments.
2020-12-15 11:16:45 +03:00
Eladash
e5603fec1e Firmware libraries settings overhaul 2020-12-13 21:52:24 +03:00
kd-11
f83c2f0b6b rsx: Restructure and simplify some header include chains 2020-12-13 15:38:35 +03:00
Nekotekina
dff4392c10 Move error_code to ErrorCodes.h 2020-12-12 15:12:01 +03:00
Nekotekina
36c8654fb8 Remove HERE macro
Some cleanup.
Add location to some functions.
2020-12-10 12:30:22 +03:00
Nekotekina
e055d16b2c Replace verify() with ensure() with auto src location.
Expression ensure(x) returns x.
Using comma operator removed.
2020-12-09 15:43:38 +03:00
Eladash
2602be426f
Allow emulation to work without firmware (#9367)
* Allow emulation to work without firmware
* Fix HLE prx path detection.
* Fix manual list loading bugs.
* Fix HLE gcm
* GUI: Fix fonts search
* GUI: Hardcode sprx list
Do not depend on /dev_flash/sys/external/ contents.
2020-12-07 20:10:34 +03:00
RipleyTom
af8c661a64 Remove BOM markers 2020-12-06 15:30:12 +03:00
kd-11
845a7d9968 Fix RSX replay thread lifecycle 2020-11-29 22:39:52 +03:00
Nekotekina
bd90e3e37f atomic.cpp: shrink and simplify main hashtable
Reduce collision detection to 1 or 0 for now.
I think it should be offloaded to notifiers.
2020-11-26 20:11:26 +03:00
Megamouse
9efedbe76a Minor changes related to Emu.Stop() 2020-11-25 00:11:07 +01:00
Megamouse
5076da8f77 Fix auto exit
- Don't quit on stop if force boot was set
- Don't stop the emulator on gs_frame close when it was already stopped. This would remove the force boot flag by mistake.
2020-11-24 11:17:03 +03:00
Nekotekina
6cf50f8f6c Second attempt to fix hanging RPCS3 process
Now fix exit logic a bit.
Remove Init() call from Stop().
Remove Stop() call from Quit().
2020-11-22 12:45:19 +03:00
Nekotekina
e89a568765 Attempt to fix Emu.Quit()
There was some kind of "initialization order fiasco" of g_fxo.
Not only should it be used after main, but also destroyed before exit.
2020-11-21 18:27:16 +03:00
Megamouse
5b207c3b95 hotfix for infinite loop when booting game data 2020-11-19 23:53:10 +01:00
Megamouse
3087f15dd8
Update disc boot detection and hope it works 2020-11-19 21:55:06 +01:00
Nekotekina
d4d5dc99f3 Fix perf_meter<> after adding thread pool.
Print and reset sorted information after emulation stop/pause.
Print useless average value.
2020-11-19 14:44:58 +03:00
Nekotekina
3888b0429c atomic.cpp: print some stats on stop 2020-11-12 05:52:22 +03:00
Eladash
c2c559f8d9 Disasm: do not allow to access previous instructions in non-interpreter mode 2020-10-31 17:15:47 +03:00
Nekotekina
86fc842c89 TSX: new fallback method (time-based)
Basically, using timestamp counter.
Rewritten vm::reservation_op with the same principle.
Rewritten another transaction helper.
Add two new settings for configuring fallbacks.
Two limits are specified in nanoseconds (first and second).
Fix PUTLLC reload logic (prevent reusing garbage).
2020-10-31 15:34:14 +03:00
Megamouse
2cee26c3e7 Cleanup some includes 2020-10-31 11:53:46 +01:00
Nekotekina
c4e89f8bb4 Actually start rsx replay thread 2020-10-30 22:25:33 +03:00
Megamouse
fe3c7926f7 Qt: add custom game icons
This shouldn't interfere with emulation as replacing actual files would
2020-10-23 23:13:22 +02:00
Nekotekina
f2d2a6b605 JIT cleanup for PPU LLVM
Remove MemoryManager3 as unnecessary.
Rewrite MemoryManager1 to use its own 512M reservations.
Disabled unwind info registration on all platforms.
Use 64-bit executable pointers under vm::g_exec_addr area.
Stop relying on deploying PPU LLVM objects in first 2G of address space.
Implement jit_module_manager, protect its data with mutex.
2020-10-11 17:22:28 +03:00
Eladash
73f96f48ee Fix SPU ELF loader 2020-10-08 19:05:14 +03:00
Eladash
983547af7e SPU: Embedded PRX/overlay image patching and dumping 2020-10-06 13:06:25 +03:00
Megamouse
5226076676 Emu: use vulkan as default renderer 2020-10-01 09:19:13 +02:00
Megamouse
511e9920c2 patch_engine: Apply patch when APP_VER is unknown 2020-09-21 11:59:57 +02:00