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

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

?? atiscreen.c

?? x.org上有關ati系列顯卡最新驅動
?? C
?? 第 1 頁 / 共 2 頁
字號:
    /* Re-initialise mi's visual list */    miClearVisualTypes();    if ((pATI->depth > 8) && (pATI->DAC == ATI_DAC_INTERNAL))        VisualMask = TrueColorMask;    else        VisualMask = miGetDefaultVisualMask(pATI->depth);    if (!miSetVisualTypes(pATI->depth, VisualMask, pATI->rgbBits,                          pScreenInfo->defaultVisual))        return FALSE;    if (!miSetPixmapDepths())        return FALSE;    pFB = pATI->pMemory;    pATI->FBPitch = PixmapBytePad(pATI->displayWidth, pATI->depth);    if (pATI->OptionShadowFB)    {        pATI->FBBytesPerPixel = pATI->bitsPerPixel >> 3;        pATI->FBPitch = PixmapBytePad(pATI->displayWidth, pATI->depth);        if ((pATI->pShadow = xalloc(pATI->FBPitch * pScreenInfo->virtualY)))        {            pFB = pATI->pShadow;        }        else        {            xf86DrvMsg(pScreenInfo->scrnIndex, X_WARNING,                "Insufficient virtual memory for shadow frame buffer.\n");            pATI->OptionShadowFB = FALSE;        }    }#ifdef XF86DRI_DEVEL    /* Setup DRI after visuals have been established, but before     * fbScreenInit is called.  fbScreenInit will eventually call the     * driver's InitGLXVisuals call back.     */    /* According to atiregs.h, GTPro (3D Rage Pro) is the first chip type with     * 3D triangle setup (the VERTEX_* registers)     */    if (pATI->Chip < ATI_CHIP_264GTPRO) {	xf86DrvMsg(iScreen, X_WARNING,		   "Direct rendering is not supported for ATI chips earlier than "		   "the ATI 3D Rage Pro.\n");	pATI->directRenderingEnabled = FALSE;    } else {	/* FIXME: When we move to dynamic allocation of back and depth	 * buffers, we will want to revisit the following check for 3	 * times the virtual size (or 2.5 times for 24-bit depth) of the screen below.	 */	int cpp = pATI->bitsPerPixel >> 3;	int maxY = pScreenInfo->videoRam * 1024 / (pATI->displayWidth * cpp);	int requiredY;	requiredY = pScreenInfo->virtualY * 2     /* front, back buffers */	    + (pScreenInfo->virtualY * 2 / cpp);  /* depth buffer (always 16-bit) */	if (!pATI->OptionAccel) {	    xf86DrvMsg(iScreen, X_WARNING,		       "Acceleration disabled, not initializing the DRI\n");	    pATI->directRenderingEnabled = FALSE;	} else if ( maxY > requiredY ) {	    pATI->directRenderingEnabled = ATIDRIScreenInit(pScreen);	} else {	    xf86DrvMsg(iScreen, X_WARNING,		       "DRI static buffer allocation failed -- "		       "need at least %d kB video memory\n",		       (pScreenInfo->displayWidth * requiredY * cpp ) / 1024);	    pATI->directRenderingEnabled = FALSE;	}    }#endif /* XF86DRI_DEVEL */    /* Initialise framebuffer layer */    switch (pATI->bitsPerPixel)    {#ifndef AVOID_CPIO        case 1:            pATI->Closeable = xf1bppScreenInit(pScreen, pFB,                pScreenInfo->virtualX, pScreenInfo->virtualY,                pScreenInfo->xDpi, pScreenInfo->yDpi, pATI->displayWidth);            break;        case 4:            pATI->Closeable = xf4bppScreenInit(pScreen, pFB,                pScreenInfo->virtualX, pScreenInfo->virtualY,                pScreenInfo->xDpi, pScreenInfo->yDpi, pATI->displayWidth);            break;#endif /* AVOID_CPIO */        case 8:        case 16:        case 24:        case 32:            pATI->Closeable = fbScreenInit(pScreen, pFB,                pScreenInfo->virtualX, pScreenInfo->virtualY,                pScreenInfo->xDpi, pScreenInfo->yDpi, pATI->displayWidth,                pATI->bitsPerPixel);            break;        default:            return FALSE;    }    if (!pATI->Closeable)        return FALSE;    /* Fixup RGB ordering */    if (pATI->depth > 8)    {        VisualPtr pVisual = pScreen->visuals + pScreen->numVisuals;        while (--pVisual >= pScreen->visuals)        {            if ((pVisual->class | DynamicClass) != DirectColor)                continue;            pVisual->offsetRed = pScreenInfo->offset.red;            pVisual->offsetGreen = pScreenInfo->offset.green;            pVisual->offsetBlue = pScreenInfo->offset.blue;            pVisual->redMask = pScreenInfo->mask.red;            pVisual->greenMask = pScreenInfo->mask.green;            pVisual->blueMask = pScreenInfo->mask.blue;        }    }    /* If applicable, initialise RENDER extension */    if (pATI->bitsPerPixel > 4)    {        if (pATI->OptionShadowFB)        {            if (serverGeneration == 1)                xf86DrvMsg(pScreenInfo->scrnIndex, X_WARNING,                    "RENDER extension not supported with a shadowed"                    " framebuffer.\n");        }#ifndef AVOID_CPIO        else if (pATI->BankInfo.BankSize)        {            if (serverGeneration == 1)                xf86DrvMsg(pScreenInfo->scrnIndex, X_WARNING,                    "RENDER extension not supported with a banked"                    " framebuffer.\n");        }#endif /* AVOID_CPIO */        else if (!fbPictureInit(pScreen, NULL, 0) &&                 (serverGeneration == 1))        {            xf86DrvMsg(pScreenInfo->scrnIndex, X_WARNING,                "RENDER extension initialisation failed.\n");        }    }    xf86SetBlackWhitePixels(pScreen);#ifndef AVOID_CPIO    /* Initialise banking if needed */    if (!miInitializeBanking(pScreen,                             pScreenInfo->virtualX, pScreenInfo->virtualY,                             pATI->displayWidth, &pATI->BankInfo))        return FALSE;#endif /* AVOID_CPIO */#ifdef USE_XAA    if (!pATI->useEXA) {    /* Memory manager setup */#ifdef XF86DRI_DEVEL    if (pATI->directRenderingEnabled)    {        if (!ATIMach64SetupMemXAA(iScreen, pScreen))            return FALSE;    }    else#endif /* XF86DRI_DEVEL */    {        if (!ATIMach64SetupMemXAA_NoDRI(iScreen, pScreen))            return FALSE;    }    /* Setup acceleration */    if (!ATIInitializeAcceleration(pScreen, pScreenInfo, pATI))        return FALSE;    }#endif /* USE_XAA */#ifdef USE_EXA    if (pATI->useEXA) {        /* EXA setups both memory manager and acceleration here */        if (pATI->OptionAccel && !ATIMach64ExaInit(pScreen))            return FALSE;    }#endif /* USE_EXA */#ifndef AVOID_DGA    /* Initialise DGA support */    (void)ATIDGAInit(pScreen, pScreenInfo, pATI);#endif /* AVOID_DGA */    /* Initialise backing store */    miInitializeBackingStore(pScreen);    xf86SetBackingStore(pScreen);    /* Initialise cursor */    if (!ATIInitializeCursor(pScreen, pATI))        return FALSE;    /* Create default colourmap */    if (!miCreateDefColormap(pScreen))        return FALSE;#ifdef AVOID_CPIO    if (!xf86HandleColormaps(pScreen, 256, pATI->rgbBits, ATILoadPalette, NULL,                             CMAP_PALETTED_TRUECOLOR |                             CMAP_LOAD_EVEN_IF_OFFSCREEN))            return FALSE;#else /* AVOID_CPIO */    if (pATI->depth > 1)        if (!xf86HandleColormaps(pScreen, (pATI->depth == 4) ? 16 : 256,                                 pATI->rgbBits, ATILoadPalette, NULL,                                 CMAP_PALETTED_TRUECOLOR |                                 CMAP_LOAD_EVEN_IF_OFFSCREEN))            return FALSE;#endif /* AVOID_CPIO */    /* Initialise shadow framebuffer */    if (pATI->OptionShadowFB &&        !ShadowFBInit(pScreen, ATIRefreshArea))        return FALSE;    /* Initialise DPMS support */    (void)xf86DPMSInit(pScreen, ATISetDPMSMode, 0);    /* Initialise XVideo support */    (void)ATIInitializeXVideo(pScreen, pScreenInfo, pATI);    /* Set pScreen->SaveScreen and wrap CloseScreen vector */    pScreen->SaveScreen = ATISaveScreen;    pATI->CloseScreen = pScreen->CloseScreen;    pScreen->CloseScreen = ATICloseScreen;    if (serverGeneration == 1)        xf86ShowUnusedOptions(pScreenInfo->scrnIndex, pScreenInfo->options);#ifdef TV_OUT    /* Fix-up TV out after ImpacTV probe */    if (pATI->OptionTvOut && pATI->Chip < ATI_CHIP_264GTPRO)        ATISwitchMode(0, pScreenInfo->currentMode, 0);#endif /* TV_OUT */#ifdef XF86DRI_DEVEL    /* DRI finalization */    if (pATI->directRenderingEnabled) {	/* Now that mi, fb, drm and others have done their thing,	 * complete the DRI setup.	 */	pATI->directRenderingEnabled = ATIDRIFinishScreenInit(pScreen);    }    if (pATI->directRenderingEnabled) {	xf86DrvMsg(pScreenInfo->scrnIndex, X_INFO,		   "Direct rendering enabled\n");    } else {        /* FIXME: Release unused offscreen mem here? */	xf86DrvMsg(pScreenInfo->scrnIndex, X_INFO,		   "Direct rendering disabled\n");    }#endif /* XF86DRI_DEVEL */    return TRUE;}/* * ATICloseScreen -- * * This function is called by DIX to close the screen. */BoolATICloseScreen(    int       iScreen,    ScreenPtr pScreen){    ScrnInfoPtr pScreenInfo = xf86Screens[iScreen];    ATIPtr      pATI        = ATIPTR(pScreenInfo);    Bool        Closed      = TRUE;#ifdef XF86DRI_DEVEL    /* Disable direct rendering */    if (pATI->directRenderingEnabled)    {	ATIDRICloseScreen(pScreen);	pATI->directRenderingEnabled = FALSE;    }#endif /* XF86DRI_DEVEL */    ATICloseXVideo(pScreen, pScreenInfo, pATI);#ifdef USE_EXA    if (pATI->pExa)    {        exaDriverFini(pScreen);        xfree(pATI->pExa);        pATI->pExa = NULL;    }#endif#ifdef USE_XAA    if (pATI->pXAAInfo)    {        XAADestroyInfoRec(pATI->pXAAInfo);        pATI->pXAAInfo = NULL;    }#endif    if ((pScreen->CloseScreen = pATI->CloseScreen))    {        pATI->CloseScreen = NULL;        Closed = (*pScreen->CloseScreen)(iScreen, pScreen);    }    pATI->Closeable = FALSE;    if (pATI->pCursorInfo)    {        xf86DestroyCursorInfoRec(pATI->pCursorInfo);        pATI->pCursorInfo = NULL;    }    ATILeaveGraphics(pScreenInfo, pATI);#ifdef USE_XAA    if (!pATI->useEXA)    {        xfree(pATI->ExpansionBitmapScanlinePtr[1]);        pATI->ExpansionBitmapScanlinePtr[0] = NULL;        pATI->ExpansionBitmapScanlinePtr[1] = NULL;    }#endif    xfree(pATI->pShadow);    pATI->pShadow = NULL;    pScreenInfo->pScreen = NULL;    return Closed;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧洲av在线| 亚洲人成影院在线观看| 欧美日本视频在线| 欧美色精品在线视频| 欧美日韩在线播放三区| 欧美日韩一区二区电影| 欧美日韩视频在线观看一区二区三区| 91久久精品日日躁夜夜躁欧美| 在线免费观看视频一区| 欧美影视一区在线| 欧美蜜桃一区二区三区| 日韩免费视频线观看| 久久久精品国产免费观看同学| 国产日韩欧美综合在线| 中文字幕亚洲一区二区va在线| 亚洲精品免费在线观看| 日韩成人免费在线| 福利视频网站一区二区三区| 91久久国产综合久久| 欧美一级艳片视频免费观看| 国产欧美精品国产国产专区| 国产精品福利av| 日韩av中文在线观看| 国产69精品一区二区亚洲孕妇| 色综合久久综合中文综合网| 欧美日韩国产一区| 国产三级一区二区| 亚洲成人动漫一区| 国产aⅴ综合色| 欧美三片在线视频观看| 精品国产制服丝袜高跟| 亚洲丝袜精品丝袜在线| 日本美女视频一区二区| 不卡影院免费观看| 欧美一区二区三区公司| 最新日韩av在线| 久久99久久精品| 91一区一区三区| 精品国产伦一区二区三区免费| 欧美国产一区二区在线观看| 一区二区三区在线观看欧美| 国产一区二区视频在线| 欧美日韩国产精品自在自线| 国产精品美女久久久久久久久久久 | 懂色一区二区三区免费观看 | 欧美日韩高清影院| 国产精品久久久久aaaa| 精品午夜一区二区三区在线观看| 色网站国产精品| 欧美国产综合一区二区| 激情五月播播久久久精品| 欧美性猛片xxxx免费看久爱| 国产欧美日韩视频在线观看| 美女www一区二区| 欧美日韩视频一区二区| 亚洲乱码国产乱码精品精可以看 | 国产在线视频一区二区三区| 欧美日韩一区三区四区| 日韩一区在线播放| 国产精品影视在线| 日韩精品中文字幕在线一区| 婷婷综合久久一区二区三区| 欧美综合亚洲图片综合区| 中文字幕在线观看不卡| 丁香五精品蜜臀久久久久99网站 | 91精品黄色片免费大全| 一区二区免费看| 色一情一乱一乱一91av| 国产精品九色蝌蚪自拍| 99久久婷婷国产综合精品电影| 久久久久97国产精华液好用吗| 久久精品国产在热久久| 日韩亚洲欧美中文三级| 秋霞国产午夜精品免费视频| 制服丝袜在线91| 捆绑调教一区二区三区| 26uuu色噜噜精品一区二区| 精品亚洲porn| 国产精品网站导航| 成人精品国产一区二区4080 | 欧美在线视频不卡| 亚洲已满18点击进入久久| 欧美日韩五月天| 蜜乳av一区二区三区| 欧美xxx久久| 国产91在线观看| 中文字幕日韩一区二区| 日本高清成人免费播放| 亚洲成人免费视频| 日韩区在线观看| 成人av综合在线| 夜夜嗨av一区二区三区网页| 91精品久久久久久蜜臀| 韩国精品免费视频| 亚洲天堂av老司机| 51精品国自产在线| 国产精品亚洲专一区二区三区| √…a在线天堂一区| 91麻豆精品国产综合久久久久久| 国产在线精品一区二区三区不卡| 国产精品国产精品国产专区不片| 欧美视频一区在线| 国产精品一区一区三区| 一区二区三区在线看| 精品国产一区二区精华| 成av人片一区二区| 日本成人在线网站| 亚洲欧洲av另类| 日韩一区二区在线观看视频播放| 国产精品99久久久久久似苏梦涵| 亚洲人成人一区二区在线观看| 欧美一区二区三区四区在线观看 | 日韩免费看的电影| eeuss鲁片一区二区三区在线看| 亚洲乱码中文字幕综合| 精品粉嫩aⅴ一区二区三区四区| 99国产精品一区| 经典三级一区二区| 亚洲愉拍自拍另类高清精品| 国产喷白浆一区二区三区| 91精品一区二区三区在线观看| 不卡av在线免费观看| 精品在线你懂的| 亚洲成va人在线观看| 国产精品美女久久久久久2018| 日韩一区二区三区在线视频| 色婷婷av一区二区三区软件 | 国产一区日韩二区欧美三区| 一卡二卡三卡日韩欧美| 欧美激情一区二区三区四区| 日韩三区在线观看| 欧美巨大另类极品videosbest | 国产成人综合在线播放| 午夜电影一区二区三区| 日韩码欧中文字| 国产精品久久久久三级| 久久亚区不卡日本| 精品久久久影院| 欧美成人精品3d动漫h| 欧美一卡在线观看| 欧美男男青年gay1069videost| 欧美在线看片a免费观看| 97se狠狠狠综合亚洲狠狠| 国产69精品久久久久毛片| 国产精品亚洲а∨天堂免在线| 极品少妇xxxx精品少妇| 久久电影网电视剧免费观看| 卡一卡二国产精品| 麻豆久久久久久久| 麻豆成人久久精品二区三区红 | 亚欧色一区w666天堂| 亚洲一区二区三区不卡国产欧美| 亚洲免费观看高清| 一区二区三区不卡在线观看 | av亚洲产国偷v产偷v自拍| 成人黄色777网| 一本色道久久综合精品竹菊| 91首页免费视频| 欧美综合亚洲图片综合区| 欧美四级电影在线观看| 337p亚洲精品色噜噜狠狠| 欧美一级片在线看| 国产午夜亚洲精品午夜鲁丝片| 欧美高清在线精品一区| 亚洲精品国产成人久久av盗摄| 亚洲国产精品久久艾草纯爱 | 精品成人a区在线观看| 国产三级一区二区| 亚洲乱码一区二区三区在线观看| 一区二区三区免费观看| 日韩精品成人一区二区三区| 久久国产欧美日韩精品| 丁香啪啪综合成人亚洲小说 | 男男视频亚洲欧美| 国内久久精品视频| 成人av电影在线网| 欧美色国产精品| 精品毛片乱码1区2区3区| 亚洲国产经典视频| 亚洲综合在线视频| 激情文学综合丁香| 欧美性色aⅴ视频一区日韩精品| 日韩欧美国产麻豆| 亚洲女人的天堂| 久草中文综合在线| 色婷婷久久久亚洲一区二区三区| 这里只有精品免费| 最新中文字幕一区二区三区| 日本网站在线观看一区二区三区 | 欧美韩国日本不卡| 亚洲成av人片www| 高清shemale亚洲人妖| 欧美日韩精品一二三区| 国产精品美女视频| 激情综合网最新| 欧美日本精品一区二区三区| 国产精品欧美经典| 久久99精品久久久久久国产越南| 色吧成人激情小说| 国产精品视频观看|