RetroArch |OT| Emulation Heaven

alr1ght

Member
Oct 25, 2017
5,219
I'm finally trying out some PS1 on Retroarch. Did the Crash games run in some weird non 4:3 aspect ratio? Each game I try in the series runs in a window box (viewed on a 16:9 monitor). I know at least SOTN runs in a weird aspect ratio due to some of the pixel art they reused (tested it on my CRT and there's black bars there, as in RA). I know the PS1 used a bunch of strange resolutions, but I figured it would just output everything at 4:3 (at least the 3D polygonal games).

Using the Beetle PSX HW core on Vulkan renderer.

Pocket Fighter


Crash 3


SOTN
 

Awakened

Member
Oct 27, 2017
175
That's just how they are on real hardware. Rendering less pixels in the Crash games probably helped with performance. I use the initial and last scanline core options to crop the unused (black) scanlines per game. It was a pain since many PS1 games didn't use the full 240p resolution and there's no standard amount that they used. I just had to take screenshots at 1x res windowed mode and count how many lines the top and bottom black bars are. And the beetle cores don't automatically adjust the aspect ratio to account for the scanlines you chop off, so you have to adjust that manually in your overrides too.
 

Jazzem

Member
Feb 2, 2018
1,596
Does anyone else have trouble getting Retroarch to scan + identify CD titles through its database? I can get PC Engine CD + Sega CD games to load manually but I can't get them to integrate into the XMB interface for the life of me. Have had issues with not being able to do the same with PS1 eboots as well
 

c0de

Member
Oct 28, 2017
3,708
Does anyone else have trouble getting Retroarch to scan + identify CD titles through its database? I can get PC Engine CD + Sega CD games to load manually but I can't get them to integrate into the XMB interface for the life of me. Have had issues with not being able to do the same with PS1 eboots as well
I have the same problem with some Saturn games, sadly. I think it's a problem with how they match checksums with their internal database.
 

Linde

Member
Sep 2, 2018
2,999
Anyone know if the switch pro controller is compatible with retroarch on Windows?
specifically for SNES games
 

Awakened

Member
Oct 27, 2017
175
Anyone know if the switch pro controller is compatible with retroarch on Windows?
specifically for SNES games
Normally it doesn't work at all. It doesn't even respond in the Windows gampad thing in the control panel. But, I got it to work by enabling support for it in Steam and launching RetroArch through a Steam shortcut. It goes crazy in the menu if you try to launch RA outside of Steam after enabling support for it though.

The DPad is pretty crappy. I tested Kirby's Dreamland and Kirby would randomly fly because of the oversensitive diagonals. I should try the tape mod someday I guess.
 

Linde

Member
Sep 2, 2018
2,999
Normally it doesn't work at all. It doesn't even respond in the Windows gampad thing in the control panel. But, I got it to work by enabling support for it in Steam and launching RetroArch through a Steam shortcut. It goes crazy in the menu if you try to launch RA outside of Steam after enabling support for it though.

The DPad is pretty crappy. I tested Kirby's Dreamland and Kirby would randomly fly because of the oversensitive diagonals. I should try the tape mod someday I guess.
Well shit. I want one because I can also use it for my switch, but I really a PC controller
 

Joey Ravn

Member
Oct 27, 2017
2,912
For those of you who are using RetroArch on Switch, a couple questions:

1. What palette are you using for NES? I love the default one (can't remember the name, though). It's so vibrant! But I fear it's not true to the original colors and I'm constantly reminded about that when I'm playing. What's the most faithful palette?

2. What aspect ratio are you using? I know that older games (NES, SNES) games were supposed to be played in a 4:3 aspect ratio, but I find myself opting for 1:1 PAR (8:7 in the case of the SNES, for example). As far as I can tell, 1:1 gives a perfect scaling without any stretching, which I can't stand on my PC monitor.

3. What borders/overlays are you using? I found a pack of borders inspired by other products (NES Remix, SEGA Classics, SNES Mini, etc.), but I'm wondering if you have a go-to border I could have a look at.
 

Pirate Bae

X marks the spot
Moderator
Oct 25, 2017
3,698
??
For some reason my RetroArch isn't playing sound. I've tried adjusting the settings but still nothing. Any help would be appreciated.
 

TheMadTitan

Member
Oct 27, 2017
5,747
So, after putting it off for what seems like forever, I'm finally getting to actually getting my multi-disc games to work. And I have gotten them to work, sort of.

As I have no actual save games to try them with, what I've been doing -- In Lunar, Xenogears, and Metal Gear Solid so far -- I've booted the the games, starting on disc 2 and then going to new game in order to get the prompts to swap discs. Lunar, it just continued on with Alex prattling on with no prompts whatsoever and then eventually getting stuck in an animation loop. Both Metal Gear and Xenogears gives you the "insert disc 2" message.

Using the Disc Control option to swap discs, however, just leaves me stuck on the "insert disc 1" screen and no button combination actually causes the first disc to load like it should. I've used both the m3u method and the eboot method to the same result. I've only tested this on my PC so far; no idea how it'll fair on my Nvidia Shield.

Should i re-rip my games into different file formats? I don't know how I'll stomach dumping Dragoon and Lunar again, too many discs!
 

Awakened

Member
Oct 27, 2017
175
So, after putting it off for what seems like forever, I'm finally getting to actually getting my multi-disc games to work. And I have gotten them to work, sort of.

As I have no actual save games to try them with, what I've been doing -- In Lunar, Xenogears, and Metal Gear Solid so far -- I've booted the the games, starting on disc 2 and then going to new game in order to get the prompts to swap discs. Lunar, it just continued on with Alex prattling on with no prompts whatsoever and then eventually getting stuck in an animation loop. Both Metal Gear and Xenogears gives you the "insert disc 2" message.

Using the Disc Control option to swap discs, however, just leaves me stuck on the "insert disc 1" screen and no button combination actually causes the first disc to load like it should. I've used both the m3u method and the eboot method to the same result. I've only tested this on my PC so far; no idea how it'll fair on my Nvidia Shield.

Should i re-rip my games into different file formats? I don't know how I'll stomach dumping Dragoon and Lunar again, too many discs!
Are you using the "cycle tray status" option properly? After you load an m3u, it will start with the first disc listed in the m3u. Then when you get to where you need to swap discs, use cycle tray status to open the disc drive. Then you change the index to 2 or whatever disc you need and cycle tray status again to close the tray. I usually use hotkeys to do this without going into the menu, so I'm not sure if the menu pausing emulation while cycling the tray status can cause issues. You can set Disc Next, Prev and Disc Eject Toggle under Input, Input Hotkey binds.
 

TheMadTitan

Member
Oct 27, 2017
5,747
Are you using the "cycle tray status" option properly? After you load an m3u, it will start with the first disc listed in the m3u. Then when you get to where you need to swap discs, use cycle tray status to open the disc drive. Then you change the index to 2 or whatever disc you need and cycle tray status again to close the tray. I usually use hotkeys to do this without going into the menu, so I'm not sure if the menu pausing emulation while cycling the tray status can cause issues. You can set Disc Next, Prev and Disc Eject Toggle under Input, Input Hotkey binds.
Yep, cycling tray status, switching the disc index to 1, and then cycling again, with nothing initiating.

Haven't set up any hotkeys yet because I wanted to see if I could get things to work first, but I'll try it and see how it goes.
 

Jazzem

Member
Feb 2, 2018
1,596
To anyone on NVidia; careful, the latest update seemed to cause loads of artifacting in full screen Retroarch for both myself and a friend. We both had to roll back to the previous drivers

I have the same problem with some Saturn games, sadly. I think it's a problem with how they match checksums with their internal database.
Argh sorry I was so late in responding, thanks for the heads up. Yeah there seem to be a lot of issues with CD games especially in their database still alas, I got round it by using this custom playlist app. A bit more fiddly and I imagine you have to manually insert thumbnails but still better than nothing.
 

TheMadTitan

Member
Oct 27, 2017
5,747
To anyone on NVidia; careful, the latest update seemed to cause loads of artifacting in full screen Retroarch for both myself and a friend. We both had to roll back to the previous drivers
I'll keep an eye out. My drivers are updating right now; hopefully I won't have any issues.

Also, while dicking around on my Nividia Shield, I started to mess with the filters -- I could never get any to show up on my PC even though I downloaded them all -- and for the longest time, I've been one of those "filters aren't necessary, just play the shit!" people, but after actually getting some to work and playing with my own eyes, I've seen the error of my ways.

Given that it's been literal 20+ years since I've played some of my games on an actual CRT, I'd of course forgotten, but a lot of the games I tested genuinely looked better. Some of the Retroarch filters are ass for sure, but I'm going to dig more into this stuff on my desktop.
 

Aeana

Member
Oct 25, 2017
3,680
Anyone having trouble with the "Sync to Exact Content Framerate" option and the Higan cores? It seems to always run about 1 FPS too low which causes audio stuttering. In NTSC games, it's around 58-59 FPS. For PAL games, it'll hover around 48 FPS. Works totally fine with snes9x. Weird thing is, when this feature first came out, it worked fine with Higan for me. It wasn't until I updated my cores today that I started getting this behavior.
 

BlockABoots

Member
Oct 27, 2017
807
So ive just found out about the low latency vsync technique their tagging 'Beam Racing', this will be massive as its far less cpu intensive than the run ahead feature, is more reliable and will working with the MAME cores so this damn thing should work on devices like the Raspberry Pi
 

Knurek

Member
Oct 26, 2017
3,301
So ive just found out about the low latency vsync technique their tagging 'Beam Racing', this will be massive as its far less cpu intensive than the run ahead feature, is more reliable and will working with the MAME cores so this damn thing should work on devices like the Raspberry Pi
Beam racing won't improve latency the way run ahead can - it can only match the original system.
 

TheMadTitan

Member
Oct 27, 2017
5,747
So ive just found out about the low latency vsync technique their tagging 'Beam Racing', this will be massive as its far less cpu intensive than the run ahead feature, is more reliable and will working with the MAME cores so this damn thing should work on devices like the Raspberry Pi
Beam racing won't improve latency the way run ahead can - it can only match the original system.
Does it remove the screen judder? I've noticed in the games that I've tested run ahead on, that if you're not constantly scrolling the screen, the frame will snap back and forth before settling down, which is annoying as shit.

Let alone the audio issues that require a second instance to run to fix -- that I haven't really noticed being corrected by the second instance, but I digress -- because if it does, I'm all for it.

edit: sidebar comment: I'm having issues with the Windows version of Retroarch detecting shaders. Works just fine on Android, but Windows acts like I didn't download any in spite of me having all of them. It's a cross platform issue.

Also, is anyone else using a DS4 with DS4Windows? If I let my DS4 disconnect and then reconnect, Retroarch refuses to detect any inputs from the controller unless I turn off the controller, close retroarch, turn back on the controller, and then restart the program.
 

Knurek

Member
Oct 26, 2017
3,301
Does it remove the screen judder? I've noticed in the games that I've tested run ahead on, that if you're not constantly scrolling the screen, the frame will snap back and forth before settling down, which is annoying as shit.

Let alone the audio issues that require a second instance to run to fix -- that I haven't really noticed being corrected by the second instance, but I digress -- because if it does, I'm all for it.
Beam racing is just* running with VSYNC disabled and timing the screen refresh to happen during HSYNC, so that you don't get screen tearing.
*extreme, gross oversimplification
 

TheMadTitan

Member
Oct 27, 2017
5,747
Beam racing is just* running with VSYNC disabled and timing the screen refresh to happen during HSYNC, so that you don't get screen tearing.
*extreme, gross oversimplification
I haven't noticed any screen tearing in any emulated games I've played so far, but I'll mess around with it to see if it improves anything.
 

tomwhite2004

Member
Oct 25, 2017
252
Does it remove the screen judder? I've noticed in the games that I've tested run ahead on, that if you're not constantly scrolling the screen, the frame will snap back and forth before settling down, which is annoying as shit.
If this is happening then you have too many frames of run ahead selected. If set up correctly on a per game basis then there should be no noticeable difference than if it was turned off altogether. Remember that if a game responds on the second frame then you only remove one frame with run ahead, any more and you are chopping out frames of animation and causing issues.

Beam racing won't improve latency the way run ahead can - it can only match the original system.
Beam racing will be just as beneficial in removing lag as a game that only has one frame of latency (99% of all nes, snes and megadrive games) to be removed by run ahead. At least for those that don't have a gsync / freesync monitor and use v-sync which you would think is the vast majority of people.
 

TheMadTitan

Member
Oct 27, 2017
5,747
If this is happening then you have too many frames of run ahead selected. If set up correctly on a per game basis then there should be no noticeable difference than if it was turned off altogether. Remember that if a game responds on the second frame then you only remove one frame with run ahead, any more and you are chopping out frames of animation and causing issues.
Thanks for the tidbit

I was setting it up on a per game basis since the blanket settings nuked PS1 playback, but I'l dial things back a bit.

Is running a second instance still the best way to address the audio issues, or would just dialing things back take care of that?
 

tomwhite2004

Member
Oct 25, 2017
252
Is running a second instance still the best way to address the audio issues, or would just dialing things back take care of that?
That depends, audio issues could simply be because your PC is not powerful enough to use run ahead with a particular core alongside the other various Retroarch settings.

Not everything will play nice with run ahead due to the differing way save states work for each core. For example in the case of Higan run ahead doesn't work at all and PS1 or Saturn emulation with the Medanfen (Beetle) cores are simply too CPU intensive to use with it. Then there are a few cores that work but have audio issues regardless of settings, even using a second instance. But yeah I would go back to your stock settings, start with a single frame of run ahead and go from there.

Out of interest what cores are you trying to run? I have used Snes9x, Mesen, Gambatte, Genesis Plus GX and the PC Engine Mednafen core without any audio issues.
 

TheMadTitan

Member
Oct 27, 2017
5,747
That depends, audio issues could simply be because your PC is not powerful enough to use run ahead with a particular core alongside the other various Retroarch settings.

Not everything will play nice with run ahead due to the differing way save states work for each core. For example in the case of Higan run ahead doesn't work at all and PS1 or Saturn emulation with the Medanfen (Beetle) cores are simply too CPU intensive to use with it. Then there are a few cores that work but have audio issues regardless of settings, even using a second instance. But yeah I would go back to your stock settings, start with a single frame of run ahead and go from there.

Out of interest what cores are you trying to run? I have used Snes9x, Mesen, Gambatte, Genesis Plus GX and the PC Engine Mednafen core without any audio issues.
So far, I think I've only tested SNES games, which used Bsnes Accuracy for because my system can handle it (1080 and overclocked 2600x).

I'll switch up the cores and see how things work. I don't really need things like Bsness Accuracy anyway, since I was never the type to notice the differences between less accurate emulators, more accurate emulators, and the actual consoles unless it was some hideous glitch or some truly atrocious input lag, so "downgrading" would probably be fine.

Would the emulators you suggested suffice on an Nvidia Shield as well? Having to test this shit twice is gonna be tedious lol.
 

tomwhite2004

Member
Oct 25, 2017
252
So far, I think I've only tested SNES games, which used Bsnes Accuracy for because my system can handle it (1080 and overclocked 2600x).
I'm in the same boat, used Bsnes accuracy then Higan but moved over to Snes9x once run ahead was released as like I said they just don't work with it.

Snes9x is actually one frame faster than the aforementioned emulator cores so right off the bat you will get a more responsive experience. Don't worry about glitches or inaccuracies, the latest Snes9x core is absolutely amazing, really made me realize that cycle accurate behaviour isn't necessary to have a great experience, you won't be able to tell the difference.

Your CPU has pretty much the same single thread performance as mine so with Snes9x you should be able to set frame delay to 8 with hard GPU sync at 0 and run ahead set to a single frame as a default setting for the core with no problems at all.
 
Last edited:

TheMadTitan

Member
Oct 27, 2017
5,747
I'm in the same boat, used Bsnes accuracy then Higan but moved over to Snes9x once run ahead was released as like I said they just don't work with it.

Snes9x is actually one frame faster than the aforementioned emulator cores so right off the bat you will get a more responsive experience. Don't worry about glitches or inaccuracies, the latest Snes9x core is absolutely amazing, really made me realize that cycle accurate behaviour isn't necessary to have a great experience, you won't be able to tell the difference.

Your CPU has pretty much the same single thread performance as mine so with Snes9x you should be able to set frame delay to 8 with hard GPU sync at 0 and run ahead set to a single frame as a default setting for the core with no problems at all.
I was never one who thought cycle accurate emulation was 100% necessary, but I just used the beefy emulators because I had systems that could run them, so why the hell not? Especially if it further reduced my chances of running into issues closer to zero. But I've never had any issues with any flavor of SNES9x, especially in recent years, so I'll manage.

Now, the biggest hurdle is geting disc swapping to work after this. I already made all of my two disc games into eboots, but I'm still scared something is going to break when the time comes, lol.
 

TheMadTitan

Member
Oct 27, 2017
5,747
Anyone know if there's a way to have Retroarch auto-assign controllers to specific ports based on which one is detected first? Just noticed this issue on my Nvidia Shield when I couldn't use the new controller I bought because it was automatically assigned as the second player even though the Shield Controller was off at the time; I had to manually switch the controllers around in order for the new one to be usable as a first player.

Not that big of a deal since when the Shield is in use by me, I'm always going to use the new one, but for other people who don't give a shit, children, or better yet, on my PC where I have a greater variety of controller types with the plan to get even more for nostalgia's sake, I'm sure this is going to be annoying as hell if I decide I want to play an SNES game with an SNES controller instead of my DS4 and have to reconfigure the SNES controller to port one every fifteen seconds when the DS4 is already off.
 

mute

Member
Oct 25, 2017
6,436
I picked up a Shield TV from the sale recently not really planning on doing much of anything with it outside of watching Youtube TV, only to find out retroarch runs pretty well on it. I'm used to the old green UI though, this is the first I've seen of the PSP/PS3 style ui.

However I've run into some trouble with the menus, I'm using mame2003 and I'm trying to get into the dip switches/service menu for neogeo games and the like, and I can't for the life of me find where the setting is to tell me what key it is mapped to, or how to map it to a controller button. I'm just using some 8bitdo pad if it matters. Anyone has any clues on where to look I'd appreciate it. The usual suspects (TAB, F2) on the keyboard don't work either.

I can get into that menu in mame2010 but, I generally stick to 2003 because things run better there. Doing the same thing doesn't work (think it maps to L2/R2 or similar there).
 

Awakened

Member
Oct 27, 2017
175
I picked up a Shield TV from the sale recently not really planning on doing much of anything with it outside of watching Youtube TV, only to find out retroarch runs pretty well on it. I'm used to the old green UI though, this is the first I've seen of the PSP/PS3 style ui.

However I've run into some trouble with the menus, I'm using mame2003 and I'm trying to get into the dip switches/service menu for neogeo games and the like, and I can't for the life of me find where the setting is to tell me what key it is mapped to, or how to map it to a controller button. I'm just using some 8bitdo pad if it matters. Anyone has any clues on where to look I'd appreciate it. The usual suspects (TAB, F2) on the keyboard don't work either.

I can get into that menu in mame2010 but, I generally stick to 2003 because things run better there. Doing the same thing doesn't work (think it maps to L2/R2 or similar there).
You should try the 2003-plus core if you haven't. The author of it tries to get everything working though the RetroArch UI, so I would assume dip switch options for each game would be under core options after loading a game in the core. Not 100% sure that's the case though, since I only use the latest MAME core.
 

mute

Member
Oct 25, 2017
6,436
You should try the 2003-plus core if you haven't. The author of it tries to get everything working though the RetroArch UI, so I would assume dip switch options for each game would be under core options after loading a game in the core. Not 100% sure that's the case though, since I only use the latest MAME core.
Thanks for the suggestion. With 2003 plus it appears the service menu is set to L3, which gets me what I need for some games. Others like Street Fighter Zero have a different menu and I can't figure out the key for those. Google tells me F2 is what I want but isn't working.
 

Awakened

Member
Oct 27, 2017
175
Thanks for the suggestion. With 2003 plus it appears the service menu is set to L3, which gets me what I need for some games. Others like Street Fighter Zero have a different menu and I can't figure out the key for those. Google tells me F2 is what I want but isn't working.
Yeah, I see this open bounty saying it's currently not remapable from F2. Maybe something is weird with your keyboard inputs? I've never tried doing keyboard stuff with the Android version of RetroArch, so I'm not sure if that usually just works. You could always setup service menu options on the PC version and copy over the NVRAM files from the save directory to the Shield.
 

mute

Member
Oct 25, 2017
6,436
Yeah, I see this open bounty saying it's currently not remapable from F2. Maybe something is weird with your keyboard inputs? I've never tried doing keyboard stuff with the Android version of RetroArch, so I'm not sure if that usually just works. You could always setup service menu options on the PC version and copy over the NVRAM files from the save directory to the Shield.
So went down the rabbit hole a bit but eventually copying the .nv files from a PC worked. There seems to be a lot of bugs/issues/gotchas surrounding this though, for one the F2 key is also mapped to save state, and by default it will only do that at first. You have to force the input method to keyboard (even if you are already using a keyboard, the setting defaults to Retropad) before it will recognize F2 as service menu. After that it is straight forward. Can't seem to duplicate the same thing in the android version for some reason. Seems like more people would be complaining about it but, eh whatever. Thanks for leading me down the right trail though.
 
Last edited:

AaronMT

Member
Oct 27, 2017
1,471
Toronto
Not exactly sure where to ask or what to ask but I am looking for any settings and modifications I should make to improve Genesis Plus GX in Retroarch to make the emulation more like the Model 1. Any ideas?
 

Awakened

Member
Oct 27, 2017
175
Not exactly sure where to ask or what to ask but I am looking for any settings and modifications I should make to improve Genesis Plus GX in Retroarch to make the emulation more like the Model 1. Any ideas?
Load a game in the core, open the menu with F1 and change these core options:

Mega Drive / Genesis FM: nuked (ym2612)
Audio Filter: low-pass
Low-pass filter %: 45

That gives the most accurate model 1 type sound AFAIK. But, if you leave the FM option on the MAME default, it's pretty hard to tell the difference from Nuked and is quite a bit less performance heavy.
 

AaronMT

Member
Oct 27, 2017
1,471
Toronto
Load a game in the core, open the menu with F1 and change these core options:

Mega Drive / Genesis FM: nuked (ym2612)
Audio Filter: low-pass
Low-pass filter %: 45

That gives the most accurate model 1 type sound AFAIK. But, if you leave the FM option on the MAME default, it's pretty hard to tell the difference from Nuked and is quite a bit less performance heavy.
Thanks. Anything with latency or graphics/shaders wise? Or is that more a preference thing
 

Awakened

Member
Oct 27, 2017
175
Thanks. Anything with latency or graphics/shaders wise? Or is that more a preference thing
There's a dithering shader called mdapt that is designed to blend dithering patterns in Genesis games if the checkerboarding bothers you. Other than that, just use whatever you like. GPGX is a pretty fast core, so you should be able to turn on Run Ahead and turn up Frame Delay a good amount. I don't know if any Genesis games have more than 1 frame of latency you can remove with Run Ahead. Oh, and Hard Sync shouldn't be a problem either.
 

Kvik

Banned
Oct 25, 2017
889
Downunder.
O_o Overclocking for RetroArch Switch! This is excellent news. I'm also keen to see if Beetle HW and DeSMuME cores will be implemented in the future.
 

Jazzem

Member
Feb 2, 2018
1,596

Uhyve

Member
Oct 25, 2017
338
So I keep seeing people on Youtube pronounce Retroarch "retro arch", like "arch" as in a curved structure. But since arch is short for architecture, it should be pronounced "arc"... I just wanted to make sure we're all on board here with the undeniably correct pronunciation. If you pronounce GIF with a 'G' due to the 'G' standing for graphics, you're being inconsistent if you don't pronounce retroarch "retro arc". Thank you for your time in regards to this very important topic.

For real though, this annoys me everytime I hear it.
 
Last edited:

J_Viper

Member
Oct 25, 2017
10,033
Not sure if this is the right spot for this question, but what’s the best DS emulator to run through Retroarch on an Nvidia Shield?