Redefining Console Generations
I propose classifying game console generations by hardware capability rather than release date.
Motivation
Typically, game console generations have been defined by release date, arbitrary tech specs, or marketing needs. This commonly leads to overlapping and conflicting generations, with no standard other than vibes.
Arbitrary Lines
This graph from wikipedia shows multiple interpretations of console generations based solely on release year.
The lines drawn are conflicting and arbitrary.
Overlapping Timelines
Here's a popular image with everything that I disagree with crossed out.
It confuses the Coleco Telstar with the Telstar Arcade, which would still be wrong. It puts the ColecoVision and Atari 5200 up against the NES based purely on the Japanese Famicom release date. It puts the Atari 7800 up against the SNES even though it came out five years earlier, purely because they didn't want to have two Ataris in one generation. This image is a disaster.
The System
I propose redefining the console generations to reflect important technical milestones.
- Generation 1 - Fixed function hardware
- Generation 2 - General purpose CPUs
- Generation 3 - Scrolling tile maps and sprites
- Generation 4 - Multiple planes
- Generation 5 - Fixed function 3D rendering
- Generation 6 - Configurable rendering
- Generation 7 - Fully programmable shaders
These not only reflect important changes in hardware, but changes in gameplay and graphics design philosophy.
Things that don't matter:
- Storage Medium - Mask ROM, discs, tape, flash, HDDs, data gets into the cpu all the same.
- Release Date - Forward thinking visionaries and laggards abound in this industry. An old console design delayed by two years doesn't enter the next generation.
- Brand Line - A new product from the same company doesn't mean a new generation, no matter how much their earnings call depends on it.
- Arbitrary Tech Specs - AKA the bit wars. A system is more that its bus width or instruction length. After the questionable returns of 64-bit, systems quietly went back to 32-bit processors while kids on the playground called them 128-bit.
- Game Quality - Good and bad games can be made under any paradigm.
- Deliberate Crippling - A late generation system with non-removable software doesn't go down to generation 1 just because they system is now 'fixed function'. Welding the doors shut on your car doesn't turn it into a horse.
- Code Ninja Shit - A clever programmer or time traveller from the future can make a system do almost anything. What we're interested in is the standard, expected mode of operation - the thought model of the system.
Generation 1 - Wires
In the beginning, there was:
Purpose built systems that do exactly one thing. They cannot be reprogrammed. Timing is determined by capacitors charging, logic is driven directly by transistors, the physical components
are the program.
Bertie The Brain (1950)
A purpose built vacuum tube computer with a dedicated display allowed visitors to play tic-tac-toe against an algorithm with three difficulty settings.
Arguably not a "video game", but important.
Tennis for Two (1958)
An analog computer designed to calculate artillery trajectories was repurposed into a game, using an oscilloscope for a display.
Computer Space (1971)
A derivative of the earlier Spacewar!, refactored to use discrete logic chips.
Commercial CPUs just weren't up to the task, or down to the price point needed.
Magnavox Odyssey (1972)
This system had cartridges that were, in reality, just jumpers that set different configurations of the machine. They did not contain any program information. Later pong consoles would use switches for similar functions.
That's right, the very first home game console to ever exist had scam DLC.
Much of the game logic is left up to the players using physical pieces.
Pong (1972, Arcade) (1975, Home)
Originally developed as an analog computer with discrete components, the functionality was condensed into a single application specific integrated circuit, or ASIC, for commercial home release.
This meant almost the entire machine fit on a single chip and could be mass produced for low cost. It was licensed to many third parties.
Coleco Telstar (1976)
This is one of the many many brands and variations of pong console produced.
I wanted to call this one out in particular to contrast it with the Telstar Arcade, which is different.
Coleco Telstar Arcade (1977)
This system used triangular cartridges and each one contained a different variation of the pong ASIC.
There is no CPU or software, each cartridge is single purpose computer with hard wired functionality. The 'console' serves as a power supply and controller.
LCD Handhelds (1979-Present)
There are lots of these and extensive research would be required to figure out if each one uses discrete logic, an ASIC, or a real cpu, but regardless, the fixed nature of the display makes them all single purpose machines.
This includes the Matel Microvision, Nintendo Game & Watch, systems branded by Radio Shack/Tandy, Tiger Electronics, and many others.
Generation 2 - Code
This generation moves from hardware-defined logic to software-defined logic. Key features:
- Programmable CPU
- General Purpose Display
Video signals are memory driven or beam racing. Sprite and tile based accelerators may exist, but there is no scrolling or camera position. The mental model is frequently similar to a board game - there is a background with things on top of it. The core idea is that a cpu draws things to the screen.
Some of the earliest games here pre-date their "first generation" counterparts. This is because they were developed in research environments on equipment that cost millions of dollars.
OXO (1952)
A tic-tac-toe program developed for the EDSAC. CRTs were used to monitor the memory directly, initially for debugging but repurposed as a primitive bitmap display for this title.
A programmable computer is driving a general purpose dot matrix display. It's turn-based, but this is undeniably a video game. There doesn't seem to be a real photo of it anywhere.
Christopher Strachey�s Checkers (1952)
Developed for the Ferranti Mark 1, a programmable vacuum tube computer.
It is unclear if this or OXO was developed first. These early programs were not documented well. This photo is listed as real on wikipedia, but I have my doubts. The source is some guy's blog and you know you can't trust those.
Spacewar! (1962)
Developed for the PDP-1 "mini" computer (only weighed 1600lbs).
It has real time gameplay at a clock speed of 187Khz.
Fairchild Channel F (1976)
The first commercially available console to use cartridges with ROM chips on them.
RCA Studio II (1977)
This interesting system has a CPU and a 64x32 black and white bitmap display.
Development and certification delays pushed it in front of the Channel F and up against the 2600, dooming it to failure.
Atari 2600 (1977)
It's hard to overstate how bare-bones this thing was. Developers had to manually program each scanline, like running a very high frequency typewriter. Here's a great
RGME video on the subject.
I think it succeeded soley on the back of the joystick design, but that's a discussion for another time.
Intellivision (1979)
VIC-20 (1980)
Character map, but no sprite hardware. Software tricks were needed to do almost anything.
IBM PC (1981)
The PC never had hardware scrolling. Carmack got Commander Keen to work via code ninjitsu, and it was still a bit janky.
Eventually the CPUs became fast enough that frame buffers could be refreshed with arbitrary geometry in real time, fading directly from gen 2 to gen 5.
ColecoVision (1982)
Containing an enormous (for the time) 16KB of VRAM, it supported tilemapped graphics with sprites, but critically did not have per pixel scrolling.
It's a system designed to match the single-screen arcade games of the era.
Vectrex (1982)
A CPU draws things to a vector display.
Atari 5200 (1982)
Sega SG-1000 (1983)
Released the same day as the Famicom, but without hardware scrolling.
At the time, most arcade games were single-screen or flip-screen and the early Famicom titles reflected this. But when Super Mario Bros came out in 1985 it would have completely out-classed anything on the SG-1000, necessitating the release of the Master System and setting Sega onto the cycle of half steps and reactive measures that would eventually be their undoing.
MSX (1983)
A standardized computer architecture conceived by Microsoft for the Japanese market.
It did not have scrolling, in an ecosystem where it was clearly desired. Almost every game is a choppy tile-scrolling mess.
Atari 7800 (1986)
Despite coming out after the NES, this system did not have hardware scrolling. Games had to brute force it in software and it did not work out well.
If you ever wonder what happened to Atari, they made 3 consoles in the same generation.
Phillips CD-i (1991)
This system can show bitmaps on the screen. That's basically it. It's a jumped up DVD menu system tortured into a game console.
The CDi Zelda games, outside of their infamous cutscenes, have gameplay that takes place on a single or double screen bitmap with choppy scrolling - because that's all the system could handle. There's almost no affordance for game features at all.
Apple Pippin (1996)
The architecture is philosophically the same as a PC. A CPU writes to a video buffer.
Tamagotchi (1996)
It has a 4-Bit CPU and a dot matrix display, making it an extremely weak locked down general purpose computer.
Tiger Game.com (1997)
A 4.9Mhz CPU (not 10mhz as reported on Wikipedia) draws to a bitmap buffer. No acceleration for sprites, tilemaps, or scrolling, and nowhere near enough grunt to refresh that buffer every frame.
Possibly the worst system that could have been made with the resources available at the time.
Generation 3 - Tiles
This generation features hardware acceleration for:
- Sprites
- Tile Maps
- Scrolling
These are machines specifically designed to go beyond the early single-screen arcade style games. The world is now made of a pattern of tiles and we're setting a viewport into that world. As the beam scans down the screen, dedicated video hardware references the tiles and sprites as they are needed.
Commodore 64 (1982)
It has a character map with color attributes and most importantly, scroll registers.
NES (1983)
The PPU handles tilemaps, sprites and scrolling.
Sega Master System (1985)
Dedicated VDP chip has similar capability to the NES.
They shoulda put the pause button on the controller.
TurboGrafx-16 (1987)
It's got 16 bits rattling around in there somewhere but it still only has one tile layer.
The lack of room in the HuCards for expansion chips actually puts the turbografx's attempts at parallax behind the better offerings on the NES.
Game Boy (1989)
Very similar in capability to the NES with some added scan line capability.
Game Gear (1990)
It's virtually the same as a the Master System.
Putting them in different generations would be silly.
TurboExpress (1990)
A portable TurboGrafx-16.
Generation 4 - Planes
A refinement of the 3rd generation with the key addition of:
- Multiple Background Planes
Limited scaling and per-scanline scrolling adjustment can give a pseudo 3D effect on some systems. Some titles may repurpose a tilemap as a low resolution frame buffer for arbitrary rendering, but the systems are still built for layering up 2D planes with scrolling tiles.
Sega Genesis (1988)
Right out of the gate we've got multiple background layers scrolling faster than they probably should.
Atari Lynx (1989)
The Lynx is a true outlier. It uses the everything-is-a-sprite model like the Neo Geo, but renders them to a double frame buffer with support for scaling and skewing, allowing them to act as polygons with some clever programming.
It's advanced generation 4 hardware that anticipates generation 5 software models, and you could make an argument that it belongs along side the Saturn with its sprites-as-polygons model.
SNES (1990)
Different modes with up to 4 background planes, or one plane with affine transformation (mode 7).
Layers can be combined with different color math options on the first steps to what would become pixel shaders.
Neo Geo (1990)
This one is interesting because everything is a sprite, essentially rendering via a list of draw calls, a much more modern technique. But it lacks arbitrary transformation and thus can't do 3D.
The mental model is still one of a bunch of tile layers, even if those tiles are a conga-line of huge sprites.
Sega CD (1991)
Adds some scaling features and video playback, but they're still fundamentally tile layers. There is no arbitrary transform and no change in mental model.
The Sega CD layer is composited into the Genesis tile layers and often looks identical.
Virtual Boy (1995)
It has frame buffers with double buffering, but those frame buffers are primarily filled in by a tile based layer compositing system.
Most games are stacks of 2D planes. Red Alarm and 3D Tetris manage to wring wire frame graphics out of the system, but it's not happy about it.
Sega Nomad (1995)
It's a portable Sega Genesis, literally. Same cartridges and everything.
Making it run on batteries doesn't change the generation.
Game Boy Advance (2001)
Billed as a portable SNES in capability, it also has backwards compatibility with original Game Boy games, and it's fast enough to support frame buffer rendering leading to some
truly impressive 3D titles.
This tempts me to put it into gen 5, but the expected mode of operation is to use the accelerated multi-plane tile map capabilites of the system.
Generation 5 - Geometry
This generation completely changes the rendering paradigm, adding:
- Frame Buffer
- Polygon Pipeline
Instead of referencing a tilemap as the beam scans down, we now have a list of objects that is drawn into the frame buffer every single frame. Polygons are rendered with fixed function math, sometimes with limited multitexturing capability.
SuperFX (1993)
They put new hardware into a cartridge to render polygons into a frame buffer.
3DO (1993)
Atari Jaguar (1993)
SVP (1994)
Sega's Response to the SuperFX chip. Only used in one game, Virtua Racing.
32X (1994)
Unlike the SegaCD, this peripheral adds a full double frame buffer. Its dual CPUs are expected to transform and rasterize polygons in software.
Sega Saturn (1994)
Technically this system uses background layers and sprites, but the sprites can be transformed, skewed and rotated, essentially turning them into polygons.
Playstation (1994)
There's no z-buffer, so you have to sort the polygons yourself, but it has hardware transformation and lighting.
3dfx Voodoo (1996)
You can argue about the exact point where software rendering becomes fast enough that polygons become the default, but the PC undeniably enters generation 5 when dedicated 3D accelerators hit the market.
Nintendo 64 (1996)
Technically you can reprogram the microcode for gen 6 shader-like capabilities, but at the time no one knew how to do that.
There's ray-tracing on it now, though.
Dreamcast (1998)
When you look at the games, you see plain textured polygons. It's doing it better than the other systems, but it's still fixed function rendering.
If you ever wonder what happened to Sega, they made 3 consoles in the same generation.
Nokia Ngage (2003)
It sucks but it renders polygons into a frame buffer with texture mapping.
It's entirely CPU driven,
Generation 6 - Pipelines
This is a transitional generation where multitexturing and math options become complex enough to give shader-like outputs, but would be more accurately be described as configurable than programmable.
Playstation 2 (2000)
The shader system on the PS2 still causes problems in emulation because it's not directly translatable to modern shading techniques.
GameCube (2001)
The TEV exposes 16 stages that can be set to combine colors using a set of fixed functions. This provides a lot of combinations, but it's not fully programmable.
It is more easily mapped onto modern shaders than the PS2 though, so emulators have an easier time.
Wii (2006)
It's an overclocked GameCube.
If you ever wonder what happened to Nintendo, they made 2 consoles in the same gen- oh wait they made ten billion dollars nevermind.
OpenGL Extensions
On the PC side of things, there was constant competition on graphics cards with many players attempting to one up each other with new features, but there was nothing even close to a standard or complete interface for these features.
A new card would support something like bump mapping and it would have to be manually activated through a specific extension.
Generation 7 - Programs
The era of standardization:
- Fully Programmable Shaders
You are now executing a program on every pixel of the screen. The interface model supports everything, doing more is just a matter of execution speed.
These systems also all have some kind of high speed local storage. This is more of an incidental addition than strictly necessary. There were base models of the XBox 360 with no hard drive, which an annoyance but not a game breaker. Much hype was made around the PS5's SSD, but seamless worlds can work at almost any data rate, it's a change in quantity not in kind.
Some may make a distinction between early pixel shaders and later compute shaders, where non-graphical elements can be calculated on the GPU's vector processors, but this is mainly used for special effects like physics simulation and does not seem to change the type of game being made.
XBox (2001)
It's a PC designed to run DirectX - a DirectXBox.
In DirectX 8, you provide vertex and pixel shaders - programs that execute arbitrary compute on every vertex and pixel on the screen in parallel. The only difference between this console and a brand new one is scale and speed.
Xbox 360 (2005)
The CPU is Tri-Core PowerPC paired with an ATI GPU, but you're executing code and running pixel shaders.
Modern games like Grand Theft Auto 5 and Metal Gear Solid V run without issue, really only held back by compatibility with the DVD-only models.
Playstation 3 (2006)
It's another weird processor, but that's just a compiler flag.
That's why games like The Last of Us can come out on the PS3, PS4, and PS5 and look exactly the same.
Wii U (2012)
Another Tri-Core PowerPC paired with AMD Graphics.
Playstation 4 (2013)
The era of the system on a chip - the SoC - begins, combining off the shelf CPU, GPU and memory controller components onto one package as a cost saving measure.
You can no longer even pretend that this isn't a computer.
Xbox One (2014)
AMD SoC.
Nintendo Switch (2017)
Nvidia SoC.
Xbox Series X/S (2020)
AMD SoC.
Playstation 5 (2020)
AMD SoC.
Steam Deck (2023)
AMD SoC.
This is a "computer" but uses the same hardware a "console" - and often the same software as well.
It's a distinction without a difference.
Nex Playground (2023)
Arm SoC.
Integrated camera tracking peripheral, similar to xbox kinect or playstation eye toy.
Nintendo Switch 2 (2025)
Nvidia SoC.
The End of History?
That's it. We're still in generation 7. Everything is essentially the same. If you set out to make a brand new NES today on the latest 3nm process node, you could probably clock it up to 5GHz, but it could never run a modern game. But if you build a PS4 on the latest process node... well you're just building a PS5.
Attempts at new standard formfactor consoles like the Ataribox, Intellivision Amico, or Coleco Chameleon - these were all scams or delusions. We're well past the era where you can pull different chips off the shelf and get some new graphical capability. Everything is a CPU with a GPU attached that runs the shader/fragment model and the market is liquid enough that price directly correlates with performance. So when you say "we're making a new console" what you really mean is "we're purchasing an SoC, putting it in a box and artificially limiting software to run on it".
Consoles as a concept only exist because large established players can leverage their market position to artificially lock off certain games. If you're not big enough to make your own artificially walled garden, you won't be making anything.
Generation 8 - Inferencing
I believe real-time generative AI could play a big role in future games.
Google has demonstrated
Project Genie which can turn any image into an interactive scene. I could see this working in an open ended narrative game - a choose your own advenuture where anything could happen - but I don't think it will be consistent enough for traditional gameplay driven games (and if it was, it would be a waste of resources). It would also be great for porn but they're never going to do that.
A more robust solution would be to use traditional methods to render a basic gameplay skeleton, then use AI inferencing to produce stylized graphics on top of it. This has the potential to bypass shaders entirely and make a game in any art style imaginable. It would also be evaluated in constant time - a large constant time, but it wouldn't scale up with the complexity of the scene. A field of grass would render in the same time as a flat table.
To make this cost effective would require new hardware, and the number of companies that could do it are limited and currently unmotivated to do anything consumer facing. It might be possible on current hardware with some as-yet-undiscovered software techniqe.
Super Mario 64 AI Video (2025)
Using RunwayML video-to-video to transform Super Mario 64 footage, this shows what future games could look like.
It is quite jank at this time. Results could probably be improved by rendering a depth map directly from the emulator.
Genie 3 (2026)
Images are transformed into character movement simulations.
Limited to 60 seconds of play time. Costs $250/month.
Arguments
Here are some things you could argue about:
- Does the PAL NES port of Elite count as generation 5 because it renders 3D graphics to a makeshift frame buffer?
- Does changing zone height on the Atari 7800 count as hardware accelerated scrolling?
- Does the 16 stage GameCube TEV count as a programmable shader?
- Are compute shaders worthy of their own generation?
Discussing either side of any of these questions would be infinitely more intelligent than arguing about whether or not two 32-bit processors add up to 64-bit, or if we should draw a line in 1987 or 1989.
Comments