发信人: asmhome()
整理人: ifeelyou(2000-01-14 16:58:49), 站内信件
|
水中月 作
http://asmhome.yeah.net
CMOS RAM 中的地址分配:
地 址
说 明
00-0D
*实时时钟信息
0E
*诊断状态字节
0F
*停机状态字节
10
软盘驱动器类型字节,驱动器C和D
11
保留
12
硬盘驱动器类型(小于15)字节:驱动器C和D
13
保留
14
设备字节
15
基本存储器低字节
16
基本存储器高字节
17
扩展存储器低字节
18
扩展存储器高字节
19-1A
硬盘驱动器类型(大于15)字节:驱动器C和D
1B-2D
保留
2E-2F
2字节CMOS校验和(10-2D各字节累加和)
30
*扩充存储器低字节
31
*扩充存储器高字节
32
*日期世纪字节
33
*信息标志(在加电时设置)
34-3F
保留
注:* 这些字节不包括在检查和的计算之内,它们不是配置记录的一部份。
===================================================================
实时时钟信息(地址00-0D):
地 址
功 能
00
秒
01
秒报警
02
分
03
分报警
04
时
05
时报警
06
星期的天
07
月的日子
08
月
09
年
0A
状态寄存器A
0B
状态寄存器B
0C
状态寄存器C
0D
状态寄存器D
注:当设置时间和时期时,准备程序对寄存器A,B,C和D初始化。并且,中断1A 是读/设置时间和日期的BIOS接口。它与准备程序一样重要。对状态字节进行初始 化。
(1)状态寄存器A
位7:计时器在计时(UIP),1表示计时器正在计时,0表示当前日期和时间可 以用于读出。
位6-位4:22级分频器(DV2至DV0)。这三个分频器的选择位,识别正在使用哪 一种时间基准频率。系统将分频器初始化到010,它选择一个32.768kHz的时间基 准作为CMOS的时种输入。
位3-位0:速率选择位(RS3至RS0)。这些位允许选择分频器的输出频率。系统 将速率选择位初始化到0110,它先用1.024kHz的方波输出和976.562us周期的中断 速率。
(2)状态寄存器B
位7:设置0表示按计时器每秒加1的速度计时。1表示停止计时,程序能对14 个时间字节初始化,而且在把0写入此位以前不进行计时。
位6:允许周期中断(PIE)。此位是一个读/写位,它允许中断发生在由状态寄 存器A中的表兄弟和分频器位所指写的速率上。1允许中断,0禁止中断。系统将此 位初始化到0。
位5:允许报警中断(AIE)。1表示允许报警中断。0禁止报警中断,系统将此 位初始化到0。
位4:允许计时器计时结束中断(UIE)。1表示允许计时器计时结束中断,而0 表示禁止计时器计时结束中断。系统将此位初始化为0。
位3:允许方波(SQWE)。1表示允许由寄存器A中速选择位所设置的方波频率, 0表示禁止方波。系统将此位初始化为0。
位2:日期方波(DM)。此位表示时间和日期计时器使用二进制格式,还是使用 二一十进制(BCD)STAA。1表示二进制,0表示二一十进制(BCD)。系统将此位初始 化为0。
位1:24/12小时方式。此位指定是按规定4小时,还是按12小时方式建立小时 字节。1表示24小时方式,0表示12小时方式。系统将此位初始化为0。
位0:允许夏令时间(DSE)。1表示夏令时间,0表示禁止夏令时间(标准的时间 )。系统将此位初始化为0。
(3)状态寄存器C
位7-位4:IRQF、PF、AF、UF标记位。这些标记位只能读,仅当寄存器B中的 “AIE”、“PIE”和“UIE”中断允许时,这些标记位才受到影响。
(4)状态寄存器D
位7:有效RAM位(VRB)。此位只能读,通过电源检测引脚指示CMOS RAM的内容 情况。电源检测引脚为低电平状态表示实时时钟已经掉电(干电池耗尽)。VRB为1 表示电源接通实时时钟,0表示实时时钟已经掉电。
位6-位0:保留。
===================================================================
(5)诊断状态字节(0EH)
位7:实时时钟芯片已经掉电。0表示芯片没有掉电,1表示芯片掉电。
位6:配置记录的检查和状态指示器。0表示检查和正确,1表示检查和不正确 。
位5:不正确的配置信息。这是在加电对设备字节(14H单元)的配置记录的检 测。0表示配置信息有效,而且表示配置无效。加电检查的要求为:A:至少装入 一个软盘驱动器(设备标志字节的位0设置为1)。B:配置中的主显示适配器的设置 要和系统中实际显示器硬件情况相一致。
位4:存储器容量比较错误。0表示加电检查所决定的实际存储器容量与配置 记录中的存储器容量相同,1表示存储容量不相同。
位3:硬磁盘C的初始化状态。0表示硬盘正常运行和系统能尝试“建立引导” 。而1表示硬盘初始化失败,它就阻止系统尝试”建立引导“。
位2:时间状态指示器(POST有效性检查)。0表示时间有效,而1表示时间无效 。
位1-位0:保留。
===================================================================
(6)停机状态字节(0FH)
此字节中的各位由加电诊断程序定义。
===================================================================
(7)软磁盘驱动器类型字节(10H)
位7-位4:安装第一个软磁盘驱动器(A)的类型:
0000——当前没有软驱
0001——5.25英寸,360KB
0010——5.25英寸,1.2MB
0100——3.5英寸,1.44MB
1000——3.5英寸,720KB
位3-位0:安装第二个软磁盘驱动器(B)的类型,其定义同位7-位4。
===================================================================
地址11是一个保留字节。
===================================================================
(8)硬磁盘类型字节(12H)
位7-位4:定义安装的第一个硬盘驱动器(C)的类型:
0000—— 当前没有硬磁盘驱动器
0001-1111——定义类型1至类型15,当类型大于15时,该4位写1111,磁盘类 型由19H单元定义。
位3-位0:定义安装的第二个硬盘驱动器(D)的类型,其定义同位7-位4。当磁 盘类型大于15时,由1AH单元定义。
===================================================================
地址13H是一个保留字节。
===================================================================
(9)设备标志字节(14H)
位7-位6:指出安装的软磁盘驱动器的数目:
00——1个驱动器
01——2个驱动器
10——保留
11——保留
位5-位4:在PC/AT机中为主显示器配置,主要指CGA和MDA,目前这2位的定义 有变化,一般00表示彩色,11表示单色,进一步定义有的系统在2FH单元,或其它 单元。
位3-位2:没有使用
位1:数字协处理器存在位:
0——没有安装数字协处理器
1——已安装数字协处理器
位0:此位为1表示已安装软磁盘驱动器
注意:设备标志字节为加电自检时所定义的系统中的基本设备。
===================================================================
(10)基本存储器容量的低位和高位字节(15H和16H)
有效容量为2个字节的组合(15H为低字节,16H为高字节):
0100-256KB 系统板RAM
0200-512KB 系统板RAM
0300-640KB 系统板RAM
===================================================================
(11)扩展存储器容量的低位和高位字节(17H和18H)
有效容量为2个字节的组合(17H为低字节,18H为高字节):
0100-256KB
0200-512KB
0400-1024KB
0800-2048KB
0C00-3072KB
0D00-3328KB
1000-4096KB
===================================================================
(12)硬磁盘类型字节(19H和1AH)
如果硬磁盘类型超过15,则把类型设置在19H和1AH。19H为C盘类型,1AH为D 盘类型,都用2位的16进制的代码表示。如19H单元的内容为2FH,则表示C盘的类 型为47。
===================================================================
地址1BH至2DH为保留字节。
===================================================================
(13)检查和的低字节和高字节(2EH和2FH)
这是对地址10H-2DH的检查和,地址2EH为低字节的检查和,地址2FH为高字节 的检查和。
===================================================================
(14)扩充存储器容量的低位和高位字节(30H和31H)
通常与17H及18H单元的设置相同。
===================================================================
(15)日期世纪字节(32H)
位7-位0:世纪用BCD值表示(由BIOS接口读和设置)
===================================================================
(16)信息标志(33H)
位7:通常为1,表示基本存储器为640KB。
位6:此位用于准备实用程序在初始化准备后发出第一个用户消息。
位5-位0:保留
===================================================================
地址34H至3FH为保留字节
===================================================================
补充说明:
CMOS分配有2个端口地址,70H和71H。70H为地址口,用于先写入要访问的CM OS的单元号(地址),71H口为数据口,在通过70H口写入单元号之后,即可以通过 71H口对该单元进行写入或读出。下面是一个例子:
.
.
XOR AX,AX
MOV AL,10
MOV DX,70
OUT DX,AL ;指定为10H单元
MOV DX,71
IN AL,DX ;读10H单元的信息
MOV AL,0
OUT DX,AL ;写入10H单元
.
.
===================================================================
-- =========================================
= mailto:[email protected] =
= http://www.asmhome.com/ =
= http://chinashare.yeah.net/ =
= http://mud.sz.jsinfo.net/per/share/ =
=========================================
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.102.92.121]
|
|