前言
第1章简介
资料的来源
系统类型
程序员的系统框图
第2章 开发PC内幕
简介
反汇编
反汇编BIOS
IOSPY/I/O端口监视器TSR
UNPC-I/O端口浏览器
第3章CPU和内幕指令
基本输入输出块
从端口输入
警告
指令定时
定时方面的难题
与I/O有关的CPU模式
通过C和C++访问硬件
CPU系列归纳
内幕指令
使用LOADALL
寄存器细节
隐藏的地址空间
内电路模拟
CPU重启
第4章系统与设备检测
简单的方法
系统检测
CPU信息
第5章适配卡的开发
ROM表头和初始化
MCA ROM扫描
设置ROM大小和开始地址
ROM代码
获得必要RAM的诀窍
选择I/O端口号
很多端口
隐去ROM和RAM
开关与跳线
即插即用
第6章 BIOS数据和其他固定数据区
BIOS数据区
扩展BIOS数据区
显示器内存
适配器ROM和UMB内存
第7章中断向量表
中断向量表与数据描述
第8章键盘系统
基本操作
AT上的一个典型的按键操作
PC/XT一个典型的按键操作
控制器通信
键盘到主板的数据
AT上主板到键盘的数据
低级键盘BIOS
键盘BIOS——级
键盘BIOS数据区
热键及访问未定义键
扫描码
国外的键盘
扩展内存的A20访问
警告
键盘的连接和信号
端口归纳
端口细节
第9章视频系统
简介
视频适配器标准
BIOS服务
其他与视频系统相关的中断
重定位屏幕接口规范(RSIS)
环境是如何提供RSIS支持的
端口归纳
未公开的视频I/O端口的细节
第10章软盘系统
简介
软盘驱动器媒质表
软盘数据格式化
软盘参数表
BIOS初始化
软盘BIOS
软盘BIOS数据
软盘控制器的常见类型
向软盘控制器发送命令
端口归纳
端口细节
第11章硬盘系统
简介
是否会给出实际的硬盘大小
接口标准和控制能
驱动器操作
大型的IDE驱动器
磁盘参数表
驱动器类型表
BIOS初始化
硬盘BIOS
磁盘BIOS数据
向磁盘控制器发送命令
一个典型的读扇区操作
警告
端口归纳
端口细节
命令细节
第12章串行口
简介
BIOS初始化
串行口BIOS
串行帧
控制/调制解调器信号
事件顺序——串行传送
事件顺序——串行接收
回环(Loopback)操作
波特率
中断控制
FIFO模式
BIOS数据区
调试
UART类型归纳
串行连接器
警告
端口归纳
UART寄存器细节
第13章系统功能
BIOS服务
端口归纳
端口细节
第14章并行口和屏幕打印
简介
BIOS初始化
一个系统可以有第四个并行口吗?
打印机BIOS
屏幕打印
BIOS数据区
并行口定时
并行口连接器
快速并行口
警告
端口总结
端口细节
第15章CMOS内存和实时时钟
简介
实时时钟(RTC)的常用信息
实时时钟BIOS
EISA系统的不同之处
系统数据区
扩展CMOS寄存器
警告
端回归纳
端口详述
第16章系统时钟
简介
操作模式
时钟0——系统定时
时钟1——DRAM刷新
时钟2——一般用途和扬声器
时钟3——看门狗(仅MCA)
时钟3——看门狗(仅EISA)
时钟4——未使用(仅EISA)
时钟5——CPU速度控制(仅EISA)
典型的时钟设置和操作
典型用途
访问
警告
端口归纳
端口细节
第17章中断控制和NMI
简介
典型的中断过程
边沿/电平控制
NMI——不可屏蔽中断
浮点协处理器和NMI
MCA系统的不同之处
EISA系统的不同之处
PCI系统的不同之处
典型使用
中断数据区
警告
端口归纳
端口细节
第18章DMA服务和DRAM刷新
简介
澄清模糊认识
一个典型的I/O到内存的传送
内存到内存DMA
操作模式
MCA系统的不同之处
EISA系统的不同之处
虚拟DMA服务(VDS)
典型用途
DMA BIOS数据区
警告
端口归纳
端口细节
附录A软件包中的程序
可执行程序归纳
有趣的子程序
可执行程序的详细解释
附录B术语表
常用的缩写形式
常见芯片的编号和功能