Why do old emulated games still suffer from slowdown and lag when they run on modern computers?

375 views

Why do old emulated games still suffer from slowdown and lag when they run on modern computers?

In: 36

10 Answers

Anonymous 0 Comments

Games on those systems ran on a pretty tight schedule: process the game, wait for a signal from the graphics processor that frame drawing had finished, and then update the screen graphics while the hardware preps for the next frame to be drawn. Games lag when processing the game took so long that the signal from the graphics processor went unnoticed, and the game waits for the *next* signal before continuing, cutting the game speed in half since only every other signal progresses the game.

Emulators try to simulate the original hardware faithfully. That means the CPU speed is still slow – the NES was about 1.72 MHz, and the SNES was only around 4 MHz on the main CPUs. The signal from the graphics processor may be simulated, but the timing still matches the real hardware and the game code will still wait around for the second signal if it missed the first.

You could raise the CPU speed in the emulator, but you run risks doing that. Multiple chips in the original hardware communicate with each other and their timing may be thrown off by one chip running faster than another, and overclocking more chips may have side-effects like audio being distorted. The hardware can query the graphics processor to see its progress and it might mess up the game logic if the CPU were running faster than expected.

Basically every console in the world was effectively the same specs with only minor regional differences (typically 50 Hz vs 60 Hz). Develops wrote their games assuming this to be true. Changing reality in this way may have unexpected surprises and it’s not the devs’ fault if that happens.

You are viewing 1 out of 10 answers, click here to view all answers.