source: xtideuniversalbios/trunk/Assembly_Library/Inc/CMOS.inc @ 605

Last change on this file since 605 was 605, checked in by krille_n_, 3 years ago

Changes:

  • The "Remove other hard drives" option in the Boot settings menu in XTIDECFG is now exposed in all BIOS builds. This is needed because the system BIOS in at least two Zenith computer models (Z-161 and Z-171) does not clear the BDA HD count which causes it to increment on warm boot. Running "Auto Configure" in XTIDECFG now also tries to identify these machines by doing a CRC check on the system BIOS and sets the option to YES if a match is found.
  • WORD_ALIGN is now 2 for XT builds. This should benefit XT class machines with 8086 and NEC V30 CPU:s and the cost is negligible (1 byte for the XT BIOS builds and 12 bytes for XTIDECFG.COM).
  • Other minor optimizations.
File size: 1.7 KB
Line 
1; Project name  :   Assembly Library
2; Description   :   Defines for accessing CMOS.
3
4;
5; XTIDE Universal BIOS and Associated Tools
6; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2018 by XTIDE Universal BIOS Team.
7;
8; This program is free software; you can redistribute it and/or modify
9; it under the terms of the GNU General Public License as published by
10; the Free Software Foundation; either version 2 of the License, or
11; (at your option) any later version.
12;
13; This program is distributed in the hope that it will be useful,
14; but WITHOUT ANY WARRANTY; without even the implied warranty of
15; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16; GNU General Public License for more details.
17; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
18;
19
20%ifndef CMOS_INC
21%define CMOS_INC
22
23; CMOS Ports
24; Note that a data register read or write must follow every write to the address register
25CMOS_INDEX_REGISTER             EQU     70h     ; Is this write only?
26CMOS_DATA_REGISTER              EQU     71h
27
28FLG_CMOS_INDEX_NMI_DISABLE      EQU     (1<<7)  ; CMOS Index Register bit 7 is NMI disable/enable bit
29
30
31; Almost all of the CMOS locations are vendor specific and
32; there is very little standardation
33HARD_DISK_TYPES                 EQU     12h     ; Windows 9x reads this to check if IDE drives
34                                                ; are present so it should be safe to access this.
35                                                ; Bits 0...3 Hard Disk 1 type (Primary Slave)
36                                                ; Bits 4...7 Hard Disk 0 type (Primary Master)
37                                                ; Fh = Types 16...47 (defined elsewhere in CMOS)
38CHECKSUM_OF_BYTES_10hTo2Dh_LOW  EQU     2Fh     ; Most BIOSes store checksum of bytes 10h to 2Dh here
39CHECKSUM_OF_BYTES_10hTo2Dh_HIGH EQU     2Eh     ; High byte of the checksum
40
41
42%endif ; CMOS_INC
Note: See TracBrowser for help on using the repository browser.