Updated EmulationStation for Windows
-
-
-
-
@f-caruso Thanks for sharing your work with us. Your time is valuable and just because your doing it as a passion (for yourself) doesn't mean you need to share it public, but you are - not only that your listening to our feedback and actually solving the problems.
Thank you again
Glenn -
@f-caruso I have this Error in the Logfile:
lvl0: Error finding/creating FileData for "D:/ES/.emulationstation/roms/Syndicate (1993)", skipping.
lvl1: gameList: file extension is not known by systemlistIts a folder, and this repeats for all other folders. Maybe it can be fixed?
-
@PittStone Do you have errors at runtime ???
You know : having lines in logs does not mean "hey there's a bug in the code" ;-)
Logs are meant for developpers to help find errors which occur at runtime !!!!If you have no problem at runtime : there is nothing to fix !!!! This is information... right...
"gameList: file extension is not known by systemlist" -> gamelist describes a game, (not a folder) whose extension is invalid for the system.
"Error finding/creating FileData for "D:/ES/.emulationstation/roms/Syndicate (1993)", skipping." is just a warning, it does it for every folder containing only one game and it is normal. Plus : why isn't there a system subfolder in the path... ??? Check your gamelists....
So... nothing to fix....
-
@f-caruso
It's been 7 days without any major (or minor) bugs found. Might be time to compile an updated version release to replace the bug filled one that most users will currently get by default (non continuous). I have been using this new version every day, many hours worth, just using it as default, although I've not editing items etc, I did scrape a few items tho. -
@LiveFreeDead I think it's a good idea, I don't find mistakes either, and everything goes smoothly. I also think that Caruso deserves a vacation from this job
-
@LiveFreeDead Hello… The thing is i'm currently in holidays. I can read forums, surf the internet, but I Don't have access to my dev Tools. Ill be back in two weeks ;)
-
@f-caruso said in Updated EmulationStation for Windows:
@LiveFreeDead Hello… The thing is i'm currently in holidays. I can read forums, surf the internet, but I Don't have access to my dev Tools. Ill be back in two weeks ;)
I imagined why I said that, have fun
-
IS it stable??
-
I run the newest continuous release for multiple days, testing lots of roms from many consoles, the only issue I have is sometimes when RetroArch crashes (locks up) when I Task kill it I do not have the ability to use the controller again unless I quit ES and run it again. This is the only thing that affects the many days use I have give it.
One other minor thing is it shows non English (no / yes) in the Meta Data editing of an individual item if you press cancel/back. Everything else I have tried had worked perfect and stable.
-
@LiveFreeDead said in Updated EmulationStation for Windows:
sometimes when RetroArch crashes (locks up) when I Task kill it I do not have the ability to use the controller again
It's certainly specific to your config, controller's driver, or the retroarch's core you use ( which one crashes? ) I never produced this with any pad, and you should probably have the same pb with older ES versions.
One other minor thing is it shows non English (no / yes)
Yez, I saw I let a message harcoded in french in a messagebox, I'll correct it as soon as I'll be back.
-
@LiveFreeDead It was not easy to reproduce your gamepad issue. It is clearly a focus problem : when adding joystick, the window is not focused because taskmanager is between the two windows, and in this case gamepad is "badly initialised". It occurs only when "hide when launch game" is off. I have made a small change to force focus back, It looks better but may not be perfect… I have another idea, but the thing is a don't have my debug Tools here so i can't do better for now. Otherwise : set the "hide when launch" option to on.
Also I corrected the hardcoded french messagebox. -
@f-caruso I tested with a game I know crashes (3DS (Citra) - Harvest Moon 3D (Crashes just after you set a birth date)), with Hide When Running (is enabled) it comes back with Gamepad still working, but when disabled controller is still broken :( - I'll just leave hide when running enabled at least until I finish sorting all these roms out anyway.
-
@f-caruso Your build is just excellent but I miss the shutdown functionality, I'm setting up a Windows machine and everything is working as expected but the shutdown. On the build from @jdrassa the shutdown and reboot options do not contain the necessary Windows code to work and on your build it doesn't appear, I guess you hided it. Is there anyway you could add it back via config file with the corresponding missing shutdown command for Windows? If not then if you could help me out setup AppVeyor I can try to do it myself, the code is already a pull request on @jdrassa's GitHub, but I can't seem to setup AppVeyor to build correctly and produce the artifacts, plus can't get the code to compile locally on my Windows machine.
Thank you -
@ThePlagueIsBack Hi, Yes it was intentionnally hidden ( with a preprocessor directive for Windows). I assumed that on Windows most users Simply quit ES - and exiting was too long going in submenus - but don't shut down or restart Windows that way. Most users seems happy with that until now. I personnally don't understand the interest unless ES is completely replacing the shell… Furthermore, there's a button on every PC which is sending shutting down signal… (not the case on a pi )
However, I can always make it an option in my version. This is pretty easy to do.
Also, concerning code : there is a win32 api for that : ExitWindowsEx which is better that using shutdown command.
I'll see what I can do when I'll be back ( I'm currently on holidays ) -
@ThePlagueIsBack the reason that RetroPie changed the way shutdown/reboot work (and in turn broke them on Windows) is that with the previous implementation, the shutdown/reboot command will execute before ES has a chance to properly shutdown. This will potentially cause a loss of data as gamelists will not be saved.
-
@jdrassa @ThePlagueIsBack Yes, but the implementation should be different : QuitEs pushes SQL_QUIT : perfect It will break the main loop, but touch/shutdown commands should not be executed at that moment. QuitEs should only store the "Reason" (as a string or better : as an enum) and the Reason should be handled in the main, after deleteSystems where we can run the commands without risks of loosing datas.
Batocera's team (they are now using a 'modified' version of Retropie's ES ) has made a perfect implementation of it.
If you want I'll submit a PR with that when I'll be back. -
@f-caruso This build is for a friend that I'm helping setting up a Windows 7 arcade machine and we happen to replace the shell with ES so the shutdown was in fact much needed else he ES would not save the favorites/recent-played upon triggering the hard shutdown button. For now I'm using the command line shutdown with a 5 seconds delay which should be enough for ES to save the lists.
@jdrassa Thanks for the info, now it makes sense to me why they removed it from the retropie repo and yes it does prevent ES from saving the lists on Windows. Also, thanks a lot for providing me your AppVeyor yaml config, wouldn't be able to set it up on my own.
@f-caruso Man, that's a really nice implementation to get the shutdown gracefully working, it would be awesome if you could come up with that PR.
For now I've come up with a Frankenstein build forked from @jdrassa + feats from @f-caruso that includes the hacky shutdown as a temporary solution for anyone that would be interested here, I also removed "RESTART ES" from the quit menu since it wasn't working on Windows: https://github.com/Cereal-Killa/EmulationStation/releases
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.