4 ms·
EGA essentially gives you a big framebuffer. You can draw whatever arbitrary thing you want in EGA's graphics mode: lines, circles, individual pixels, whatever.
by JohnBooty 3y ago
EGA essentially gives you a big framebuffer. You can draw whatever arbitrary thing you want in EGA's graphics mode: lines, circles, individual pixels, whatever. That's what it's built for.
But you don't get scrolling for free. You've got to manually copy memory around and as the linked article points out, if you brute-force it you only get around 5fps because of the ISA bus' limited bandwidth.
The NES (and other 8/16bit) game systems are not built to let you draw arbitrary crap. They are built to render tiles. You define a grid of background tiles and provide a scroll offset. Sprites work similarly but they can move independently. You get all this for free at 60fps. The downside is that you can't render arbitrary stuff very easily. You have to jump through some serious hoops to e.g. paint an individual pixel somewhere.
It's not so much that Nintendo "figured it out" before IBM. IBM built a general-purpose computer and created a series of general-purpose graphics systems geared towards static graphics, giving you fine-grained control over every single pixel. If you look at an EGA card it's a beast; lots of silicon on there.
Nintendo on the other hand created a much simpler single-purpose graphics system geared toward sliding tiles around.