#define MODE_VGA13H 0×13 #define MODE_TEXT 0×03 void setmode(char mode) //设置视频模式的函数 { asm mov ah,0x00 //调用00h功能设置视频模式 asm mov al,mode //AL寄存器放欲设置的视频模式号,这里以13h视频模式为例 asm int 0x10 //调用10h中断 } char far * vediobuf=(char far*)0xa0000000L; //指向显存地址的指针 void putpixel(int x,int y,int c) //画点的函数 { *(vediobuf+x+320*y)=c; } int getpixel(int x,int y) //取点的函数 { return *(vediobuf+x+320*y); } void main(void) { int i; int j; //设置VGA13H视频模式 setmode(MODE_VGA13H); //用一个二重循环画满屏幕 for(i=0;i<20;i++) for(j=0;j<320;j++) putpixel(j,i,j); getch(); //返回DOS文本模式 setmode(MODE_TEXT); }