VOGONS


First post, by superfury

User metadata
Rank l33t++
Rank
l33t++

After fixing some issues with the multithreading on the PSP (mainly deallocation of threads from SDL/SDL2), the normal execution of the application works without issues.

The main issue now happens when trying to exit the app, which terminates the main loop in the main thread, causing the application to terminate all other threads(with the latest commit: wait for them to finish and return their status).

The issue mainly seems to happen if the settings menu thread is started after the VGA has rendered a frame(thus allocated in memory using SDL) and the user attempts to terminate the application using the home button(which sets the application termination flag which is used on all other operating systems as well to terminate the main loop and other threads).

Last edited by superfury on 2021-01-02, 21:38. Edited 1 time in total.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 1 of 2, by superfury

User metadata
Rank l33t++
Rank
l33t++

Hmmm... With the latest commits, the PSP build runs mostly on PSP-1000 devices.
But somehow, when (according to the logging) the main thread tries to terminate the timer thread, it crashes with an invalid address being addressed?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 2 of 2, by superfury

User metadata
Rank l33t++
Rank
l33t++

Slightly related: I just found a potential horizontal rendering overflow that only happens with the PSP on it's Forced VGA Direct Plot mode. This has now been properly resolved.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io