Eladash
fd1968dd22
Savestates: Save SFO directory path for PSN games
2022-08-05 19:19:16 +03:00
Elad Ashkenazi
7a8e918519
Update System.cpp
2022-07-30 08:33:09 +02:00
Elad Ashkenazi
0ba0f9d2b9
Disable Disc update redirection for manual ELF loader ( #12381 )
2022-07-22 20:35:15 +02:00
Elad Ashkenazi
f4f9c1865e
Savestates: Implement compatibility with disc Demon's Souls ( #12379 )
...
* Savestates: Implement compatibility with virtual /dev_bdvd/PS3_GAME
2022-07-22 19:23:23 +03:00
Megamouse
683fa2a392
Mount custom dev_bdvd if a disc game was mounted from dev_hdd0
2022-07-22 07:36:49 +02:00
Elad Ashkenazi
31df99f7d6
Logs: Flush unreported errors when turning off Stack Cell errors ( #12366 )
2022-07-19 17:05:51 +02:00
Eladash
c887865d54
Perform cleanup after Emulator::Load failures
2022-07-19 10:43:51 +03:00
Eladash
d22b8b1d3a
Savestates: Do not restart after Ctrl+S for now
2022-07-19 10:43:51 +03:00
Eladash
56619b20cf
Savestates: savestate reload fix
2022-07-19 10:43:51 +03:00
Eladash
3e51426379
Savestates/SPU: Kill emulation when its safe to save SPU state
2022-07-15 09:30:53 +03:00
Eladash
e548743cbf
Fixup rsx cpatures
2022-07-14 18:50:31 +03:00
Eladash
0bfdfd8433
Savestates: Implement Ctrl+R to reload the most recent savestate
...
Ctrl+R no longer means Resume emulation, this functionality has been transferred to Ctrl+P which is also capable of pausing the emulation. (so it's now a toggle)
2022-07-12 15:15:42 +03:00
Eladash
1f5cf776b2
Savestates: Fix "Suspend Emulation Savestate Mode" setting
2022-07-12 15:15:42 +03:00
Eladash
cdd6840826
Savestates/SPU: Complete fix for saving sys_spu_thread_receive_event
2022-07-12 15:15:42 +03:00
Eladash
ab27ee4cf4
Savestates/RSX: Save NV406E semaphore waiting
2022-07-12 15:15:42 +03:00
Eladash
4e3d58f75a
Savestates: Fix crash when savestating before PPU/SPU compilation finishes
...
Unintentional concurrent access to m_ar ptr itself.
2022-07-10 14:19:59 +03:00
Eladash
87cd65ff03
Savestates: support game collections
2022-07-10 14:19:59 +03:00
Eladash
4ade06f36f
Savestates/RSX: Restore the ZCULL control state
...
And fix the ZCULL control state at the initial state of RSX.
2022-07-10 14:19:59 +03:00
Eladash
0b8d5f7b98
Savestates: Fix argv
2022-07-08 12:57:43 +03:00
Eladash
0980c68e6f
Savestates: Increase timeout for emulation stopping
2022-07-08 12:57:43 +03:00
Eladash
5f8f9e33f1
RSX/Savestates: Replace GCM hack with a proper fix
2022-07-08 12:57:43 +03:00
Elad Ashkenazi
73a687df7d
Savestates/Not Savestates: Fix exitspawn to HDD0 executable with mounted BDVD
2022-07-07 21:59:39 +02:00
Eladash
57671e267d
Savestates: save cellAudioOut
2022-07-06 19:43:25 +03:00
Eladash
b692108f1e
Savestates: HLE state saving POC in sys_lwmutex
2022-07-06 19:43:25 +03:00
Eladash
2815aecd0c
Savestates: Save SPU decrementer state
2022-07-06 19:43:25 +03:00
Eladash
72c14994f0
Savestates: Fix memory containers initialization (invalidates old savestates)
2022-07-05 08:25:36 +02:00
Elad Ashkenazi
fcd297ffb2
Savestates Support For PS3 Emulation ( #10478 )
2022-07-04 16:02:17 +03:00
Megamouse
9cf7a63c77
Emu: Implement BlockingCallFromMainThread
...
Reduces some copy-paste clutter throughout the project
2022-06-25 14:01:40 +03:00
Nekotekina
ec59d7d26b
Fixup for Emu.EjectDisc()
2022-06-24 19:55:44 +03:00
Megamouse
87762a9b17
cellGame: implement disc change callbacks
2022-06-24 17:34:21 +02:00
isJuhn
4262794668
Implement PINE IPC Server
2022-06-19 17:56:50 +02:00
Eladash
0f499e36fb
Optimize emulation stopping for when cellSysutilCheckCallback is not called
2022-06-06 19:21:41 +02:00
Eladash
f5beaabded
cellSysutil: Implement DRAWING callbacks
...
Also fixed a minor race in cellUserInfo regarding status of dialog
2022-06-06 19:21:41 +02:00
Megamouse
fec9fcda7d
Fix msvc parsing error caused by different naming
2022-06-05 13:34:34 +02:00
Megamouse
1bbb26334a
cellAudioOut: Use bev_bdvd for disc game PARAM.SFO
...
Game Data PARAM.SFO does not contain SOUND_FORMAT
2022-06-05 13:34:34 +02:00
Megamouse
26045a9be5
Move test elfs to test dir
...
TEST12345 is already taken by dev builds
2022-06-02 23:19:34 +02:00
Eladash
1be36fe6a9
Remove all HDD0's temporary game data created by cellGame at boot
2022-05-21 10:57:12 +03:00
Eladash
1088375b38
Wipe clean VSH's temporary directory of choice at boot
2022-05-21 10:57:12 +03:00
Eladash
285322982f
Do not dare to touch HDD1 cache during game process respawn!
2022-05-21 10:57:12 +03:00
Eladash
524da5dc54
LV2: Memory state post-exitspawn fixes
...
* Fix memory capacity if SDK version of the following executable differs from the original process'.
* Keep user memory containers, they are not freed at exitspawn!
Hw test 4bf60023ee
2022-05-13 13:15:07 +03:00
Megamouse
b888a6ba37
VFS: Add device_info to vfs config
2022-05-10 19:39:35 +02:00
Megamouse
2b325de680
Workaround: Force audio provider
...
This hides the audio_provider box in the settings and forces the proper provider based on boot path.
Stop-gap solution until we decided what to do with vsh settings.
2022-05-08 02:08:20 +02:00
Eladash
7a3cbf1876
Fix Emulator::argv state after failed PS3 exitspawn
2022-05-04 23:36:57 +03:00
Eladash
f9a62667cf
SPU/PPU Loader: Implement linker/PS3 compiler executable files loading
2022-05-03 20:47:36 +03:00
Megamouse
9acc606e4d
Log: add ability to force log all errors
2022-04-24 19:11:34 +02:00
Megamouse
e52386ccfb
Log: ensure fmt
2022-04-24 19:11:34 +02:00
Megamouse
1d40c06c19
Log: Add spacer between error and fmt if necessary
2022-04-24 19:11:34 +02:00
Megamouse
d84a0c6503
cellGameGetBootGameInfo
2022-04-10 08:38:36 +02:00
Megamouse
36e3939ec2
Emu: actually wait 5 seconds during GraceFulShutdown
2022-04-01 18:38:37 +02:00
Megamouse
04df392866
Log cpu usage periodically
2022-03-16 19:42:06 +01:00
Megamouse
4be9e0d396
RSX: Fix rsx capture stop
...
RSX captures froze on stop, at least with Vulkan.
2022-02-16 19:50:57 +01:00
Megamouse
d172b9add6
Rename CallAfter to CallFromMainThread
2022-02-07 19:42:08 +01:00
Eladash
e951c619c5
Implement Emulator::GracefulShutdown()
2022-02-05 11:49:29 +01:00
Eladash
781b2b4548
Implement fs::isfile ( #11447 )
2022-01-29 22:10:48 +03:00
MSuih
f526027778
Revert recent file system changes ( #11370 )
...
* Revert "FS: use std::filesystem::u8path"
This reverts commit cd016be86e .
* Revert "VFS: fix missing path deliminators"
This reverts commit 84753db574 .
* Revert "Bugfix of Emulator::Load disc path searching"
This reverts commit b9179de288 .
* Revert "fs: Reimplement path resolving using std::filesystem::weakly_canonical"
This reverts commit 0c4b2ff06b .
2022-01-13 07:24:04 +03:00
Eladash
b9179de288
Bugfix of Emulator::Load disc path searching
...
Turns out fs::file does not always fail when provding a path to a directory.
2022-01-12 03:37:39 +03:00
Eladash
0c4b2ff06b
fs: Reimplement path resolving using std::filesystem::weakly_canonical
2022-01-12 03:37:39 +03:00
Megamouse
ff5e31f396
overlays: add system sounds
2021-11-15 23:03:30 +01:00
陈俊嘉
05881ffa62
Disable vulkan in Windows build when HAVE_VULKAN is off and other cmake build fixes. ( #11118 )
...
* Make WolfSSL build support multi-config generator.
Fix a build error in Windows when using QT's moc.
Disable vulkan in Windows build when HAVE_VULKAN is off.
* add WIN32_LEAN_AND_MEAN definition to VS project.
add HAVE_VULKAN definition to VS project.
Define NTSTATUS in main.cpp.
2021-11-13 16:11:49 +01:00
Whatcookie
bf6044fced
SPU/SYSINFO: Disable TSX by default for TSX-FA cpus ( #11105 )
...
- Also detect the new RTM_ALWAYS_ABORT bit in cpuid
- This new bit indicates that RTM is disabled in the microcode
- On cpus with RTM_ALWAYS_ABORT TSX can be renabled by writing 0x4 to the msr 0x0000010F
2021-11-04 16:44:25 +00:00
Megamouse
e9fe90244f
Emu: Move VFS mount to Init
2021-10-29 19:46:11 +02:00
Megamouse
08011e9b78
cellCamera: Add qt camera handler
2021-10-24 11:32:35 +02:00
Eladash
ee7ed1fdc3
Allow booting any ELF inside disc directory, not just ones at 'PS3_GAME/USRDIR/'
2021-10-24 11:03:51 +02:00
Megamouse
f72d148d37
Fix config mode reset
2021-10-05 20:16:11 +02:00
Megamouse
269c4604aa
VFS: move VFS settings to seperate file
2021-09-25 19:21:59 +03:00
Megamouse
8f1dc7a2d4
Fix VFS regression
...
Implements cfg_mode
2021-09-25 19:21:59 +03:00
Megamouse
129ade2f73
System: only init fxo objects if a game is started
...
The progress_dialog and patch system aren't needed unless a game is started.
Before, they were both initialized everytime we added a single game to the game list or even when simply started RPCS3.
This both means that a thread was needlessly idling all the time and even worse: The patch.yml was read countless times when we didn't need it.
2021-09-17 22:45:14 +02:00
Eladash
c37c6fb6de
System.cpp: Remove outdated and bugged code-block
2021-09-17 22:15:48 +02:00
Eladash
5736fa3351
Fix Emulator::IsPathInsideDir
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
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
Megamouse
6378e16fdf
Emu.Load: add more logging
2021-09-15 21:43:29 +02: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
Eladash
6a340afb8a
Log emulation pause/unpause events
2021-09-07 08:51:59 +02:00
Megamouse
0debcfed0a
Silence some warnings
2021-09-02 19:39:42 +02:00
Whatcookie
d0451932bf
Offset get_timebased_time at game boot ( #10744 )
...
- Avoids game bugs in the case where games convert the value read from the clock to a float before performing delta time calculations
2021-08-23 13:06:02 +01:00
Eladash
fcfeac818f
Loader: Improve just-in-time installation of disc game files ( #10719 )
...
* rsx: Indexed access to surface attributes
2021-08-19 08:49:59 +03:00
Megamouse
2efc4812d7
Qt/System: reset boot path after directory scan
...
This should fix the "Play" Button after batch compiling PPU caches.
Previously you would start the last compiled game, which was kinda weird.
2021-07-29 10:18:20 +02:00
Megamouse
22e51e1615
System: add vsh.self when scanning vsh/module
2021-07-29 10:18:20 +02:00
Megamouse
03a46a499e
System: make IsPathInsideDir a member function
2021-07-29 10:18:20 +02:00
Megamouse
8f8605ab2f
Mount bdvd_dir regardless of patch category
2021-07-08 22:06:48 +02:00
Nekotekina
571bdfc828
Fixup for #10490
...
Restore explicit signaling of RSX thread for now.
2021-06-27 14:02:32 +03:00
Eladash
0aed00a758
Improve thread aborting mechanism ( #10490 )
...
Call pseudo-virtual operator=(thread_state) of thread context.
2021-06-27 11:43:48 +03:00
Eladash
cb0929d933
Logs: Prevent minor race in Emu.Run() regarding logging levels
2021-06-12 13:14:04 +03:00
Nekotekina
2d3fe7ce1c
fixed_typemap.hpp: add range iterator
...
Remove recently added functions.
2021-06-09 00:07:15 +03:00
Eladash
4a4f318e24
System.cpp: Move some Emu.Stop() code to a more strategic placement
2021-06-08 19:29:46 +03:00
Eladash
76bf720adf
Improve emulation stopping speed
...
Split phases of signalling threads and joining them.
2021-06-08 18:26:14 +03:00
Eladash
2169e8d935
Implement serialization.hpp, remove cereal submodule
...
Bump RSX capture version, use new serializer.
2021-06-07 16:28:42 +03:00
Eladash
f103004aa0
sys_prx/overlay: Fix disambiguator of module names opened by FD ( #10340 )
...
Don't append zero offset.
2021-05-26 23:38:17 +03:00
Eladash
638f20c80f
Improve get_current_cpu_thread()
2021-05-20 09:25:51 +03:00
Nekotekina
1d0f6eebdc
Improve error_code (new formatting constructor)
...
Minor cleanup in formatting utilities.
2021-05-19 22:41:16 +03:00
Eladash
daa53b77cf
Simplify named_thread construction
2021-05-01 18:08:03 +03:00
Nekotekina
b704cc8375
shared_ptr.hpp: implement make_single_value(), make_shared_value()
...
A function that constructs single_ptr from its argument.
Type can be deduced from the argument (unlike make_single).
2021-04-25 18:17:38 +03:00
Megamouse
1caf81811a
Move unspecific Emulator code out of System.cpp
2021-04-24 11:21:22 +03:00
Eladash
c7b5bbd467
Fix emulation restart
2021-04-23 20:59:02 +03:00