Closed Darkhost1999 closed 2 years ago
The same happens in AC4 too. But i would say that first the picture freezes and just some secounds later the sound. log: RPCS3.log.gz
Those issues look like regular desyncs, did you try Atomic Fifo accuracy?
Those issues look like regular desyncs, did you try Atomic Fifo accuracy?
Yea I thought about that looking at it more in depth. The only time this syscall is mentioned in the rsx code is nearby FIFO and vblank. These things do not effect this freeze though. AtomicFIFOaccuracy.log
Those issues look like regular desyncs, did you try Atomic Fifo accuracy?
Yes no change in it. Atomic ordered won't help too.
Freezing on Oblivion 44 00 00 02: sc https://github.com/RPCS3/rpcs3/issues/10812
I have not frozen in ACB since enabling Accurate PPU Non-Java Mode. (See next comment) Not to be confused with PPU Non-Java Mode Fixup. I managed to get all the way into Sequence 2 of ACB and the game is still going strong without freezing.
(Although Accurate PPU Non-Java Mode does help it's not a 100% solution.)
I totally got jinxed with a freeze the moment I said something.
Not all aspects of the games freeze. Things like Audio, video loops, and animations will continue looping. So only specific elements of the games are failing where if you check the debugger it'll say 44 00 00 22 sc.
With Oblivion it can be observed sometimes changing your options will work and sometimes they won't. With how many times this system call is called during gameplay it seems to randomly choose 1 of the those times to fail. Not every time.
The main reason for this comment is to start a meta tracker of known effected games/apps:
And potentially more to be discovered.
I looked into this porblem and I think the 44 00 00 02: sc isn't a bug or any problamatic thing on the main thread because from my understanding is that it means that the main thread is waiting for answer from an other thread. Like when you start GT5 and the hdd popup shows up until you press x the main thread is at 44 00 00 02: sc, beacuse it waits for answer from an other thread. So all in all i consider this is a non issue, but i hope one of the devs will validate me.
Not an issue, main thread can always be stalled on syscall while work is being done on other threads.
Games or apps freezing is an issue.
The only reason I keep discussing 44 00 00 02 sc
is because it's the only thing that connects everything.
There appears to be no indication that anything is wrong. Just a common quality they all share is that they all have the same PPU thread values when they freeze.
All of these freeze on same thing not just main thread FYI.
Well there is 1 mildly interesting thread talking about semaphores
All of these freeze on same thing not just main thread FYI.
Because the issue likely be that a theard won't send or an information or a thread won't recieve some information which causes the other threads to wait too. The other tink that i can think that maybe can cause similar thing if a returned value incorrect, or bye some kind of overflow like if you skip track in GT5 in the licens races 5time the game will get a spu desync at a 100% rate. In my opinion the best thing to do is to search which syscall causes this so it is much easyer for the devs to fix it.
Well everytime I search the addresses in disassembled code the only thing I get is what Gael called the generic syscall name Usleep. Which is in PPU, SPU and RSX code when searched on github.
Close until we find specifics I guess
If specifics are found then it'd be better to open separate tickets. For documentation: 44 00 00 02 is a syscall that's called everytime a game is open and that thread is waiting. The syscall is harmless and not the cause of any issue. The issue would be whatever is causing these threads to wait not the waiting threads themselves. Indeed the syscall is just generically syscall_usleep and nothing special.
Assassin's Creed Brotherhood consistently freezes at this spot in the debugger. Interpreters + Accurate PPU Non-Java Mode have proven most helpful in getting the farthest in the game. But still freezes. RPCS3.log
AC Revelations is the same exact way freezing at the same thing. RPCS3.log
I have tested the advanced tab settings for PPU I still have no idea what they do or how they help. And I've tested my trusty ppu threads set to 3 or 1 and was not able to have any effect. In fact everything I did in testing had absolutely 0 effect on anything. Except for the interpreters being slower. All of the AC games appeare capable of users abusing the settings and the game remaining the exact same stability where the only difference would be how well it performs. AKA I cannot intentionally break AC or any of Ezio trilogy.