16-bit code (Turbo C, 16-bit Watcom C) | 32-bit code (DJGPP, 32-bit Watcom C) | |
---|---|---|
PCI; using 16- or 32-bit PCI BIOS | pcibio16.zip | pcibio32.zip |
PCI; using I/O ports to access configuration mechanism 1 | pci.c | |
PnP; using 16-bit PnP BIOS | pnpbio16.c | pnpbio32.c (thunking) |
PnP; using I/O ports (no BIOS) | (incomplete) |
PCICODE list: http://www.yourvote.com/pci
PnP documents:
BIOS32 specification: http://members.datafast.net.au/dft0802/specs/bios32.pdf
The specification for PCI BIOS, which is a 'client' of BIOS32, is freely available only to members of the PCI SIG. However, you can find samizdat copies on the web by searching for the phrase "PCI BIOS Specification"
The PCI specification is also not freely available, but can be found by searching for "PCI Local Bus Specification" Avoid incomplete documents with similar titles (e.g. "PCI Local Bus Specification Revision 2.1 vs. 2.0") Only Chapter 6 (Configuration Space) of this document deals with the software aspects of PCI. Some of the material in this chapter is summarized in Ralf Brown's Interrupt List.
- PnP code: lookup device code in PNPID.TXT and display description - PnP code: get supported resources and list all possible combinations - set hardware resources as well as reading them