当前位置: 代码迷 >> C语言 >> 求助:tc下高分辨率编程
  详细解决方案

求助:tc下高分辨率编程

热度:268   发布时间:2008-04-28 21:54:19.0
求助:tc下高分辨率编程
小弟最近在学习C语言图形编程,由于tc下的graphic.h中的最高分辨率只能达到640*480,后来我又去找了一下svga方面的资料,可以实现800*600的分辨率,但我用它说的方法去初始化,
asm
{
    _AX = 0x4f02;
   _BX  =  0x103;   //800*600
   geninterrupt(0x10);
}
但初始化不起来,显示器就是显示“输入信号超出范围”,希望各位大大帮帮忙,这个应该怎样实现?小弟在此感激不尽!!!
搜索更多相关的解决方案: 高分辨率  图形  svga  显示器  

----------------解决方案--------------------------------------------------------
当然可以,可以通过BIOS中断调用来实现.这需要很多的时间.
中断号:0x100
输入参数:AH=0
AL=0x00 40X25 黑白文本,16级灰度
AL=0x01 40X25 16色文本
...
...(请参看最新BIOS功能调用表)
用于设置显示方式.
_AX = 0x4f02;    /*_AX是一个通用寄存器,我不明白输入参数AH=0x4f是实现什么功能?*/
_BX  =  0x103;   //800*600
geninterrupt(0x10);/*中断产生*/

[[it] 本帖最后由 neverTheSame 于 2008-4-28 22:31 编辑 [/it]]
----------------解决方案--------------------------------------------------------
AH=0x4f表示用的是vesa的vbe3.0标准,我调用_BX=0x101去初始化没问题,但调用0x105这些分辨率超过640*480的去初始化时就会出现错误,显示“输入信号超过范围”。
----------------解决方案--------------------------------------------------------
你的编译器支持不支持?
----------------解决方案--------------------------------------------------------
我用的是tc2.0,不知道它支持不!
----------------解决方案--------------------------------------------------------
  相关解决方案