Page 1 of 1
Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 6:48 am
by mambrino
Hi,
Would it be possible to overclock the core to avoid slowdowns in games like megaman, double dragon, gradius, blaster master, ...?
It would greatly improve the playability of these and other games.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 8:43 am
by ToothbrushThreepwood
Have you tried turning on the ‘Extra Sprites’ option in the Audio & Video-options from the OSD core menu?
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 9:40 am
by mambrino
yes, I always have it on, I understand that it eliminates the flickering of the sprites when the limit is reached (8 sprites per scanline), I think it doesn't affect the speed of the cpu / ppu at all, and if it does, with this option active I still notice slowdowns in many games.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 10:26 am
by FPGA64
The FPGA is accurate. if the game slows down thats what happens on real Hardware. You cant just overclock one part of the system without it having a ripple in the other parts. FPGA run all the chips simultaneously, having one ruuning too fast will break the system.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 10:51 am
by mambrino
I understand it, but other cores like gba, megadrive, snes, and some arcades implement this functionality. It's true that some games don't work properly, but many others work without problem. I don't know if in these cases only the cpu or the rest of the system is overclocked, but for practical purposes it's functional and an improvement when playing these games. Also, it can be enabled or disabled from the menu, so it wouldn't affect compatibility.
imho, having a core that behaves exactly like the original machine is very interesting, but also having the possibility of going further and being able to overcome its limitations in favor of an improvement in the gameplay can be very useful too.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 11:51 am
by N.Master
Hi,
I am not expert in NES, but it seems that NES have all it's timing related to the main CPU.
That is the reason why NTSC and PAL NES have different working frequencies.
With an Overclocked CPU, video timings will no longer be accurate, and sound will be faster and higher pitched.
More modern systems have separated clock signals for sub systems, but the NES is very minimalistic
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 5:32 pm
by darksakul
Sometimes the slowdown is often bad coding in the game and not the hardware or emulation of the hardware.
Metal Slug on the Neo Geo as been found running on full speed with a rom hack
For the SNES (on original hardware it would be a hardware mod) look for the SA-1 Hacks various games. Hacking the game to support the SA-1 chip speeds up those games that have the hack drastically.
Problem with forcing a overclock often breaks the game
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 6:09 pm
by mambrino
N.Master wrote: ↑Wed Oct 13, 2021 11:51 am
Hi,
I am not expert in NES, but it seems that NES have all it's timing related to the main CPU.
That is the reason why NTSC and PAL NES have different working frequencies.
With an Overclocked CPU, video timings will no longer be accurate, and sound will be faster and higher pitched.
More modern systems have separated clock signals for sub systems, but the NES is very minimalistic
ppu runs at 3 times the cpu clock speed, and also shares the clock signal with the cpu, so yes, I hadn't thought about it but this could be a problem for overclocking. If that were not enough, the cpu also generates the sound, so as you say, increasing cpu speed, it will be faster and higher pitched.
I have proposed it in case someone comes up with an idea to do it, but I suppose that are inherent to the machine.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 9:14 pm
by Larkhainan
It's a shame the good explanation for why this doesn't seem like a good option got buried in having a normal one :/
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Wed Oct 13, 2021 10:38 pm
by Xbytez
I have cleaned up and removed a number of posts in this thread, discussion is fine, however personal attacks towards other forum members is unacceptable behaviour and will not be tolerated here at all.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Tue Dec 14, 2021 2:46 am
by MottZilla
If you overclock the NES it will break certain games. However many games are actually very tolerant of incorrect timing. In one of the NES emulators I programmed I overclocked the system by changing the Clock Ratio between the CPU and PPU. But as previously mentioned you need the APU/Sound component to still run at its normal speed or else the pitch would change. But it is possible to overclock the NES and benefit some games. Having such an option enabled though would absolutely break others. Battletoads is one such game that with incorrect timing is known to deadlock in the 2nd level.
Implementing a feature like this in hardware is certainly more complex than in a software emulator. It would be a cool feature to see. Although are there really that many games with significant slowdowns? It's been awhile so I don't recall which were the worst.
Re: Add an Overclock Option to Avoid Slowdowns
Posted: Tue Dec 14, 2021 2:17 pm
by ExCyber
The SNES core's turbo mode switches back to stock speed for some number of cycles after a register access, the idea presumably being that only loops that are purely in RAM/ROM can be accelerated without significant side effects. I assume that accounts for some of its compatibility.