RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Updated EmulationStation for Windows

    Scheduled Pinned Locked Moved Projects and Themes
    emulationstatiowindows
    741 Posts 97 Posters 541.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LiveFreeDeadL
      LiveFreeDead @f.caruso
      last edited by

      @f-caruso
      Dual Screen Test:
      1.I run ES in a window (defaults to screen 1)
      2.I drag it to the 2nd screen (Screen 2),so I can manage my rom folders on my main screen.
      3.I run a game with the Hide when running enabled, which it hides fine. (Hidden on both screens)
      4.When I exit my game and ES is shown again it is on (Screen 1) again (over the folders).

      The new Raspberry Pi 4b has dual screen, so I am sure there will be fixes in the pi code sooner or later, doubt it will be compatible with windows tho. I don't mind if this bug is fixed, I just don't hide it currently and the loading screen is under the retroarch etc (so no desktop shown anyway).

      f.carusoF 1 Reply Last reply Reply Quote 0
      • f.carusoF
        f.caruso @LiveFreeDead
        last edited by

        @LiveFreeDead said in Updated EmulationStation for Windows:

        The new Raspberry Pi 4b has dual screen, so I am sure there will be fixes in the pi code sooner or later, doubt it will be compatible with windows tho. I don't mind if this bug is fixed, I just don't hide it currently and the loading screen is under the retroarch etc (so no desktop shown anyway).

        Not a bug at all... But very easy thing to do... done in 3mn... I'll commit it later.

        dukebloodersD 1 Reply Last reply Reply Quote 0
        • dukebloodersD
          dukeblooders @f.caruso
          last edited by

          @f-caruso Hi,

          Small question, does the padtokey config work with your non portable version ? I tried yesterday unsuccessfully.

          1 Reply Last reply Reply Quote 0
          • LiveFreeDeadL
            LiveFreeDead @alberion
            last edited by

            @f-caruso

            @alberion said in Updated EmulationStation for Windows:

            Is there a way to start ES on a second monitor and keep it open while working on the other monitor?

            im trying to make ES to always open in my tv, while y work on my pc monitor, is that possible?

            Might be worth adding this before you commit the re-open on last screen, easy to check a -screen0 or -screen1 etc in the switches?

            f.carusoF 1 Reply Last reply Reply Quote 0
            • f.carusoF
              f.caruso @LiveFreeDead
              last edited by

              @LiveFreeDead said in Updated EmulationStation for Windows:

              Might be worth adding this before you commit the re-open on last screen, easy to check a -screen0 or -screen1 etc in the switches?

              It's not the same thing - what u want is to remember/restore window location. What @alberion wants is to play on his TV which is his second monitor... If there was a way to open ES on a given monitor, there's no way to run games & emulators on the same screen -> they will always open on the main monitor ! There's no solution to his problem.

              @dukeblooders padtokey is included in emulationportable.exe. It was written in a different language (c#) before I started to work on ES.

              LiveFreeDeadL dukebloodersD 2 Replies Last reply Reply Quote 0
              • LiveFreeDeadL
                LiveFreeDead @f.caruso
                last edited by LiveFreeDead

                @f-caruso I have a weird new bug since fixing the flickering graphics bug (previous versions never had bug) . Now when I exit a game (For certain Emulators), the gamepad I used to launch the game with no longer functions in ES, I have to use a different controller or quit and run ES again. It doesn't do this every time, in fact it only happens every 5th time or so, on average. I have tried things to make it work again, but nothing works, it is like it ignores all input from said controller. I never had this bug before, so a fresh one ;)

                -EDIT-

                Weirdly enough it only seems to be non RetroArch Core Emulators, mostly using Cemu (WiiU) and PCSX2, maybe it's just a conflict with the external emulators grabbing control of the USB controllers or something, so I'll try and figure out whats going on more with this glitch.

                1 Reply Last reply Reply Quote 0
                • PittStoneP
                  PittStone
                  last edited by

                  So many Updates and its still not working for me. I start ES and its crashing after load. :(

                  LiveFreeDeadL 1 Reply Last reply Reply Quote 0
                  • dukebloodersD
                    dukeblooders @f.caruso
                    last edited by

                    @f-caruso Thanks for your reply

                    Could be a nice feature on the non-portable version (if it's possible). Unless I'm mistaken, you're doing a graceful stop now, you could add a "force" parameter which kills the process instead. Just an idea for what I read about Redream case.

                    f.carusoF 1 Reply Last reply Reply Quote 0
                    • LiveFreeDeadL
                      LiveFreeDead @PittStone
                      last edited by LiveFreeDead

                      @PittStone Are you using https://github.com/fabricecaruso/EmulationStation/releases/tag/continuous-master

                      He hasn't updated the release one for a week and that did have a show stopping bug still, so you have to use the auto compiled version instead until he releases it as a version update.

                      -EDIT-

                      If you are using the latest, move your .emulationstation\ES_* settings to a folder and only copy back the es_system.cfg back, then run it, making new controller and hopefully this will fix your issues with it, else manually set a different theme within the es_settings.cfg and copy that back, maybe it's got something incompatible in it.

                      PittStoneP 1 Reply Last reply Reply Quote 0
                      • f.carusoF
                        f.caruso @dukeblooders
                        last edited by f.caruso

                        @dukeblooders Not sure this is really ES role to handle a global Joy2Key feature... ES has to continue to be compiled & run under linux and a Pi. It is true for my version, too - I don't wanna make a Windows only version. So, I'm not gonna port this functionnality into ES code, and I'll let it where it is : in the other exe - it exists... it's cool, isn't it ?
                        @LiveFreeDead : I really can't reproduce ur controller problem. Plus, I did't even touch one line of code in the Input manager...
                        @alberion The latest version supports the command line "--monitor N" ( where N is the monitor index starting at 0 ). As I suspected some emulators open on the main screen even if I tell them to run on the second one. I have a workaround for retroarch, but you'll have to configure the other emulators manually to use the second monitor...
                        @PittStone Can't help without informations..

                        LiveFreeDeadL 1 Reply Last reply Reply Quote 1
                        • PittStoneP
                          PittStone @LiveFreeDead
                          last edited by PittStone

                          @LiveFreeDead Hello, yes, this works. I deleted the settings, systems and controller files and now "es" is loading. Thanks.

                          f.carusoF 1 Reply Last reply Reply Quote 0
                          • f.carusoF
                            f.caruso @PittStone
                            last edited by

                            @PittStone Changed theme ?

                            PittStoneP 1 Reply Last reply Reply Quote 0
                            • PittStoneP
                              PittStone @f.caruso
                              last edited by

                              @f-caruso Theme was changed automaticly. I changed back to "Magazine Madness" and this theme works too.

                              1 Reply Last reply Reply Quote 0
                              • LiveFreeDeadL
                                LiveFreeDead @f.caruso
                                last edited by

                                @f-caruso

                                Any way you can add a check to see if --Monitor 1+ actually exists? I removed my 2nd screen and when I ran with --monitor 1 switch it would open off screen, if I then add the 2nd screen back it isn't displayed on it or anywhere I can see it. I figured if it failed or doesn't exist then it should default to Monitor 0.

                                I know this isn't too important, but could save some troubleshooting for someone who didn't realize it was even set (via a batch file or .lnk).

                                1 Reply Last reply Reply Quote 0
                                • J
                                  jdrassa
                                  last edited by jdrassa

                                  @f-caruso I looked over the list of your changes and to me the highest priority changes would be the theme features and specifically the changes to the grid view. Unless you have a strong need to do it yourself, I am going to look at migrating over some of your changes. Currently I am working on bringing over the gradient support and extending it beyond drawRect. After that, I am going to look at migrating your changes to the grid view.

                                  Get latest build of EmulationStation for Windows here

                                  f.carusoF 1 Reply Last reply Reply Quote 0
                                  • f.carusoF
                                    f.caruso @jdrassa
                                    last edited by

                                    @jdrassa "the then features" ??? Did you forget some words ? ;-)

                                    The gradient support is an easy thing to do, ImageComponent & drawtext have to be rendered with quads instead of triangles. Small piece of code.

                                    Concerning the grid view : I archived a true async loading today ( 1st load had to be sync, its not the case anymore the flag dynamic is really used) very useful for the gridview, but affects a lot of components. You should take it too to limit lags.
                                    Also : I changed also my "maxsize" image vram optimization, because it sizes images in the grid...
                                    I had lot of VRAM problems with some of my screenshots in 1080p -> Each cell uses 8Mo VRAM. So I resize images after loading according to the container. I think this "image sizing" for the grid view is absolutely necessary, expecially for a Pi how has only 1Gb RAM.
                                    Still, i'm not satisfied yet with what I did (the MaxSizeInfo class), I'm thinking about refactoring it soon.

                                    Also, you could takes things like my fix for subtitles in vlc component ( video screen saver )
                                    I also refactored my locale system based on po files. It's now easy to take ( don't understand why boost - recalbox & batocera use mo compiled files ? mo files are as big as po, not even compressed... )

                                    Well...

                                    D J jeroJ 3 Replies Last reply Reply Quote 0
                                    • D
                                      drcnyc @f.caruso
                                      last edited by

                                      @f-caruso just want to update you to let you know that the startup bug I was experiencing has gone away, now that I’ve started using the portable exe. Might have had something to do with that - but all good now.

                                      Separately, I am experiencing another issue that you might be able to shed some light on. When I run the built-in ES scraper, it only scrapes correctly the first time. But if I only scrape half of the games in an emulator the first pass, then quit and finish the scraping later, it doesn’t update the gamelist.xml file. Rather it updates a file called gamelist.xml.tmp, but never actually overwrites gamelist.xml. So when I load the program again, the updates don’t show up. And then when I go back to check the gamelist files, the .tmp file is now cleared out, and all scraping updates are gone. I know the scraping worked because the image files are all saved down, but for some reason the updates are not migrating from gamelist.xml.tmp to gamelist.xml, and thus they never stick. Any ideas what could be causing this?

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        jdrassa @f.caruso
                                        last edited by jdrassa

                                        @f-caruso said in Updated EmulationStation for Windows:

                                        @jdrassa "the then features" ??? Did you forget some words ? ;-)

                                        That was supposed to be "theme".

                                        The gradient support is an easy thing to do, ImageComponent & drawtext have to be rendered with quads instead of triangles. Small piece of code.

                                        I saw you switched to using quads. Since they are deprecated in new version of OpenGL, i figured out how to still use triangles.

                                        Concerning the grid view : I archived a true async loading today ( 1st load had to be sync, its not the case anymore the flag dynamic is really used) very useful for the gridview, but affects a lot of components. You should take it too to limit lags.

                                        There is a lot of good stuff in your repo. Its just a mater of finding the time to integrate it. Basically going after the features that most interest me for now.

                                        Get latest build of EmulationStation for Windows here

                                        f.carusoF 1 Reply Last reply Reply Quote 0
                                        • jeroJ
                                          jero @f.caruso
                                          last edited by

                                          @f-caruso I'm having an annoying problem, I do not know if he did something that I talk to LiveFreeDead. Well I explain the problem, before it was fine and for me it worked. I have 3 monitors and it's crazy, when I do not start a game when I go back to (ES) I can no longer manage (ES), it passes me to another monitor and I can only manage the selector between windows desktop files or some open window. Sometimes the same happens to me when I start the retroarch if I start this afternoon. Sometimes when I start I do not take control but I start driving in windos again. So I do not know if it has something to do with the LiveFreeDead problem, or possibly something else

                                          LiveFreeDeadL 1 Reply Last reply Reply Quote 0
                                          • f.carusoF
                                            f.caruso @jdrassa
                                            last edited by

                                            @jdrassa "Theme"... obviouly...
                                            I Switched to quads because I didn't find a way to make a vert gradient with triangles. What a pity they'll remove it in 3.1 because quads are 10% faster. It's the first time I work with OpenGl, so If someone finds a better way...
                                            @jero do u use one of these command line switches : "--monitor" or "--windowed" ? I added a special treatment with these. tell me.
                                            @drcnyc About the startup problem : Do you have a particular command line, too ? About the gamelist : I added a security because sometimes my gamelists where 0kb. I 1st write gamlist in a .xml.tmp file, then If everything went ok, I rename files -> .xml becomes .xml.old and .xml.tmp becomes .xml... Something on your PC is locking the .xml file... Why ? Antivirus software ???? Or maybe... Did U update the exe with my github's continuous version ? One of my past releases had a random bug in File::exists() ?

                                            // Secure XML writing
                                            				if ((int) Utils::FileSystem::getFileSize(tmpFile) > 0)
                                            				{
                                            					std::string savFile = xmlWritePath + ".old";
                                            
                                            					// remove previous gamelist.xml.old file
                                            					if (Utils::FileSystem::exists(savFile))
                                            						Utils::FileSystem::removeFile(savFile);
                                            
                                            					// rename gamelist.xml to gamelist.xml.old
                                            					if (Utils::FileSystem::exists(xmlWritePath))
                                            						std::rename(xmlWritePath.c_str(), savFile.c_str());
                                            
                                            					// rename gamelist.tmp.xml to gamelist.xml
                                            					std::rename(tmpFile.c_str(), xmlWritePath.c_str());
                                            				}
                                            
                                            jeroJ D 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.