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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tl_video.c

?? 這是模擬器源代碼
?? C
字號:
/*** thinlib (c) 2000 Matthew Conte (matt@conte.com)****** This program is free software; you can redistribute it and/or** modify it under the terms of version 2 of the GNU Library General ** Public License as published by the Free Software Foundation.**** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU ** Library General Public License for more details.  To obtain a ** copy of the GNU Library General Public License, write to the Free ** Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.**** Any permitted reproduction of these routines, in whole or in part,** must bear this legend.****** tl_video.h**** thinlib video routines** $Id: tl_video.c,v 1.6 2001/03/12 06:06:56 matt Exp $*/#include "tl_types.h"#include "tl_video.h"#include "tl_vesa.h"#include "tl_vga.h"#include "tl_aa.h"#include "tl_log.h"typedef struct viddriver_s{   const char *name;   int  (*init)(int width, int height, int bpp);   void (*shutdown)(void);   int  (*setmode)(int width, int height, int bpp);   void (*setpalette)(rgb_t *palette, int index, int length);   void (*waitvsync)(void);   bitmap_t *(*lock)(void);   void (*free)(int num_dirties, rect_t *dirty_rects);   void (*blit)(bitmap_t *primary, int num_dirties, rect_t *dirty_rects);   void (*set_scanlines)(bool scanlines_on);   int  caps;   bool scanlines;} viddriver_t;static viddriver_t vesa ={   "VESA 3.0 LFB",   thin_vesa_init,   thin_vesa_shutdown,   thin_vesa_setmode,   thin_vga_setpalette,   thin_vga_waitvsync,   thin_vesa_lockwrite,   thin_vesa_freewrite,   NULL,   NULL,   0,   false};static viddriver_t vga ={   "VGA",   thin_vga_init,   thin_vga_shutdown,   thin_vga_setmode,   thin_vga_setpalette,   thin_vga_waitvsync,   thin_vga_lockwrite,   thin_vga_freewrite,   NULL,   thin_vga_scanlines,   THIN_VIDEO_SCANLINES,   false};#ifndef NO_AALIBstatic viddriver_t aalib ={   "aa-lib",   thin_aa_init,   thin_aa_shutdown,   thin_aa_setmode,   thin_aa_setpalette,   NULL,   thin_aa_lockwrite,   thin_aa_freewrite,   thin_aa_blit,   NULL,   THIN_VIDEO_CUSTOMBLIT,   false};#endif /* !NO_AALIB */static viddriver_t *driver_list[] = {   &vesa,   &vga,#ifndef NO_AALIB   &aalib,#endif /* !NO_AALIB */   NULL};static viddriver_t driver = {   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   0,   false};int thin_vid_init(int width, int height, int bpp){   /* cascade driver checks by iterating through all drivers */   viddriver_t **iter;   for (iter = driver_list; *iter != NULL; iter++)   {      if (0 == (*iter)->init(width, height, bpp))      {         driver = **iter;         return 0;      }   }   driver.name = NULL;   thin_printf("thin: could not find any matching video modes.\n");   return -1;}void thin_vid_shutdown(void){   if (NULL != driver.name)   {      driver.shutdown();      memset(&driver, 0, sizeof(viddriver_t));   }}int thin_vid_getcaps(void){   return driver.caps;}int thin_vid_scanlines(bool scanlines_on){   if (NULL == driver.set_scanlines       || 0 == (driver.caps & THIN_VIDEO_SCANLINES))   {      return -1;   }   if (scanlines_on != driver.scanlines)   {      driver.scanlines = scanlines_on;      driver.set_scanlines(scanlines_on);   }   return 0;}int thin_vid_setmode(int width, int height, int bpp){   if (driver.setmode(width, height, bpp))   {      thin_printf("thin: could not set %s video mode %dx%d %dbpp\n",                  driver.name, width, height, bpp);      return -1;   }   return 0;}void thin_vid_setpalette(rgb_t *palette, int index, int length){   driver.setpalette(palette, index, length);}bitmap_t *thin_vid_lockwrite(void){   return driver.lock();}void thin_vid_freewrite(int num_dirties, rect_t *dirty_rects){   if (NULL != driver.free)      driver.free(num_dirties, dirty_rects);}void thin_vid_customblit(bitmap_t *primary, int num_dirties,                         rect_t *dirty_rects){   THIN_ASSERT(driver.blit);   driver.blit(primary, num_dirties, dirty_rects);}/*** $Log: tl_video.c,v $** Revision 1.6  2001/03/12 06:06:56  matt** better keyboard driver, support for bit depths other than 8bpp**** Revision 1.5  2001/02/01 06:28:26  matt** thinlib now works under NT/2000**** Revision 1.4  2000/12/16 17:36:38  matt** let's not crash if we shut down video twice...**** Revision 1.3  2000/12/14 14:10:14  matt** cleaner initialization**** Revision 1.2  2000/11/25 20:28:34  matt** moved verboseness into correct places**** Revision 1.1  2000/11/06 02:21:29  matt** initial revision***/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日本一区视频| 成人开心网精品视频| 亚洲自拍偷拍图区| 日韩视频一区二区三区在线播放| 亚洲成av人影院| 亚洲色图制服诱惑| 午夜不卡av免费| 成人a区在线观看| 日韩一级大片在线观看| 久久久久久久久久久久久久久99 | 国产精品沙发午睡系列990531| 亚洲丝袜美腿综合| 亚洲成人av电影在线| 国产凹凸在线观看一区二区| 在线观看三级视频欧美| 欧美一区二区三级| 中文字幕中文字幕在线一区| 欧美经典一区二区三区| 日韩欧美亚洲国产精品字幕久久久| 欧美亚洲国产一区二区三区va | 337p亚洲精品色噜噜噜| 欧美系列日韩一区| 国产精品久久久久aaaa| 91麻豆精品一区二区三区| 亚洲伊人色欲综合网| 日韩欧美你懂的| 欧美亚洲国产一区二区三区| 欧美性感一类影片在线播放| 在线不卡中文字幕播放| 日韩亚洲欧美高清| 国产婷婷精品av在线| 自拍偷拍亚洲欧美日韩| 午夜私人影院久久久久| 国产一区二区三区免费| 不卡一区二区在线| 欧美肥妇bbw| 中文在线一区二区| 最新国产の精品合集bt伙计| 亚洲成a人片在线观看中文| 国产福利一区二区三区视频在线| 91精品福利在线一区二区三区| 亚洲一区二区三区四区的| 欧美区视频在线观看| 日韩av一级片| 欧美日韩卡一卡二| 麻豆国产欧美一区二区三区| 欧美欧美午夜aⅴ在线观看| 日韩电影一二三区| 欧美精品一区二区蜜臀亚洲| 国内精品久久久久影院薰衣草 | 国产一级精品在线| 国产精品―色哟哟| 亚洲第一电影网| 欧美日韩欧美一区二区| 激情文学综合丁香| 青青草国产成人99久久| 欧美午夜精品理论片a级按摩| 在线成人午夜影院| 岛国av在线一区| 成人亚洲精品久久久久软件| 国产精品影视在线| 国产成人日日夜夜| 懂色av一区二区三区免费观看| 六月婷婷色综合| 国产一区二区0| 日韩电影在线一区二区三区| 久久精品一区二区三区不卡牛牛| 99国产精品视频免费观看| 一区二区三区在线观看动漫| 久久 天天综合| 日韩av一二三| 蜜桃av一区二区在线观看 | 中文字幕不卡的av| 制服.丝袜.亚洲.另类.中文| 91久久香蕉国产日韩欧美9色| 成人午夜视频福利| 99re成人精品视频| 欧美电影免费观看高清完整版 | 亚洲高清久久久| 亚洲第一主播视频| 麻豆精品一二三| 国产东北露脸精品视频| 激情综合色播激情啊| 国产精华液一区二区三区| 激情小说亚洲一区| 国产一区二区在线免费观看| gogo大胆日本视频一区| 91麻豆免费看片| 欧美xxxxx牲另类人与| 亚洲精品乱码久久久久久| 日韩精彩视频在线观看| 国产综合色在线视频区| 久久综合狠狠综合久久综合88| 成人小视频在线| 韩国理伦片一区二区三区在线播放 | 在线观看一区二区视频| 亚洲欧洲日韩一区二区三区| 国产成人综合在线| 亚洲国产高清aⅴ视频| 天天操天天色综合| 国产日韩欧美综合一区| 99久久99久久综合| 国产精品久久久久久久久动漫 | 一区二区三区日韩欧美精品| 波多野结衣在线一区| 亚洲一区欧美一区| 日韩一区二区在线观看视频| 美洲天堂一区二卡三卡四卡视频 | 高清beeg欧美| 亚洲大片免费看| 欧美精品一区二区高清在线观看| 国产激情视频一区二区三区欧美 | 91福利资源站| 337p亚洲精品色噜噜噜| 亚洲一区精品在线| 9191精品国产综合久久久久久| 麻豆精品久久久| 久久综合精品国产一区二区三区| 不卡视频在线观看| 亚洲美女精品一区| 日韩精品在线一区| 成人午夜看片网址| 免费不卡在线视频| 26uuu色噜噜精品一区二区| 色婷婷精品久久二区二区蜜臀av| 亚洲国产精品久久久久秋霞影院 | 亚洲综合色成人| 精品国产乱码久久久久久久 | 欧美日韩一区二区三区高清| 日韩高清在线观看| 成人免费精品视频| 日本欧美加勒比视频| 国产精品美女久久久久久久久久久 | 日韩av不卡在线观看| 亚洲mv大片欧洲mv大片精品| 国产精品免费久久| 日韩欧美国产系列| 欧美一区二区三区精品| 欧美一区二区三区爱爱| 亚洲一区二区三区在线播放| 欧美一区二区黄| 国产福利不卡视频| 亚洲狠狠爱一区二区三区| 午夜在线成人av| 一区av在线播放| 日韩精品专区在线| 91免费在线播放| 国产精品18久久久久久久久| 一区二区三区国产| 国产欧美一区二区三区鸳鸯浴| 狠狠色丁香九九婷婷综合五月| 亚洲人被黑人高潮完整版| 国产午夜精品福利| 欧美tk丨vk视频| 欧美男人的天堂一二区| 99精品视频一区二区三区| 国产综合久久久久影院| 蜜桃免费网站一区二区三区| 国产亚洲制服色| 在线播放中文一区| 91麻豆精品国产91久久久资源速度 | 欧美日韩在线播放| 91行情网站电视在线观看高清版| 成人免费视频caoporn| 成人深夜视频在线观看| 成人午夜激情在线| 91久久精品一区二区| 成人国产精品免费观看动漫| 99综合影院在线| 在线精品国精品国产尤物884a| 欧美性三三影院| 精品国产91久久久久久久妲己| 欧美国产日本视频| 亚洲二区在线观看| 国产真实精品久久二三区| 成人av电影免费在线播放| 在线中文字幕不卡| 欧美精品黑人性xxxx| 国产日韩欧美激情| 午夜精品免费在线| 成人午夜视频在线| 91麻豆精品国产91久久久| 国产精品福利影院| 亚洲成av人**亚洲成av**| 丁香激情综合五月| 欧美日本一区二区三区| 精品久久五月天| 一区二区成人在线| 激情图片小说一区| 91精品国产综合久久福利软件 | 日韩一区二区三区四区| 亚洲人成网站色在线观看| 国产乱码精品1区2区3区| 91精品国产高清一区二区三区蜜臀 | 久久色在线视频| 日本系列欧美系列| 91精品国产欧美一区二区| 亚洲免费av在线| 欧美喷水一区二区| 精品一区在线看|