Updated EmulationStation for Windows
-
@jdrassa Thx for your instructions, I'll give it a try.
I'm not overly concerned about maintaining compatibility
This is a real debate ! Users don't care about implementation, but care about functionnality & compatibility. I'm sure some users would like to use recalbox's themes !!! I did !! Some of them are truly awesome but don't work with Retropie ES, so it was totally impossible for a recalbox user to find a Windows version loading his recalbox themes ( except my version now ). This is one of the reasons why I started working on ES.
Developpers sometimes don't care about compatibility but implementation -> This often leads to lot of frustration for the users.
Both are important... Well architectured code is more maintable, and more efficient.
But user's satisfaction is always more important.Concerning tomaz82's refactorings : it's a very good idea to isolate GL code. It's a good first step.
Still : it remains as a set of apis in a namespace. As you say you are looking for the best implementation you will agree with me : Doing things this way is not ideal for making future DX/Vulkan/GL3 renderers, or it will be a set of #define or switches at build time, and won't be configurable by users for runtime.
The best implementation would have been to create an "interface", implement it in each renderer, and inject it... Next step I imagine... -
@f-caruso said in Updated EmulationStation for Windows:
@jdrassa Thx for your instructions, I'll give it a try.
I'm not overly concerned about maintaining compatibility
This is a real debate ! Users don't care about implementation, but care about functionnality & compatibility. I'm sure some users would like to use recalbox's themes !!! I did !! Some of them are truly awesome but don't work with Retropie ES, so it was totally impossible for a recalbox user to find a Windows version loading his recalbox themes ( except my version now ). This is one of the reasons why I started working on ES.
Developpers sometimes don't care about compatibility but implementation -> This often leads to lot of frustration for the users.
Both are important... Well architectured code is more maintable, and more efficient.
But user's satisfaction is always more important.I didn't intend for this to come off so callous. Let me provide a bit of background. In the few years now that I have been involved with RetroPie, there have many theme improvements (some minor, some major) that have originated in RetroPie. In some cases these have been added to recalbox as is (i.e. carousel themeing, z-index), some have seen similar but incompatible features added (i.e. variable support, video) and some have not been adopted at all (i.e. default themes, datetime enhancements).
From my perspective, if recalbox is not maintaining compatibility with RetroPie themes, I don't feel a strong need to maintain compatability with recalbox themes. Especially if that comes at the expense of potentially providing a better solution.
I would also argue that while a more maintainable, efficient code base may potentially come at a cost (temporary lower user satification), in the long run it will result in overall higher user satisfaction as it will better enable the development of new features.
-
@jdrassa Sorry if I like to debate and seek contradiction ;-)
The thing is I do agree with you. Your last sentence is just so much true !I have a pending PR on Recalbox Gitlab because I tried make their version buildable on Windows & begin remove boost for them, so I know their version very well too.
Finally, I prefered working on Retropie's ES because the code is cleaner, more maintainable & efficient (certainly thanks to you).Retropie code is so much cleaner, there was a real big effort removing boost which is a very good thing, some refactorings, and a permanent effort to make it buildable on every platform including Windows.
Recalbox has an old basecode never refactored, still using boost, no grid ( or the 1st unusable version which is hidden ), it was late on videos until recently (they use ffmpeg i don't know why they choosed a different lib).
But Retropie is a bit late on functionnalities like themings, localisation, music, OSK...What I was looking for before working on my fork is a "unified" version, in french, compatible with all themes & having every functionnalities of both versions ( + specifics for Windows like not showing desktop or true portable version ). And I didn't find it...
You have the best "basecode" in the "market" you should also have the highest level of functionnality & compatibility ( even If I totally understand your point of view about recalbox )
But, If you'd be interested in having theme loading compatibility, I'd be ready to do the work for you...
Plus : In my Fork I added a "customView" mecanism. Did you look at it ? Are you interested in it ?And, still, sorry to be annoying with my debates & contradictions..
-
@jdrassa I've just added 3 news PRs to Retropie :
- Avoid too many reloadings of SVGs by fixing SVG size calculations
- Fix Reloadables : Don't reload useless textures that were not loaded at unload time.
- Add --home command line to set custom home path + make windows version natively portable by detecting if .emulationstation is a subfolder of the exe.
-
@jdrassa are any of the grid updates your adding available in es-dev for the pi?
-
@jdrassa Hi, I've just added a new PR for Retropie :
- Added a progressbar during loading + threaded loading for systems.
Loading optimization is not complete because it would also need a refactoring of metadata & filedata. I'll do a PR for it in a second time.
-
I've been a while without using ES and now, it doesn't work for me. I have the latest update and launch some game I have no problem leaving retroarch closes ES.
Is there something in the configuration or something that changed and I don't know
-
@jero Strange, never had that kind of problems. Is "hide when launch" ON ? Is it the same with the option OFF ? Do you have musics (It's the only big thing that I added this summer ) ? Do you use my Pad2Key feature ? Maybe Retroarch has been configured to close itselft when you press hotkey+start and my pad2key too (for every processes), so the close message happens two times and emulationstation receives it.
PS : I've just commited fixes in AudioManager & music management, I may be related. -
@f-caruso I have tried to launch game with the hidden mode in OFF and ON, in ON it goes well and returns to is, but when selecting another game it closes. In OFF, launch the game and close the game close everything. I tried to launch game and then close retroarch from retroarch and it doesn't come back to it, it closes everything. About the goodbye I don't know what it can influence I don't know how to play background music.
-
@jero I don't know what happens and I don't have enough informations to help. What theme do you have, what's your system config, what's your emulationstation config, is there something in logs... ? Is there a crash in windows application logs. What's in it ?
I ran a lot of tests and I didn't have a single problem. I know I had a problem days ago in the audiomanager but it is fixed now.
Also : did you update using the "full pack" containing all Dlls ? I had to update some components to add music support.
I'm truly sorry, but I can't help without reproducing and without informations. -
@jdrassa If i have a transparent Window for the videosnaps behind my theme ( z- ) The Background is now grey and not black like on latest Versions. Thats mean, on a 16:9 Window has a 4:3 Video grey borders left and right. With Black that was better before.
-
@f-caruso Finally I have time to try, I changed the theme and it happens the same. With your theme if it works well. But with others, not all that I use is a modification of the Ruckge snes theme. Also with the original ruckage theme it gives me problems and closes when I leave a game. If you need more info I tell you.
-
@jero Thanks a lot for helping. I finally got it !!!!
This was related to my recent music/sound changes. It happenned when the theme has navigation sounds ( and when sound is enabled in options). As my theme (or some other) don't have navigation sounds....
Anyway, this is fixed in the latest release.
Thanks again. -
@f.caruso First at all, thanks for your fork of emulationstation and proper theme, it has a lot of potencial but I have a request that I didn't found. It's possible to apply a vertical game list using marquee's images instead of simple text list? Like other launchers support like hyperS, launchB, retroFe, etc. (I prefer Emulationstation)
If it is already allowed, How would be the code in xml? Thanks in advance!! -
Hello,
I have a Boxart size problem when I return to emulationstation, but when I change games in the list and come back on the game boxart come back to the right size.My config :
Retropie : 4.5.1
Emulationstation : 2.8.4 rp ( tested with binary or source update, same problem )
Theme: Carbon
Resolution of the boxart is 325x600 in png.Before :
After, when I quit an emulator and I return to emulationstation :
My gamelist.xml :
<game> <path>./bublbobl.zip</path> <name>BUBBLE BOBBLE [JAPON]</name> <desc>Un jeu de plate-forme (à ecran fixe) tout mimi avec des dino cracheur de bubulle pour emprisonner les ennemis et les transformer en bonus. Faites des enchainements et évitez les retour de .. bulles.</desc> <image>~/.emulationstation/downloaded_images/mame-libretro/bublbobl-image.png</image> <video>~/.emulationstation/downloaded_images/mame-libretro/bublbobl-video.mp4</video> <marquee>~/.emulationstation/downloaded_images/mame-libretro/bublbobl-marquee.png</marquee> <rating>0.9</rating> <releasedate>19860101T000000</releasedate> <developer>Taito</developer> <publisher>Taito</publisher> <genre>PLATEFORME</genre> <players>1-2</players> <playcount>3</playcount> <lastplayed>20190909T145500</lastplayed> </game>
theme carbon.xml :
<video name="md_video"> <pos>0.765 0.390</pos> <maxSize>0.366 0.438</maxSize> <origin>0.5 0.5</origin> <delay>1.6</delay> <default></default> <showSnapshotNoVideo>true</showSnapshotNoVideo> <showSnapshotDelay>true</showSnapshotDelay> </video>
Do you have a solution to this problem?
-
@WarC0zes said in Updated EmulationStation for Windows:
Retropie : 4.5.1
Emulationstation : 2.8.4 rp ( tested with binary or source update, same problem )
Theme: CarbonThis topic is for the Windows version/users - you should have opened a new topic instead. Try using the
emulationstation-dev
package and check if the same behavior happens there. -
Sorry for wrong post, but same problem with emulationstation-dev.
-
Hi, Everyone,
I'm trying to configure PlayStation1, Turbografx CD and Sega Saturn into EmulationStation for windows using Mednafen as emulator, but it doesn't work. I think that is because when I try to open any rom it takes as base directory this:
Base directory: X:\FE-EMULATIONSTATION\.mednafen
But I have the emulator in x:\emulators\mednafen\mednafen.exe
And is also this directory where the .cfg file is stored.On the other hand, systems like "WonderSwan, WonderSwan Color, Neogeopocket and Neogeo pocket color" work with no problem into ES using Mednafen.
Anyone knows a way to solve this issue?
Thank you in advance ^_^
-
@f-caruso Both this fork and the one it's forked from are causing pixel art in themes to be extremely blurry. They appear fine on the official (and outdated) build though. Sadly it makes it unusable. (Themes are "Pixel" and "SNES Mini".)
Is this the case for anyone else? I'm on Windows 7 x64 if that matters. Some other issues I noticed with your build are that DualShock 4 controllers aren't recognised anymore. Not a big deal, but weird. Also that Page Up and Page Down controls were removed. Those were really useful!
I'd love to use this over the 4-and-a-half-year-old build, but those blurry pixels! Argh!!
-
Blur is Fixed ( in my fork only )
Page Up and Page Down controls : can't reproduce they work on classic gamelists.
DualShock 4 : ??? Don't know, I don't know how it could be related to EmulationStation. Does it work in the others versions ?
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.