亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? logo16m.c

?? 本程序是專為MSDOS6.0操作系統(tǒng)下編寫的顯示16M真彩色程序
?? C
字號(hào):
//原創(chuàng):在800*600*64K真彩色模式下顯示BMP圖片和畫點(diǎn)
//作者:成都理工學(xué)院
#include <dos.h>
#include <stdio.h>
#include <mem.h>
#include <alloc.h>
#include <stdlib.h>
#include <conio.h>

#define  VBE800X600X64K   0X114
#define RGB(r,g,b) ((((unsigned int)(r)>>3)<<11) + (((unsigned int)(g)>>2)<<5) + ((b)>>3))
#define SCREEN_WIDTH 800L
#define SCREEN_HIGH  600L
#define VARM_GRAPH_800_600_256(x,y)	(((unsigned long)y<<9L)+((unsigned long)y<<8L)+((unsigned long)y<<5L)+((unsigned long)(x)))
#define VARM_GRAPH_800_600_16M(x,y)	(((((unsigned long)y<<9L)+((unsigned long)y<<8L)+((unsigned long)y<<5L))<<1L) + (((unsigned long)x)<<1L))
#define PALETTE_READ  0x3C7			/*VGA系統(tǒng)調(diào)色板讀端口*/
#define PALETTE_WRITE 0x3C8			/*VGA系統(tǒng)調(diào)色板寫端口*/
#define PALETTE_DATA  0x3C9			/*VGA系統(tǒng)調(diào)色板數(shù)據(jù)端口*/

/*第一部分為位圖文件頭BITMAPFILEHEADER,其定義如下:*/
typedef struct tagBITMAPFILEHEADER
{
	unsigned int bfType;			/*指定文件類型,*.bmp文件的頭兩個(gè)字節(jié)都是"BM"*/
	unsigned long bfSize;			/*指定文件大小,包括這14個(gè)字節(jié)*/
	unsigned int Reserved1;			/*為保留字,不用考慮*/
	unsigned int reserved2;			/*為保留字,不用考慮*/
	unsigned long bfOffset;			/*為從文件頭到實(shí)際的位圖數(shù)據(jù)的偏移字節(jié)數(shù),前三個(gè)部分的長(zhǎng)度之和。*/
}BITMAPFILEHEADER;

/*第二部分為位圖信息頭BITMAPINFOHEADER,這個(gè)結(jié)構(gòu)的長(zhǎng)度是固定的,為40個(gè)字節(jié)其定義如下:*/
typedef struct tagBITMAPINFOHEADER
{
	unsigned long biSize;			/*指定這個(gè)結(jié)構(gòu)的長(zhǎng)度,為40*/
	unsigned long biWidth;			/*指定圖象的寬度,單位是象素*/
	unsigned long biHeight;			/*指定圖象的高度,單位是象素*/
	unsigned int biPlanes;			/*必須是1,不用考慮*/
	unsigned int biBitCount;		/*指定表示顏色時(shí)要用到的位數(shù),常用的值為1(黑白二色圖),4(16色圖),8(256色),24(真彩色圖)*/
	unsigned long biCompression;	/*指定位圖是否壓縮,有效的值為BI_RGB,BI_RLE8,BI_RLE4,BI_BITFIELDS*/
	unsigned long biSizeImage;		/*指定實(shí)際的位圖數(shù)據(jù)占用的字節(jié)數(shù)*/
	unsigned long biXpolsPerMeter;	/*指定目標(biāo)設(shè)備的水平分辨率,單位是每米的象素個(gè)數(shù)。*/
	unsigned long biYpelsPerMeter;	/*指定目標(biāo)設(shè)備的垂直分辨率,單位同上。*/
	unsigned long biClrUsed;		/*指定本圖象實(shí)際用到的顏色數(shù),如果該值為零,則用到的顏色數(shù)為2的biBitCount次方。*/
	unsigned long biClrImportant;	/*指定本圖象中重要的顏色數(shù),如果該值為零,則認(rèn)為所有的顏色都是重要的。*/
}BITMAPINFOHEADER;

typedef struct tagRGBQUAD			/* 256 RGB像素類型 */
{
	unsigned char Blue;
	unsigned char Green;
	unsigned char Red;
	unsigned char Reserved;
}RGBQUAD;

typedef struct  tagRGB16M			/* 16M RGB像素類型 */
{
  unsigned char Blue;
  unsigned char Green;
  unsigned char Red;
}RGB16M;

int  g_cur_vbe_page = 0;

/////////////////////////////////////////////////////////////////////////////////////////////////
//圖形模式初始化子程序
/////////////////////////////////////////////////////////////////////////////////////////////////
void _Cdecl InitGraph(unsigned int mode)
{
  _AX = 0x4f02;
  _BX = mode;
  __int__(0x10);
  if(_AH != 0)
   {
	puts("Can't Initialize the graphics mode!");
	exit(1);
   }
}


/////////////////////////////////////////////////////////////////////////////////////////////////
//關(guān)閉圖形模式,回到文本模式子程序
/////////////////////////////////////////////////////////////////////////////////////////////////
void _Cdecl CloseGraph(void)
{
  _AX = 0x4f02;
  _BX = 0x03;
  __int__(0x10);
}


/////////////////////////////////////////////////////////////////////////////////////////////////
//顯存換頁函數(shù)
/////////////////////////////////////////////////////////////////////////////////////////////////
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);
	}
}


/////////////////////////////////////////////////////////////////////////////////////////////////
//16M真彩色800*600寫點(diǎn)
/////////////////////////////////////////////////////////////////////////////////////////////////
void PutPixel16M(int x,int y,int Color)
{
/*	int page;
	char far *videoptr = (char far *)0xa0000000L;
	long addr = VARM_GRAPH_800_600_16M(x,y);

	if (x >= 0 && x < SCREEN_WIDTH && y >= 0 && y < SCREEN_HIGH)
	{
		page = (int)(addr >> 16);
		set_vbe_page(page);
		*(videoptr + (unsigned int)(addr & 0xFFFF))= Color & 0xFF;
		*(videoptr + (unsigned int)(addr & 0xFFFF)+1)= Color>>0x08;
	}
*/
	long addr = VARM_GRAPH_800_600_256(x,y);
	int far *videoptr16 = (int far *)MK_FP(0xa000, 0);
	int page;

	page = (int)(addr >> 15);
	set_vbe_page(page);
	*(videoptr16 + (unsigned int)(addr & 0xFFFF))= Color;

}

/////////////////////////////////////////////////////////////////////////////////////////////////
//在24位圖像中,沒有“DAC色表”,也沒有“圖像數(shù)據(jù)區(qū)”。唯一留給我們的只有圖像上所有點(diǎn)的顏色值。
//因?yàn)槊總€(gè)顏色都用BGR三種顏色來表示,而每個(gè)顏色占用1個(gè)字節(jié),所以在24位圖像中,每1個(gè)點(diǎn)就占用了
//3個(gè)字節(jié)。那沒有“DAC”色表,也沒有‘?dāng)?shù)據(jù)圖像區(qū)’我們?cè)趺磥盹@示圖象呢?很簡(jiǎn)單, 24位圖給我們提供了個(gè)更
//加簡(jiǎn)單的方法:“所有點(diǎn)的顏色值”。既然是所有點(diǎn),那么只要把這些點(diǎn)按照他們的顏色重新畫出來就是
//該圖像完整的信息了。
/////////////////////////////////////////////////////////////////////////////////////////////////
void Show_BMP(char *File_Name)
{
	int i, j, width ;
	register BITMAPFILEHEADER *FileHead;
	register BITMAPINFOHEADER *InfoHead;
	FILE *fp;

	if ((FileHead = (BITMAPFILEHEADER *)malloc(sizeof(BITMAPFILEHEADER))) == NULL)
		return;
	if ((InfoHead = (BITMAPINFOHEADER*)malloc(sizeof(BITMAPINFOHEADER))) == NULL)
		return;
	if ((fp = fopen(File_Name,"rb")) == NULL)
	{
		printf("BMP File not exist ...");
		return;
	}
	fread(FileHead,sizeof(BITMAPFILEHEADER),1,fp);
	if (FileHead->bfType!='BM')
	{
		printf("BMP File type Error ...");
		fclose(fp);
		return;
	}
	fread(InfoHead,sizeof(BITMAPINFOHEADER),1,fp);
	if (InfoHead->biCompression !=0 || (InfoHead->biBitCount!=8 && InfoHead->biBitCount!=24))
	{
		printf("BMP File not Support Compression type ...");
		fclose(fp);
		return;
	}
	width =((int)InfoHead->biWidth+3)/4*4;	// 每行字節(jié)數(shù)--4的整數(shù)倍
	if ((int)InfoHead->biBitCount == 24)
	{
		register RGB16M *buffer;
		if ((buffer = malloc(width*sizeof(RGB16M))) == NULL)
		{
			fclose(fp);
			return;
		}
		for (j = (int)InfoHead->biHeight-1 ; j >= 0 ; j--)
		{
			fread(buffer,width,sizeof(RGB16M),fp);
			for (i = 0 ; i < width ; i++)
				PutPixel16M(i,j,RGB(buffer[i].Red,buffer[i].Green,buffer[i].Blue));
		}

	}
	free(FileHead);
	free(InfoHead);
	fclose(fp);
}




void main(void)
{
	InitGraph(VBE800X600X64K);
	Show_BMP("d:\\logo.BMP");//顯示一幅16M真彩色BMP圖片
	getch();
	CloseGraph();
}


/*
//滿屏顯示RGB(71,201,61)=綠色,你可以用WINDOWS中的RGB其它顏色試試
void main(void)
{
	int x,y;
	int Color = RGB(71,201,61);

	InitGraph(VBE800X600X64K);
	   for (y=0;y<600;y++)
	for (x=0;x<800;x++)
		   PutPixel16M(x,y,Color);
	getch();
	CloseGraph();
}
*/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品免费网站| 成人福利视频网站| 国产精品久久久久一区二区三区共| heyzo一本久久综合| 蜜臀a∨国产成人精品| 成人欧美一区二区三区白人 | 欧美xxxxxxxx| 91高清在线观看| 国产成人精品免费在线| 日本sm残虐另类| 亚洲美女在线国产| 国产精品女人毛片| 久久丝袜美腿综合| 日韩欧美国产系列| 欧美精品一二三| 欧洲中文字幕精品| 色偷偷一区二区三区| 国产夫妻精品视频| 免费在线视频一区| 日日夜夜免费精品| 亚洲一级在线观看| 亚洲欧美日韩系列| 亚洲私人影院在线观看| 国产欧美日韩综合| 久久精品视频网| 久久精品在线免费观看| 2023国产精华国产精品| 日韩美女视频在线| 在线观看日韩高清av| 丁香六月综合激情| 久久激情综合网| 日韩经典中文字幕一区| 亚洲男人都懂的| 精品视频在线免费| 欧美亚洲综合在线| eeuss影院一区二区三区| 国内成人免费视频| 麻豆高清免费国产一区| 亚洲网友自拍偷拍| 亚洲色大成网站www久久九九| 精品国产伦一区二区三区观看体验| 欧美午夜精品免费| 日本韩国欧美一区| 91麻豆免费观看| 99久久婷婷国产综合精品| 国产福利一区二区三区| 国产一区二区三区免费播放| 青青草97国产精品免费观看无弹窗版| 亚洲午夜久久久久久久久电影院 | 国产成人综合网站| 韩国午夜理伦三级不卡影院| 三级在线观看一区二区| 午夜精品视频在线观看| 亚洲第一电影网| 亚洲国产欧美在线人成| 亚洲成a人片在线不卡一二三区| 亚洲青青青在线视频| 亚洲欧美中日韩| 亚洲色图.com| 亚洲影视在线观看| 国产精品乱人伦中文| 精品国产乱码91久久久久久网站| 欧美一区二区三区在线视频| 欧美综合一区二区| 欧美日韩精品综合在线| 欧美日韩成人高清| 91精品午夜视频| 精品久久久三级丝袜| 久久久亚洲精品一区二区三区| 欧美精品一区二区久久久 | 欧美国产丝袜视频| 国产精品素人视频| 中文字幕日韩欧美一区二区三区| 国产精品美女久久久久av爽李琼| 国产精品成人免费精品自在线观看 | 蜜臀va亚洲va欧美va天堂| 亚洲午夜久久久久久久久电影院| 亚洲精品中文字幕在线观看| 亚洲视频一二三区| 成人a级免费电影| 色婷婷久久99综合精品jk白丝 | 久久香蕉国产线看观看99| 色综合久久久网| 91久久精品一区二区| 色综合久久中文字幕| 色狠狠色狠狠综合| 精品国产欧美一区二区| 中文字幕一区在线| 一区二区三区视频在线看| 日韩国产精品久久| 久久国产精品99精品国产 | 欧美激情在线观看视频免费| 亚洲免费毛片网站| 日韩电影免费一区| 成人免费视频一区| 欧美日本韩国一区| 国产精品自拍三区| 视频在线观看国产精品| 国产精品888| 亚洲一级不卡视频| 日本aⅴ免费视频一区二区三区| 国产真实乱对白精彩久久| 91婷婷韩国欧美一区二区| 欧美日韩国产首页在线观看| 精品国产伦一区二区三区免费 | 欧美日韩视频第一区| 国产日产精品1区| 欧美韩日一区二区三区| 日本美女一区二区三区视频| 成人av网站在线| 69久久夜色精品国产69蝌蚪网| 国产日韩成人精品| 成人免费一区二区三区视频| 久久国产日韩欧美精品| 色综合天天综合在线视频| 欧美一区二区高清| 亚洲欧美国产77777| 国产精品中文有码| 欧美狂野另类xxxxoooo| 亚洲欧美怡红院| 看电视剧不卡顿的网站| 色香蕉成人二区免费| 在线欧美一区二区| 久久久久国产精品麻豆ai换脸| 福利一区福利二区| 风间由美一区二区av101| 欧美一区二区观看视频| 亚洲精品va在线观看| 9i看片成人免费高清| 国产亚洲欧洲997久久综合 | 亚洲视频免费观看| 国产成人免费视频精品含羞草妖精| 91精品福利在线一区二区三区 | 日本一区二区免费在线| 久久不见久久见免费视频7| 欧美日韩第一区日日骚| 亚洲美女视频在线观看| caoporn国产精品| 国产拍揄自揄精品视频麻豆| 国产91丝袜在线观看| 久久这里只精品最新地址| 免费国产亚洲视频| 91麻豆精品国产91久久久| 亚洲第一综合色| 欧美在线不卡一区| 成人免费视频一区二区| 国产精品伦一区| 91麻豆精品久久久久蜜臀| 日韩一区二区免费在线电影| 亚洲国产日韩a在线播放性色| 色素色在线综合| 亚洲色图一区二区三区| www.欧美.com| 亚洲视频小说图片| 日韩电影在线观看一区| 美腿丝袜一区二区三区| 亚洲天堂福利av| 精品福利二区三区| 欧美精品一区二区三区视频| 欧美精品丝袜中出| 麻豆国产欧美日韩综合精品二区 | 精品久久久久久亚洲综合网| 国产精品一卡二卡在线观看| 青青草原综合久久大伊人精品优势 | 欧美日韩一区二区在线视频| 一本大道久久a久久综合| 99re热这里只有精品免费视频| 99久久久久免费精品国产| 91视频com| 在线视频国内自拍亚洲视频| 欧美午夜在线观看| 91丝袜国产在线播放| 欧美亚州韩日在线看免费版国语版| 91麻豆国产香蕉久久精品| 日韩美女视频在线| 欧美成人激情免费网| 欧美激情综合在线| 亚洲国产另类av| 国产美女娇喘av呻吟久久| 99天天综合性| 欧美撒尿777hd撒尿| 久久品道一品道久久精品| 国产精品网站在线观看| 日本成人在线不卡视频| av午夜一区麻豆| 欧美精品日韩一本| 国产精品无遮挡| 精品亚洲aⅴ乱码一区二区三区| 国产自产v一区二区三区c| 国产成人8x视频一区二区| 欧美区一区二区三区| 中文字幕av一区二区三区免费看| 日本不卡一二三区黄网| 色视频成人在线观看免| 国产精品免费av| 麻豆国产精品官网| 欧美日本一区二区三区| 中文字幕国产一区| 国产盗摄精品一区二区三区在线| 欧美精选在线播放|