Closed elad335 closed 1 year ago
Please test extensively this and report issues with logs. Also if you can get callstack for crashes I'll be glad. Issues remain unreported may persist after the pull requerst has been merged so please report them!
Also feedback about reqeusted features is more than welcome!
Also: before you are saving state, pause the emulation, go to kernel explorer and capture its contents. This really helps with debugging! Utilities -> Kernel Explorer
I just made kernel explorer always expand its entries and made it larger for ease of capture. (shared memory and lwmutex you can leave uncaptured if they are too large)
I recommend capturing kernel explorer in video at 1fps so its contents can be easily read.
GT5 - Saved state, game continued playing fine. Finished the race I was currently on and moved on to the next in a different track, where it desynced. Loaded the savestate I had done in the previous race and the emulator crashed. Log: RPCS3.zip Savestate file: https://drive.google.com/file/d/1oRKGorzNktKDKo63RyLW8SDeqXWAmWMK/view?usp=sharing
Motorstorm - After saving state, the game crashed when reloading. Log: RPCS3.zip Savestate file: https://drive.google.com/file/d/1OeLsJzNTxjyfK9e3Q-gawIsgLEkxa-pj/view?usp=sharing
Motorstorm Apocalypse - Saved state, when the game finished reloading the entire emulator closed. Log (last run): RPCS3.zip Savestate file: https://drive.google.com/file/d/1Ziw7z9eAts_wjO4KPBk8clCH9S9vEknb/view?usp=sharing
Ridge Racer 7 - Saved state, when the game finished reloading it threw a fatal error. Log: RPCS3.zip Savestate file: https://drive.google.com/file/d/1HykRMEDZfTf5JXqpsdSmZnzDikdVy7t8/view?usp=sharing
Gran Turismo HD Concept - This game never worked in any savestate version, still a white screen when when reloading the game after saving state. Resuming the game after pausing freezes it, so the kernel explorer video was captured with the game running. Log: RPCS3.log.gz Savestate file: https://drive.google.com/file/d/1Sz-ZJ6INCs8n_bcPuKrrZFrnT6-_J0KW/view?usp=sharing Kernel Explorer video:
Skate 3 - Saved state, when the game finished reloading it threw a fatal error. Log: RPCS3.zip Savestate file: https://drive.google.com/file/d/197Mo_Xmpw7uRpw8yEHQ_1_ZZBK7KNiTF/view?usp=sharing Kernel explorer video:
God of War 3 - Everything seems to work fine, except performance took a hit after saving state, lost about 5 FPS. Log (tested Heavenly Sword on the same run so it's also logged, it worked fine): RPCS3.zip Savestate file: https://drive.google.com/file/d/1sKvunZp9ng7J5846626FMnwK0BHL7MEB/view?usp=sharing Kernel Explorer video:
The Last Of Us - Saved state, when the game finished reloading it threw a fatal error. Log: RPCS3.log.gz Savestate file: https://drive.google.com/file/d/1DlK6FvfHXuLMBJCJfW9FJHIQr-JjcqdJ/view?usp=sharing Kernel Explorer video:
I could get kernel explorer clips for the first few later if needed, they were tested before your latest commits
Grand Theft Auto IV (NPUB30702) crashes rpcs3 when loading states. Tested on the opening of the game. Log: RPCS3.log Savestate File: https://drive.google.com/file/d/1b8aKQRzu-K8Hy8Qlb7giTgQw9kZvFayy/view?usp=sharing Like a dummy, I forgot to record the kernel explorer before saving the state, so unfortunately I can't show any video of it because there is none.
Fallout New Vegas (BLUS30500) freezes when loading states. Tested on the opening of the game, in-game, where you wake up in Doc Mitchell's house. Log: RPCS3.log Savestate File: https://drive.google.com/file/d/1406Zk_Bp9C6snGUH0qP-J0qD0usuTKZz/view?usp=sharing Turns out RPCS3 crashes when starting the kernel explorer (for this game, at least), so I could record it for this, either.
Half Life 2 The Orange Box (BLUS30055) crashes rpcs3 when saving states, before the file is even made. Tested in the opening of Half Life 2. Log: RPCS3.log
Sonic Unleashed - Doesn't work with the save state and I got an error Log: RPCS3.log.gz Savestate file: https://www.mediafire.com/file/axjk1j6tu2k8vc1/BLUS30244.SAVESTAT/file Kernel Explorer Video: https://www.youtube.com/watch?v=0HvW2z9M4Ps
FFX Remaster - creating or loading a savestate causes the ground to render improperly. It appears black except for where characters are standing. No other observed issues. RPCS3 FFX.log.gz https://user-images.githubusercontent.com/61633628/122690063-d3c01500-d1ec-11eb-8914-1dc3589f3116.mp4
Rainbow 6 Vegas 2 - No observed issues. RPCS3 Vegas.log.gz https://user-images.githubusercontent.com/61633628/122690228-e5ee8300-d1ed-11eb-8ccb-a4befb679ed3.mp4
Tales of Xillia 2 - No observed issues. RPCS3 Xillia 2.log.gz https://user-images.githubusercontent.com/61633628/122689930-b63e7b80-d1eb-11eb-92bf-a761d9cca1d9.mp4
SSX - Creating or loading a savestate causes a graphical issue with the snow around your character. This issue does go away after a short amount of time.
Attempting to create a savestate after restarting a drop causes the emulator to crash. It fails to create a savestate in this situation. Log (successful savestate) RPCS3 SSX.log.gz Kernel Explorer (successful savestate) https://user-images.githubusercontent.com/61633628/122689671-25b36b80-d1ea-11eb-96bc-1b791daec4b1.mp4 Log (crash) RPCS3 SSX Crash.log Kernel Explorer (crash) https://user-images.githubusercontent.com/61633628/122690670-93629600-d1f0-11eb-87fb-65a9ace98ba0.mp4
Haze - No observed issues. RPCS3.log.gz https://user-images.githubusercontent.com/61633628/122689536-e3d5f580-d1e8-11eb-9ed2-7908c2c933f5.mp4
Skate 2 - Creating a savestate crashes the emulator while the game reloads. Attempting to load this savestate also causes the emulator to crash while the game boots. RPCS3 Skate 2.zip https://user-images.githubusercontent.com/61633628/122691153-83988100-d1f3-11eb-804c-902575b25f3b.mp4
DJ Hero 2 Demo - Creating a savestate crashes the emulator while the game reloads.
LittleBigPlanet™ [BCES00611]-Savestate doesn't load RPCS3.log.gz https://drive.google.com/file/d/1Zrut6uufzUcuOLyIL6ccQkQyoijSa_Np/view?usp=sharing https://user-images.githubusercontent.com/16064499/122705023-45b74f00-d22b-11eb-9625-a81009f50c61.mp4
Anyone has visual studio and can get me callstacks for crashes?
RPCS3 crashes whenever I try to boot a game with VS attached, no idea why. Will have to figure that out first
You need to disable "break when this exception type is thrown" for RSX access violations to work.
Thanks for the suggestion, VS debugger is working. Got some callstacks:
Fixed UNIX builds, added debugging info for crashes.
Pushed some bugfixes.
Retest your games.
Tested Ratchet & Clank (NPEA00385) on a commit from yesterday, as well as ba47b84 (most recent as of writing). I got the same results on both.
Works perfectly in most cases, except any time a cinematic appears (pre-rendered bink video cutscenes) after loading a savestate (does not matter where in the game the savestate was made), the game will freeze with {PPU[0x1000000] Thread (main_thread) [0x005f0650]} VM: Access violation reading location 0xbadf00d (unmapped memory) [type=u32]
.
Additionally, if I make a savestate on the first splash screen (the health warning), the game will freeze (infinite loop? one thread is maxed) with {PPU[0x100000e] NPTrophyRegister} PPU TODO: Unimplemented syscall syscall_0 -> CELL_OK (r3=0x0, r4=0x4f0aa0, r5=0x0, r6=0x0, r7=0x3, r8=0x0, r9=0x100000e00000000, r10=0x100000e)
on savestate load.
I tried both with the recommended settings (though I couldn't figure out how to "select libvdec.sprx
"; I couldn't move it out of the top list box) and my usual settings (all the ones you recommended turned off). No differences I could see.
Logs (I had some code mods loaded for the game eboot, let me know if I should verify without. also they contain both making and loading the state): RPCS3.badf00d.log RPCS3.syscall_0.log
Hope it helps, and thanks a lot for working on this! I've been wishing for this for a long time, and it's going to be very useful!
Half Life 2 The Orange Box now saves and loads states in-game, but when it loads a savestate file rpcs3 errors out, saying the path is invalid. Log: RPCS3.log.gz
Fixed random SPU crash at loading savestate.
Uncharted 1 saves and loads without issues RPCS3.log.gz
@ChrisNonyminus Retest.
@ChrisNonyminus Retest.
It's fixed now.
Testing new build PR
Sonic Unleashed still not working, same error Log: RPCS3.log.gz Kernel Explorer Video: https://www.youtube.com/watch?v=gqyPa-3yxZs
Silent Hill HD Collection, it get stock compiling shaders and only head a sound Log: RPCS3.log.gz Kernel Explorer Video:
Metal Gear Solid HD Collection, Same issue as Silent Hill HD Collection Log: RPCS3.log.gz Kernel Video Explorer:
@Jonathan44062 Retest.
Silent Hill HD Collection and Metal Gear Solid HD Collection works fine now! But not Sonic Unleashed, same error Log: RPCS3.log.gz Kernel Explorer Video: https://www.youtube.com/watch?v=A42Zb0lrRCU
In God of War 3, if you make a save state with no patches enabled, then enable all the patches, then load the save state, significant bugs happen.
Can there be a safe-guard in place to prevent people from loading save states that are incompatible due to changes in patches?
https://github.com/RPCS3/rpcs3/pull/10478#issuecomment-870804764
@wheelmac92 Thank you for your feedback, what should really happen is that patches are ignored on savestste load. (as if the old patches are still active) I will add the todo list.
What if a save state is taken for an un-updated game, and then a Title Update is installed, and then the save state is loaded? Is there any safe-guard there? What about DLC? @elad335
It should be incomaptible, but this error checking is not yet implemented.
Implemented softcoded game file paths handling: what this means? it means that you can share savestates between people and move game files from one place to another and savestates will still be compatible. (applies to disc games and moving the entrie of /dev_(hdd0/flash) Testers needed to test if this feature alwayas works, for disc games it means to move the game folder to somewhere else then informing RPCS3 of its new location. (needs to appear in game list)
LittleBigPlanet™ [BCES00611] The first time it gets ingame, but the performance is destroyed, 80% of the inputs don't work and the textures are black. After closing RPCS3, saved the log and tried to boot with savestate...RPCS3 crashes. I uploaded both logs, savestate file and video of everything happening. https://drive.google.com/drive/folders/1Y8EeUn5kijcYd0ngF-WFm0J9cE3wlBAA?usp=sharing
I don't have that error with Sonic Unleashed anymore, but now, it doesn't load the game after pressing CTRL + S No error message what I see Log: RPCS3.log.gz Kernel Explorer: https://user-images.githubusercontent.com/78843189/125519205-4ceed4f8-2aa7-47fa-ab08-78ea9ab0bbbd.mp4
Playstation All Stars Battle Royale Same issue with Sonic Unleashed? It doesn't load the game after pressing CTRL + S And i get this message Log: RPCS3.log.gz Kernel Explorer: https://user-images.githubusercontent.com/78843189/125523332-54429594-3195-4d4a-bc06-b4e19d3590d3.mp4
Btw you can now press "Log All" button in kernel explorer for the same effect as recording.
I did what did you said, with the "Log All", no more recording in the kernel explorer Here's the log file, with Sonic Unleashed, it doesn't load the game after pressing CTRL + S RPCS3.log.gz
Closing the emulator and open again to boot the save state, I have this message After that, I cannot repeat to reboot again with the save state Log with the error: RPCS3.log
LittleBigPlanet 2 and 3 don't even launch with this build, they both crash with the default settings and the required settings. RPCS3_LBP2.log RPCS3_LBP2_DEFAULT.log RPCS3_LBP3.log RPCS3_LBP3_DEFAULT.log
Wait it does need elaboration in case it affects the file format of savestats, better to address savestate file format issues now instead of in master.
Even inserting zero-filled space in the final file for later implementation is an option.
Yakuza Ishin crashes as soon it loads the save state. It used to previously work on the older builds posted in #development (ex: rpcs3_savestates_elad_v1.04 worked fine here)
Log: RPCS3.log.gz Savestate File: https://drive.google.com/file/d/1txsaFevj7TKc_CnJZi14BKbjtrFMHpaV/view?usp=sharing
It's because you turned on HLE lwmutex.
LBP 2 still does not launch with this PR. Gets stuck after building the caches RPCS3.log
Disabling Logging...
Please enable logging.
absolute smoothbrain moment. should have looked at the log size.
here is a proper log: RPCS3.log
@AphelionWasTaken Retest.
Good news: LBP2 now loads just fine
Not so good news: Attempting to create a save state causes the emulator to crash RPCS3.zip
Fixed "Start Paused" savestates' setting, there was no report of it being broken so I notified it anyways. Also removed debugging changes to kernel explorer.
Sly Cooper Thieves in Time crashes when creating a savestate. RPCS3.zip
@Asinin3 Retest, I've implemented a missing statesaving of emulated PS3 filesystem feature.
Restrictions (most will be lifted as this work progresses):
How to savestate
Ctrl+S savestates, savestate will be bootable from the game context menu later.
Versioning System
Because RPCS3 is one of the most complex emulators ever made (if not the most complex) and it is still in rapid development state, the need to update the emulation every now and then in a way which will affect savestates is inevitable. So, while the rest of the emulators use a global version for their savestate for all components of the emulation, RPCS3 savestates will work in a smarter way which allows both rapid development of the emulation and high compatibility of old savestates. The following actions has been taken:
Savestates modes (config.yml exclusives at the moment)
Additional TODO list: (besides lifting restrictions)
Fixes #4218