assembly - 将 CLS 实施到 BIOS INT10
问题描述
最近切换到 25x80 屏幕模式,但光标不存在,使用:
MOV AX,01111
MOV BL,0
INT 010
问题是我如何调用bios以获得clearscreen?
我在以下位置检查了 Ralf Brown 的 Int x10 中断列表:
http://www.ctyme.com/intr/int-10.htm
发现 AH=06 和 AH=07 为:
Int 10/AH=06h - VIDEO - SCROLL UP WINDOW
Int 10/AH=07h - VIDEO - SCROLL DOWN WINDOW
解决方案
我的问题的答案是:(重复);
clearScreen:
pusha
mov ax, 0x0700 ; function 07, AL=0 means scroll whole window
mov bh, 0x07 ; character attribute = white on black
mov cx, 0x0000 ; row = 0, col = 0
mov dx, 0x184f ; row = 24 (0x18), col = 79 (0x4f)
int 0x10 ; call BIOS video interrupt
popa
ret
复制自爱德华邮报的爱德华
推荐阅读
- c# - SetWindowsHookEx 在 C# .net 核心中不起作用?
- javascript - API调用上的角度定位控制台错误
- jboss-eap-6 - Windows 中安装 JBoss 6.4.20.0
- java - 从 URLConnection(php 文件)读取
- python - 我们可以使用带有 python sdk 的存储桶端点访问存储桶吗
- scala - 使用 JDBC 驱动程序将 Spark 数据集写入 Oracle DB 的耗时过程
- javascript - 使用 ajax 传递数据并使用 Request.Form[""] 读取数据
- r - 卸载 R 包的编译代码以避免内存泄漏?
- python - Django ModelForm Foreign Key Dropdown 传递 __str__ 但存储 fkey_id
- javascript - 如何从 JSON 文件在 OpenLayers 中绘制点类型几何图形