After a lot of development learning around a 12-year full time span, I have noticed that the PC is crippled in standard hardware but at least it has the functions to enable the different video modes, 32 or 64 bits, using storage media and the like.
But an area where at least a modern PC absolutely lacks any BIOS or standard functions (even around, before and after year 2000) is sound, the sound card. Without sound that can be readily used after booting, not many people think about making games or multimedia programs without Windows.
With such a modern card that could just be used after boot (like a driverless standard Sound Blaster), the PC platform as it is would immediately become a real option as a gaming console platform, and many people, not just big enterprises, could implement games and multimedia programs again easily.
We just need to seriously use brain power to concentrate efforts to implement a PCI sound card that works as a truly standard Sound Blaster, find out which chips to use, and do it.So I have been thinking, why not look for a way to document in the Wiki and the forum how to make PCI cards? From there, it would be necessary to find the right sound, signal and processor chips to program the Sound Blaster logic, commands, DMA usage, etc.
These are Google results I have found very useful:
http://www.pyroelectro.com/2011/06/29/making-your-own-pci-interface-diy/http://hackaday.com/2005/10/07/pci-simplified/http://google.com/search?q=how%20to%20pci%20cardhttp://google.com/search?q=how%20to%20make%20a%20pci%20cardI'm thinking that we always resent in practice that there are no longer standard hardware devices such as video and sound cards, but now there are many powerful things like FPGAs, Arduino, and there are even some x86 test board, and probably other kits I don't know about that we could use to build PCI cards that have open standards with full compatibility with legacy PCs, but now running in modern machines.
For sound, we just need to find which integrated circuits are needed, which processors, how to implement the MIDI logic, the wave table, the frequency generator (this one to play sound), which DAC and ADC chips we could use, and look for a way to provide at least Line In, Line Out and Microphone. Those should probably be different chips so as to provide all those functions simultaneously.
So why not make a serious and continuous try at implementing PCI devices that really work and that are really standard, which have the full logic implemented into the hard card so we don't really need drivers to enable, find or use those functions? It would probably be more beneficial to preserve and port the standard features that are fading or that were left only in ISA hardware (simple yet scalable NE2000 network, Sound Blaster sound, standard SVGA with already-accelerated processing for all graphics hardware operations), would unstall most of OS development that always stops at trying to drive non-standard hardware, and would finally make feel that the PC platform is safe from dying by the complete loss of hardware standards for driving devices given that now we would openly implement those devices.
Maybe Ben Lunt could also make a tutorial about handling the PCI logic, hardware, circuitry, bus, protocol, etc. Then it would also be possible to build open hardware and books that talk about implementing PCI cards with updated/ported legacy standards, and the first thing that comes to mind in order of importance are always sound cards that at their base are fully compatible and usable without drivers even from old DOS games as Sound Blasters, to then add AC'97, but without leaving out the full Sound Blaster specifications.