Difference between revisions of "Overclocking"

From Emulation General Wiki
Jump to navigation Jump to search
m (Protected "Overclocking" ([Move=Allow only administrators] (indefinite)))
(Blanked the page)
(Tag: Blanking)
Line 1: Line 1:
Overclocking is the process by which the CPU clock speed is increased. The reason for doing this would be to reduce slowdown in games or to increase the frame rate. However, as this is a hack and not intended by designers, it can result in many issues. Certain systems can have an overclocked CPU with few if any issues, while others can not overclock without major issues.
 
  
==Chart==
 
{| class="wikitable"
 
|-
 
! scope="col" style="text-align: center;"|System
 
! scope="col" style="text-align: center;"|Normal clock
 
! scope="col" style="text-align: center;"|Hardware Overclock
 
! scope="col" style="text-align: center;"|Emulation Overclock
 
! scope="col" style="text-align: center;"|Overclock levels
 
|-
 
| style="text-align: center;"|[[Nintendo Entertainment System emulators|NES]]
 
| style="text-align: center;"|1.79 MHz
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|?
 
|-
 
| style="text-align: center;"|[[Super Nintendo emulators|SNES]] (Main CPU)
 
| style="text-align: center;"|3.58 MHz
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|4.1 -7.6 Mhz
 
|-
 
| style="text-align: center;"|[[Super Nintendo emulators|SNES]] (Super FX 1)
 
| style="text-align: center;"|10.5 MHz
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|40-60 Mhz
 
|-
 
| style="text-align: center;"|[[Super Nintendo emulators|SNES]] (Super FX 2)
 
| style="text-align: center;"|21 MHz
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|40-60 Mhz,
 
|-
 
| style="text-align: center;"|[[Sega Genesis emulators|Sega Genesis]]
 
| style="text-align: center;"|7.7 MHz
 
| style="text-align: center;"|Yes<ref name="kyorune">http://kyorune.com/modding/article.php?id=73</ref>
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|13.1-25.4 MHz<ref name="kyorune"/>
 
|-
 
| style="text-align: center;"|[[PlayStation emulators|PlayStation]]
 
| style="text-align: center;"|33.8 MHz
 
| style="text-align: center;"|Yes<ref name="kraut">https://www.youtube.com/watch?v=HapnSOseDfw</ref>
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|66Mhz<ref name="kraut"/>
 
|-
 
| style="text-align: center;"|[[Sega Saturn emulators|Sega Saturn]]
 
| style="text-align: center;"|28.6 MHz*
 
| style="text-align: center;"|No
 
| style="text-align: center;"|No
 
| style="text-align: center;"|-
 
|-
 
| style="text-align: center;"|[[Nintendo 64 emulators|Nintendo 64]]
 
| style="text-align: center;"|93.75 MHz
 
| style="text-align: center;"|Yes<ref name="n64oc">http://www.gamesx.com/misctech/n64oc.htm</ref>
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|125-187.5 Mhz<ref name="n64oc"/>
 
|-
 
| style="text-align: center;"|[[Neo Geo emulators|Neo Geo]]
 
| style="text-align: center;"|12 MHz
 
| style="text-align: center;"|Yes<ref name="neooc">http://www.neo-geo.com/forums/showthread.php?158016-68K-s-guide-to-overclocking-your-Neo-Geo-AES</ref>
 
| style="text-align: center;"|Yes
 
| style="text-align: center;"|14-18 MHz<ref name="neooc"/>
 
|-
 
|}
 
<nowiki>*</nowiki> Sega Saturn has two SH-2 CPUs
 
 
==MAME==
 
By default [[MAME]] allows you to change the clock speed of the systems it emulates (including consoles) to anything between 50% to 250% of the original clock speed, the only requirement is that you enable cheats for that game/system.
 
 
==NES==
 
Overclocking is possible on real hardware, but doing so also speeds up the audio unless you're using a special hardware mod like the HiDefNES which does allow for overclocking without changing the audio pitch<ref name="HiDefNESoverclock">https://youtu.be/QnQuBN3iYVA?t=4m8s</ref>.
 
 
[[FCEUX]] as of 2.2.3 includes an overclocking option which works by adding additional scanlines to the PPU loop. This method doesn't cause audio distortion. It is found under Config > Timing.
 
 
[[puNES]] as of 0.101 includes the same feature. It is found under Tools > PPU Hacks.
 
 
[[Mesen]] as of 0.2.2 includes the same feature, as well as CPU overclocking. Both are found under Options > Emulation > Overclocking.
 
 
For PPU Overclocking, the number of additional scanlines is user-defined. 240 Post-render Scanlines (Referred to as "Before NMI" in Mesen) should be more than enough for most games. If you happen to experience graphical glitching or crashes with a PPU overclock, try the VBlank Scanlines ("After NMI" in Mesen) option instead. Though uncommon, this is required for some games, a notable example being Contra Force.
 
 
==SNES==
 
===Main CPU===
 
For an NTSC SNES, the master clock rate is approximate ~21.477 MHz, but the CPU's effective clock rates are ~3.58 MHz, ~2.68 MHz, or ~1.79 MHz. This is because any CPU operation takes 6 master cycles (i.e. 21.477/6 = 3.58) and memory access can take 6, 8, or 12, depending on the area of RAM is accessed. In the case of ROM access, it also depends on whether bit 0 of CPU register 420D is set to 0 (SlowROM, 8) or 1 (FastROM, 6).<ref name="Fullsnes - No$SNS Specs">http://problemkaputt.de/fullsnes.htm#cpuclockcycles</ref>
 
 
In testing overclocks on the original hardware, the following issues occur (speeds listed represent the maximum effective clock rate):
 
 
* 4.1 MHz: Small amounts of sprite breakup occasionally; very little slowdown.
 
* 5.1 MHz: Sprite breakup; no slowdown
 
* 6.6 MHz: Color palette errors; sprites fail to render
 
* 7.6 MHz: Color palette errors; sprites fail to render. Freezes after a few minutes.<ref name="SNES overclock">http://web.archive.org/web/20070629163744/http://www.undergroundcm.com/index.php?option=com_content&task=view&id=15&Itemid=38</ref>
 
 
Only MAME has an option to change the main CPU frequency, which requires you to enable cheats. MAME SNES emulation is very demanding by default and activating the overclock only makes it worse. It is more stable than the real hardware while overclocked and won't exhibit the same issues, but it is still very unstable especially if you adjust the frequency multiple times. It also does not allow you to go over 250% clock speed, which isn't enough to fully get rid of slowdowns in some games.
 
 
The latest builds of all [[Snes9x]] libretro cores can overclock by reducing the number of emulated CPU/memory access cycles from 6, 8, and 12 to either 4, 5, and 6 (Compatible) or 3, 3, and 3 (Max) respectively. Just for comparison, that means the Max option is effectively 7.16 MHz. Gameplay is not sped up (assuming the game is not in a constant state of some slowdown, to begin with, like Out of This World) and the issues experienced on real hardware are not present, though stability will vary depending on the game and which option you use. Also to note, some games may work better with the Max option rather than Compatible, as appears to be the case for Mega Man X1 which has a bit of graphical corruption under very specific conditions when using the Compatible option, so try both if you encounter issues.
 
 
===Super FX chip===
 
The first version of the chip, commonly referred to as simply "Super FX", is clocked with a 21 MHz signal, but an internal clock speed divider halves it to 10.5 MHz. Later on, the design was revised to become the Super FX GSU-2; this, unlike the first Super FX chip revision, is able to reach 21 MHz.
 
 
The SFX chip can be overclocked on real hardware or emulation with fewer issues than overclocking the CPU. However, tests have shown that overclocking can increase the speed of the game, in addition to increasing the frame rate and removing slowdown.<ref name="Dragon50hztest">https://www.youtube.com/watch?v=tfNI3HpUt-4</ref>
 
 
{| class="wikitable"
 
|-
 
! scope="col" style="text-align: center;"|Clock speed
 
! scope="col" style="text-align: center;"|Time
 
! scope="col" style="text-align: center;"|Increase
 
|-
 
| style="text-align: center;"|Normal
 
| style="text-align: center;"|1'46'02
 
| style="text-align: center;"|-------
 
|-
 
| style="text-align: center;"|50hz
 
| style="text-align: center;"|1'23'78
 
| style="text-align: center;"|27.711%<ref name="Dragon50hztest"/>
 
 
|}
 
 
[[RetroArch|Snes9x-Next]] allows for SFX overclocking, as well as [[higan|bsnes-mercury]], though in the latter the increase in CPU requirements can be noticeable.
 
 
==PC-Engine (TG-16)==
 
The main CPU can be overclocked on real hardware but will also speed up audio.<ref>http://nfggames.com/games/pce/</ref>
 
 
[[Mednafen]] allows overclocking the CPU up to 100x, without affecting audio pitch, in its non-default [{{MednafenURL|documentation/pce_fast.html}} pce_fast] core via the [{{MednafenURL|documentation/pce_fast.html#pce_fast.ocmultiplier pce_fast.ocmultiplier}}] setting.
 
 
==N64==
 
Some emulators like the [[libretro]] port of [[Mupen64Plus]] have an overclocking option called "VI Refresh", and [[1964]] UltraFast (a very old fork of 1964) have an option to overclock the CPU.
 
 
Some games (see the list below) can take advantage of overclocking and improves frame rate, while most others (such as Super Mario 64) have built-in frame rate limiter and unaffected by overclocking.<ref>http://forum.pj64-emu.com/showpost.php?p=51810&postcount=6</ref><ref>http://www.emucr.com/2011/02/1964-ultrafast-v3.html</ref>
 
 
===List of games that can take advantage of overclocking===
 
<pre>
 
A Bug's Life
 
Aidyn Chronicles - The First Mage
 
Armorines - Project S.W.A.R.M.
 
Big Mountain 2000
 
Carmageddon
 
Conker's Bad Fur Day
 
Destruction Derby 64
 
Disney's Donald Duck - Goin' Quackers / Donald Duck - Quack Attack
 
Duck Dodgers Starring Daffy Duck / Looney Toons - Duck Dodgers
 
Earthworm Jim 3D
 
Extreme-G
 
Extreme-G XG2
 
F1 Racing Championship
 
F-1 Pole Position 64
 
Gex 3 - Deep Cover Gecko
 
GoldenEye 007
 
Hot Wheels Turbo Racing
 
Human Grand Prix - New Generation
 
Jet Force Gemini / Star Twins
 
Jeremy McGrath Supercross 2000
 
Kobe Bryant's NBA Courtside
 
Madden Football 64
 
Madden NFL 99-2002
 
Mario Kart 64 (Multiplayer and some tracks only)
 
Milo's Astro Lanes
 
Monaco Grand Prix - Racing Simulation 2
 
Monster Truck Madness 64
 
NASCAR 99/2000
 
NBA In the Zone 98 / NBA Pro 98
 
Off Road Challenge
 
Perfect Dark
 
Quake II
 
Racing Simulation 2
 
Rakuga Kids
 
Rayman 2 - The Great Escape
 
Roadsters Trophy
 
San Francisco Rush - Extreme Racing (Multiplayer only)
 
San Francisco Rush 2049 (Multiplayer only)
 
South Park Rally
 
StarCraft 64
 
Starshot - Space Circus Fever
 
Super Robot Spirits
 
Taz Express
 
Tom Clancy's Rainbow Six
 
Tonic Trouble
 
Toy Story 2
 
Transformers - Beast Wars Transmetal
 
Turok 2 - Seeds of Evil / Violence Killer - Turok New Generation
 
V-Rally Edition 99
 
WCW vs. nWo - World Tour
 
World Cup 98
 
</pre>
 
 
==GameCube/Wii==
 
[[Dolphin]] supports overclocking and underclocking the CPU. Overclocking can remove slowdown from games that have them, pushing them closer to their actual target frame rate. It causes several issues with many games, so don't expect it to be a perfect solution.
 
 
Dolphin used to have a VBeam Speed Hack that doubled GPU clock rate. This has since been removed, as the developers found that it didn't really help in many cases.
 
 
==PlayStation==
 
On real hardware, overclocking is possible using [http://djky2k3.tripod.com/psx_oc.html this modification].
 
 
On emulators, [https://github.com/SonofUgly/PCSX-Reloaded/releases this modified build] of [[PCSX-Reloaded|PCSX-R]] as well as [http://ngemu.com/threads/pcsxr-pgxp.186369/ this fork] allow for overclocking, though most games will break past 1.5x clock speed. Recent builds of Beetle PSX (the libretro fork of Mednafen's PS1 core) also support overclocking, by way of removing timing penalties instead of increasing clock speed.
 
 
==PS2==
 
On original model PS2s, you can overclock by a small amount without too much problem, but the biggest issue will be sped-up audio. Slim model PS2s use the GPU's clock rate as a base for the CPU (multiplying the GPU's clock by 2), so overclocking the CPU will also overclock the GPU resulting in many visual problems.<ref name="PS2OC">http://nfggames.com/forum2/index.php?topic=2220.0</ref>
 
 
All recent builds of [[PCSX2]] have a speed hack that allows you to increase the EE cycle-rate without having any effect on the audio, although it does still break a few games most of them run fine and with less slowdown. The emulator also has a speed hack called VU Cycle Stealing, which allows for increased GPU performance at the cost of CPU cycles. It gives an incorrect FPS readout, though.
 
 
==PSP==
 
[[PPSSPP]] allows over/underclocking of the main CPU. Due to Sony underclocking the CPU to 222 MHz then removing the underclock in a later firmware update to allow it to run at 333 MHz<ref>https://en.wikipedia.org/wiki/PlayStation_Portable_hardware#Technical_specifications</ref> (and thus not having games closely tied to clock rate), overclocking the system (and emulating an overclocked system) results to next to no ill effects.
 
 
==Neo Geo==
 
[[FinalBurn Alpha]] allows for overclocking of Neo Geo games. MAMEUIFX (aka MAME32FX) also allows for overclocking.<ref>http://mame32fx.altervista.org/home.htm</ref>  All Neo Geo should run at full speed when overclocked.
 
 
==Sega Genesis==
 
The original hardware can be overclocked leading to faster/smoother gameplay.<ref>http://www.youtube.com/watch?v=SVrElANZg2M</ref>
 
 
Most Genesis emulators don't allow overclocking. The [[Genesis Plus GX]] developer, for instance, says that implementing overclocking is "not easy to add without potentially break other things. <ref>https://code.google.com/p/genplus-gx/issues/detail?id=223</ref>
 
 
[http://aamirm.hacking-cult.org/www/regen.html Regen] allows overclocking in the dev build version.<ref>http://segaretro.org/Regen</ref> Games with sprite flicker, like Altered Beast, and games with some slowdown, like Rambo III or Mega Man: The Wily Wars, play perfectly with Regen's "Overclock M68000" setting at 732 (1.5x original speed). The game speed and audio are unaffected by overclocking.
 
 
BlastEm and HazeMD also allow for overclocking but neither are really recommended for normal usage.
 
 
==3DO==
 
Standalone Windows version of [[4DO]] allows up to 400% of the original 3DO clock speed, making some low frame rate titles such as Doctor Hauzer more playable. The libretro version of 4DO does not seem to contain overclocking features.
 
 
==References==
 
{{Reflist}}
 
 
[[Category:FAQs]]
 

Revision as of 08:47, 17 March 2019