Recommended Cores

[QUOTE=Brunnis;45902]Now that I think of it, I may have experienced the same issue… It has happened maybe three times in all of my RetroArch usage. The first two times happened during testing with NES or SNES cores that I had modified myself. The game would not start at all, just go into a black screen. Pressing F1 would bring up the menu and I could close the game and retry. When I retried, the game would launch correctly.

Yesterday afternoon it actually happened again! I was demoing RetroArch to a friend and launching a game just turned into a black screen. Unfortunately, I can’t remember if it was Nestopia, snes9x2010, bsnes-accuracy or bsnes-mercury-balanced…

So, could be that there’s an actual issue here after all.[/QUOTE]

This is exactly the issue.

It’s not related to roms, hacked roms or homebrew. Tested my roms with the original SNES9x which states “Checksum ok”. So the rom itself is fine. Had also the same issue with bsnes meanwhile, but I don’t know how to reproduce it.

I’m a bit late to the party, but here’s my evaluation of all of the cores that I can currently download for Windows.

Keep in mind that I have a i5-4690k clocked at 4.0GHz, so my choices tend to gravitate toward the more hardware-intensive cores, given the choice.

2048: A nice little experiment to see what we can do with libretro that doesn’t involve emulation, but honestly, I think that 2048 is best played on phones to kill time, not when you’ve sat down in front of a computer.

3D Engine: I don’t have any idea what this does. I think it might do something with 3D rendering, but I’ve never gotten it to work. Ever.

4DO: Works well enough. If you have any 3DO games you want to emulate, it works about as well as standalone 4DO.

Amiga (P-UAE): This core is absolute garbage compared to WinUAE or FS-UAE. There is no real reason to use it on a desktop. Heck, since UAE4All2 exists, there’s no reason to use on Android either.

Arcade (FB Alpha): There are several versions of this core. I reccomend getting the regular version of FB Alpha, as opposed to FB Alpha 2012. However, you may want to get FB Alpha 2012 Neo Geo if you’re only interested in playing Neo-Geo games.

Arcade (MAME): I’ve generally have had a lot of problems with Retroarch’s MAME, so I recommend a standalone version.

Atari 2600 (Stella): Works well, although I don’t like the lack of rewinding or save-states. It even works with Starpath Supercharger games.

Atari 7800 (ProSystem): Also works well, although there aren’t all that many good 7800 games (compared to other 3rd gen consoles)

Atari Jaguar (Virtual Jaguar): Once you turn on “Fast Blitter” in the options, it runs all games I’ve tested at full speed. However, I can’t find anything in the controls menu regarding the numpad buttons 7-9, so you’d be better of with standalone Virtual Jaguar if you want to play a game that needs them.

Atari Lynx (Handy/ Mednafen Handy): I’ll be honest. I’ve never really found that much of a difference between the two, but that’s mainly because of a lack of testing. I personally choose to download Mednafen Handy, just because I like mednafen.

Atari ST… (Hatari): A lot better than P-UAE, but still not as good as alone Hatari.

Cave Story (NXEngine). I haven’t had any problems so far. I own Cave Story+ on Steam, so I don’t really have a use for this core, though.

CHIP-8 (Emux): I haven’t bothered to ever try another CHIP-8 emulator, but honestly, the quality of the CHIP-8 games I’ve found suggests that you shouldn’t bother with either.

Dinothawr: I guess this is an OK puzzle game. If you want to play it, get the core. If not, don’t get it.

Doom (PrBoom): First Person shooters are meant to be played with a mouse and keyboard. Also, you’ll need .mp3 files of the game’s soundtrack with the correct names in order to get the music working, so I suggest ZDoom or GZDoom instead.

DOSBox: Standalone dosbox generally works better in my experience. It’s come a long way, but I still don’t see any reason to use it instead of normal DOSBox for Windows or DOSBox Turbo for Android.

Dreamcast (Reicast): Reicast seems to work rather well for me. If they can fix the fact that it prompts you to enter the date and time each time you start a game, I’d definitely choose it over the other Dreamcast emulators (although VMU and Dreamast-based arcade system emulation would be nice bonuses).

FFmpeg: Don’t bother. If you want to watch a video on a desktop, VLC is much better.

Game and Watch: I don’t know of any alternative players for these Game and Watch simulations, so you might be stuck with this player. Fortunately, the games can all be downloaded within the Retroarch GUI, and the simulation seems to work rather well, even if some of the games aren’t too great. Now if only they could get Coleco’s home arcade version of Galaxian.

Game Boy/Game Boy Color: Emux doesn’t support the .gbc file extension, so I treat that as not supporting GBC games at all. TGB Dual’s main advantage is that it (supposedly) can emulate two GBC units at once for multiplayer GB/GBC games (i.e. Pokemon). If that doesn’t interest you, Gambatte has a better selection in the options menu, so I’d go with that.

Game Boy Advance: mGBA is supposedly the most accurate emulator of the group, and it also has options to emulate a solar sensor for Boktai, as well as the option to use a GBA bios file. gpSP and Meteor were designed for lower-end machines IIRC, so don’t use them unless you can’t get a game to run at full speed. VBA-M is in second place after mGBA, and VBA Next is a version of VBA-M that is designed to run on lesser hardware. However, keep in mind that VBA-M has been in development for longer than mGBA, and mGBA might have a few bugs here and there.

Game Music Emu: Supposedly this can play native music files from older console games, but I haven’t been able to get it to work.

Imageviewer: It views images. Maybe if you want to look at your screenshots without leaving Retroarch, you might like it. If not, use a regular photo viewer (unless you want to use the built in Windows 10 photo viewer. That’s nasty. Get XnView instead).

Lutro: I’m not sure if this supports regular LOVE games or not. If it does, that would be nice. If not, you’re selection of games is too limited.

Minecraft (Craft): A neat little tech demo, but it’s not much more than that.

MSX: I’ve personally had more sucess with blueMSX than I’ve had with fMSX. BlueMSX also (supposedly) works with the ColecoVision, but that didn’t work when I tried it a couple of months ago, and I haven’t tried since.

MULTI (MESS 2014 and UME 2014): MESS and MAME used to be separate projects, but they were combined in version 0.162. I’m not sure of the lastest version of Retroarch’s MAME comes with the MESS emulators, but even if it didn’t, I’d still recommend that you use the latest version of MAME.

Neo Geo Pocket/ Pocket Color: Mednafen NeoPop works just as well as standalone Mednafen. Standalone Mednafen doesn’t have a GUI. Retroarch does. The better option should be clear.

NES: As far as I can tell, Nestopia UE is the best. It has support for Famicom Disk System games, as well as the best option menu. It also seems to score the highest in emulation accuracy tests that I’ve seen. Failing that, FCEUmm is a close second.

Nintendo 64: I personally prefer Mupen64Plus to ParaLLEl. This is mainly due to the fact that I like my N64 games running at a higher internal resolution. However, if you want to play Goldeneye or Perfect Dark, there’s a Project 64 package somewhere on the internet that enables mouse controls. And Project 64 also seems to have better 64DD support than both Mupen64Plus and ParaLLEl.

Nintendo DS: IN my opinion, you’re better off using stand-alone DeSmuME or DeSmuME X432R. I also like to play the fan-translation of Fire Emblem 12, and that comes with a DeSmuME save file with extra content that doesn’t work with Retroarch’s DeSmuME.

Odyssey 2: This is the type of system that I would have no reason to download a standalone emulator to play it, so you might as well get O2EM on retroarch.

PC-Engine/ TurboGrafx-16/ PCE-CD/Supergrafx: Both the PCE core and SGX core can play PCE-CD games (something that wasn’t true just a few months ago, IIRC), so you might as well get the SGX core, in case you ever want to play any of the SIX Supergrafx exclusive titles. Maybe there’s a difference in emulation quailty for regular PCE games, but I haven’t seen an such examples yet.

PC-FX: I can’t get any PC-FX game to work with the current version of Retroarch. I knew that some of them worked in the past, but the fact that they don’t work now (for me, your results may vary) means that you should probably use Mednafen to emulate them. Fortunately, there were so few good games for this system (and even fewer for non-Japanese speakers) that you should be able to create a batch file each game you want to play for the system within a matter of minutes.

Playstation: Mednafen PSX is MUCH better than the standalone version, mainly due to PBP support , the addition of subpixel accuracy and increased internal resolution. I’d say it’s better than PCSX-R and ePSXe. I’d recommend the regular version Retroarch’s Mednafen PSX over Mednafen PSX HW, as the HW version is still a bit buggy. Once these bugs get cleaned up, I’d definitely recommend the HW version.

PSP: Stand Alone PPSSPP is faster and has better options. I also vaguely remember having problems with .cso versions of PSP games.

Quake 1: Retroarch’s TyrQuake doesn’t have KB+M support nor music support. I recommend DarkPlaces instead.

ScummVM: I keep Retroarch installed on my C: drive, and all of my roms, ScummVM games included on my E: drive. I can’t get Retroarch’s ScummVM to work with games on a different Drive.

Sega 8/16 bit systems. Unfortunately, you’ll need both Genesis Plus GX AND Picodrive. Genesis Plus GX doesn’t support 32X games, and Picodrive doesn’t support Game Gear Games.

Sega Saturn: Retroarch’s Saturn will often simply crash upon loading a game, so stand-alone Yabause is preferred. However, Retroarch’s addition of Mednafen Saturn has made things less clear. Mednafen Saturn is still pretty early in development, but it does seem to work rather well. I’d get Mednafen Saturn, and then try Yabause if a game doesn’t work (although many disc images found in the internet won’t work with any Saturn emulator).

SNES: Oh boy. bsnes is believed to be the most accurate SNES emulator. However there are many different versions of it. Since I have a beefy PC, I use bsnes-Mercury Accuracy. If you don’t’ want to use bsnes for whatever reason, I’d reccomend Snes9x instead.

Vectrex: Vecx works well. I haven’t tested a stand alone Vectrex emulator, so I could be wrong about that, but it looks like it runs well enough.

Virtual Boy: Retroarch’s Mednafen VB is miles and miles ahead of all the other Virtual boy emulators I’ve used. It’s even possible to get it to display in a 3D output with the right shader and a Google Cardboard headset and an Android. Plus, you can change the display color to a color other than a shade of red.

WonderSwan/ Color: Retroarch’s Mednafen Cygne is the only wonderswan emulator I’ve ever used, but it runs games at full speed.

ZX Spectrum: I just tried to play a z80 dump of Chuckie Egg, and it crashed immediately after loading the title screen. I’d stick with the standalone version of Fuse

ZX81: I’ve never used this core nor a standalone ZX81 emulator.

The 3D Viewer core loads obj files and lets you rotate them, etc. It’s more of a tech demo than anything many people would want to actually mess with.

The main draw for the image viewer and ffmpeg cores is RetroArch’s shader support. Our upscalers are more varied and higher quality/complexity than other video players’ (even MPV) and you can use screenshots to apply our shader effects to images.

ParaLLEl is just mupen64plus-libretro with a special RDP plugin. We just broke it off as its own thing because we plan to do some more extensive work to it (dynarec RSP is forthcoming, along with some other significant changes that warrant a name-change from mainline mupen64plus).

1 Like

@ajshell1

This is exactly my impression. You mostly recommend the stand-alone emulators. Concerning PS1, I am meanwhile recommending PCSX-PGXP. Best visuals and great compatibility. http://ngemu.com/threads/pcsxr-pgxp.186369/ Concerning Dreamcast, I go for Demul.

The only thing which is impressive in Retroarch is the shader functions. But in terms of controls (mapping a retro button to at least two different real controller buttons is meanwhile an important factor) compatibility, and emulator specific features the standalone versions are much better. I would recommend to focus on main cores, instead of porting so many cores. One “mainline” core for each system would be better instead of having uncountable cores for one system. Beetle is a great starting point. The Windows UI is also not very appealing. To many options, no clear overview, too complex settings menu etc… Dont get me wrong, retroarch has a lot of potential but there is still a long way to go.

To be honest I hoped to finally have a flexible emulator which is capable of emulating Retro Computers (Amiga, Atari, DOS, SCUMM, MESS), Arcade Systems (MAME) and Consoles (NES, Master System, SNES, Genesis, GB, GBC, GBA). But unfortunately there are still too many issues.

I don’t really agree. There is much more impressive about RA than just shaders. Retroarch is absolutely the best platform for consoles pre-N64. Mednafen PSX is much better than PCSX in terms of compatibility which to me is the most important factor. Anyway, once the PGXP author finishes, he wants to port to Mednafen - then it will be the ultimate PS1 emulator.

Personally I think Nintendo DS is better in Retroarch because Vsync is broken or non-existent in Desmume.

The main draw for me is that once you get your setup down (video, audio, shaders, etc) it runs across all platforms in RA. No more messing with settings in different emulators, wondering why vsync doesn’t work. Also controls for me are no problem - in fact with a 360 controller I haven’t needed to remap anything. It just works with no hassles.

The MAME and computer stuff will improve over time I’m sure. It’s a massive undertaking to pull all this together under one platform…

[QUOTE=papermanzero;46468]@ajshell1

This is exactly my impression. You mostly recommend the stand-alone emulators. Concerning PS1, I am meanwhile recommending PCSX-PGXP. Best visuals and great compatibility. http://ngemu.com/threads/pcsxr-pgxp.186369/ Concerning Dreamcast, I go for Demul.

The only thing which is impressive in Retroarch is the shader functions. But in terms of controls (mapping a retro button to at least two different real controller buttons is meanwhile an important factor) compatibility, and emulator specific features the standalone versions are much better. I would recommend to focus on main cores, instead of porting so many cores. One “mainline” core for each system would be better instead of having uncountable cores for one system. Beetle is a great starting point. The Windows UI is also not very appealing. To many options, no clear overview, too complex settings menu etc… Dont get me wrong, retroarch has a lot of potential but there is still a long way to go.

To be honest I hoped to finally have a flexible emulator which is capable of emulating Retro Computers (Amiga, Atari, DOS, SCUMM, MESS), Arcade Systems (MAME) and Consoles (NES, Master System, SNES, Genesis, GB, GBC, GBA). But unfortunately there are still too many issues.[/QUOTE]

@papermanzero Hey, you know that thing you work really hard on and give away to everyone for free and ask nothing in return? I think it sucks and you should try harder.

EDIT: I guess I should clarify: you’re obviously welcome to use whatever programs you like, and you’re entitled to your opinions about RetroArch and libretro, but it’s pretty gauche to come to our forum and tell us about it non-constructively.

1 Like

Other than controller mapping bindings being totally confusing to me and how upgrading to newer versions broke my setup twice so far and forced me to start fresh, i would say that RetroArch is the best thing that happened to the emulation scene this decade.

Excluding the N64 and Dreamcast and a few systems that aren’t supported yet (PS2, Gamecube, etc) there is no reason for me to use standalone emulators anymore. And it’s especially good if you use it as an emulator through other frontends like Hyperspin or LaunchBox.

[QUOTE=hunterk;46488]@papermanzero Hey, you know that thing you work really hard on and give away to everyone for free and ask nothing in return? I think it sucks and you should try harder.

EDIT: I guess I should clarify: you’re obviously welcome to use whatever programs you like, and you’re entitled to your opinions about RetroArch and libretro, but it’s pretty gauche to come to our forum and tell us about it non-constructively.[/QUOTE]

My intention was not to make you angry. But to say it directly: Retroarch is not mature enough. It is not a bad thing, but in comparison to standalone emulators you are far behind of certain feature sets. However it does not mean, that you cannot speed up and overtake the original ones. The critics were constructive, but here again a summary:

  • The compatibility and stability of retroarch cores is not that high than the standalone emulators. What we already found out in this thread is, that libretro has blackscreens and is freezing sometimes.
  • The UI (Retroarch) is not very simple. Double entries in the option, a lot of configurations, countless lists and screens
  • The controller options are too limited. On the one hand controller buttons can only be mapped 1:1 not 1:n. Additionally the user is not able to map emulator function to the controller (like quick save, quick load, fast forward, rewind, core options ;but maybe I oversaw that, which leads to the UI is not very simple critic).
  • Countless cores for one and the same emulator. SNES is the extreme example. Focusing on one or two cores for a system, would be better. From user side and from developer side due to limited resources. You could also join forces with the original emulator developers: For example the mupen64 team would like to integrate all plugins into the emulator (get rid of the plugin system), starting with audio and controller plugins. You also started to develop a RSP and Video plugin which will become a stand-alone emulator, so why not working together to create one emulator. It would be beneficial for both teams.

As said, it is not bad thing and my intention is not to blame retroarchs work. I would really like to see a all-in-one emulator which can be flexible configured and used. However there is still a long way to go. I would start with low-hanging fruits to get the emulator better and more appealing to the users. New cores and changing emulators are more long-term goals.

Btw: Just one remark concerning “it is for free”: The “free for all” is always a bad argumentation in the open source community. Users shall always be allowed to criticise, otherwise the project won’t get better. The “we give it away for free” is not an argument to stop with critics. You can do a patreon project, if you would like to earn money.

The point of the ‘give it away for free’ thing isn’t intended to just silence critics, it’s to illustrate that we do it as a hobby. Users are not our customers, they’re our peers. If someone doesn’t like something, they can fix/change it and submit a patch/PR. That’s how the entire libretro team works, and it’s how all of open source is supposed to work, though the lines between hobby/business have become blurred by projects with delusions of being a business and end-users with delusions of being owed something by anyone who writes software.

About the many seemingly redundant cores: one of the core goals of RetroArch is portability and being on a bunch of different platforms. Since the processing power of those platforms can vary wildly, one size often doesn’t fit all. Many of the cores are ported by various different people, too, so what started as just the 3 bsnes profiles + a fork of snes9x turned into 10(?) bsnes variants and a half dozen snes9x variants suited to various different tasks and ported by different people. We keep them all available for people to choose from but yes, that’s a common complaint that there are too many choices. I’m personally against choosing winners/losers and recommending one core over another in most cases, though I understand this is coming at the expense of complexity for new/unfamiliar users.

The UI is another common complaint, and we get a lot of suggestions that amount to “too many options; you should hide/remove all of the ones I don’t personally use/understand because that means no one uses/understands them.” RetroArch is powerful and flexible and that necessitates a certain amount of complexity. Personally, I think it’s about as straightforward and usable as possible, considering the many different platforms and applications it covers at once. I personally use it exclusively (i.e., no other emus/launchers in the mix) in an RPi3-powered arcade cabinet with a 15 khz CRT with no kbd/mouse attached, on an old iMac with a 31 khz CRT monitor, a handful of hacked Wiis, a linux HTPC, an Nvidia Shield ATV and a Windows PC w/ kbd/mouse for shader development. So, rather than having to learn a different, arguably more intuitive/specialized program for each of those applications, I learned to use RetroArch once and it covered all of them. I can even mix and match configs and resources across all of those platforms (with some minor changes) and expect most of the options to exist and behave similarly on all of them.

As for stability vs standalones, we generally try to act on those reports when possible. If you find differences via standalones, make a report at the appropriate github repo and we’ll take a look.

For working with standalones’ authors more often, we would love to but they’re usually not interested in upstreaming for a variety of reasons, which vary from reasonable to petty/unreasonable (IMO). The mupen64plus maintainers weren’t interested in many of the changes we needed to make to the codebase, so we hard-forked instead. They’re welcome to backport any of our core changes, of course, whether or not they want the libretro parts, and if they ever want to upstream our libretroization and directly collaborate, I think I can speak for the rest of the team and say we’re all for it (with a few caveats). However, at this point the programs function very differently and I don’t think either party is willing/able to make the changes necessary to reconcile these differences.

2 Likes