Professional Documents
Culture Documents
Table 1 shows the standard format of the information stored in the 64-byte standard CMOS RAM module. This information controls the configuration of the system and is read and written by the system Setup program.
Table 1
Offset Hex 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah
0Bh
11
1 byte
Table 1
Offset Hex
Continued
Offset Dec Field Size Function Bit 2 = Date format 0 = Calendar in BCD format (default) 1 = Calendar in binary format Bit 1 = 24-hour clock 0 = 24-hour mode (default) 1 = 12-hour mode Bit 0 = Daylight Savings Time 0 = Disable Daylight Savings (default) 1 = Enable Daylight Savings
0Ch
12
1 byte
Status register C Bit 7 = IRQF flag Bit 6 = PF Bit 5 = AF flag Bit 4 = UF flag Bits 30 = Reserved Status register D Bit 7 = Valid CMOS RAM bit 0 = CMOS battery dead 1 = CMOS battery power good Bits 6 0 = Reserved Diagnostic status Bit 7 = Real-time clock power status 0 = CMOS has not lost power 1 = CMOS has lost power Bit 6 = CMOS checksum status 0 = Checksum is good 1 = Checksum is bad Bit 5 = POST configuration information status 0 = Configuration information is valid 1 = Configuration information is invalid Bit 4 = Memory size compare during POST 0 = POST memory equals configuration 1 = POST memory not equal to configuration Bit 3 = Fixed disk/adapter initialization 0 = Initialization good 1 = Initialization failed Bit 2 = CMOS time status indicator 0 = Time is valid 1 = Time is Invalid Bits 10 = Reserved Shutdown code 00h = Power on or soft reset 01h = Memory size pass 02h = Memory test past 03h = Memory test fail 04h = POST end; boot system 05h = JMP double word pointer with EOI
0Dh
13
1 byte
0Eh
14
1 byte
0Fh
15
1 byte
Table 1
Offset Hex
Continued
Offset Dec Field Size Function 06h = Protected mode tests pass 07h = Protected mode tests fail 07h = Protected mode tests fail 08h = Memory size fail 09h = Int 15h block move 0Ah = JMP double word pointer without EOI 0Bh = used by 80386
10h
16
1 byte
Floppy disk drive types Bits 74 = Drive 0 type Bits 30 = Drive 1 type 0000 = None 0001 = 360KB 0010 = 1.2MB 0011 = 720KB 0100 = 1.44MB Reserved Hard disk types Bit 7 4 = Hard disk 0 type (015) Bit 3 0 = Hard disk 1 type (015) Reserved Installed equipment Bit 7 6 = Number of floppy disk drives 00 = 1 floppy disk drive 01 = 2 floppy disk drives Bit 5 4 = Primary display 00 = Use display adapter BIOS 01 = CGA 40-column 10 = CGA 80-column 11 = Monochrome Display Adapter Bit 3 2 = Reserved Bit 1 = Math coprocessor present Bit 0 = Floppy disk drive present Base memory low-order byte Base memory high-order byte Extended memory low-order byte Extended memory high-order byte Hard Disk 0 Extended Type (0255) Hard Disk 1 Extended Type (0255) Power On Password CMOS checksum high-order byte
11h 12h
17 18
1 byte 1 byte
13h 14h
19 20
1 byte 1 byte
21 22 23 24 25 26 27 46
Table 1
Offset Hex 2Fh 30h 31h 32h 33h
Continued
Offset Dec 47 48 49 50 51 Field Size 1 byte 1 byte 1 byte 1 byte 1 byte Function CMOS checksum low-order byte Actual extended memory low-order byte Actual extended memory high-order byte Date century in BCD POST information flag Bit 7 = Top 128KB base memory status 0 = Top 128KB base memory not installed 1 = Top 128KB base memory installed Bit 6 = Setup program flag 0 = Normal (default) 1 = Put out first user message Bit 5 0 = Reserved Reserved
34h
52
2 bytes
Note that many newer systems have more than 64 bytes of CMOS RAM; in fact, most systems use at least 256 bytes, whereas some can have up to 2KB or 4KB. The extra room is used to store the Plug and Play information detailing the configuration of adapter cards and other options in the system. As such, there is no 100% standard for how CMOS information is stored in all systems. Table 1 only shows how the original systems did it; newer BIOS versions and motherboard designs can do things differently. You should consult the BIOS manufacturer for more information if you want the full details of how CMOS is stored because the CMOS configuration and Setup program are usually a part of the BIOS. This is another example of how close the relationship is between the BIOS and the motherboard hardware.