注册 登录
编程论坛 C图形专区

NEO库在我机子上只能设置320*200模式

hak1985 发布于 2006-08-10 09:08, 1431 次点击
NEO库在我机子上只能设置320*200模式,该模式下字体显示超难看,设置其它高分辨率模式的时候显示就有问题了
不知道是为什么?
并且NEO里自带的例子比如例11,他是设置的640*480,显示就有很大的问题,这是为什么啊?
是我机子哪里还要设置一下或是NEO库的问题?
11 回复
#2
jig2006-08-10 09:17

朋友,应该是你的显卡问题,现代显卡很多不支持DOS下直接的高分辨率,只有在32位保护模式下才可以,很遗憾,就是因为很多朋友的显卡和你一样所以导致NEO很多精彩的例子不能显示,一定程度上限制了大家NEO的了解。

#3
hak19852006-08-10 10:46

我看了半天代码,就是这句话调用后就不能显示了
int86x(0x10, &r, &r, &segs);
就是当mode〉0x100后就不行了

#4
hak19852006-08-10 11:06
我觉得你的代码把0x00--0x12显示模式抛弃了,这样在不支持DOS下直接的高分辨率的显示器下就只有0x13模式了,
但是这种模式分辨率太低,比如0x12模式分辨率就高些,显示字符漂亮些,我觉得不应该抛弃0--0x12模式
#5
jig2006-08-10 11:27
0x00--0x12???

有0X00这样的模式??我可不知道还有这样的模式哟。。。。。。
#6
hak19852006-08-10 11:59
汇编语言书上写的啊
比如
0x0e模式是640*200,图形16色
#7
一笔苍穹2006-08-10 14:07
恩,我的确将楼主所说的模式排除了,因为在做NEO之初,我并不知道现在的显卡(一般是AGP 8X)会有过频保护机制,也就是通常直接设置到高分辨率的时候显示器黑屏,这个可以通过调整刷新率来解决,但是在16位的TC下难度较大,我现在也没足够的时间研究这一块(唉,一出学校就要为生活奔波了)。
不过不能上640X480X256的显卡倒是很少见,一般来说800x600是个坎,还有楼主说“NEO里自带的例子比如例11,他是设置的640*480,显示就有很大的问题”,这个显示就有很大问题是指?难到不是黑屏而是其它的状况?能细说一下不?最好是再说一下你显卡的型号。
#8
hak19852006-08-10 18:03

设置成那种模式后划线函数都不能正常工作,一个line语句会在屏幕上显示3条直线,一塌糊涂

#9
hak19852006-08-10 18:07
不是黑屏,屏幕上麻麻点点的
#10
一笔苍穹2006-08-11 13:54
那应该是你的显卡对VBE规范支持不够的原故了,LZ什么显卡?
#11
hak19852006-08-11 19:56
美格的,770AG
#12
一笔苍穹2006-08-12 11:32
这是显示器吧,显卡呢?集成的吧应该是?
1