可移植的256色图形用户界面的设计论文

可移植的256色图形用户界面的设计论文

ID:11278568

大小:54.00 KB

页数:3页

时间:2018-07-11

可移植的256色图形用户界面的设计论文_第1页
可移植的256色图形用户界面的设计论文_第2页
可移植的256色图形用户界面的设计论文_第3页
资源描述:

《可移植的256色图形用户界面的设计论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、可移植的256色图形用户界面的设计论文摘要该文从软件可移植性的角度指出设计256色图形用户界面时应当注意的问题,在对SuperVGA产品进行分析的基础上,提出了基于表格驱动的程序设计思想,并给出了范例。随着各种超级VGA的出现,同时具有高分辨率和丰富色彩的图形用户界面已经成为程序员和用户共同追求的目标。然而由于各制造商提供的VGA产品之间的差异,使得高分辨率256色图形界面的兼容性受到影响,常常会出现这样的情况:在一个显示系统下运行良好的程序,在另一种显示系统下变得面目全非.freelp(intx,inty,in

2、tnum,charfar*ptr);参数:;x,y-屏幕坐标;num-本行的像素个数;ptr-指向像素数据的远指针LineDumpprocfarpushbpmovbp,spsubsp,2;odelyequbp+8numequbp+10offsequbp+12psegequbp+14movreserved,dsmovds,psegmovsi,offs;DS:SI图像数据所在源地址movax,0a000h;显存段址moves,ax;ES:DI显存目的地址movax,.freelovds,reservedmulovdi

3、,ax;DI=-vga-ovah,dl;进位部分(DL)=页号calldovcx,num;本行要传送字节数movbx,cxaddbx,di;检测传送是否在一个页内jncDump-In-One-Pagesubcx,bx;CX=本页字节数,BX=下页字节数shrcx,1;CX/2=字数repmovsovsb;处理可能的奇数字节数incah;调整页号calldovcx,bx;新页内要写的字节数jcxzDump-DoneDump-In-One-Page:shrcx,1;CX/2=字数repmovsovsb;处理可能的奇数

4、字节数Dump-Done:popdipopsipopespopdsmovsp,bppopbpretLineDumpendp二、表格驱动的基本思想根据上面的分析,用以驱动显示系统的表格,至少应当包含下列项目:(1)实际显示模式:vga-mode(2)水平分辨率:vga-TVGA-MODETVGA320x200=0,TVGA640x400=1,TVGA640x480=2,TVGA800x600=3,TVGA1024x768=4,;voidTVGA256-driver(void);voidPVGA256-driver(

5、void);voidAVGA256-driver(void);...voidVESA256-driver(void);externintfar-CdeclTVGA256-driver-far;externintfar-CdeclPVGA256-driver-far;externintfar-CdeclAVGA256-driver-far;...externintfar-CdeclVESA256-driver-far;/*支持的VGA集合*/enumVGAs{UnKno1-TridentVGA2-ParadiseV

6、GA...x-不能检测出的VGA,但支持VESA返回值同时写入全局变量vga-type*/externintVesaFound(void);/*功能:检测VESABIOS的存在性返回:0-不支持VESA;其它-VESA版本号(0x0102即1.02版);返回值同时写入全程变量vesa-found.*/externvoidInitVesa(void);/*功能:初始化VESA.根据-vga-mode模式号换算成VESA的标准模式号填写页粒度(ode;unsignedchar*bgiDriver="PVGA256";

7、bgiDriver=DriversDetectVGA();GraphDriver=installuserdriver(bgiDriver,NULL);GraphMode=TVGA800x600;initgraph(GraphDriver,GraphMode,"");...

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。