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

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

?? init301.c

?? linux2.6.16版本
?? C
?? 第 1 頁 / 共 5 頁
字號:
static BOOLEANSiS_CR36BIOSWord23d(struct SiS_Private *SiS_Pr){   unsigned char  *ROMAddr = SiS_Pr->VirtualRomBase;   unsigned short temp,temp1;   if(SiS_Pr->SiS_UseROM) {      if((ROMAddr[0x233] == 0x12) && (ROMAddr[0x234] == 0x34)) {	 temp = 1 << ((SiS_GetReg(SiS_Pr->SiS_P3d4,0x36) >> 4) & 0x0f);	 temp1 = SISGETROMW(0x23d);	 if(temp1 & temp) return TRUE;      }   }   return FALSE;}#endif/*********************************************//*          HELPER: DELAY FUNCTIONS          *//*********************************************/voidSiS_DDC2Delay(struct SiS_Private *SiS_Pr, unsigned int delaytime){   unsigned int i, j;   for(i = 0; i < delaytime; i++) {      j += SiS_GetReg(SiS_Pr->SiS_P3c4,0x05);   }}#if defined(SIS300) || defined(SIS315H)static voidSiS_GenericDelay(struct SiS_Private *SiS_Pr, unsigned short delay){   SiS_DDC2Delay(SiS_Pr, delay * 36);}#endif#ifdef SIS315Hstatic voidSiS_LongDelay(struct SiS_Private *SiS_Pr, unsigned short delay){   while(delay--) {      SiS_GenericDelay(SiS_Pr, 6623);   }}#endif#if defined(SIS300) || defined(SIS315H)static voidSiS_ShortDelay(struct SiS_Private *SiS_Pr, unsigned short delay){   while(delay--) {      SiS_GenericDelay(SiS_Pr, 66);   }}#endifstatic voidSiS_PanelDelay(struct SiS_Private *SiS_Pr, unsigned short DelayTime){#if defined(SIS300) || defined(SIS315H)   unsigned char  *ROMAddr = SiS_Pr->VirtualRomBase;   unsigned short PanelID, DelayIndex, Delay=0;#endif   if(SiS_Pr->ChipType < SIS_315H) {#ifdef SIS300      PanelID = SiS_GetReg(SiS_Pr->SiS_P3d4,0x36);      if(SiS_Pr->SiS_VBType & VB_SISVB) {	 if(SiS_Pr->SiS_VBType & VB_SIS301) PanelID &= 0xf7;	 if(!(SiS_GetReg(SiS_Pr->SiS_P3c4,0x18) & 0x10)) PanelID = 0x12;      }      DelayIndex = PanelID >> 4;      if((DelayTime >= 2) && ((PanelID & 0x0f) == 1))  {	 Delay = 3;      } else {	 if(DelayTime >= 2) DelayTime -= 2;	 if(!(DelayTime & 0x01)) {	    Delay = SiS_Pr->SiS_PanelDelayTbl[DelayIndex].timer[0];	 } else {	    Delay = SiS_Pr->SiS_PanelDelayTbl[DelayIndex].timer[1];	 }	 if(SiS_Pr->SiS_UseROM) {	    if(ROMAddr[0x220] & 0x40) {	       if(!(DelayTime & 0x01)) Delay = (unsigned short)ROMAddr[0x225];	       else 	    	       Delay = (unsigned short)ROMAddr[0x226];	    }	 }      }      SiS_ShortDelay(SiS_Pr, Delay);#endif  /* SIS300 */   } else {#ifdef SIS315H      if((SiS_Pr->ChipType >= SIS_661)    ||	 (SiS_Pr->ChipType <= SIS_315PRO) ||	 (SiS_Pr->ChipType == SIS_330)    ||	 (SiS_Pr->SiS_ROMNew)) {	 if(!(DelayTime & 0x01)) {	    SiS_DDC2Delay(SiS_Pr, 0x1000);	 } else {	    SiS_DDC2Delay(SiS_Pr, 0x4000);	 }      } else if((SiS_Pr->SiS_IF_DEF_LVDS == 1) /* ||	 (SiS_Pr->SiS_CustomT == CUT_COMPAQ1280) ||	 (SiS_Pr->SiS_CustomT == CUT_CLEVO1400) */ ) {			/* 315 series, LVDS; Special */	 if(SiS_Pr->SiS_IF_DEF_CH70xx == 0) {	    PanelID = SiS_GetReg(SiS_Pr->SiS_P3d4,0x36);	    if(SiS_Pr->SiS_CustomT == CUT_CLEVO1400) {	       if(!(SiS_GetReg(SiS_Pr->SiS_P3c4,0x1b) & 0x10)) PanelID = 0x12;	    }	    if(SiS_Pr->SiS_CustomT == CUT_COMPAQ1280) {	       DelayIndex = PanelID & 0x0f;	    } else {	       DelayIndex = PanelID >> 4;	    }	    if((DelayTime >= 2) && ((PanelID & 0x0f) == 1))  {	       Delay = 3;	    } else {	       if(DelayTime >= 2) DelayTime -= 2;	       if(!(DelayTime & 0x01)) {		  Delay = SiS_Pr->SiS_PanelDelayTblLVDS[DelayIndex].timer[0];		} else {		  Delay = SiS_Pr->SiS_PanelDelayTblLVDS[DelayIndex].timer[1];	       }	       if((SiS_Pr->SiS_UseROM) && (!(SiS_Pr->SiS_ROMNew))) {		  if(ROMAddr[0x13c] & 0x40) {		     if(!(DelayTime & 0x01)) {			Delay = (unsigned short)ROMAddr[0x17e];		     } else {			Delay = (unsigned short)ROMAddr[0x17f];		     }		  }	       }	    }	    SiS_ShortDelay(SiS_Pr, Delay);	 }      } else if(SiS_Pr->SiS_VBType & VB_SISVB) {			/* 315 series, all bridges */	 DelayIndex = SiS_GetReg(SiS_Pr->SiS_P3d4,0x36) >> 4;	 if(!(DelayTime & 0x01)) {	    Delay = SiS_Pr->SiS_PanelDelayTbl[DelayIndex].timer[0];	 } else {	    Delay = SiS_Pr->SiS_PanelDelayTbl[DelayIndex].timer[1];	 }	 Delay <<= 8;	 SiS_DDC2Delay(SiS_Pr, Delay);      }#endif /* SIS315H */   }}#ifdef SIS315Hstatic voidSiS_PanelDelayLoop(struct SiS_Private *SiS_Pr, unsigned short DelayTime, unsigned short DelayLoop){   int i;   for(i = 0; i < DelayLoop; i++) {      SiS_PanelDelay(SiS_Pr, DelayTime);   }}#endif/*********************************************//*    HELPER: WAIT-FOR-RETRACE FUNCTIONS     *//*********************************************/voidSiS_WaitRetrace1(struct SiS_Private *SiS_Pr){   unsigned short watchdog;   if(SiS_GetReg(SiS_Pr->SiS_P3c4,0x1f) & 0xc0) return;   if(!(SiS_GetReg(SiS_Pr->SiS_P3d4,0x17) & 0x80)) return;   watchdog = 65535;   while((SiS_GetRegByte(SiS_Pr->SiS_P3da) & 0x08) && --watchdog);   watchdog = 65535;   while((!(SiS_GetRegByte(SiS_Pr->SiS_P3da) & 0x08)) && --watchdog);}#if defined(SIS300) || defined(SIS315H)static voidSiS_WaitRetrace2(struct SiS_Private *SiS_Pr, unsigned short reg){   unsigned short watchdog;   watchdog = 65535;   while((SiS_GetReg(SiS_Pr->SiS_Part1Port,reg) & 0x02) && --watchdog);   watchdog = 65535;   while((!(SiS_GetReg(SiS_Pr->SiS_Part1Port,reg) & 0x02)) && --watchdog);}#endifstatic voidSiS_WaitVBRetrace(struct SiS_Private *SiS_Pr){   if(SiS_Pr->ChipType < SIS_315H) {#ifdef SIS300      if(SiS_Pr->SiS_VBType & VB_SIS30xBLV) {	 if(!(SiS_GetReg(SiS_Pr->SiS_Part1Port,0x00) & 0x20)) return;      }      if(!(SiS_GetReg(SiS_Pr->SiS_Part1Port,0x00) & 0x80)) {	 SiS_WaitRetrace1(SiS_Pr);      } else {	 SiS_WaitRetrace2(SiS_Pr, 0x25);      }#endif   } else {#ifdef SIS315H      if(!(SiS_GetReg(SiS_Pr->SiS_Part1Port,0x00) & 0x40)) {	 SiS_WaitRetrace1(SiS_Pr);      } else {	 SiS_WaitRetrace2(SiS_Pr, 0x30);      }#endif   }}static voidSiS_VBWait(struct SiS_Private *SiS_Pr){   unsigned short tempal,temp,i,j;   temp = 0;   for(i = 0; i < 3; i++) {     for(j = 0; j < 100; j++) {        tempal = SiS_GetRegByte(SiS_Pr->SiS_P3da);        if(temp & 0x01) {	   if((tempal & 0x08))  continue;	   else break;        } else {	   if(!(tempal & 0x08)) continue;	   else break;        }     }     temp ^= 0x01;   }}static voidSiS_VBLongWait(struct SiS_Private *SiS_Pr){   if(SiS_Pr->SiS_VBInfo & SetCRT2ToTV) {      SiS_VBWait(SiS_Pr);   } else {      SiS_WaitRetrace1(SiS_Pr);   }}/*********************************************//*               HELPER: MISC                *//*********************************************/#ifdef SIS300static BOOLEANSiS_Is301B(struct SiS_Private *SiS_Pr){   if(SiS_GetReg(SiS_Pr->SiS_Part4Port,0x01) >= 0xb0) return TRUE;   return FALSE;}#endifstatic BOOLEANSiS_CRT2IsLCD(struct SiS_Private *SiS_Pr){   if(SiS_Pr->ChipType == SIS_730) {      if(SiS_GetReg(SiS_Pr->SiS_P3c4,0x13) & 0x20) return TRUE;   }   if(SiS_GetReg(SiS_Pr->SiS_P3d4,0x30) & 0x20) return TRUE;   return FALSE;}BOOLEANSiS_IsDualEdge(struct SiS_Private *SiS_Pr){#ifdef SIS315H   if(SiS_Pr->ChipType >= SIS_315H) {      if((SiS_Pr->ChipType != SIS_650) || (SiS_GetReg(SiS_Pr->SiS_P3d4,0x5f) & 0xf0)) {	 if(SiS_GetReg(SiS_Pr->SiS_P3d4,0x38) & EnableDualEdge) return TRUE;      }   }#endif   return FALSE;}BOOLEANSiS_IsVAMode(struct SiS_Private *SiS_Pr){#ifdef SIS315H   unsigned short flag;   if(SiS_Pr->ChipType >= SIS_315H) {      flag = SiS_GetReg(SiS_Pr->SiS_P3d4,0x38);      if((flag & EnableDualEdge) && (flag & SetToLCDA)) return TRUE;   }#endif   return FALSE;}#ifdef SIS315Hstatic BOOLEANSiS_IsVAorLCD(struct SiS_Private *SiS_Pr){   if(SiS_IsVAMode(SiS_Pr))  return TRUE;   if(SiS_CRT2IsLCD(SiS_Pr)) return TRUE;   return FALSE;}#endifstatic BOOLEANSiS_IsDualLink(struct SiS_Private *SiS_Pr){#ifdef SIS315H   if(SiS_Pr->ChipType >= SIS_315H) {      if((SiS_CRT2IsLCD(SiS_Pr)) ||         (SiS_IsVAMode(SiS_Pr))) {	 if(SiS_Pr->SiS_LCDInfo & LCDDualLink) return TRUE;      }   }#endif   return FALSE;}#ifdef SIS315Hstatic BOOLEANSiS_TVEnabled(struct SiS_Private *SiS_Pr){   if((SiS_GetReg(SiS_Pr->SiS_Part2Port,0x00) & 0x0f) != 0x0c) return TRUE;   if(SiS_Pr->SiS_VBType & VB_SISYPBPR) {      if(SiS_GetReg(SiS_Pr->SiS_Part2Port,0x4d) & 0x10) return TRUE;   }   return FALSE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_LCDAEnabled(struct SiS_Private *SiS_Pr){   if(SiS_GetReg(SiS_Pr->SiS_Part1Port,0x13) & 0x04) return TRUE;   return FALSE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_WeHaveBacklightCtrl(struct SiS_Private *SiS_Pr){   if((SiS_Pr->ChipType >= SIS_315H) && (SiS_Pr->ChipType < SIS_661)) {      if(SiS_GetReg(SiS_Pr->SiS_P3d4,0x79) & 0x10) return TRUE;   }   return FALSE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_IsNotM650orLater(struct SiS_Private *SiS_Pr){   unsigned short flag;   if(SiS_Pr->ChipType == SIS_650) {      flag = SiS_GetReg(SiS_Pr->SiS_P3d4,0x5f) & 0xf0;      /* Check for revision != A0 only */      if((flag == 0xe0) || (flag == 0xc0) ||         (flag == 0xb0) || (flag == 0x90)) return FALSE;   } else if(SiS_Pr->ChipType >= SIS_661) return FALSE;   return TRUE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_IsYPbPr(struct SiS_Private *SiS_Pr){   if(SiS_Pr->ChipType >= SIS_315H) {      /* YPrPb = 0x08 */      if(SiS_GetReg(SiS_Pr->SiS_P3d4,0x38) & EnableCHYPbPr) return TRUE;   }   return FALSE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_IsChScart(struct SiS_Private *SiS_Pr){   if(SiS_Pr->ChipType >= SIS_315H) {      /* Scart = 0x04 */      if(SiS_GetReg(SiS_Pr->SiS_P3d4,0x38) & EnableCHScart) return TRUE;   }   return FALSE;}#endif#ifdef SIS315Hstatic BOOLEANSiS_IsTVOrYPbPrOrScart(struct SiS_Private *SiS_Pr){   unsigned short flag;   if(SiS_Pr->ChipType >= SIS_315H) {      flag = SiS_GetReg(SiS_Pr->SiS_P3d4,0x30);      if(flag & SetCRT2ToTV)        return TRUE;      flag = SiS_GetReg(SiS_Pr->SiS_P3d4,0x38);      if(flag & EnableCHYPbPr)      return TRUE;  /* = YPrPb = 0x08 */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产福利| 日本道色综合久久| 久久亚洲综合av| 久久精品国产亚洲5555| 精品国产不卡一区二区三区| 精一区二区三区| 久久久久久久综合日本| 成人涩涩免费视频| 一区二区三区四区av| 欧美人狂配大交3d怪物一区| 日韩av中文字幕一区二区| 精品三级在线看| 成人免费毛片aaaaa**| 一区在线播放视频| 欧美日韩极品在线观看一区| 免费在线观看一区二区三区| 国产亚洲一区字幕| 欧洲精品一区二区三区在线观看| 婷婷国产v国产偷v亚洲高清| 久久夜色精品国产欧美乱极品| 成人激情小说乱人伦| 夜夜揉揉日日人人青青一国产精品 | 欧美一区二区在线观看| 国产一区二区三区黄视频| 自拍偷拍国产亚洲| 91麻豆精品国产91久久久 | 欧美日韩视频一区二区| 久久国产婷婷国产香蕉| 国产精品久久网站| 欧美日本一区二区三区四区| 国产一区在线不卡| 亚洲一区二区三区在线播放| 久久男人中文字幕资源站| 色综合久久综合网欧美综合网 | 国产伦理精品不卡| 亚洲最大的成人av| 久久久精品黄色| 日本韩国欧美一区| 国产在线视频一区二区三区| 亚洲色图20p| 26uuu国产一区二区三区| 一本一本久久a久久精品综合麻豆| 久久爱www久久做| 一区二区三区在线观看视频| 欧美精品一区二区三| 欧美视频中文一区二区三区在线观看| 激情久久久久久久久久久久久久久久| 亚洲精品日日夜夜| 国产欧美日韩视频在线观看| 日韩视频一区二区三区| 欧美在线|欧美| 成人永久aaa| 精品无码三级在线观看视频| 亚洲成人1区2区| 亚洲三级久久久| 国产日韩av一区| 日韩你懂的在线观看| 欧美二区三区91| 欧美在线免费播放| av中文字幕在线不卡| 国产经典欧美精品| 国产一区二区三区香蕉 | 久久免费视频色| 欧美va亚洲va国产综合| 欧美一区日本一区韩国一区| 在线视频欧美精品| 色噜噜狠狠成人中文综合| 成人一级片网址| 国产精品一品二品| 国产精品69毛片高清亚洲| 国内精品伊人久久久久影院对白| 天堂精品中文字幕在线| 亚洲va韩国va欧美va精品| 亚洲chinese男男1069| 亚洲国产精品影院| 亚洲成人动漫在线免费观看| 婷婷六月综合亚洲| 五月天亚洲婷婷| 男女性色大片免费观看一区二区 | 97久久人人超碰| 99精品偷自拍| 一本到不卡免费一区二区| 99久久精品免费精品国产| 成人不卡免费av| 91香蕉视频黄| 欧美午夜精品久久久| 欧美午夜精品久久久| 9191成人精品久久| 日韩西西人体444www| 精品国产一区a| 国产欧美一区二区在线观看| 国产精品理论片在线观看| 国产精品私人影院| 亚洲天堂福利av| 亚洲国产日韩综合久久精品| 日韩中文字幕麻豆| 九九**精品视频免费播放| 国产精品一卡二卡在线观看| 99精品视频在线观看免费| 色婷婷av一区二区三区gif| 欧美精品久久99久久在免费线| 欧美一区国产二区| 欧美国产乱子伦| 夜夜夜精品看看| 久久精品国产网站| av不卡在线观看| 欧美日韩精品一区二区三区四区 | 欧美日韩中文字幕精品| 日韩欧美中文一区| 中文字幕av一区二区三区| 亚洲永久精品大片| 久久66热偷产精品| 成人av小说网| 91精品国产91久久久久久最新毛片 | 久久理论电影网| 亚洲一卡二卡三卡四卡五卡| 美女网站色91| 色域天天综合网| 精品国产伦一区二区三区免费| 亚洲欧美一区二区在线观看| 首页国产欧美日韩丝袜| 国产不卡高清在线观看视频| 欧美体内she精高潮| 欧美激情中文字幕一区二区| 天使萌一区二区三区免费观看| 国产成人免费高清| 欧美精品日韩综合在线| 日韩毛片视频在线看| 精品一区在线看| 欧美中文字幕不卡| 国产欧美日韩三级| 日本欧美久久久久免费播放网| 91亚洲资源网| 久久蜜臀精品av| 裸体歌舞表演一区二区| 欧美在线观看一二区| 国产精品久久久久久久岛一牛影视| 日本最新不卡在线| 欧美四级电影在线观看| 亚洲欧洲日韩在线| 国产成人av影院| 欧美不卡一区二区| 日韩国产成人精品| 在线中文字幕一区| 国产精品国产精品国产专区不片| 久久99精品久久久久久动态图| 在线观看一区日韩| 亚洲欧洲中文日韩久久av乱码| 国产精品一区三区| 久久久久久久久久久黄色 | 国产福利一区二区三区| 欧美一区二区三区免费在线看| 亚洲人成影院在线观看| 国产成人小视频| 久久午夜色播影院免费高清 | 一区二区三区欧美| 色综合夜色一区| 中文字幕中文字幕在线一区| 国产成人精品免费看| 2023国产精华国产精品| 久久狠狠亚洲综合| 精品久久久久久亚洲综合网| 日韩精品成人一区二区三区| 欧美日韩国产综合久久| 亚洲国产精品久久久久婷婷884| 一本到不卡免费一区二区| 亚洲伦理在线精品| 91蝌蚪porny九色| 一区二区三区日韩欧美精品| 91久久精品国产91性色tv| 亚洲一区二区三区小说| 欧美日韩精品三区| 天天亚洲美女在线视频| 91精品欧美福利在线观看| 日日嗨av一区二区三区四区| 日韩欧美综合一区| 国产在线播放一区三区四| 久久久久久99久久久精品网站| 国产曰批免费观看久久久| 欧美极品xxx| 一本色道久久加勒比精品| 亚洲影视在线观看| 6080yy午夜一二三区久久| 美国十次综合导航| 久久精品视频免费| www.欧美.com| 亚洲成人精品在线观看| 欧美成人vps| www.欧美.com| 午夜电影久久久| 久久久久久久久久电影| www.av亚洲| 丝袜诱惑亚洲看片| 欧美不卡一区二区三区四区| 成人激情小说网站| 午夜精品在线看| 国产免费观看久久| 欧美天堂一区二区三区| 精品一区二区三区av| 国产精品盗摄一区二区三区|