IBM PC AT version 2 (06/10/85) BIOS commented code from IBM which shows a correct implementation of POST and chipset initialization.
The code is divided in the following files:
ios.asmBIOS routines INT12, INT11, INT02
bios1.asmINT15 BIOS routines
bios2.asmBIOS routines INT1A, INT70, INT5, INT8
disk.asmfixed disk BIOS INT13
diskette.asmdiskette BIOS INT13
dseg.incdata segment locations, KB/DSK/VIDEO data areas
keybd.asmkeyboard BIOS INT16, INT9
modref.incBIOS I/O interface
postequ.incequates used by POST and BIOS
printer.asmprinter adapter BIOS INT17
rs232.asmcommunications BIOS RS232 INT14
sysdata.incprotected mode EQU for post-test and BIOS routines
test3.asmPOST exception interrupt tests
test4.asmPOST and BIOS utility routines
test5.asmexception interrupt test handlers for POST
test6.asmPOST and system bootstrap
video.asmvideo display BIOS INT10
The IBM PC AT version 2 BIOS was built using IBM MASM 2.0 on DOS.
Other legacy IBM PC BIOS sources can be found at https://sites.google.com/site/pcdosretro/ibmpcbios
ibm-pc-techref.pdfcomplete IBM PC technical reference manual from the hardware design to the BIOS requirements (API, memory mapping, etc.).
biod-pnp-specification.pdfmodern BIOS specification with Plug-and-Play specification.
bios-boot-specification.pdffocus on boot selection specification.
bios-advanced-power-management.pdfextension for advanced power management.
bios-pentium-pro.pdfexample of BIOS writer's whose purpose is to provide to OEMs and BIOS writers recipes to initialize platforms based on a given processor like how to enable memory controllers, PCI bridges, processor's cores, etc.