I remember the computer I played Commander Keen on as a child had a turbo button that I was forbidden to touch, what did this button actually do?
7 Answers
The Turbo button originally adjusted the clock speed of the computer between the full speed of the machine and a slower speed intended to be compatible with something more industry standard. It wasn't at all uncommon for software to be written with a specific speed of hardware in mind and either fail to operate completely or operate in a way that was unusable at a faster speed.
(One example of this was the GATO submarine simulator, which was built to run on a stock IBM PC. The faster your computer, the faster your virtual submarine would go. By the 90's, it was easy to find hardware where you could zip across entire virtual world in a matter of seconds. The Turbo Pascal runtime had a more serious issue where programs built using it would fail to run entirely on machines fast enough to cause an overflow during a timing loop on startup.)
PC Accelerator boards had some interesting variations on the theme. Many of these boards could be disabled entirely with a switch to get back to the original, un-accelerated performance of the machine. (This feature wasn't completely without risk, because I remember at least one or two instances where I saw PC's that had these boards installed, but never enabled.) There were also a few boards that had finely adjustable clock rates. Much like overclocking today, the idea was to pick the fastest speed at which your specific hardware was stable. Some of these would also automatically defer selecting the faster clock rate at startup until the BIOS self check had passed. In an effort to avoid this sort of acceleration, IBM put a timing loop in the self check that would fail if the machine detected a faster clock rate... so waiting to select the faster rate would let the self check pass and then accelerate the machine.
All that said, the need for a button to slow a machine down wasn't all that commonplace. At the end of the era of Turbo Buttons, I think the biggest reason to have one was to put the text Turbo on the front of the machine, with whatever connotations of speed it implied.
- 4,836
- 1
- 16
- 23
-
27
-
2I remember playing the old Sim Ant on a machine with a Turbo button. It was useful for quickly skipping through long treks or for waiting for reinforcements to arrive after calling them. – Seldom 'Where's Monica' Needy May 20 '19 at 18:34
-
4I used to play the games Gorillas on QBasic, that used an empty for loop to slow down the animations, and worked on a 25Mhz machine. When you ran it on a faster machine, the animations were very fast and the game almost unplayable – fernando.reyes May 20 '19 at 18:47
-
1The Epson Equity 2/2+ and 3/3+ 286 machines my office had in the late 80s actually had switches for 8/10 Mhz, or 10/12Mhz in the case of the '+' models. None of the business software we ran at the time (WordPerfect, dBase ||, FoxBase) cared, so we kept them on the fastest setting. – LAK May 20 '19 at 20:43
-
12I think it is also worth noting that many PC's had LED 'readouts' that showed the CPU speed when in/out of turbo mode. These LED displays had absolutely nothing to do with the actual speed of the computer, and were configured by an array of jumpers on the backplane that allowed you to configure whatever you wanted the display to show. For example, the LED display in a 486DX2/66 might be jumpered to show 66 when turbo was 'on' and 04 or 08 when the turbo was 'off'. But you could really set them to show anything... – Geo... May 21 '19 at 11:31
-
I remember firing up Wing Commander (also written to run on stock 8086-based PCs, I believe) on a hot new 25MHz 80386 system. You could see things happening but could not possibly provide input fast enough to affect the missions in any way. – Hellion May 21 '19 at 15:46
-
On the flip-side, mo' slo was great when trying to play Bouncing Babies on a faster computer. – Wayne Werner May 21 '19 at 18:11
-
11@Geo A few of us spent a day reassembling an old machine in a HS programming class just so we could make the turbo readout say 'FU'. Ah, maturity... – brhfl May 21 '19 at 20:49
-
2Turbo(!) Pascal having problems with Turbo(!) mode is perfect. – val - disappointed in SE May 22 '19 at 06:38
-
3@val Actually, there's no overlap. While there was a bug in Turbo Pascal's CRT (division by zero in a delay function if the computer clock didn't change when measuring the speed), it only happened around 300 MHz or so CPUs (early Pentiums, especially combined with the new tricks these employed to be even faster). There was no turbo button for those. – Luaan May 22 '19 at 06:53
-
@Geo... and all PCs, I ever encountered, did nothing else but change the LED when the “turbo” button was toggled. Which was reasonable for machines that couldn’t go back to 8086 stock PCs anyway (same clock speed doesn’t imply same execution speed)… – Holger May 22 '19 at 10:21
-
2Most games developed after a certain point (e.g. beyond DOS days) utilized "timing loops" during startup to figure out the relationship between CPU speed and wall clock time, to scale the game's event loop to maintain consistent performance. When AMD introduced frequency scaling—dynamic adaption of the CPU frequency to CPU load—those initial timing loops were often very wrong. Counter-Strike, back then, didn't account for this, so you'd run around in-game at 4x the speed of everyone else… without triggering anti-cheat! Similar could be achieved manually via the turbo button. – amcgregor May 22 '19 at 15:44
-
Your last paragraph nicely explains why the button logic wasn't inverted and labelled "Slow". – dan04 May 29 '19 at 05:11
-
I worked in a computer company that days, and sometimes we setup the 7 segment displays to show "HI" and "LO", instead of what the clock speed was – Tommylee2k Nov 30 '23 at 09:11
The turbo button was implemented on machines with CPUs faster than the original IBM PCs. Some software relied on the CPU running at a certain speed to work properly, rather than using some external timekeeping mechanism to avoid running to fast.
With the turbo mode disabled via the button the computer would run at approximately the speed of an original IBM PC, for compatibility with that software. With it enabled the computer would run as fast as it could.
- 15,213
- 3
- 35
- 69
-
8The speed varied. On 8MHz 8086s, the button would switch between 4.77MHz (IBM speed) and 8MHz; but later models still had turbo buttons even though they didn’t have a setting identical to the speed of the original PC. I had a 33MHz 386 which would run at 16MHz when the turbo button was toggled. – Stephen Kitt May 20 '19 at 12:37
-
9Not to mention turbo buttons that simply disabled chache instead of changing clocks. – Raffzahn May 20 '19 at 13:44
-
4Not just software. You may have been saddled with a peripheral board that ran only at 4.77MHz speed so you'd have to boot without turbo mode if you wanted to use the device. – davidbak May 20 '19 at 16:35
-
3It might be noteworthy that as kids we were totally misled by the labeling at least in some cases - where enabling the (seemingly magic) Turbo button actually had the opposite of the expected effect. Also, an audible example would be Monkey Island, where the sound was distorted when running on a fast machine... IIRC, this seems to back this up. – kubi May 20 '19 at 18:28
-
I assume “speed“ and “faster” refers to the clock rate only, not instruction times or MIPS? – Michael May 21 '19 at 06:52
-
@Michael No. There were many things those buttons could do. Changing the clock rate was probably the most common, but there were also some that skipped cycles, and others that disabled advanced features on the CPU (pre-fetching, pipelining etc.). It was more a "compatibility" button than "turbo" :) I don't know if anyone actually implemented it as increasing the instruction times to be in line with older CPUs - it would be handy, but probably not worth the extra transistors (and IBM PCs didn't usually rely on precise instruction timing, unlike consoles and Apples). – Luaan May 22 '19 at 06:55
-
I had an XT clone where the turbo button switched between 4.77 and 20 MHz. I don’t remember ever using 4.77 though. – Michael Tracy Mar 18 '20 at 00:23
In addition to the other answers given:
I remember newer computers (up to the Pentium class) having such buttons.
I doubt that the Turbo button was connected at all in most later computers.
I suppose that the manufacturers of PC housings did not want change their production and therefore continued producing housings with a Turbo button (which was used for 8 MHz 8086 computers) although the button was not used for newer computers any longer (and Pentium computers could not be switched to 4.77 MHz frequency).
I remember some computers that could be switched between 33 and 66 MHz using the Turbo button. Maybe the manufacturers produced the housings to be compatible with such mainboards (but in 99% of all cases the button was not connected).
- 3,399
- 3
- 11
- 23
-
3Certainly my first PC (an Escom Pentium 75 using the Intel Advanced/ZP motherboard) had a turbo button that wasn't connected to the motherboard - it still had fast (75MHz) and slow (25MHz) clock speeds, but these were selected using keystrokes, leaving the button redundant. – john_e May 20 '19 at 19:58
-
I think the last PC I had with a turbo button that actually did something was a Cyrix 6x86 (Socket 7). The turbo button on that PC switched the L2 cache on the motherboard on and off. – mnem May 20 '19 at 20:13
-
5The turbo button on the case could sometimes be useful even if one's motherboard didn't have a connector for it. It could also be connected to the key-switch input if one wanted to disable the keyboard temporarily (e.g. in a household where cats might pounce an unattended keyboard), or--by cutting a couple wires and splicing them together--it could be used to mute the speaker. – supercat May 20 '19 at 20:29
-
There's a lot of "doubt" and "suppose" and "maybe" here. Do you have anything to back this up? – pipe May 22 '19 at 06:53
-
@pipe I know that the "Turbo" button was present but not connected on the PC that I owned years ago. However, I cannot say if the same was the case for 95% or for only 5% of other computers not having a "Turbo" button. – Martin Rosenau May 22 '19 at 06:57
-
2I had a Cyrix P150+ (roughly equivalent to a Pentium 100) that I ended up spending a day reinstalling Windows on because it had become dog-slow. When the fresh install of Windows was also slow, I hunted around for other causes, and eventually realised I had pressed the turbo button. So it was definitely connected on that 5th generation machine. – RB. May 22 '19 at 12:41
-
@MartinRosenau: I worked in PC assembly for a small shop in the 90's. From the Pentium-era, the turbo switches were not physically connected anymore. But we were instructed to still configure the displays to show "HI" and "LO", to prevent customers complaining about their turbo button not working. The same cases were used for 486 machines, were the turbo button actually switched the clock frequency. – slingeraap Mar 18 '20 at 07:50
The turbo button selected between normal and slow speeds. Slowing the system was done by slowing down the CPU clock speed or disabling cache memory
- 31,506
- 1
- 73
- 145
On many PC cases, the turbo button would close a contact between the two wires in a twisted pair that connected to it; the far end of the pair would have push-on connectors (sometimes a two-pin 0.1" connector, and sometimes two individual single-pin connectors). If a mother board had a speed-control jumper, the turbo button would often be wired to that, but it could be (and on some systems was) wired in series with speaker, so as to allow an easy "mute" function. Interestingly, some cases had an LED numeric display on the front and used a double-pole switch for the turbo button. Each segment of the LED display could be set using jumpers to be always on, always on, only on if the turbo button was pushed, or only on if it wasn't pushed. Although the button might cause a numeric display to change from e.g. "33" to "16", such behavior wouldn't imply that the button actually caused anything to run faster or slower (or was even wired to anything that would have any effect whatsoever beyond changing the digits).
- 35,993
- 3
- 63
- 159
386 and some early 486 board had still a Turbo button that slowed down the CPU speed. I had a Vobis 386 computer that had an 8 MHz/25 MHz 386. From what I recall in the manual was explained that was for reading copy protected floppies or software that didn't work at the higher speed.
- 11
- 1
The turbo button altered the speed on the computer, as some games would reply on the CPU speed in order to determine on how fast the game would run, and this would cause the program to run faster than intended the newer the computer got (however this isn't a problem with today's computers as we can emulate another cpu), so the turbo button was made in order to slow to computer so that it could run these programs. However, some made the computer run faster.
- 101
-
Welcome to Retrocomputing! Thank you for the answer, but it doesn't add anything that the other answers already have addressed. – DrSheldon May 23 '19 at 02:02
catdo?" – JoL May 20 '19 at 20:01