It was a vast leap for PC gaming and it opened an new era of PC gaming.
However, here is what I never quite understood, what was so different about the NES and PC tech that Nintendo had figured out to do sideways scrolling years before the PC?
It was a vast leap for PC gaming and it opened an new era of PC gaming.
However, here is what I never quite understood, what was so different about the NES and PC tech that Nintendo had figured out to do sideways scrolling years before the PC?
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.
Here’s a video of the port: https://youtu.be/1YWD6Y9FUuw
My Dad pulled it from the DEC internal file sharing service and brought it home. I long believed that it was a figment of my imagination until I heard that ID had developed a demo for Nintendo that must have gotten leaked
PC's have typically had a much more bitmapped graphical regime, where individual pixels are addressable and drawable, which better suits a general purpose computer but means you have to do some trickery if you want to get some of the polish that consoles had, and was typically slower since you didn't have dedicated hardware that spoke in those terms. on the flip side though setting up a windowing system on an NES with its hardware speaking in sprites and tiles would be a nightmare.
The downside is that that's all it does. That's the whole graphics system. You can't like, paint an individual pixel.
(you can, if you treat each tile as a mini framebuffer, which is how something like the NES port of Elite is possible, but this is expensive and you only have a very small amount of processing time and a limited number of tiles)
PCs staggered on thanks to much faster 32-bit CPUs, but they didn't really pull ahead until 3D cards became the norm towards the late 90s.