Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Star Ocean 5 can only be started once per Windows boot due to MEM: Access violation #6825

Open
Metafalica opened this issue Oct 22, 2019 · 24 comments

Comments

@Metafalica
Copy link

Metafalica commented Oct 22, 2019

Just like the title says this game can be started only once per Windows boot. Any other attempts to start it ends with Thread (main_thread) [0x0051407c]} MEM: Access violation reading location.

How to reproduce: Start the game once, choose new game, see beginning cut scene and just try to play until emu freeze with Thread (main_thread) [0x0051407c]} MEM: Access violation reading location. It will freeze soone enough... After this no matter how many times you try to start it, emu will always freeze with same error before displaying any game start screens.
If you restart emulation without waiting for first freeze everything is OK. It will not freeze at next game boot.

RPCS3 v0.0.7-8968
Intel(R) Core(TM) i7 CPU 880 @ 3.07GHz | 8 Threads | 7.96 GiB RAM | TSC: Bad
Radeon HD 5750
Core:
PPU Decoder: Recompiler (LLVM)
PPU Threads: 2
PPU Debug: false
Save LLVM logs: false
Use LLVM CPU: ""
Max LLVM Compile Threads: 0
Enable thread scheduler: true
Set DAZ and FTZ: false
SPU Decoder: Recompiler (LLVM)
Lower SPU thread priority: false
SPU Debug: false
Preferred SPU Threads: 0
SPU delay penalty: 3
SPU loop detection: true
Max SPURS Threads: 6
SPU Block Size: Safe
Accurate GETLLAR: false
Accurate PUTLLUC: false
SPU Verification: true
SPU Cache: true
SPU Profiler: false
Enable TSX: Enabled
Accurate xfloat: false
Approximate xfloat: true
Debug Console Mode: false
Lib Loader: Load liblv2.sprx only
Hook static functions: false
Load libraries:
[]
HLE lwmutex: false
Clocks scale: 100
Sleep Timers Accuracy: Usleep Only
VFS:
$(EmulatorDir): ""
/dev_hdd0/: $(EmulatorDir)dev_hdd0/
/dev_hdd1/: $(EmulatorDir)dev_hdd1/
/dev_flash/: ""
/dev_usb000/: $(EmulatorDir)dev_usb000/
/dev_bdvd/: ""
/app_home/: ""
Enable /host_root/: false
Initialize Directories: true
Limit disk cache size: false
Disk cache maximum size (MB): 5120
Video:
Renderer: OpenGL
Resolution: 1280x720
Aspect ratio: 16:9
Frame limit: Auto
MSAA: Auto
Write Color Buffers: false
Write Depth Buffer: false
Read Color Buffers: false
Read Depth Buffer: false
Log shader programs: false
VSync: false
Debug output: false
Debug overlay: false
Use Legacy OpenGL Buffers: false
Use GPU texture scaling: false
Stretch To Display Area: false
Force High Precision Z buffer: false
Strict Rendering Mode: false
Disable ZCull Occlusion Queries: false
Disable Vertex Cache: false
Disable FIFO Reordering: false
Enable Frame Skip: false
Force CPU Blit: false
Disable On-Disk Shader Cache: false
Disable Vulkan Memory Allocator: false
Use full RGB output range: true
Disable Asynchronous Shader Compiler: true
Strict Texture Flushing: false
Disable native float16 support: false
Multithreaded RSX: false
Consecutive Frames To Draw: 1
Consecutive Frames To Skip: 1
Resolution Scale: 100
Anisotropic Filter Override: 0
Minimum Scalable Dimension: 16
Driver Recovery Timeout: 1000000
Vblank Rate: 60
D3D12:
Adapter: ""
Vulkan:
Adapter: ""
Force FIFO present mode: false
Force primitive restart flag: false
Performance Overlay:
Enabled: false
Detail level: Medium
Metrics update interval (ms): 350
Font size (px): 10
Position: Top Left
Font: n023055ms.ttf
Horizontal Margin (px): 50
Vertical Margin (px): 50
Center Horizontally: false
Center Vertically: false
Opacity (%): 70
Body Color (hex): "#FFE138FF"
Body Background (hex): "#002339FF"
Title Color (hex): "#F26C24FF"
Title Background (hex): "#00000000"
Shader Compilation Hint:
Position X (px): 20
Position Y (px): 690
Shader Loading Dialog:
Allow custom background: true
Darkening effect strength: 30
Blur effect strength: 0
Audio:
Renderer: XAudio2
Dump to file: false
Convert to 16 bit: false
Downmix to Stereo: true
Start Threshold: 1
Master Volume: 100
Enable Buffering: true
Desired Audio Buffer Duration: 100
Sampling Period Multiplier: 100
Enable Time Stretching: false
Time Stretching Threshold: 75
Microphone Type: "Null"
Microphone Devices: "@@@@@@@@@@@@"
Input/Output:
Keyboard: "Null"
Mouse: Basic
Pad: Keyboard
Camera: "Null"
Camera type: Unknown
Move: "Null"
System:
Language: English (US)
Keyboard Type: English keyboard (US standard)
Enter button assignment: Enter with cross
Net:
Connection status: Disconnected
IP address: 192.168.1.1
Miscellaneous:
Automatically start games after boot: true
Exit RPCS3 when process finishes: false
Start games in fullscreen mode: false
Prevent display sleep while running games: true
Show FPS counter in window title: true
Show trophy popups: true
Show shader compilation hint: true
Use native user interface: true
GDB Server: 127.0.0.1:2345

RPCS3.log.gz

@AniLeo
Copy link
Member

AniLeo commented Oct 22, 2019

Probably duplicate of #3872

@Metafalica
Copy link
Author

Metafalica commented Oct 22, 2019

Maybe, but not sure... That ticket is very old, a lot of things changed since then and noone said there it boots once per Windows boot.

@rapierx
Copy link

rapierx commented Apr 20, 2021

If you use RAMMap after closing RPCS3 to empty modified list page, standby list and priority 0 standby list (flushing RPCS3 from memory) you can start the game again.

@Metafalica
Copy link
Author

Yuck, I doubt this is how we need to use rpcs3.

@Metafalica
Copy link
Author

Metafalica commented Aug 24, 2021

Nothing changed in current latest build (and I have radeon rx 570 now). I know it's hard to obtain SO5. I can give it for testing if that's the problem behind years of ignore.

@Metafalica
Copy link
Author

Fresh log with access violation at v0.0.18-12750.
RPCS3.log

@Megamouse
Copy link
Contributor

Please re-test

@Metafalica
Copy link
Author

No changes in v0.0.20-13198.

@ENjoyBlue2021
Copy link

ENjoyBlue2021 commented Mar 24, 2022

I never got this game to work, even the first attempt fails for me.
Always the RPCS3: PPU[0x1000000] Thread (main_thread) [0x00016700]: VM: Access violation reading location 0x0 (unmapped memory) message.
Made a switch from Win10 to Ubuntu and it still crashes with the same message.
Tried various settings but nothing seems to work. Only game for me which I cant get ingame at all.
RPCS3.log

@illusion0001
Copy link
Contributor

Try with #12172

@Metafalica
Copy link
Author

Metafalica commented Jun 7, 2022

Try with #12172

Sorry, I don't understand where to download this build. Give a link for Windows, please.

@Darkhost1999
Copy link
Contributor

Darkhost1999 commented Jun 7, 2022

Sorry, I don't understand where to download this build. Give a link for Windows, please.

https://cirrus-ci.com/task/4543090907152384
Just click -> artifact -> download the 7z.
Take the rpcs3.exe and extract it from the zip. Rename it to anything other than rpcs3.exe and add it to your existing rpcs3 folder. Boot the .exe you renamed and try the game. Remember to share logs and if it worked or not.

@Metafalica
Copy link
Author

Metafalica commented Jun 7, 2022

Well... I can't say it for sure, maybe it became now "can be started only twice per Windows boot", but this is the logs.
RPCS3-v0.0.22-c2246a65_freezes.zip
I would say it didn't worked.

@VIRGINKLM
Copy link

I wonder why RPCS3 "hates" that game so badly. It rejects it so hard like a body rejecting a bad transplant. I've been keeping an eye on progress on that game for years now but there's not a lot of progress into what makes RPCS3 crash so extensively on that game. Rather interesting mistery.

@Metafalica
Copy link
Author

Metafalica commented Feb 7, 2023

I can't believe it, but seems like game became playable now (since commit that reject garbage shader input). Emu was barely able to run this game up to training scene, because of MEM: Access violation junk, but now I successfully played far beyond that and not a single crash happened. And I tested it few days ago, but it crashed as always.
Now I use 0.0.26-14689 and I set RSX FIFO Accuracy to Atomic on Advanced tab in settings.

Don't know through what about being able to start only once per Windows boot, since it does not crash anymore.

P.S. Update. Just retested it with returning RSX FIFO Accuracy to default Fast and it crashed at opening training scene as always, and then I couldn't start it again because of MEM: Access violation happening at boot. So, nothing changed. But it still playable with Atomic FIFO at least.

P.S.2. Then I set FIFO to Atomic again, but the game still does not start anymore (without rebooting Windows). Somehow emu remember about previous crash and crash again at next game boot.

@user18081972
Copy link

I have similar problems running this game, but I just get a black screen.
Maybe I should just buy a PS3 and play it on real hardware lol

@AniLeo AniLeo changed the title Star Ocean 5 can be started without MEM: Access violation only once per Windows boot. Star Ocean 5 cannot be started due to MEM: Access violation Nov 11, 2023
@AniLeo
Copy link
Member

AniLeo commented Nov 11, 2023

Reported to still not boot on current builds even with Atomic FIFO, we need a new log file of the issue

@Metafalica
Copy link
Author

Metafalica commented Nov 12, 2023

It boots totally fine for a long time on different constantly updating emu versions. As long as it first game boot after booting Windows... And Atomic FIFO. It randomly crashes with any other FIFOs soon after game boot (main menu, intro scene, etc).
game_ok
Log when it boots fine:
RPCS3_first_boot.log

And this what happens when I try to boot it second time (without restarting Windows):
game_not_ok
Log when emu freeze:
RPCS3_second_boot.log

This ticket title edit was wrong. It was displaying exact state of this game.

@AniLeo AniLeo changed the title Star Ocean 5 cannot be started due to MEM: Access violation Star Ocean 5 can only be started once per Windows boot due to MEM: Access violation Nov 12, 2023
@AniLeo
Copy link
Member

AniLeo commented Nov 12, 2023

Thanks, I restored the original title as we had several reports of it not working at all - someone could test this on Linux by the way to confirm if it's an OS specific bug or not

@Metafalica
Copy link
Author

Metafalica commented Nov 12, 2023

Just tested native rpcs3 AppImage (downloaded from rpcs3.net) on Steam Deck desktop mode (ArchLinux based). Game boots first time and freeze all later times exactly like on Windows. I can't even imagine how program must be coded to achieve same behavior if you decide to repeat this intentionally (it's not a complaint through).

P.S. the dudies telling game doesn't boot at all probably tried to boot it first with default FIFO. That makes game freeze very fast, sometimes it's possible to think it froze during boot (yet sometimes game will freeze on intro or gameplay). Then they switched to Atomic FIFO without restarting Windows, but emu freeze at boot (since it's second time or more), so they think it doesn't boot at all.

We probably should have a ticked about game freeze with default FIFO...

@user18081972
Copy link

Sounds like this emu could benefit alot from something like Dolphin has where known required settings are automatically set by default based on game ID.

@FlexBy420
Copy link
Contributor

Using the PPU interpreter allows to get ingame without crash most of the times.

@elad335
Copy link
Contributor

elad335 commented Jan 11, 2024

Retest with master

@Metafalica
Copy link
Author

Metafalica commented Jan 11, 2024

Tested v0.0.30-15945-3513f6d8. No changes (of course). Still freeze on second time. Such things should be captured by running emu under debugger while trying to start this game...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests