Emulator Issues #1222
closedPlease test: Separate DVD thread
0%
Description
Currently, when a game reads from a disc, the whole emulator pauses until
the operation is done. That's bad for performance because file I/O is
extremely slow. It would be better to allow for the emulator to continue
while the file is being read in the background.
This patch splits disc access into a separate thread.
Advice is welcome. I would like to know the best way to handle the
"Transfer Complete" interrupt (search for "TODO" in the patch code).
Updated by Anonymous over 14 years ago
To be perfectly blunt, I'm scared of more threading related changes...at the very least
until the stuttering problems I and many other people are experiencing. It's getting
sort of ridiculous and hard to test/progress.
Updated by sl1nk3.s over 14 years ago
Well, it seemed to work fine in the games i tried, and the patch looks good, although
i can't think of a game really benefiting from that, it still is waiting for the data
so.. at least i had better framerate during loading screens :P
However, just for the sake of warning fixes, it would be better to break in the loop
and return at the end of the thread.
Updated by Nolan.Check over 14 years ago
Games don't necessarily do nothing while the read is in progress. The Metroid games
are constantly pre-loading the room beyond the closest door. If you play it on a real
system, you can hear the disc drive working as you move around the room. When you
shoot a door, the barrier goes down, and then the door opens as soon as the next room
has loaded.
Updated by ChaosCode over 14 years ago
This could also be the answer to slow GH:Metallica