Mind if I quote your post some, Erik?
Similarly, in a much closer example to PC games, if you develop games for the XBox, you can expect that your customers will all have the same XBox manufactured by Microsoft with the same hardware. Once the hardware changes, it's a whole new platform (i.e. XBox 360 or Playstation).
Well, there are actually hardware refreshes for consoles, like in three-four years, that console will use hardware which is half the size, etc; look at the original PS2, and the new "slim" PS2s. But yes, they occur on stable preset time tables, and there aren't much moving posts.
What I'm getting at is the perhaps now old yarn that developing for PCs is different. Not only is every PC virtually unique in its own combination of hardware
Things have improved a lot since the "golden age" of PC gaming, the late 1980s, early 1990s; where you had tons of different sound cards, each with their own specific way of doing things, tons of different graphics cards, each with their own way of drawing SVGA, and of course tons of unique mouse drivers.
Oh, I know that by 1993-1994, they had hashed out a set of common SVGA extensions so that programming was a lot easier, same for sound drivers -- but by that point, Windows 9x was about to become dominant for game development.
Nowadays, there are only two-three "major" sound or video card manufacturers, and they all operate under DirectX's various modes; which makes developing a hell of a lot easier; instead of having to write code that calls on each manufacturer's own specific card, you just need to write a call for DirectSound or DirectX. However, there are problems (see below).
but even some of the up to date drivers have bugs or perform differently from the spec they are supposed to math.
Oh yes. Video card manufacturers are notorious for this; not meeting the DirectX specs, and taking all sorts of "shortcuts" to gain increased benchmarking performance; which means that a program that was written in compliance with Direct X 9.0c spec might have graphical errors on either ATI or NVIDIA hardware; due to each manufacturer taking their own "view" of what constitutes compliance with spec.
In fact, many driver updates also break older games, which is why a lot of people don't update their drivers regularly.
Just look at the games that Internet Browsers did until recently in HTML spec compliance.
What I think really has helped Matrix a lot, is that all of your software is aimed at the mid to lower end of computing software; even Panzer Command is aimed at a lower 3D machine spec; and this means that less issues will be created/found.
By contrast, bleeding edge games like CALL OF DUTY XLVI, have to play "loose" with the current specifications for DirectX; in order to get the graphical look/speed demanded by the market; and it's a mark of how good the programming staff is if they can push the bleeding edge and still have it run on the majority of common hardware with no major bugs. ID software is especially good with this.