-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
framerates / timings not being updated correctly? #114
Comments
look at how i deal it for 2009 .
and set in retro_run treat this
|
But there isn't an issue with MAME2010, it's playing the games at the correct refresh rate. MAME2003 is wrong. |
if game info said 57Hz and game run at 60Hz then mame2010 not work as expected. |
@ZappaUtopia, as I've told you several times now, the default in retroarch is for audio_max_timing_skew to be set to 0.05. under this setting, a game of 57.4 fps will be sped up to 60fps (using a 60hz display). THAT is the expected behaviour. |
But that is the wrong refresh rate for some games. Thats probably why Mame2010 bypasses it so it plays at the correct speed. Like @r-type said above.
|
again, this is just how libretro/retroarch works (assuming default settings and a 60hz screen). if you want to stop what retroarch does by default, you simply change the settings and it will stop skewing such games. there's no need to bypass anything. if any cores bypass it somehow, then they are simply not calling the libretro callbacks at the right times, hence this logged issue. |
I just noticed that lr-mame2010 doesn't even have a |
audio_max_timing_skew is a generic retroarch option and will display regardless of the loaded core. i think you need advanced options enabled to see it, though. |
following discussion in libretro/mame2003-plus-libretro#34 (comment) - it appears that mame2010 is somehow bypassing the default audio_max_timing_skew of 0.05, which should mean that games that are 57Hz (eg robocop) are sped up to 60Hz, with the audio respampled to match, UNLESS you lower that setting.
I haven't observed this issue myself but I ended up looking at the code and may have spotted the issue, if there is one.
maybe mame2010 is failing to update info->timing.fps when it loads a games with a fps that is not 60? in the code it appears this value defaults to 60:
mame2010-libretro/src/osd/retro/retromain.c
Line 764 in 545acf2
mame2010-libretro/src/osd/retro/retromain.c
Line 68 in 545acf2
it looks like it's attempting to update it here:
mame2010-libretro/src/osd/retro/retromain.c
Line 394 in 545acf2
hmm, also it is using the RETRO_ENVIRONMENT_SET_GEOMETRY callback which may not be sufficient to update timings. i think it might need to call RETRO_ENVIRONMENT_SET_SYSTEM_AV_INFO instead?
The text was updated successfully, but these errors were encountered: