Originally published at: http://www.howtogeek.com/171945/why-do-old-game-run-way-too-fast-on-modern-computers/
If you’ve ever tried to get a vintage computer game up and running on a modern system, you’ve likely been shocked at how fast the game ran. Why do old games run out of control on modern hardware?
I have an old copy of Joust. If you remember, you have to hit the button to flap the bird's wings to fly. There is no way to hit the button fast enough to stay off the ground, and the opponents moved at nearly the speed of sound. The game was completely impossible to play, and really hilarious to try.
Yup.. it's the unlimited-mhz-nightmare.
You have to understand, back in the early days, pc's were expensive. getting an extras 8m of ram alone would prolly bust your rec budget for a couple months. So in short, devs were very, very, very hesitant to tell their customers 'you need to upgrade', that would pretty much ensure no one played your game.
So games were optimized out the wazoo, speed tricks, short cuts, etc. Every thing to squeeze just a little more out of each cycle. naturally dos games assumed they were the only program running and so made a point of grabbing all the cpu cycles available.
Now many of these offenders were built around 486 cpus (which avged a max of like 80mhz), and the early pentium 1 cpus which topped out at like 166mhz to put that in modern measurements, this was a range of 0.08- 0.17 ghz. I won;t even mention 386 machines here.
So think of it, these games were designed to perform optimally at 166mhz on a single core cpu. It's a funny joke really, they never thought they'd ever be a situation where PC's would run that fast.
Now Some DOS games didn't have this problem due to the way they were programmed, some just used as many cycles as they needed. Windows games have always been reliant on the OS for resources so they never had that problem and all games going forward from 95 pretty much shared that design.
Dosbox typically offers the easiest fix.. allowing you to set the speed emulation runs at on the fly so you can tweak it.
166 Mhz x1 CPU... 8 MB RAM. No GPU
1898 Mhz x4 CPU... 8 GB RAM. Dual GPU.
Yeah, I get your point.
all you need is a good emulator and old games will run perfectly.
Fun fact: in VBA (Visual Boy Advance, Game Boy Advance emulator), you can press Space to actually make the game faster, as mentioned in the article. I love it when I can skip loading times and long storylines.
Not all emulators are 100% though. Admittedly DOsbox comes as close as you can without installing a DOS virtual machine.