Eladash
004ebfdaee
SPU debugger: Implement MFC journal
...
* Allow to dump up to 1820 commands with up 128 bytes of data each, using key D with the debugger.
2021-03-02 21:57:51 +03:00
Nekotekina
ea5e837bd6
fixed_typemap.hpp: return reference
2021-03-02 16:08:14 +03:00
Nekotekina
d788b12a8e
fixed_typemap.hpp: reduce indirection
...
Backported some changes from auto_typemap.hpp
Implemented methods init(), reset(), clear()
Disabled recreation support.
2021-03-02 16:08:14 +03:00
Megamouse
a7c9827ad4
Improve cellScreenshot ( #9851 )
...
* Fix screenshot logging
* Update libpng to 1.6.37
* cellScreenshot: Write text chunks
* cellScreenshot: add overlay image
* screenshot_manager: add /dev_hdd0/photo/
* read_png_file: use deleter instead of manual close
* cellScreenshot: use Qt for overlays
* cellScreenshot: don't apply overlay to regular img
* screenshot_manager: add mount hack for VFS
* cellScreenshot: escape the whole path
2021-02-28 22:05:04 +03:00
Eladash
c13039396c
Fix stop count incremention in Emu.Stop ( #9843 )
...
Until emulation is completely stopped, further CallAfter callbacks may be issued with incorrect stop count memorized.
2021-02-25 14:37:31 +03:00
Eladash
112b7f6571
Fix Emulation::CallAfter
...
Most CallAfter usages were extremely wrong when ordered after Emu.Stop(). could result in anywhere from emulation stopping hangs to even segfaults.
track_emu_state = true is now the default, I haven't found cases which need need it disabled.
2021-02-23 17:55:36 +03:00
Eladash
932f31e37b
Atomic PARAM.SFO writes
2021-02-23 11:29:23 +03:00
Eladash
f43260bd58
Atomic waiting refactoring ( #9208 )
...
* Use atomic waitables instead instead of global thread wait as often as possible.
* Add ::is_stopped() and and ::is_paued() which can be used in atomic loops and with atomic wait. (constexpr cpu flags test functions)
* Fix notification bug of sys_spu_thread_group_exit/terminate. (old bug, enhanced by #9117 )
* Function time statistics at Emu.Stop() restored. (instead of current "X syscall failed with 0x00000000 : 0")
2021-02-13 17:50:07 +03:00
Eladash
423cc1685c
PPU LLVM: Reduce PRX/OVL compilation memory usage a little
2021-02-13 13:05:41 +03:00
Megamouse
89942ed92a
optimize add_only boot process
...
No need for hardcore stuff while adding games to the list
2021-02-02 18:37:18 +01:00
Megamouse
2c32a721fc
Allow BootGame with indirect paths
2021-02-02 13:21:26 +01:00
Eladash
82c86ed2f7
Implement standalone OVL (overlay) loading mode
...
* Allow to load OVL alone.
* Add error checks in ppu_load_exec(), do not crash on error.
* Fix crash on exit from standalone PRX mode, allow kernel explorer to work with it as well for the added OVL mode.
2021-01-31 15:47:05 +03:00
Eladash
9077563dac
Add missing destructor of progress dialog
2021-01-31 12:55:20 +01:00
Eladash
8d15f44b33
Fix ppu progress dialog percentage
2021-01-31 12:55:20 +01:00
Eladash
b3fbada10e
Fix potential crash of progress dialog
2021-01-31 12:55:20 +01:00
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