| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 909 人关注过本帖
标题:屏幕显示刷新速度如何解决?
只看楼主 加入收藏
ba_wang_mao
Rank: 2
来 自:成都理工大学
等 级:论坛游民
帖 子:297
专家分:27
注 册:2006-11-7
收藏
 问题点数:0 回复次数:4 
屏幕显示刷新速度如何解决?

我采用NEO在MSDOS6.22下编程,由于有很多画面,需要切换画面。
当切换画面时,需要将原先的画面清除(用背景色清除),感觉从一幅画面切换到另一幅画面,并将新画面画好不是很快,肉眼能够明显感觉不流畅,请问用什么方法解决。

搜索更多相关主题的帖子: 屏幕 速度 
2006-12-07 16:03
一笔苍穹
Rank: 1
等 级:新手上路
帖 子:640
专家分:0
注 册:2006-5-25
收藏
得分:0 
分辨率?色深?图片尺寸?加载smartdrv否?是否采用了脏矩形或换页技术?

[此贴子已经被作者于2006-12-8 13:17:45编辑过]


2006-12-08 13:16
ba_wang_mao
Rank: 2
来 自:成都理工大学
等 级:论坛游民
帖 子:297
专家分:27
注 册:2006-11-7
收藏
得分:0 

我的程序在MSDOS6.22下运行(纯DOS),分辨率为800X600,色深为8。
所有的函数(矩形、直线)都是由画点函数构成。
请问:换页技术是否显示换页呢?如果不是该如何实现呢?

/////////////////////////////////////////////////////////////////////////////////////////////////
//显存换页函数
/////////////////////////////////////////////////////////////////////////////////////////////////
void _Cdecl set_vbe_page(int page)
{
if (g_cur_vbe_page != page)
{
_BX = 0;
_DX = g_cur_vbe_page = page;
_AX = 0x4F05;
__int__(0x10);
}
}

/////////////////////////////////////////////////////////////////////////////////////////////////
//画点函数
/////////////////////////////////////////////////////////////////////////////////////////////////
void _Cdecl putpixel(int x,int y,int color)
{
long addr;
int page;
char far *videoptr = (char far *)0xa0000000L;

addr = (long)y * 800 + x;
page = (int)(addr >> 16);
set_vbe_page(page);
*(videoptr+(unsigned int)(addr&0xffff))= color;
}


多年以来还在MSDOS、单片机下搞嵌入式编程,对WINDOWS编程一窍不通,很想了解WINDOWS下病毒编程技术。
2006-12-08 14:09
一笔苍穹
Rank: 1
等 级:新手上路
帖 子:640
专家分:0
注 册:2006-5-25
收藏
得分:0 
NEO的换页不是你讲的那个概念,你看看用户文档里面有“滚屏换页”一节
800X600比较高了,在纯DOS下系统处理没WINDOWS有虚DOS好,所以要采用一些比较好的优化措施。
2006-12-08 14:23
ba_wang_mao
Rank: 2
来 自:成都理工大学
等 级:论坛游民
帖 子:297
专家分:27
注 册:2006-11-7
收藏
得分:0 
运行用户文档里面有“滚屏换页”一节中的例程后,效果非常满意,谢谢。

多年以来还在MSDOS、单片机下搞嵌入式编程,对WINDOWS编程一窍不通,很想了解WINDOWS下病毒编程技术。
2006-12-08 16:35
快速回复:屏幕显示刷新速度如何解决?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018624 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved