4 ms·
At the highest resolution of the GP comment, 800×600, and a 240MHz CPU/MCU and 8MB RAM, 60fps smooth updates for things like scrolling, scaling, and drawing new
by jlokier 4y ago
At the highest resolution of the GP comment, 800×600, and a 240MHz CPU/MCU and 8MB RAM, 60fps smooth updates for things like scrolling, scaling, and drawing new buttons and icons should normally be possible with the CPU alone. Fading and blending large areas of the screen won't be, but small areas will be fine.
Basically anything that involves copying pixels or solid fills without per-pixel calculations. 60fps at 800x600 is 28.8Mpixel/s. Copying and filling at that rate should be achievable by a 240MHz CPU with some tight coding. The rest is 2d geometry, mostly axis-aligned, with relatively few edges. That's not demanding at all.
(I used to write 2d and 3d rendering engines for slower CPUs than that.)
A GPU is necessary for fancier effects like fades and shading, but the basics can be smooth on a CPU and the fancy stuff too if confined to smaller areas.
Also, for the car, people would be happy enough if it could do a consistent 30fps I think.
Those annoyingly slow GUI updates you tend to see on TV set top boxes are not slow because of the hardware... it's usually the software not being written with sleedy rendering in mind.
All that said, you're right that if there's a GPU or even just a Blitter, it should be used and then the CPU speed almost doesn't matter as the geometry calculations are so simple.