vsync & Retroarch

General chit-chat about what's hot and not in the land of emulated video games.

Moderator: dee2eR

Post Reply
dee2eR
Inventor
Inventor
Posts: 1872
Joined: Tue Aug 22, 2017 2:07 pm

vsync & Retroarch

Post by dee2eR » Mon Feb 19, 2018 1:49 pm

Continuing from the vsync changes suggested by @wboy for MAME172 (discussion in the 3.811 release thread, figured I'd start a new thread), I think I've found the equivelent settings for Retroarch (all emulator cores). If you want to try you need to have video sync on and audio sync off via the Retroarch menus for the vsync to work properly, after that you can sync the game to the monitor. To my eyes the results are a bit smoother with audio sync off and vsync on than with both the syncs on.

If you would prefer not to mess around with it all and wait for the next release these changes will be in the next ARpiCADE unless it turns out they do something unwanted that I've missed. Also coming in the next release is less config files for Retroarch (just one unique config file per emulator core + some extra add-ons for different resolutions that are shared), which is just barely on topic here, should make Retroarch configs less confusing.

wboy
Contributing Member
Contributing Member
Posts: 45
Joined: Mon Jan 29, 2018 1:20 pm

Re: vsync & Retroarch

Post by wboy » Mon Feb 19, 2018 8:44 pm

Good stuff... I've been meaning to load the Mega Drive version of Snow Bros and maybe something fast like Sonic to test RetroArch to do similar tests. Will give it a twirl to assess soon.

It's easiest just to make those changes in the retroarch.cfg I gather?

dee2eR
Inventor
Inventor
Posts: 1872
Joined: Tue Aug 22, 2017 2:07 pm

Re: vsync & Retroarch

Post by dee2eR » Tue Feb 20, 2018 12:22 am

Due to all the overriding config files of Retroarch I'm not sure if there's a quick way to do it without it being overwritten by another config. No harm in trying though.

wboy
Contributing Member
Contributing Member
Posts: 45
Joined: Mon Jan 29, 2018 1:20 pm

Re: vsync & Retroarch

Post by wboy » Tue Feb 20, 2018 11:38 am

Had a quick play with this tonight. Checked the /boot/launchers/ and noticed each has emulator/core their own .cfg and fba a few depending on the game res and orientation.

Tried MegaDrive Snow Bros & Sonic 1 with picodrive using the stock picodrive.cfg and they look perfect. Then again they run at right Hz rate I guess so even the Snow Bros (port) level animations looked flawless. Sonic played well too I thought so no major issues for console cores I imagine with both video_vsync and audio_sync enabled.

I then tried FBA and snowbros which uses fba_libretro_224.cfg. No matter what combination I've tried so far, no luck in getting it as smooth as 0172. Level up animation again being the main area I judge (and even the bonus money drop). Will give it a bit more time to test as I have a few more things to try out of curiosity.

Retroarch doesn't seem to have the same frame throttle feature as MAME (could be wrong) as it's disabling that throttle off with vsync on that makes the difference in 0172.

Gather you may of found this too... https://docs.libretro.com/guides/optimal-vsync/ (didn't help me - yet) :P

More testing to be done...

dee2eR
Inventor
Inventor
Posts: 1872
Joined: Tue Aug 22, 2017 2:07 pm

Re: vsync & Retroarch

Post by dee2eR » Tue Feb 20, 2018 12:40 pm

Hadn't found that doc, thanks for posting it. I just saw a random forum post mentioning the audio sync when I was looking for some thing else and figured I'd try it out.

I was testing using NBA Jam in MAME 078 looking at the smoothness of the logos traveling from right to left over the attract game. I got definate improvements with audio sync off and using the estimated refresh option to match the video refresh rate (I selected it a few times and the displayed value stablised - this seems to be the important bit, turning off audio sync just lets it work). It may be it isn't as good as 172 still (and I wouldn't recommend any Retroarch core over 172 for games that run well in 172 anyway). It could even be a bit core dependant as MAME has more video options than FBA (at least to my knowledge - it's been a while since I looked at vanilla FBA), although I would imagine not as Retroarch would be handling the video output.

The large number of .cfg files you noticed will be decreasing a lot in the next release.

wboy
Contributing Member
Contributing Member
Posts: 45
Joined: Mon Jan 29, 2018 1:20 pm

Re: vsync & Retroarch

Post by wboy » Tue Feb 20, 2018 1:41 pm

What's the latest retroarch compile for Raspbian?

I noticed that ARpiCADE 3.811 uses RetroArch 1.3.6.

Only ask as on my Intel NUC TV box that runs Xubuntu I don't have the issue with FBA snow bros. It's currently running RetroArch 1.7.0, and obviously uses a different FBA Alpha core (v0.2.97.42).

The TV sync is 59.940Hz and the level up scroll looks perfect! Mind you need get the video driver xconf.org and XFCE composition settings right too.

Some of the tweak I make for it's retroarch.cfg are:

Code: Select all

video_fullscreen = "true"
video_windowed_fullscreen = "false"
video_vsync = "true"
video_hard_sync = "true"
video_smooth = "false"
video_threaded = "false"
Did try some of those earlier on the ARpiCADE but no real noticeable difference.

dee2eR
Inventor
Inventor
Posts: 1872
Joined: Tue Aug 22, 2017 2:07 pm

Re: vsync & Retroarch

Post by dee2eR » Sat Feb 24, 2018 12:55 pm

did some more experimenting on this, this time using Snowbros. I can confirm FBA (I'm on v0.2.97.40) doesn't do the perfect framerate sync even on the closest I can get to 57.5Hz output. MAME-078 (lr-MAME2003) does as well as AdvMAME (smooth - maybe as good as MAME172, maybe) so the limitation isn't in Retroarch. I will have to double check I don't have a different setting in FBA that's causing the difference.

As you brought it up the next release will have lr-FBA core v0.2.97.40 (v0.2.97.42 had a change to the controls removing the arcade control mode making it a mess for cab use as far as I can tell and others have reported the same to me too). At least it adds limited high score support (although it turns out not for Snowbros which wasted many hours of my life chasing config issues thinking highscore save wasn't working but I was just using the wrong game... was only using it to test the framerate thing...). There's support for some more games but I don't really know if it adds anything you couldn't already play elsewhere, I hoped it would run Taito F3 better than AdvMAME but it doesn't (at least not the game I tried, Bubble Bobble 2). There's a Retroarch update too but I don't remember what version, it had to be updated for the FBA update.

As your NUC is running with Xorg and a compositor it's not really comparable but maybe lr-FBA can do better than I'm coaxing out of it currently on Pi. After the Snowbros score saving fiasco (I feel dumb...) I may need a break from FBA configuration for a bit, at least it works well for anything that runs at 60Hz, I think that's all I use it for anyway.

User avatar
cool_factor
Legendary Contributor
Legendary Contributor
Posts: 333
Joined: Tue Sep 26, 2017 10:55 am
Location: Fort Worth TX

Re: vsync & Retroarch

Post by cool_factor » Sat Feb 24, 2018 2:41 pm

Using 3.72 and experimenting with 3.811, I still dont know enough about it to want to use it permanently. It doesnt seem to have all bugs/glitches out yet (of course this could be my massive learning curve). Its one of the reasons I got the whole kit from HSS. Im still learning alot but I think Ill just wait for the next release as it seems Wboy and you (Dee2er) are working out alot of major fixes/improvements. Seems like you are really close to that next release? I love this product, just wish I was more capable of getting things running correctly and not have to rely so much on others. Its the main reason Ive been immersing myself in your posts, I am learning....slowly.

dee2eR
Inventor
Inventor
Posts: 1872
Joined: Tue Aug 22, 2017 2:07 pm

Re: vsync & Retroarch

Post by dee2eR » Sun Feb 25, 2018 1:03 am

@cool_factor I'm avoiding rushing the next release. I've been overhauling every config file and launcher script to make the system easier to understand (and work better), it would be very easy to rush and not notice I broke something. I don't want to say it's going to be released soon, I want to say it will be better when I do release it.

As I doubt you're using your arcade machine online, running with out of date software isn't really an issue, if you enjoy 3.72 better than 3.811 there's no reason you shouldn't use it (although it does get trickier to provide help when I'm on an entirely different build).

Post Reply