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

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

?? atichip.c

?? x.org上有關ati系列顯卡最新驅動
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/atichip.c,v 1.38tsi Exp $ *//* * Copyright 1997 through 2004 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that copyright * notice and this permission notice appear in supporting documentation, and * that the name of Marc Aurele La France not be used in advertising or * publicity pertaining to distribution of the software without specific, * written prior permission.  Marc Aurele La France makes no representations * about the suitability of this software for any purpose.  It is provided * "as-is" without express or implied warranty. * * MARC AURELE LA FRANCE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO * EVENT SHALL MARC AURELE LA FRANCE BE LIABLE FOR ANY SPECIAL, INDIRECT OR * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */#ifdef HAVE_CONFIG_H#include "config.h"#endif#include "ati.h"#include "atibus.h"#include "atichip.h"#include "atimach64io.h"#include "ativersion.h"/* * Chip-related definitions. */const char *ATIChipNames[] ={    "Unknown",#ifndef AVOID_CPIO    "IBM VGA or compatible",    "ATI 18800",    "ATI 18800-1",    "ATI 28800-2",    "ATI 28800-4",    "ATI 28800-5",    "ATI 28800-6",    "IBM 8514/A",    "Chips & Technologies 82C480",    "ATI 38800-1",    "ATI 68800",    "ATI 68800-3",    "ATI 68800-6",    "ATI 68800LX",    "ATI 68800AX",#endif /* AVOID_CPIO */    "ATI 88800GX-C",    "ATI 88800GX-D",    "ATI 88800GX-E",    "ATI 88800GX-F",    "ATI 88800GX",    "ATI 88800CX",    "ATI 264CT",    "ATI 264ET",    "ATI 264VT",    "ATI 3D Rage",    "ATI 264VT-B",    "ATI 3D Rage II",    "ATI 264VT3",    "ATI 3D Rage II+DVD",    "ATI 3D Rage LT",    "ATI 264VT4",    "ATI 3D Rage IIc",    "ATI 3D Rage Pro",    "ATI 3D Rage LT Pro",    "ATI 3D Rage XL or XC",    "ATI 3D Rage Mobility",    "ATI unknown Mach64",    "ATI Rage 128 GL",    "ATI Rage 128 VR",    "ATI Rage 128 Pro GL",    "ATI Rage 128 Pro VR",    "ATI Rage 128 Pro ULTRA",    "ATI Rage 128 Mobility M3",    "ATI Rage 128 Mobility M4",    "ATI unknown Rage 128"    "ATI Radeon 7200",    "ATI Radeon 7000 (VE)",    "ATI Radeon Mobility M6",    "ATI Radeon IGP320",    "ATI Radeon IGP330/340/350",    "ATI Radeon 7000 IGP",    "ATI Radeon 7500",    "ATI Radeon Mobility M7",    "ATI Radeon 8500/9100",    "ATI Radeon 9000",    "ATI Radeon Mobility M9",    "ATI Radeon 9100 IGP",    "ATI Radeon 9200 IGP",    "ATI Radeon 9200",    "ATI Radeon Mobility M9+",    "ATI Radeon 9700/9500",    "ATI Radeon 9600/9550",    "ATI Radeon 9800",    "ATI Radeon 9800XT",    "ATI Radeon X300/X550/M22",    "ATI Radeon X600/X550/M24",    "ATI Radeon X800/M18 AGP",    "ATI Radeon X800/M28 PCIE",    "ATI Radeon X800XL PCIE",    "ATI Radeon X850 PCIE",    "ATI Radeon X850 AGP",    "ATI Radeon X700",    "ATI Xpress 200"    "ATI unknown Radeon",    "ATI Rage HDTV"};const char *ATIFoundryNames[] =    { "SGS", "NEC", "KCS", "UMC", "TSMC", "5", "6", "UMC" };#ifndef AVOID_CPIO/* * ATIMach32ChipID -- * * Set variables whose value is dependent upon an 68800's CHIP_ID register. */voidATIMach32ChipID(    ATIPtr pATI){    CARD16 IOValue     = inw(CHIP_ID);    pATI->ChipType     = GetBits(IOValue, CHIP_CODE_0 | CHIP_CODE_1);    pATI->ChipClass    = GetBits(IOValue, CHIP_CLASS);    pATI->ChipRevision = GetBits(IOValue, CHIP_REV);    pATI->ChipRev      = pATI->ChipRevision;    if (IOValue == 0xFFFFU)        IOValue = 0;    switch (GetBits(IOValue, CHIP_CODE_0 | CHIP_CODE_1))    {        case OldChipID('A', 'A'):            pATI->Chip = ATI_CHIP_68800_3;            break;        case OldChipID('X', 'X'):            pATI->Chip = ATI_CHIP_68800_6;            break;        case OldChipID('L', 'X'):            pATI->Chip = ATI_CHIP_68800LX;            break;        case OldChipID('A', 'X'):            pATI->Chip = ATI_CHIP_68800AX;            break;        default:            pATI->Chip = ATI_CHIP_68800;            break;    }}#endif /* AVOID_CPIO *//* * ATIMach64ChipID -- * * Set variables whose value is dependent upon a Mach64's CONFIG_CHIP_ID * register. */voidATIMach64ChipID(    ATIPtr       pATI,    const CARD16 ExpectedChipType){    pATI->config_chip_id = inr(CONFIG_CHIP_ID);    pATI->ChipType       = GetBits(pATI->config_chip_id, 0xFFFFU);    pATI->ChipClass      = GetBits(pATI->config_chip_id, CFG_CHIP_CLASS);    pATI->ChipRevision   = GetBits(pATI->config_chip_id, CFG_CHIP_REV);    pATI->ChipVersion    = GetBits(pATI->config_chip_id, CFG_CHIP_VERSION);    pATI->ChipFoundry    = GetBits(pATI->config_chip_id, CFG_CHIP_FOUNDRY);    pATI->ChipRev        = pATI->ChipRevision;    switch (pATI->ChipType)    {        case OldChipID('G', 'X'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'X'):            switch (pATI->ChipRevision)            {                case 0x00U:                    pATI->Chip = ATI_CHIP_88800GXC;                    break;                case 0x01U:                    pATI->Chip = ATI_CHIP_88800GXD;                    break;                case 0x02U:                    pATI->Chip = ATI_CHIP_88800GXE;                    break;                case 0x03U:                    pATI->Chip = ATI_CHIP_88800GXF;                    break;                default:                    pATI->Chip = ATI_CHIP_88800GX;                    break;            }            break;        case OldChipID('C', 'X'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('C', 'X'):            pATI->Chip = ATI_CHIP_88800CX;            break;        case OldChipID('C', 'T'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('C', 'T'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264CT;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('E', 'T'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('E', 'T'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264ET;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('V', 'T'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('V', 'T'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264VT;            pATI->BusType = ATI_BUS_PCI;            /* Some early GT's are detected as VT's */            if (ExpectedChipType && (pATI->ChipType != ExpectedChipType))            {                if (ExpectedChipType == NewChipID('G', 'T'))                    pATI->Chip = ATI_CHIP_264GT;                else                    xf86Msg(X_WARNING,                            ATI_NAME ":  Mach64 chip type probe discrepancy"                            " detected:  PCI=0x%04X;  CHIP_ID=0x%04X.\n",                            ExpectedChipType, pATI->ChipType);            }            else if (pATI->ChipVersion)                pATI->Chip = ATI_CHIP_264VTB;            break;        case OldChipID('G', 'T'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'T'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->BusType = ATI_BUS_PCI;            if (!pATI->ChipVersion)                pATI->Chip = ATI_CHIP_264GT;            else                pATI->Chip = ATI_CHIP_264GTB;            break;        case OldChipID('V', 'U'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('V', 'U'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264VT3;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('G', 'U'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'U'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264GTDVD;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('L', 'G'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('L', 'G'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264LT;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('V', 'V'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('V', 'V'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264VT4;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('G', 'V'):        case OldChipID('G', 'Y'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'V'):        case NewChipID('G', 'Y'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264GT2C;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('G', 'W'):        case OldChipID('G', 'Z'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'W'):        case NewChipID('G', 'Z'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264GT2C;            pATI->BusType = ATI_BUS_AGP;            break;        case OldChipID('G', 'I'):        case OldChipID('G', 'P'):        case OldChipID('G', 'Q'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'I'):        case NewChipID('G', 'P'):        case NewChipID('G', 'Q'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264GTPRO;            pATI->BusType = ATI_BUS_PCI;            break;        case OldChipID('G', 'B'):        case OldChipID('G', 'D'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'B'):        case NewChipID('G', 'D'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264GTPRO;            pATI->BusType = ATI_BUS_AGP;            break;        case OldChipID('L', 'I'):        case OldChipID('L', 'P'):        case OldChipID('L', 'Q'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('L', 'I'):        case NewChipID('L', 'P'):        case NewChipID('L', 'Q'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264LTPRO;            pATI->BusType = ATI_BUS_PCI;            pATI->LCDVBlendFIFOSize = 800;            break;        case OldChipID('L', 'B'):        case OldChipID('L', 'D'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('L', 'B'):        case NewChipID('L', 'D'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264LTPRO;            pATI->BusType = ATI_BUS_AGP;            pATI->LCDVBlendFIFOSize = 800;            break;        case OldChipID('G', 'L'):        case OldChipID('G', 'O'):        case OldChipID('G', 'R'):        case OldChipID('G', 'S'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'L'):        case NewChipID('G', 'O'):        case NewChipID('G', 'R'):        case NewChipID('G', 'S'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264XL;            pATI->BusType = ATI_BUS_PCI;            pATI->LCDVBlendFIFOSize = 1024;            break;        case OldChipID('G', 'M'):        case OldChipID('G', 'N'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('G', 'M'):        case NewChipID('G', 'N'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_264XL;            pATI->BusType = ATI_BUS_AGP;            pATI->LCDVBlendFIFOSize = 1024;            break;        case OldChipID('L', 'R'):        case OldChipID('L', 'S'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);        case NewChipID('L', 'R'):        case NewChipID('L', 'S'):            pATI->ChipRevision =                GetBits(pATI->config_chip_id, CFG_CHIP_REVISION);            pATI->Chip = ATI_CHIP_MOBILITY;            pATI->BusType = ATI_BUS_PCI;            pATI->LCDVBlendFIFOSize = 1024;            break;        case OldChipID('L', 'M'):        case OldChipID('L', 'N'):            pATI->ChipType = OldToNewChipID(pATI->ChipType);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品青草综合久久久久99| 国产精品66部| 亚洲男人的天堂一区二区| 国产精品欧美久久久久无广告 | 欧美午夜电影一区| 欧洲激情一区二区| 欧美色偷偷大香| 5566中文字幕一区二区电影| 91麻豆精品国产91久久久久 | 国产精品福利在线播放| 国产精品成人免费精品自在线观看| 亚洲国产成人在线| 亚洲女厕所小便bbb| 亚洲精品成人天堂一二三| 午夜激情一区二区三区| 男男视频亚洲欧美| 国产一区91精品张津瑜| 99久免费精品视频在线观看| 色8久久精品久久久久久蜜| 欧美日韩精品欧美日韩精品一| 欧美一区中文字幕| 久久九九全国免费| 亚洲美女一区二区三区| 天堂蜜桃91精品| 久久99精品久久久久婷婷| 国产成人8x视频一区二区| 色婷婷一区二区| 欧美一级高清片在线观看| 久久综合色播五月| 亚洲精品菠萝久久久久久久| 青青草精品视频| 成人黄色国产精品网站大全在线免费观看| 91蜜桃视频在线| 欧美日本一区二区三区| 国产亚洲一本大道中文在线| 亚洲综合免费观看高清完整版在线| 秋霞影院一区二区| av一二三不卡影片| 51久久夜色精品国产麻豆| 日本一区二区三区国色天香| 亚洲主播在线观看| 国产精品亚洲一区二区三区妖精| 91色婷婷久久久久合中文| 日韩欧美在线影院| 日韩美女视频一区二区 | 不卡高清视频专区| 91精品国产全国免费观看| 国产精品美日韩| 蜜臀a∨国产成人精品| 91在线观看高清| 日韩三级高清在线| 亚洲精品va在线观看| 国产精品一区二区三区乱码| 欧美日韩在线播| 国产精品美女www爽爽爽| 美女视频免费一区| 欧美在线观看一区二区| 欧美国产1区2区| 奇米888四色在线精品| www.在线欧美| 久久久久久夜精品精品免费| 亚洲二区在线观看| 成人av高清在线| 精品人在线二区三区| 一区二区三区日韩欧美精品| 国产成人在线免费| 日韩精品一区二| 亚洲成人一二三| 99视频国产精品| 国产亚洲欧美一区在线观看| 蜜臀久久久久久久| 欧美三级日韩三级| 1区2区3区精品视频| 国产成人亚洲综合a∨婷婷 | 亚洲一区影音先锋| 99免费精品视频| 国产免费成人在线视频| 久久精品国产久精国产| 在线播放中文字幕一区| 亚洲成人综合视频| 91成人在线精品| 亚洲免费观看高清| 99久久久久久| 国产精品网友自拍| 精彩视频一区二区| 精品国产第一区二区三区观看体验| 日韩高清在线一区| 欧美日韩电影在线| 亚洲国产cao| 欧美日韩一区二区三区在线看| 亚洲精品免费在线观看| 色老汉一区二区三区| 亚洲欧美日韩国产成人精品影院| 成人黄色av电影| 国产精品国产三级国产普通话蜜臀 | 亚洲国产cao| 欧美亚洲动漫制服丝袜| 亚洲一二三四久久| 欧美色中文字幕| 亚洲444eee在线观看| 在线免费一区三区| 午夜在线成人av| 666欧美在线视频| 美女视频黄久久| 久久精品人人做人人爽97| 国产精品18久久久久久vr| 日本一区二区三区高清不卡| jizz一区二区| 一区二区三区欧美日| 欧美在线不卡视频| 午夜视黄欧洲亚洲| 日韩欧美电影在线| 国产精品一级在线| 国产精品久久久一本精品| 91麻豆免费视频| 亚洲国产综合人成综合网站| 在线播放欧美女士性生活| 极品少妇xxxx精品少妇偷拍| 久久精品网站免费观看| 91亚洲精华国产精华精华液| 亚洲免费在线观看视频| 91精品中文字幕一区二区三区| 老司机精品视频线观看86| 久久亚洲一级片| 91麻豆成人久久精品二区三区| 亚洲黄一区二区三区| 欧美一区二区三区日韩| 国产永久精品大片wwwapp| 国产精品欧美久久久久无广告| 91国产精品成人| 久久99最新地址| 亚洲色图欧洲色图| 欧美一级午夜免费电影| 国产成人丝袜美腿| 亚洲自拍偷拍av| 久久久精品免费免费| 色婷婷久久一区二区三区麻豆| 偷拍日韩校园综合在线| 欧美激情一区三区| 欧美精品在线一区二区三区| 激情成人综合网| 亚洲免费av高清| 日韩欧美国产精品一区| 成人av免费观看| 日韩va欧美va亚洲va久久| 国产精品美女久久久久aⅴ国产馆| 欧美在线观看一区二区| 国产麻豆91精品| 调教+趴+乳夹+国产+精品| 欧美激情在线一区二区| 在线成人av影院| 99久久精品国产一区二区三区| 丝袜诱惑亚洲看片| 国产精品萝li| 精品少妇一区二区三区日产乱码| 91美女在线看| 国产精品一区二区在线观看不卡| 亚洲韩国一区二区三区| 国产精品网友自拍| 精品区一区二区| 欧美日韩一区二区三区免费看| 国产.欧美.日韩| 久久不见久久见免费视频1| 亚洲一二三四区| 最新国产の精品合集bt伙计| 2021国产精品久久精品| 欧美日韩中文另类| 99国产欧美久久久精品| 激情五月婷婷综合网| 午夜精品一区在线观看| 亚洲特级片在线| 日本一区二区高清| 欧美精品一区二区久久婷婷| 久久伊人中文字幕| 7777精品伊人久久久大香线蕉经典版下载 | 精品一区二区三区的国产在线播放 | 国产精品三级av在线播放| 欧美一区二区三区视频在线| 欧美亚洲丝袜传媒另类| 色综合久久天天| 国产aⅴ综合色| 国产一区二区三区av电影| 日本vs亚洲vs韩国一区三区二区 | 精品一二线国产| 午夜伦理一区二区| 亚洲一二三四在线| 一区二区在线免费| 亚洲欧美一区二区不卡| 国产精品网站一区| 欧美激情在线看| 国产欧美精品国产国产专区| 久久综合久久综合亚洲| 精品伦理精品一区| 欧美大片日本大片免费观看| 日韩午夜在线观看| 日韩一区二区三区观看| 日韩美女视频在线| 欧美电影精品一区二区| 日韩免费性生活视频播放| 制服视频三区第一页精品|