Hi Dolphin users,
TL;DR: Test these builds
https://www.dropbox.com/sh/90k2vlm954jwq12/5JBl-cQ8vq
I've been working on a new branch that simulates DVD reading more accurately in Dolphin. On GC/Wii, when a game wants to read data from the DVD, it has the choice to either wait for the data to come (and do nothing in the meantime) or do something else while the data is being loaded from the DVD drive. In Dolphin we only support waiting for the data to come, so a game made for this second mode of reading will stutter and have reduced performance while it's reading from the DVD drive.
As you may have guessed, the async-dvd branch does the DVD loading asynchronously, which means games can do whatever they want while data is being loaded from the disc. This should remove some stuttering, mostly on loading screens (you could notice those a lot when using DSPLLE).
Windows x86 and x64 builds are available here:
https://www.dropbox.com/sh/90k2vlm954jwq12/5JBl-cQ8vq
I'm looking mostly for the following informations:
- Games that are broken because of this branch. It's very unlikely that this branch will cause "small" bugs, it will probably be either everything works or nothing works
- Games that show improvement because of these changes: less stuttering, maybe something else, I don't know
- Games that show slowdowns because of this branch. This should not happen, if you notice something being substantially slower it should be fixed before merging the branch to master.
Thanks in advance to all of you for your feedback, and I hope we'll be able to have this in master soon!
HLE audio in DKC Returns seems to be improved (less loops or noise) but the game often crashes or looses sync to wiimote which never happened with master branch to me.
However, HLE audio in Rune Factory Tides of Destiny seems to be much worse compared to master (noise & crackling).
New builds:
X64 X86
I'd like to get this branch merged for 4.0, could people confirm if:
1. The bug that etking reported in the previous post happens on their machine or not
2. Zelda Wind Waker loading time increases or stays the same (reported by CaptnOblivious)
3. Zelda Twilight Princess freezes at boot in dual core mode (reported by CaptnOblivious)
Thanks in advance,
Updates are nice, but I fail to see what you did other then merge master

When I first saw this I was like, why hasn't anyone tried this with metroid prime! Well, I did. And it doesen't help. In fact, it seems worse...
Prime has some sort of dynamic loading thing right? Well, in dolphin, when running quickly through areas the game will studder. It only happens when loading (not when sitting still in a room) and it's helped alot (but not fixed) by turning on "Speed up disc transfer rate", so pretty sure it's loading related. I was hoping Async would address the core problem but... nope.
It behaves differently though. With 3.0-720, the studders are longer and less frequent. They are very disruptive, but they come and they go. With Async, the duration of each pause in the studdering is reduced, but it lasts longer. Not much of an improvement. Worse yet, in 3.0-720 "Speed up transfer rate" more or less makes the problem go away. With this Async build, speed up transfer rate does help the studdering, but it does a weird thing, like, it was acting as though it was going at half FPS the whole time. Just horrible.
So yea, not an improvement for prime. Also of note, prime loading speeds tended to increase overall, albeit very slightly. Kinda expected that though.
Now, as for the tests you wanted.
1. Do not have DKCR, sorry.
2. Windwaker loading times seem pretty normal, with one exception. The time between the logos and the title screen is very long. On my Wii, it's 3-4 seconds. on Async? 12-14 seconds. However, time between hitting "start game" and fading into gameplay, is normal at 4-5 seconds. So I don't know why that instance of loading is so insanely long.
3. First run with Twilight Princess (Wii), fine. Stopped emulation, ran it again. Crash. Restarted the emulator, ran it again. No crash. Stopped emulation, ran it again, crash. So, for me, it only crashed after emulated was stopped and the game was run a second time. No other games seem affected. Disabling Dual Core had no effect on the crashes for me.
(07-16-2012, 01:58 AM)delroth Wrote: [ -> ]New builds: X64 X86
I'd like to get this branch merged for 4.0, could people confirm if:
1. The bug that etking reported in the previous post happens on their machine or not
2. Zelda Wind Waker loading time increases or stays the same (reported by CaptnOblivious)
3. Zelda Twilight Princess freezes at boot in dual core mode (reported by CaptnOblivious)
Thanks in advance,
Been using this branch for a few days on a number of misc. games. I've seen zero regressions. Everything is *slightly* smoother but the RE Chronicle games seem noticably smoother. Great work! I'll obviously post if I spot anything.
(07-16-2012, 12:08 PM)MaJoR Wrote: [ -> ]When I first saw this I was like, why hasn't anyone tried this with metroid prime! Well, I did. And it doesen't help. In fact, it seems worse...
Prime has some sort of dynamic loading thing right? Well, in dolphin, when running quickly through areas the game will studder. It only happens when loading (not when sitting still in a room) and it's helped alot (but not fixed) by turning on "Speed up disc transfer rate", so pretty sure it's loading related. I was hoping Async would address the core problem but... nope.
It behaves differently though. With 3.0-720, the studders are longer and less frequent. They are very disruptive, but they come and they go. With Async, the duration of each pause in the studdering is reduced, but it lasts longer. Not much of an improvement. Worse yet, in 3.0-720 "Speed up transfer rate" more or less makes the problem go away. With this Async build, speed up transfer rate does help the studdering, but it does a weird thing, like, it was acting as though it was going at half FPS the whole time. Just horrible.
So yea, not an improvement for prime. Also of note, prime loading speeds tended to increase overall, albeit very slightly. Kinda expected that though.
I'll test this, thanks. Could someone else try to reproduce these results?
(07-16-2012, 12:08 PM)MaJoR Wrote: [ -> ]1. Do not have DKCR, sorry.
2. Windwaker loading times seem pretty normal, with one exception. The time between the logos and the title screen is very long. On my Wii, it's 3-4 seconds. on Async? 12-14 seconds. However, time between hitting "start game" and fading into gameplay, is normal at 4-5 seconds. So I don't know why that instance of loading is so insanely long.
Could you compare loading time with master and async-dvd?
(07-16-2012, 12:08 PM)MaJoR Wrote: [ -> ]3. First run with Twilight Princess (Wii), fine. Stopped emulation, ran it again. Crash. Restarted the emulator, ran it again. No crash. Stopped emulation, ran it again, crash. So, for me, it only crashed after emulated was stopped and the game was run a second time. No other games seem affected. Disabling Dual Core had no effect on the crashes for me.
That should be easy to fix, thanks!
Quote:Could you compare loading time with master and async-dvd?
Hmm... They are more or less the same. Counted 11-12 seconds on 3.0-720. Same on 3.0-600. *shrug* I guess it's a tiny bit longer on Async, but not much.
I can't confirm on the Rune Factory Tides of Destiny problem. In fact I think all the sounds seems to be slightly smoother now.
However, though definitely not related to this branch, RFToD with OpenGL now produce annoying graphial glitch on the form of "pole" shadow on your character
http://i.imgur.com/Hn11t.jpg . Sorry for the unrelated bug report, just thought to let you know.
I didn't notice any extra load times with Wind Waker. Sometimes the game doesn't load at all, but that is unrelated.