⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vesa编程介绍3.htm

📁 VESA编程介绍
💻 HTM
📖 第 1 页 / 共 3 页
字号:
face=宋体 size=2>WinAAttributes db ? ; 窗口A属性</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinBAttributes db ? ; 窗口B属性</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinGranularity dw ? ; 窗口间隔尺寸</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinSize dw ? ; 窗口大小</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinASegment dw ? ; 窗口A开始段地址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinBSegment dw ? ; 窗口B开始段地址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinFuncPtr dd ? ; 窗口函数指针</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>BytesPerScanLine dw ? ; 每行字节数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>; 过去的可选信息(现在是强制信息)</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>XResolution dw ? ; 水平分辨率</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>YResolution dw ? ; 垂直分辨率</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>XCharSize db ? ; 字符单元宽度</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>YCharSize db ? ; 字符单元高度</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>NumberOfPlanes db ? ; 内存平面数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>BitsPerPixel db ? ; 每点的位数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>NumberOfBanks db ? ; 存储区数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>MemoryModel db ? ; 内存模式类型</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>BankSize db ? ; 存储区K字节数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>NumberOfImagePages db ?; 图象数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>Reserved db 1 ; 保留给页函数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>; 新的直接色彩区域</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>RedMaskSize db ? ; 红色遮盖位数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>RedFieldPosition db ? ; 红色遮盖位址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>GreenMaskSize db ? ; 绿色遮盖位数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>GreenFieldPosition db ? ; 绿色遮盖位址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>BlueMaskSize db ? ; 兰色遮盖位数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>BlueFieldPosition db ? ; 兰色遮盖位址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>RsvdMaskSize db ? ; 直接色彩保留遮盖位数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>RsvdFieldPosition db ? ; 直接色彩保留遮盖位址</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>DirectColorModeInfo db ? ; 直接色彩模式属性</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>Reserved db 216 dup(?) ; 模式信息块剩余</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>ModeInfoBlock ENDS</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><B><FONT 
size=3></FONT></B><FONT face=宋体 
size=2>ModeAttributes区域描述了显示模式的几个重要特性。D0位指明了该模式能否在当前配置下被初始化。如果该显示模式需要特殊的显示器类型,而这种显示器现在并没有连接,则该位可用来阻止访问。在VESA 
BIOS扩展1.2版本之前,并不需要该位也能返回BytesPerScanLine之后正确的值。D1位指出当前是否有选择信息。VBE1.2版要求除了直接色彩区域(仅当Memory-Model区域设为6(直接色彩)或7(YUV)时有效)外的ModeInfoBlock所有部分都有效。D1位现在保留,但必须设为1。D2位指出在该模式下BIOS是否支持类似TTY输出、卷屏和像素点输出等函数(推荐,并不强制,BIOS支持所有的输出函数)。如果D2位为1,那么BIOS必须支持所有的标准输出函数。</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>该区域定义如下:</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D0 = 模式被硬件支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 模式不被硬件支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 模式被硬件支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D1 = 1(保留)</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D2 = BIOS支持输出函数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = BIOS不支持输出函数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = BIOS支持输出函数</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D3 = 单色/彩色模式(请看下面注释)</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 单色模式</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 彩色模式</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D4 = 模式类型</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 文本方式</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 图形方式</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D5-D15 = 保留</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 
size=2>注释:单色模式的CRTC地址位于3B4h。彩色模式的CRTC地址位于3D4h。单色模式属性控制输出中只有第三位(视频)和第四位(亮度)是重要的。所以,单色文本模式的属性有关闭、视频、高亮度和闪烁等。单色图形模式为两平面的模式且有关闭、视频、高亮度和闪烁的属性扩展的二色模式的CRTC地址位于3D4h。它有一个平面且每像素有一位。标准VGA模式的06h和11h被分类为彩色模式,而模式07h和0Fh被分为单色模式。</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 
size=2>BytesPerScanLine指出每条合理的扫描线由多少字节组成。合理的扫描线可以等于或大于实际显示的扫描线。</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 
size=2>WinAAttributes和WinBAttributes描述了CPU窗口配置的属性,如窗口是否存在和窗口是否可读可写,如下所示:</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D0 = 窗口支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 窗口不被支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 窗口被支持</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D1 = 窗口可读</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 窗口不可读</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 窗口可读</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D2 = 窗口可写</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>0 = 窗口不可写</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>1 = 窗口可写</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>D3-D7 = 保留</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 
size=2>如果窗口不被支持(窗口A和窗口B的D0位都为0),那么应用程序可以假设显存缓冲位于与该模式MemoryModel相应的标准CPU地址中。</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 
size=2>WinGranularity指出了窗口在显存上的最小字节大小。若相应的WinAttributes的D0位未设置,则该值不确定。</FONT></P>
<P 
style="MARGIN: 0px; WORD-SPACING: 0px; TEXT-INDENT: 0px; LINE-HEIGHT: 100%"><FONT 
face=宋体 size=2>WinSize指明了窗口的字节大小。</FONT></P>
<P 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -