This PR adds optional automatic frame skipping based on frontend audio buffer occupancy. A new Frameskip option has the following values:
OFF
Auto: Skips frames when the frontend reports that a buffer underrun is likely
Manual: Skips frames when the audio buffer occupancy is below the percentage set via the new Frameskip Threshold (%) core option
In addition, this PR:
Adds core option sublabels (I couldn't do a 'standard' core options v1.3 update, since this core generates options dynamically - but this implementation has all the regular features apart from translation support)
Removes the redundant Hiscores core option (this is not relevant for Neo Geo content)
Fixes incompatibilities with the latest libretro.h file
Tested on an RG350, pretty much everything is perfectly playable with Frameskip set to Auto. Even the absurdly demanding Neo Turf Masters can be played smoothly with Frameskip set to Manual, using a Frameskip Threshold (%) of 33.
This PR adds optional automatic frame skipping based on frontend audio buffer occupancy. A new
Frameskip
option has the following values:OFF
Auto
: Skips frames when the frontend reports that a buffer underrun is likelyManual
: Skips frames when the audio buffer occupancy is below the percentage set via the newFrameskip Threshold (%)
core optionIn addition, this PR:
Adds core option sublabels (I couldn't do a 'standard' core options v1.3 update, since this core generates options dynamically - but this implementation has all the regular features apart from translation support)
Removes the redundant
Hiscores
core option (this is not relevant for Neo Geo content)Fixes incompatibilities with the latest
libretro.h
fileTested on an RG350, pretty much everything is perfectly playable with
Frameskip
set toAuto
. Even the absurdly demanding Neo Turf Masters can be played smoothly withFrameskip
set toManual
, using aFrameskip Threshold (%)
of33
.