It seems like this question is already beginning to crop up here and there. As my reply to this question in the release thread is likely to go missed, i will explain it here, with a little more detail.
With PSPUAE 0.70 came a completely new frameskip algorithm. One which not only performs far better than the previous one on "auto" mode, but also gives a far more detailed measure of frameskip, as the emulator approaches full speed.
The old Frameskip Algorithm - How it worked.To quickly summise the old system, you could choose from a value of 0-8 or Auto. The latter is fairly self-explanatory i hope...
The value there corresponded to the number of frames skipped, after a single frame would be displayed. This meant that with a value of 1, one frame is displayed, one skipped, one displayed, one skipped etc etc.
With a value of 2, one frame is displayed, then 2 frames skipped, then one displayed etc etc.
The result of this was a fairly harsh frameskip setting, which quickly became jerky (and unplayable imho) with any value greater than 3 or 4.
The new Framskip Algorithm - How it works.However, Ric's Frameskip Logic, introduced in 0.70 is far more subtle than previously.
You will immediately notice that you can now set a value between 0 and 49, as well as "Auto" - The zero and Auto options act exactly as before.
However, the measure of the skip when set to a value, is now different.
For normal speed Amiga emulation, we are looking to display 50 frames per second. However, this is impossible to achieve without frameskip on most games on PSPUAE (although not all) without some level of frameskip.
The value set by the new frameskip algorithm is equal to the number of frames (of the 50) skipped per second.
So, for example, a frameskip setting of 25 will skip 25 frames of 50... equalling every alternate frame skipped. A value of 12 will only skip 12 frames of 50, approxomately one in 4 frames being skipped.
This new method allows for a much finer setting of the frameskip value, especially towards the "zero" frameskip end of the spectrum.
Translating old frameskip values to the new values.The new frameskip algorithm takes into account any old framsekip algorithm value stored within a Config file, and translates this into a suitable value for the new frameskip.
In order to provide a reference to PSPUAE users, the calucualtion for this is as follows.
Where X=Old FS value....
New FS Value = 50 - ( 50 / (X+1) )
and as a general guideline, this returns the following values:
Old Value | | | New Value |
0 | | | 0 |
1 | | | 25 |
2 | | | 33.3 |
3 | | | 37.5 |
4 | | | 40 |
5 | | | 41.6 |
6 | | | 42.857 |
7 | | | 43.75 |
8 | | | 44.4 |
This should give anyone who requres it a good indication of how the two (seemingly very different) frameskip values translate.
I hope this is of use to you guys.