发信人: kingfox()
整理人: yangcs(1999-12-12 11:48:50), 站内信件
|
中断大全(四)
---------------------------------------------------------------------- ----------
--------H-0A---------------------------------
INT 0A C - IRQ2 - LPT2 (PC), 垂直重扫中断 (EGA,VGA)
描述
注释 TOPS和PCnet适配器缺省时使用该中断请求线。DOS 3.2重定向IRQ2为任务切 换例程。在AT机和更高档次的机器上,IRQ2的物理数据线标记为IRQ9,并且连结 了第二片8259芯片。BIOS把这个中断重定向为IRQ9。
在DESQview中只有INT 15h和BASIC段地址(位于0000:0510的一个字)可以被捕获程 序假定为有效。
很多VGA板并不实现垂直重扫中断,包括IBM VGA适配器。
参见 INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"
---------------------------------------------------------------------- ----------
--------H-0A---------------------------------
INT 0A C - IRQ2 - Tandy 1000-series 硬盘
描述
注释 该中断可以通过设置I/O端口21h的bit-2屏蔽。Tandy 1000、1000A和1000H D使用该中断作为硬盘中断,而1000EX、HX、RLX、RLX-HD、RLX-B、RLX-HD-B则使 用IRQ5。而对于1000RL、RL-HD、SL、SL/2、TL、TL/2、和TL/3,则可以用跳线在 IRQ2和IRQ5之间选择(缺省是IRQ5)。1000SX和TX则用DIP开关来选择IRQ2或者IRQ 5(缺省是IRQ2)。RSX和RSX-HD使用IRQ14。使用IRQ2作为硬盘中断的Tandy系统使 用IRQ5作为垂直重扫。
参见 INT 52"DESQview",INT 5A"DoubleDOS",INT 71
---------------------------------------------------------------------- ----------
--------H-0A---------------------------------
INT 0A - IRQ2 - ROLAND MPU MIDI接口
描述
注释 新的Roland声卡和其他厂商的MIDI接口可以使用跳线选择IRQ,但是软件和 硬件通常缺省地使用IRQ2。
参见 INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"
---------------------------------------------------------------------- ----------
--------C-0A---------------------------------
INT 0A CP - 产生 (80286+) - 无效的任务状态段
描述 如果由任务门指定的新的TSS由于以下任何原因而失效,则当任务切换的时 候自动发生该中断:
TSS限制小于43(80286)或者103(80386/80486)
LDT选择符无效,或者段不存在
空的SS选择符,或者SS选择符超出LDT/GDT边界
堆栈段只读
堆栈段DPL与新的CPL不同,或者RPL <> CPL
CS选择符超出LDT/GDT边界或者没有代码
非相似的代码段的DPL和CPL不同
相似代码段的DPL > CPL
DS/ES选择符超出LDT/GDT边界或者不可读的段
注释 捕获程序必须使用任务门以从正在执行的任务中获得有效的TSS,同时必须 复位新的TSS的busy位。
参见 INT 0B"CPU"
---------------------------------------------------------------------- ----------
--------H-0B---------------------------------
INT 0B C - IRQ3 - 串行通讯(COM2)
描述 如果UART已经被编程位可以发生中断的话,当COM2需要程序关注的时候由U ART自动触发。
注释 TOPS和PCnet适配器交替使用这个中断请求线。
在PS/2系统上,COM2到COM8共享这个中断。在许多PC系统上,COM4共享此中断。
可以通过设置I/O端口21h的bit-3来屏蔽该中断。
参见 INT 0C"COM1",INT 53"DESQview",INT 5B"DoubleDOS",INT 7B"GO32"
---------------------------------------------------------------------- ----------
--------C-0B---------------------------------
INT 0B CP - CPU-发生(80286+) - 段不存在
描述 如果段描述符指出段当前不存在于内存中的话,加载这个段的时候就会发生 该中断,除非该段是一个任务切换程序需要的LDT(参见INT 0A "CPU")或者任务段 (参见INT 0C "CPU")。
注释 可以通过在段被访问的时候加载段来实现虚拟内存,加载之后要清除“不存 在”标志
参见 INT 0A"CPU",INT 0E"CPU"
---------------------------------------------------------------------- ----------
--------h-0B---------------------------------
INT 0B - HP 95LX - 低级键盘捕获程序
描述 这是HP 95LX PalmTop系统上的低级键盘捕获程序
注释 反弹键(debounces key),把键盘代码放在I/O寄存器60h,并且调用INT 09 h
参见 INT 09,INT 0D"HP 95LX",INT 15/AX=4DD4h
---------------------------------------------------------------------- ----------
--------H-0C---------------------------------
INT 0C C - IRQ4 - 串行通讯(COM1)
描述 如果UART已经被编程位可以发生中断的话,当COM1需要程序关注的时候由U ART自动触发。
BUG Direct Access 4.0修改了这个向量,但是并未保存原始向量,而且可能会被 用同样的编译BASIC版本编写的程序所替换。
注释 在许多PC系统上,COM4共享此中断。
可以通过设置I/O端口21h的bit-4来屏蔽该中断。
参见 INT 0B"COM2",INT 54"DESQview",INT 5C"DoubleDOS",INT 7C"GO32"
---------------------------------------------------------------------- ----------
--------C-0C---------------------------------
INT 0C C - CPU-发生(80286+) - 栈错误
描述 在保护模式下,当段上溢或者下溢的时候,或者当级间跃迁或任务切换引用 了标记为“不存在”的堆栈段的时候,发生该中断。在实模式下,当访问位于SS :FFFFh的一个字的时候发生该中断。
注释 在实模式下,如果push指令执行之前SP=1,80286处理器会停止运行。在PC AT和兼容系统上,在shutdown的时候有额外的电路产生reset信号。
参见 INT 0B"CPU",INT 0D"CPU"
---------------------------------------------------------------------- ----------
--------I-0C---------------------------------
INT 0C - IBM SYSTEM 36/38工作站仿真 - API指针
描述 IBM System 36/38仿真器可以通过一个私有的API——其入口指针地址(参见 表00007)是这个向量所指向的段的偏移100h处——被激活。
表00007:System 36/38仿真器入口调用规范
AH = 功能
03h 刷新屏幕
05h 选择下一个会话
AL = 会话号 (00h-03h)
返回值:AL = 会话类型代码
00h 未激活
01h 屏幕显示会话
02h 打印机会话
FEh 无效的会话号
DS = 被请求的会话数据段(如果没有活动会话的话则为0)
(参见表00008)
返回 ???
表00008:System 36/38仿真程序数据区格式:
偏移 字长 描述
13Eh BYTE 自从该字节上一次被置零之后状态行指示器打开的位标志
13Fh BYTE 自从该字节上一次被置为FFh之后状态行指示器关闭的位标志
140h WORD EBCDIC到ASCII变换的偏移
146h WORD EBCDIC屏幕缓冲区的偏移
148h WORD offset of EC (engineering change) level signature
150h BYTE "KEYI"
151h BYTE 将被发送用于遥控的5250键扫描码
15Bh BYTE "SYSAV"
15Dh BYTE 5250光标列
15Eh BYTE 5250行
167h BYTE "DVCTAD"
178h BYTE "FLAGS"
184h BYTE "SESSNOAD"
193h BYTE "STNAD"
198h BYTE "NSDS"
注释 偏移从中断捕获程序的段的起始开始计算。
-- ------------------------------------------------------------
有缘则聚,缘尽则散,随缘而定,随遇而安。
------------------------------------------------------------
欢迎光临“电子工程师园地”http://kingfox.163.net
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.243.80]
|
|