VESA通过IO /端口

时间:2013-12-19 14:17:03

标签: io x86 vbe vesa

如何通过IO /端口访问x86 CPU的vesa模式? 我已经尝试过只适用于博世的代码

private static void SetVideoMode(ushort width, ushort height, ushort depth)
{    
    WriteCommand(0x4, 0x00);
    WriteCommand(0x1, width);
    WriteCommand(0x2, height);
    WriteCommand(0x3, depth); 
    WriteCommand(0x4, 0x1 | 0x40 );
    PortIO.Outb(0x3c0, 0x20);
}

1 个答案:

答案 0 :(得分:2)

你做不到。 VESA(VBE)是一个标准的BIOS驱动程序框架,它为不同的视频卡提供单一界面。

要直接查看I / O端口或内存映射寄存器,您需要将自己限制为基本的VGA模式和功能,或者了解特定视频卡的精确详细信息。

当然,这是VBE首先要解决的问题。