dirkwhoffmann / virtualc64

VirtualC64 is a cycle-accurate C64 emulator for macOS
https://dirkwhoffmann.github.io/virtualc64
Other
342 stars 33 forks source link

Replace the existing fps option by a slider #751

Closed dirkwhoffmann closed 1 year ago

dirkwhoffmann commented 1 year ago

Right now, VirtualC64 allows the user to adjust the emulation speed by choosing among different fps values. Besides using the native speed which is determines by the VICII revision, values such as 30 fps or 120 fps can be selected:

Bildschirm­foto 2022-12-27 um 10 38 20

Once VSYNC mode will have been ported from vAmiga, there is no need to set specific frame rates. Hence, the option can be replaced by a more general speed option which allows the user to run the emulator in a speed range from 50% - 200%. Of course, this option only takes effect if VSYNC is disabled.

Work items:

The only thing I am unsure about is where to put the new option. In vAmiga, the VSYNC option is part of the Video panel:

Bildschirm­foto 2022-12-27 um 10 48 56

Because the new speed option and the VSYNC option are functionally related, they should be next to each other. However, I would never search the speed option in the monitor panel.

dirkwhoffmann commented 1 year ago

Proposal:

Bildschirm­foto 2022-12-27 um 11 26 10

I'll implement the feature for vAmiga first to see if it works as I expect. The major use-case of this feature is to have a slowmo mode for difficult games.

dirkwhoffmann commented 1 year ago

Works as expected in vAmiga:

https://user-images.githubusercontent.com/12561945/209668640-61ab5c91-a501-4a35-bd52-d9bd5b15807f.mov

I'll implement it the same way for VirtualC64.

dirkwhoffmann commented 1 year ago

v4.6b1 is online.