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 539.2k 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.
    • f.carusoF
      f.caruso @jero
      last edited by

      @jero Is it the same with the option ON ?

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

        @f-caruso in ON, no have problem , but I will try new update

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

          @f-caruso
          (--Monitor 1) reverts perfectly to (Monitor 0) if no (Monitor 1) found.

          Hide When Running Game now works perfectly, no more work needed here

          • I still have the bug where if I run Cemu and Alt + F4 out to quit the game (Super Mario 3D world) that I can not use my GamePad I used to launch the game, it is probably related to CEmu stealing the Controller to use and not with ES tho, I'll figure that one out when I get to it tho.

          Linux Fails at Grid View: (Settings not declared)
          Linux Fails at Grid View

          I still can not get it to compile in windows or Linux, I just can't get it to run through without an error, I'll try re-installing my computer later today and try fresh, maybe I have old VS2010 components getting in the way, I'll only use VS 2015 as instructed and try my luck.

          But your doing great work today, so not much need for me to help with the code when you got it ;)

          1 Reply Last reply Reply Quote 0
          • D
            drcnyc @f.caruso
            last edited by

            @f-caruso problem fixed with the continuous build - gamelists now updating properly - thanks!

            Separate and unrelated question - is there any way ES can deliver joypad autoconfig files to retroarch? It seems retropie does this when controllers are configured in ES, and would be a nice feature in windows too.

            Lastly what are the chances you can improve scraping, perhaps with some kind of auto retry on error? I am trying to scrape a large number of roms and it always seems to crash out with a message about disk space possibly being full, but on further research seems this has to do with a timeout with connecting to the scraping DB servers. It requires manual intervention to resume scraping which can be tough with large lists coupled with the slow scraping speed.

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

              @drcnyc

              problem fixed with the continuous build - gamelists now updating properly - thanks!

              Mmm... I didn't change a line of code....

              is there any way ES can deliver joypad autoconfig files to retroarch

              That's not ES role. Retropie & Recalbox use a "launcher" tool to do that & the "command" runs the launcher instead of the emulator. This is the good way to make it...
              Someone has to develop such a launcher...

              Lastly what are the chances you can improve scraping..

              I have no personnal interest in improve ES scraping : I personnaly never use ES scaping. I have my own ( but private ) gamelist editor because I use screenshot for images, box2d for thumbnails and I have videos... Plus, I use custom thumbnails for several systems ( wii use wiitdb arts, ps2 custom 3d boxes I found on a forum which are beautiful, + some system are not scrapable : windows games.. )
              I do recommand using an external scraping tool like Skraper.net

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

                @f-caruso drcnyc started using the continuous builds, so maybe that was enough to correct if XML update bug.

                I managed to get ES to compile in windows, I had to use NuGet to grab rapidjson.1.0.2 and I updated the compile paths etc

                c:
                cd \src
                git clone https://github.com/fabricecaruso/EmulationStation.git EmulationStation
                cd EmulationStation
                git submodule update --init
                c:
                cd \src
                cd EmulationStation
                mkdir build
                cd build
                set ES_LIB_DIR=c:\src\lib
                cmake -g "Visual Studio 14 2015 x86" .. -DEIGEN3_INCLUDE_DIR=%ES_LIB_DIR%\eigen -DFREETYPE_INCLUDE_DIRS=%ES_LIB_DIR%\freetype-2.7\include -DFREETYPE_LIBRARY=%ES_LIB_DIR%\freetype-2.7\objs\vc2010\Win32\freetype27.lib -DFreeImage_INCLUDE_DIR=%ES_LIB_DIR%\FreeImage\Source -DFreeImage_LIBRARY=%ES_LIB_DIR%\FreeImage\Dist\x32\FreeImage.lib -DSDL2_INCLUDE_DIR=%ES_LIB_DIR%\SDL2-2.0.5\include -DSDL2_LIBRARY=%ES_LIB_DIR%\SDL2-2.0.5\build\Release\SDL2.lib;%ES_LIB_DIR%\SDL2-2.0.5\build\Release\SDL2main.lib;Imm32.lib;version.lib -DBOOST_ROOT=%ES_LIB_DIR%\boost_1_61_0 -DBoost_LIBRARY_DIR=%ES_LIB_DIR%\boost_1_61_0\lib32-msvc-14.0 -DCURL_INCLUDE_DIR=%ES_LIB_DIR%\curl-7.50.3\include -DCURL_LIBRARY=%ES_LIB_DIR%\curl-7.50.3\builds\libcurl-vc14-x86-release-dll-ipv6-sspi-winssl\lib\libcurl.lib -DVLC_INCLUDE_DIR=%ES_LIB_DIR%\libvlc-2.2.2\include -DVLC_LIBRARIES=%ES_LIB_DIR%\libvlc-2.2.2\lib\msvc\libvlc.lib;%ES_LIB_DIR%\libvlc-2.2.2\lib\msvc\libvlccore.lib -DVLC_VERSION=1.0.0 -DRAPIDJSON_INCLUDE_DIRS=%ES_LIB_DIR%\rapidjson.1.0.2\build\native\include
                
                

                I could remove boost etc, but the fact it worked for me is a big plus :), I noticed my build is smaller than yours, I think it is due to not being able to get LibCEC to work. I don't think I'll be as much help as I thought, maybe I should go back to a hello world project and get to a scalable workflow, I don't even know where to access cpp from within VS2015, or maybe I am just meant to use a good text editor and not use VS for edits, I never realized how basic VB.NET really was compared to the rest.

                -EDIT-

                I don't use a Launcher, but I do use a nice Batch File instead of a Emulator, it will only ever work in Windows tho:

                Roms{System}{Game Name Here}.cmd (eg Roms\MicrosoftWindows\Angry Birds.cmd)

                @echo off
                
                REM Set Name of Game
                Set GamePath=%~n0
                
                REM Change To Correct Drive and Path
                %~d0
                cd "%~dp0"
                cd %GamePath%
                
                REM Run the JoyToKey And With Correct Config
                start "" "..\..\..\JoyToKey\JoyToKey.exe" -r "%GamePath%.cfg"
                
                REM Find first .EXE to RUN Game
                FOR /f "delims=?" %%a IN ('dir /b *.exe') DO (
                "%%a"
                REM Kill JoyToKey
                "..\..\..\JoyToKey\pskill.exe" JoyToKey.exe
                exit
                )
                

                What it does is uses the name Angry Birds and opens a folder with the same name, running the first found .exe in that folder. You can manually edit it to be the actual file if you notice it's not the first .exe you needed to run.

                Here is my System for reference:

                <system>
                    <name>MicrosoftWindows</name>
                    <fullname>Microsoft Windows</fullname>
                    <path>.\roms\MicrosoftWindows</path>
                    <extension>.cmd .CMD</extension>
                    <command>"%ROM_RAW%"</command>
                    <platform>windows</platform>
                    <theme>windows</theme>
                </system>
                

                I have a copy of \JoyToKey\JoyToKey.exe in the folder alongside EmulationStation.exe, and in that folder I have a JoyToKey config file with the same name "Angry Birds.cfg", if I know a new game I add uses the same Keys/Mouse config I can copy it and rename the file to the new game and it'll use the same config, or just use JoyToKey to edit the new one manually.

                *Don't forget to add pskill.exe to the joytokey path too

                LOL - I can see why someone would want a launcher for such things, the above makes sense to me, but not sure who else could follow it, I am sure I could make the same scripts in Linux work, but they don't have a easy JoyToKey built in.

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

                  @LiveFreeDead Useless complexity ;-)

                  • JoyToKey is not freeware...
                  • U could have use JoyToKey "associate configuration with application" feature to avoid all this batch complexity.
                  • What U did is precisely the reason why I have my written the Joy to key feature in my emulationportable exe -> Simplfy this...
                  • This does not send ES configuration in games like retroarch as @drcnyc supposed : it simply converts gamepad to keyboard for a game that does not supports gamepad.
                  • VB.Net.... No comment ;-)
                  • Don't try to work with VS2010, only >= 2015.
                  1 Reply Last reply Reply Quote 1
                  • D
                    duiz
                    last edited by

                    @f-caruso Sorry if this has been answered before but the thread is pretty long. When I scrape game info your ES doesn't actually save the image and game description, nor can I edit it in the metadata like in Jrassa's version. Is this something thats work in progress or do we have to edit this by hand in the xml?

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

                      @duiz About the gamelist.xml : Do you have a gamelist.xml.tmp in the same folder ?
                      I added a security because sometimes my gamelists where 0kb. I first write an .tmp file, then I rename it when ok. I looks like renaming files fails sometimes. Sadly, I can't reproduce on my systems. If the .tmp is present, simply delete the old xml and rename the .tmp file.

                      About the metadatas : On a Pi, with only a gamepad, scraping function is necessary ( with an onscreen keyboard ). People don't have mouses nor keyboards.
                      I assumed that on a Windows platform, this is totally different : there are good external scraping & gamelist editor tools that can do the work really really better than ES ( you can't even choose what image you prefer- screenshot, mix, box2d, box3d ?? Download video, set thumbnails for gridview ), and editing metadata in ES is not convenient at all. I considered that only the rating & the possibility to change emulator & core where truly important to be handled with the gamepad. So I filtered the list of metadatas to display only the relevants.
                      If most of the users want those metadatas back, I'll restore them...
                      Please vote ;-) lol

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

                        @f-caruso Is it possible to make the custom-collections portable on your build?
                        I have the Problem on the normal ES for Windows the custom collections are must have this:
                        "D:/Emulatoren/Portable_Game_Station/.emulationstation/roms/psx/Tail Concerto (USA).PBP"

                        If i change it for portable use like this:
                        "%HOME%/.emulationstation/roms/psx/Tail Concerto (USA).PBP"
                        its not working.

                        f.carusoF LiveFreeDeadL 3 Replies Last reply Reply Quote 0
                        • f.carusoF
                          f.caruso @PittStone
                          last edited by

                          @PittStone said in Updated EmulationStation for Windows:

                          I have the Problem on the normal ES for Windows the custom collections are must have this:

                          Intestesting, didn't see this one. I'll look at it ( when I have the time )

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

                            @PittStone Instead of using
                            %HOME%/
                            use
                            ./

                            eg
                            "./.emulationstation/roms/psx/Tail Concerto (USA).PBP"

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

                              @f-caruso Have Problem with newest build Again. It crashes after i select "Parse Gamelist Only" in the Options. Something in my gamelists let it crashing. I use the standart theme and tested two others. Same.

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

                                @PittStone Can you find a way to send your gamelist.xml files ? ( via mega.nz or another site ? )

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

                                  @PittStone portable custom collections are available in the continous build. You need to edit you list - add or remove item - to save it ( it doesn't do anything if nothing changes in the collection ).
                                  @LiveFreeDead not using "%HOME%"... not using "./" neither -> The standard for "home" in ES is "~/" !!!!!!!! ( look at your es_systems, you use it for ps1 & ps2 )

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

                                    @f-caruso Some gamelists crashing ES, some gamelists working. I have a few in the rar file.

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

                                      @PittStone Well U can delete your file now ;-) I crashed with your files. The crash I have is not directly related to the gamelist but is a "consequence" (cuz of the menu theming system)... I commited on Github, try the continuous build (should be available in 10mn - 19:35 Paris hour ) & tell me if it's better...

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

                                        @f-caruso O.k. Now its loading all gamelists. Thanks. But there is still a Problem with the custom-collections. I tested with this in the .cfg (without quotes):
                                        "~/.emulationstation/roms/nes/Battletoads (U) [!].zip"
                                        and the full Version:
                                        D:/Emulatoren/es/.emulationstation/roms/nes/Battletoads (U) [!].zip"
                                        The menu shows 0 Games.

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

                                          @PittStone Are you sure ".zip" extension is present in you es_system.cfg for nes, gb, gbc, mastersystem... ".stx" for atarist, etc... ?
                                          I'm sure you have a file extension problem : Your gamelists describe files with extensions that are not present is es_sytems.cfg so they are removed from the internal collection - the precise reason for the crash I solved...
                                          Have a check on it.

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

                                            @f-caruso Yes i have the ".zip" extension in the es_system.cfg for nes.

                                            f.carusoF 1 Reply 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.