简单的VGA字符模式驱动(二)

news/2024/11/22 21:32:42/

上节介绍了访问VGA显卡显存的方法。现在我们要在屏幕上设置光标了。光标和显存不一样。它必须通过显卡的I/O端口开控制。

 

VGA显卡内部有一系列寄存器可以用来控制显卡的状态。在标准的PC机上。 0x3d4和0x3d5两个端口可以用来读写显卡的内部寄存器。方法是先向0x3d4端口写入要访问的寄存器编号,再通过0x3d5端口来读写寄存器数据。存放光标位置的寄存器编号为14和15。两个寄存器合起来组成一个16位整数,这个整数就是光标的位置。比如0表示光标在第0行第0列,81表示第1行第1列(屏幕总共80列)。 因此,下面的代码可以用来设置光标的位置

 

 

现在,结合上一节的内容,我们就可以写出一个完整的VGA驱动了。同时我们还可以做一些特殊的其他工作,比如清屏:

 

 

我们也可以写一写其他的方法来输出10进制或16进制整数:

 

 

 

其他的代码我这里就不写了,读者可以在这里http://download.csdn.net/source/1552695 下载到完整的代码。结合这两节的内容,里面的/Gemini/Develop/System/Boot/Loader/VGA.cpp应该不难理解


http://www.ppmy.cn/news/364698.html

相关文章

Verilog编写VGA控制器

文章目录 VGA电路原理VGA扫描方式VGA时序图VGA各时序参数规定VGA驱动模块设计波形分析 关于VGA(视频图形阵列)驱动的博文数不胜数,虽然自己也一直在用该模块,但从未独立编写过这部分的代码,每次都是匆匆看一眼&#xf…

yolov5 6.1 关于 val.py 的使用说明

一. val.py 介绍 主要用于评估已经训练好的模型的性能和精度。通过在验证集上运行模型,计算模型在检测任务上的指标和评估结果。 具体来说功能如下: 加载模型和数据:val.py 会加载训练好的模型权重文件和用于验证的数据集。它会根据配置文件…

Java+Swing+mysql仿QQ聊天工具

JavaSwingmysql仿QQ聊天工具 一、系统介绍二、功能展示1.用户登陆2.好友列表3.好友聊天4.服务器日志 三、系统实现四、其它1.其他系统实现2.获取源码 一、系统介绍 系统主要功能:用户登陆、好友列表、好友聊天、服务器日志 二、功能展示 1.用户登陆 2.好友列表 3…

Linux系统:常用服务端口

目录 一、理论 1.端口分类 2.传输协议 3.常用端口 一、理论 1.端口分类 一个计算机最多有65535个端口,端口不能重复。Linux 只有 root 用户可以使用1024以下的端口。 表1 端口分类 端口范围说明公认端口(Well-KnownPorts)0 - 1023这类…

intel服务器最新主板芯片组,Intel C600芯片组:数据中心集群计算平台_Intel服务器主板_服务器评测与技术-中关村在线...

英特尔C600 系列芯片组支持面向服务器、工作站和其他设备的英特尔至强E5处理器家族,可适用于大型技术集群、数据中心以及中小型企业等各种环境。这些芯片组提供的许多功能与英特尔C200系列芯片组相同,但它支持更高I/O带宽以应对企业级工作负荷。 英特尔C…

施耐德驱动器维修ELAU控制器维修C400C600

施耐德驱动器维修ELAU控制器维修C400C600 ELAU控制器维修器常见维修故障:短路,模块损坏,带不动负载,主轴准备未绪,驱动器未使能,编码器报警故障,主轴驱动模块故障,输出电压低&#…

中兴c600olt数据配置_中兴OLT开局数据配置、工程规范、版本升级介绍.ppt

您所在位置:网站首页 > 海量文档 &nbsp>&nbsp电子工程/通信技术&nbsp>&nbsp数据通信与网络 中兴OLT开局数据配置、工程规范、版本升级介绍.ppt49页 本文档一共被下载:次,您可全文免费在线阅读后下载本文档。 下载提示 1.本站…

windows11+ubuntu双系统全新安装要点笔记

备忘录 windows11启动盘制作u盘安装win11win11驱动安装及疑难问题win11 系统配置及优化4k hevc 实现流畅播放配置PC视频播放最强画质ubuntu安装下载iso制作u盘启动盘安装配置FAQwindows11 我的电脑,娱乐大师配置: 电脑型号 X64 兼容 台式电脑 (扫描时间:2021年11月24日) 操…