-
Notifications
You must be signed in to change notification settings - Fork 3
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
Overclocking features and improvements #138
Comments
I've been experimenting with Sega CD, both overclocking the sub CPU and increasing the CD-ROM drive speed. Sub CPU overclocking just changes the clock divider of the Sega CD's 50 MHz master clock rate. Actual hardware uses a divider of 4 (12.5 MHz clock speed) so there are only 4 options: 100% speed, 133%, 200%, and 400%. I could maybe add support for fractional divider steps as a future improvement - it would certainly be possible to support divider steps of 0.5 or 0.25. Increased drive speed changes the rate at which the drive reads sectors when it is actively reading from a data track. Seek times and other delays are not affected, and neither is audio track playback speed. Overclocking the sub CPU has minimal impact in most games, but it can slightly improve framerate in games that do significant work on the sub CPU. Some games have sloppy inter-CPU communication code that will cause the game to freeze if the sub CPU is overclocked without also overclocking the main CPU. Increasing the CD-ROM drive speed has low compatibility (unsurprisingly), but when it doesn't break games it can noticeably shorten loading times. Some games require overclocking the sub CPU for it to be able to keep up with the faster data rate when reading from disc. Increased drive speed primarily breaks games when they're playing FMVs or other cutscenes that require streaming both video and audio data from disc. Sometimes the cutscene audio will glitch out, sometimes the cutscene will stutter, and sometimes the game will just freeze. I haven't been able to figure out a reliable way to detect when a game is doing this (so that I could force the drive speed to 1x) - different games don't stream data from disc in the same ways, and some games don't even use FMVs for their animated cutscenes. Still, these seem useful enough, so I'm going to go ahead and add these features with a warning in the help text for drive speed to note that it has fairly low compatibility. |
I'm going to add another new feature that kind of helps with Sega CD: a new hotkey to toggle whether overclocking settings are enabled, including Sega CD drive speed. This doesn't actually modify the config file - disabling overclocking simply forces all overclocking-related settings to default values in the emulator backend until overclocking is re-enabled or the app is restarted. This is nice for games like Lunar 2: Eternal Blue where overclocking during gameplay can help with the annoyingly long load times, but increasing the disc drive speed or even overclocking the sub CPU almost always breaks video/audio sync during the animated cutscenes. |
…138) this is most useful for Sega CD where overclocking can help during gameplay but often breaks cutscenes
Related to #133, additional things that might be useful to implement or try:
The text was updated successfully, but these errors were encountered: