Ok, so the BASIC command set hasn't change, but how the OS interacts with the device does.
If what you are saying is true then why do all hardware manufactures have different versions of their drivers or even write drivers to begin with? I would we willing to concede that a communication channel with the device shouldn't really change, but to get real functionality out of the device the OS has to know exactly how to interact with that specific hardware. That type of interaction is very dependent on low level system calls that the OS uses to provide a common interface into that type of device. Take printers for example. Printers have a UI that allows a user to select certain capabilities for a printer. That UI is provided as a part of the driver package (in Windows, I don't print much in Linux). Can that driver use the same code to provide that UI for every OS? Sure you could allow the OS to present the UI, but as a manufacturer how do you differentiate your device so that people will buy it? My device can do a 400X zoom, but the standard is only 300X so my device doesn't appear any better than my competitor.
I think that you are thinking about this a little too simply. You could argue that the basic commands in C haven't changed in 30 years so all C programs should run on any platform. It's really not that simple.
Are you talking about devices such as WinModems?
The only devices that I have ever seen that only use a generic driver are mice and keyboards. Of course these devices really haven't changed in 20 years either other than the port that they plug into. If you are willing to accept 20 year old capabilities (such as VGA) then you probably don't need drivers, but who buys a device and would accept 20 year old capabilities.
Could you provide a reference to this command set? Just curious since I have never heard of it before unless you are referring simply to the assembly language.
Keep Up with TechRepublic