Solution for " White Screen of Death "
-
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.
-
And @Nismo, thank you for your theme development, suggestions and feature testing. ** Group Hug ** Haha!
Now how are we going to get your a RPi?
-
So the test build has been hanging around for a while and a few people have tried it. I would still be happier if more people could try this before it's merged in because it's a big change.
For anyone with C++ experience, please take a look at the commit diff: https://github.com/fieldofcows/EmulationStation/commit/454473224240b3106d7f14fcff9f2d30e2e771b3
I've given this a good amount of testing on RPi3 but I only have configurations that I have setup for testing - I haven't got a 'real' configured system to try it on. As far as I'm aware, nobody has tried RPi2 or RPi1 yet.
I'll give RPi1 a go in a minute. I'm not 100% sure it will cope well with the dynamic textures but as long as it doesn't break the previous functionality where a theme fits in memory then I think we're ok.
If it all looks good I'll submit the PR.
-
@fieldofcows said in Solution for " White Screen of Death ":
@MWGemini said in Solution for " White Screen of Death ":
Do you happen to have installation steps for your latest patch handy?
Borrowed from my previous instructions on the Video Preview thread:
Installation instructions:
- Download a fresh copy of retropie from https://github.com/RetroPie/RetroPie-Setup/releases/download/4.1/retropie-4.1-rpi2_rpi3.img.gz and install it on an SD card (or install it on an existing card at your own risk)
- Connect the raspberry pi to the network
- Boot the raspberry pi and exit ES back to the terminal
- Download or copy the new ES with WSOD fix from https://github.com/fieldofcows/EmulationStation/releases/download/v0.3-RPi-1/emulationstationinto the home directory, e.g.
wget https://github.com/fieldofcows/EmulationStation/releases/download/v0.3-RPi-1/emulationstation
- Make executable and replace the original ES (maybe backing up the original first)
chmod +x emulationstation sudo cp emulationstation /opt/retropie/supplementary/emulationstation/
-
Add the biggest theme you can think of and as many systems as you can :)
-
Restart
I think I'm doing something wrong changed the above to point to RPI-4, but still getting the same issues, @MWGemini I know you mentioned deleting the old ES file, which one would that be and how :)
-
Never mind worked it out, found the old emulationstation file in Pi folder :)
-
So having a bit of a play on my Pi3 and I'm running a very image heavy theme and the RPI-4 release has indeed stopped the WSOD, only very very rarely on boot when going from system view into detailed view for the first time will the screen flash white for milliseconds before being populated by the images.
I do get booted out of ES when changing settings in the ES menu which also throws up the following error:
emulationstation: . home/pi/EmulationStation/es-core/src/components/OptionListComponent.h:239: T OptionListComponent<T>: :getSelected() [with T = std:basic_string<char>]: Assertion 'selected.size() == 1' failed.
Aborted -
@__Scannigan__ said in Solution for " White Screen of Death ":
I do get booted out of ES when changing settings in the ES menu which also throws up the following error:
This usually means there is something in es_settings.cfg that ES doesn't understand. Have you run any other development versions of ES on there? Maybe you could post your es_settings.cfg so we can take a look?
-
This post is deleted!
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.