操作系统设计与实现:基于LoongArch架构
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2.2 字符擦除

字符擦除函数erase_char用于擦除显示器上给定坐标(xx,yy)处的字符。erase_char函数的实现详见代码清单1.6。所谓擦除,就是将像素绘制成背景色(黑色)。

代码清单1.6 erase_char函数

下面分析代码清单1.6。

• 第12行:获取待擦除字符的起始像素在显存中的起始地址,计算过程详见代码清单1.2的第14行。

• 第13~23行:按行循环遍历待擦除字符的像素,共遍历16行。在第15~21行中,每行按列循环遍历待擦除字符的像素,共遍历8个像素。将每个像素在显存中的(B,G,R)对应的字节设置为(0,0,0),表示将该像素绘制为黑色。在第22行中,每行遍历结束后,重新获取字符下一行像素的起始像素在显存中的起始地址。