Solution for " White Screen of Death "
-
I have another version to try. With luck this will be the final version :)
https://github.com/fieldofcows/EmulationStation/releases/tag/v0.3-RPi-3
This fixes all known issues but introduces one very minor one which I'll try to address:
- Maximum possible texture memory is sometimes reported incorrectly
I've tested on my RPi3. Video previews work fine, transitions are smooth using both slide and fade although when sliding fast you just get blank textures until they load. If the theme fits in the allocated VRAM then now on-demand loading should take place.
I worked around a pre-existing bug too where changing themes often resulted in a white screen that was unrelated to RAM.
-
@fieldofcows I will pull that down sometime in the next 36 to 48 hours and run through as thorough a test as I can. A bit busy with work at the moment, so not exactly sure when I will get to it, but definitely within 36 to 48, probably sooner.
-
@fieldofcows Unfortunately I can't help you to test this, I would need to build it for windows, and anyway seems that I don't have WSOD on windows so difficult to help here...
-
Decided to try/test your latest version out... just loaded up the TronyFran theme and noticed an issue. If you go and play a game, exit out, and then go back to the system menus... the system logos don't show up, they are just white boxes (sometimes they are replaced with some box art from the gamelist I was on). All the background images are still there and I can scroll thru them fine but the system logo's essentially disappear. I am using an RPI3 on the latest version of Retropie.
Hope that helps!
-
@sglavach @fieldofcows I can confirm the missing system logos problem (all systems) after exiting a game (from any system). Switching to a different theme fixes this, but that's the only fix I have found so far. When the screen saver kicks in, I can see boxes where the images should be that are a different color than the surrounding carousel bar, but I'm not sure if that means anything to you. I did not experience the box art in place of system logos bug, however.
Other than that, I can't find any flaws. I repeated all of my previous tests, and more. Multiple themes, video previews, entering/exiting games, different transition styles, rapid transitions, slow transitions, etc. I've tried to test both the easiest and most common use cases, and also tried to break it in as many ways I could think of. It's looking pretty solid to me. Great work!
-
-
@fieldofcows Happy to help! If there's more I can do, just ask.
-
Here's another build that fixes the white squares on the system logos after launching a game. I think that was the only remaining issue so hopefully this fix is now complete.
I've given this one a good shake down - in and out of games, changing themes, small themes, large themes, etc. and it is behaving well now.
I've prepared a branch for a PR in the RetroPie fork but it's a BIG change so I would appreciate as many people testing it as possible.
The build for RPi 3 (and I think 2) is here:
https://github.com/fieldofcows/EmulationStation/releases/tag/v0.3-RPi-4
Thanks!
-
@fieldofcows Stick a fork in it, it's done! Ship it! I can't find any flaws or errors or strange behavior. Always happy to try to replicate issues that other users see, and I will also continue to do more testing, but as of right now, it's looking good.
I also tested with one of @Nismo 's older OldRoom themes. Without your code changes, it would've taken 861mb to display. With your changes, it was in the high 90s to low 110s, and every transition was smooth. No dropped textures, no hiccups, no problems at all. Same thing with my modified tronkyfran theme, although the max number on that was only about 168mb.
-
Same results here. No issues to be found as of yet. Looks good!
-
@fieldofcows I did a few more hours of testing and playing. Switched themes, switched transition styles, played games, watched preview videos (with numerous rapid changes, numerous "casual" changes, and letting it idle on a video until the screensaver kicked in and disabled the video). Repeated all of my previous tests, in order, in reverse order, and in mixed/random order. Without an automated test system in place and without analyzing the code and writing a full set of equivalence class tests, I can't think of any other way to break your changes beyond what I've already tried. From where I'm sitting, it's quite solid. Very nice work!
That being said, I'd love for other people to test this, since there might be things I'm not thinking of, or different configurations that cause issues I'm not seeing on my system.
-
I had a quick play with this last night and it seems perfect! Thank you for all the time you spend trying to fix ES's issues!!
-
@robertybob said in Solution for " White Screen of Death ":
Thank you for all the time you spend trying to fix ES's issues!!
Seconded. You're doing awesome work, and I know I'm not the only one who thinks that, or who appreciates all the effort you spend on it. I'm a professional software dev, so I know how much work you've put into this. If I can help in any way with this or future enhancements, let me know!
-
@MWGemini said in Solution for " White Screen of Death ":
I'm enjoying doing it but it is consuming all of my spare time!I'm a professional software dev,
Me too. What is your line of work? Are you proficient in C++?
-
@fieldofcows I'm a bit rusty with C/C++. Sent you an email offering assistance, but there'll be a bit of a learning curve as I readjust. I'm more used to Java and C#.
-
@MWGemini Ah, yes. I got the email. Sorry I will reply. I'm just working backwards through my stack...
-
@fieldofcows No rush! It's not like you're not doing a million other things! I just like the work you're doing and want to help make your life easier if I can. It benefits me too :).
-
@MWGemini and the rest of the community as well :) I wish I had more free time to test all these changes!
-
@herb_fargus I wish I had more free time too! That's part of what I like about this community (and open source in general)- with a little cooperation, a lot of cool stuff can get accomplished (things none of us could've done alone, or at least not nearly as easily).
-
I only want to say thank you to all people working on this project, starting from @fieldofcows for his great job, @Zigurana for his ideas and development on carrousel, @MWGemini for his testing, (I don't have an rpi, so sorry so much because i can't help there), and everybody making this possible.
Never seen a coopertive work like in this forum, it's amazing.
Also I want to say sorry so much to @herb_fargus for missunderstanding him one post on another thread (sorry for the offtopic) but i need to say this.
Regards to all.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.