Annotation of Examples/DriverKit/ATI/ATI_reloc.tproj/ATIModes.c, revision 1.1.1.1

1.1       root        1: /* Copyright (c) 1992, 1993 NeXT Computer, Inc.  All rights reserved. 
                      2:  *
                      3:  * ATIModes.c - Mode definitions for the ATi display driver.
                      4:  *
                      5:  * HISTORY
                      6:  * 07 Oct 92   Joe Pasqua
                      7:  *      Created. 
                      8:  * 01 June 93  Mike Paquette
                      9:  *     Rewrite: Convert from Corsair device driver to general MACH32 chipset
                     10:  *             driver. Add support for multiple DACs and CRT setups.
                     11:  *             Add 8 bit monochrome support.  Add support for non-Cosair
                     12:  *             implementations.
                     13:  *  7 July 1993        Derek B Clegg
                     14:  *     Cleaned up for external release.
                     15:  */
                     16: #import "ATIModes.h"
                     17: 
                     18: const ATI_DACSetup ATI_DAC_Setup_15BPP = {
                     19:     0, 1, 0x0d, 0x402A, 0x00, 0x03, 0xA0, IO_15BitsPerPixel
                     20: };
                     21: 
                     22: const ATI_DACSetup ATI_DAC_Setup_8BPP = {
                     23:     0, 0x30, 0x2d, 0x401A, 0xFF, 0x03, 0x00, IO_8BitsPerPixel
                     24: };
                     25: 
                     26: /* 800 x 600, 60Hz, noninterlaced for slow/double clocked DACS (Bt481,ATT491)
                     27:  * Note that this programs an 80 MHz dot clock, the current maximum. */
                     28: static const ATI_CRTCSetup ATI_crt_800_60_SlowDAC = {
                     29:     800, 600, 0x83, 0x63, 0x68, 0x10, 0x4E3, 0x4ab, 0x4B0, 0x04, 0x23,
                     30:     0x062C, 0,
                     31: };
                     32: 
                     33: /* 800 x 600, 72Hz, noninterlaced. */
                     34: static const ATI_CRTCSetup ATI_crt_800_72 = {
                     35:     800, 600, 0x82, 0x63, 0x6A, 0x0F, 0x537, 0x4ab, 0x4F8, 0x06, 0x23,
                     36:     0x0610, 0,
                     37: };
                     38: 
                     39: /* 800 x 600, 60Hz, noninterlaced. */
                     40: static const ATI_CRTCSetup ATI_crt_800_60 = {
                     41:     800, 600, 0x83, 0x63, 0x68, 0x10, 0x4E3, 0x4ab, 0x4B0, 0x04, 0x23,
                     42:     0x0630, 0,
                     43: };
                     44: 
                     45: /* 1024 x 768, 76Hz, noninterlaced. */
                     46: static const ATI_CRTCSetup ATI_crt_1024_76 = {
                     47:     1024, 768, 0xa2, 0x7f, 0x87, 0x0B, 0x64A, 0x5ff, 0x60B, 0x04, 0x23,
                     48:     0x062c, 0,
                     49: };
                     50: 
                     51: /* 1024 x 768, 72Hz, noninterlaced. */
                     52: static const ATI_CRTCSetup ATI_crt_1024_72 = {
                     53:     1024, 768, 0xa1, 0x7f, 0x82, 0x10, 0x649, 0x5ff, 0x602, 0x26, 0x23,
                     54:     0x0638, 0,
                     55: };
                     56: 
                     57: /* 1024 x 768, 60Hz, noninterlaced. */
                     58: static const ATI_CRTCSetup ATI_crt_1024_60 = {
                     59:     1024, 768, 0xa7, 0x7f, 0x85, 0x08, 0x63B, 0x5ff, 0x600, 0x04, 0x23,
                     60:     0x063C, 0,
                     61: };
                     62: 
                     63: /* 1120 x 832, 60Hz, noninterlaced. */
                     64: static const ATI_CRTCSetup ATI_crt_1120_60 = {
                     65:     1120, 832, 0xAB, 0x8B, 0x91, 0x0C, 0x6E8, 0x67F, 0x685, 0x0C, 0x23,
                     66:     0x0638, 0,
                     67: };
                     68: 
                     69: /* 1120 x 832, 68Hz, noninterlaced. */
                     70: static const ATI_CRTCSetup ATI_crt_1120_68 = {
                     71:     1120, 832, 0xAB, 0x8B, 0x91, 0x0C, 0x6C8, 0x67F, 0x681, 0x06, 0x23,
                     72:     0x062C, 0,
                     73: };
                     74: 
                     75: /* 1280 x 1024, 60Hz, noninterlaced. */
                     76: static const ATI_CRTCSetup ATI_crt_1280_60 = {
                     77:     1280, 1024, 0xD6, 0x9f, 0xA9, 0x2E, 0x852, 0x7ff, 0x800, 0x25, 0x23,
                     78:     0x0628, 1,
                     79: };
                     80: 
                     81: #if 0
                     82: 
                     83: /* These values are provided for reference only.  Current DACs exhibit
                     84:  * instability when driven at these high rates. */
                     85: 
                     86: /* 1280 x 1024, 74Hz, noninterlaced. */
                     87: static const ATI_CRTCSetup ATI_crt_1280_74 = {
                     88:     1280, 1024, 0xD5, 0x9f, 0xA3, 0x12, 0x84B, 0x7ff, 0x7FF, 0x05, 0x23,
                     89:     0x0620, 1,
                     90: };
                     91: 
                     92: /* 1280 x 1024, 70Hz, noninterlaced. */
                     93: static const ATI_CRTCSetup ATI_crt_1280_70 = {
                     94:     1280, 1024, 0xD2, 0x9f, 0xA9, 0x0E, 0x851, 0x7ff, 0x800, 0x05, 0x23,
                     95:     0x0604, 1,
                     96: };
                     97: 
                     98: #endif
                     99: 
                    100: const IODisplayInfo ATIMode[] = {
                    101:     {  800, 600, 800, 1600, 72, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    102:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_800_72 },
                    103:     {  800, 600, 800, 1600, 60, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    104:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_800_60 },
                    105:     { 1024, 768, 1024, 2048, 76, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    106:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_1024_76 },
                    107:     { 1024, 768, 1024, 2048, 72, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    108:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_1024_72 },
                    109:     { 1024, 768, 1024, 2048, 60, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    110:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_1024_60 },
                    111:     { 1120, 832, 1120, 2240, 68, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    112:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_1120_68 },
                    113:     { 1120, 832, 1120, 2240, 60, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    114:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_1120_60 },
                    115:     {  800, 600, 800, 800, 72, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    116:        "WWWWWWWW", 0, (void *)&ATI_crt_800_72 },
                    117:     {  800, 600, 800, 800, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    118:        "WWWWWWWW", 0, (void *)&ATI_crt_800_60 },
                    119:     { 1024, 768, 1024, 1024, 76, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    120:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_76 },
                    121:     { 1024, 768, 1024, 1024, 72, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    122:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_72 },
                    123:     { 1024, 768, 1024, 1024, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    124:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_60 },
                    125:     { 1120, 832, 1120, 1120, 68, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    126:        "WWWWWWWW", 0, (void *)&ATI_crt_1120_68 },
                    127:     { 1120, 832, 1120, 1120, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    128:        "WWWWWWWW", 0, (void *)&ATI_crt_1120_60 },
                    129:     { 1280, 1024, 1280, 1280, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    130:        "WWWWWWWW", 0, (void *)&ATI_crt_1280_60 },
                    131:     {  800, 600, 800, 800, 72, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    132:        "PPPPPPPP", 0, (void *)&ATI_crt_800_72 },
                    133:     {  800, 600, 800, 800, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    134:        "PPPPPPPP", 0, (void *)&ATI_crt_800_60 },
                    135:     { 1024, 768, 1024, 1024, 76, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    136:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_76 },
                    137:     { 1024, 768, 1024, 1024, 72, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    138:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_72 },
                    139:     { 1024, 768, 1024, 1024, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    140:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_60 },
                    141:     { 1120, 832, 1120, 1120, 68, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    142:        "PPPPPPPP", 0, (void *)&ATI_crt_1120_68 },
                    143:     { 1120, 832, 1120, 1120, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    144:        "PPPPPPPP", 0, (void *)&ATI_crt_1120_60 },
                    145:     { 1280, 1024, 1280, 1280, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    146:        "PPPPPPPP", 0, (void *)&ATI_crt_1280_60 },
                    147: };
                    148: 
                    149: const int ATIModeCount = (sizeof(ATIMode)/sizeof(ATIMode[0]));
                    150: 
                    151: const IODisplayInfo ATISlowDACMode[] = {
                    152:     {  800, 600, 800, 1600, 60, 0, IO_15BitsPerPixel, IO_RGBColorSpace,
                    153:        "-RRRRRGGGGGBBBBB", 0, (void *)&ATI_crt_800_60_SlowDAC },
                    154:     {  800, 600, 800, 800, 72, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    155:        "WWWWWWWW", 0, (void *)&ATI_crt_800_72 },
                    156:     {  800, 600, 800, 800, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    157:        "WWWWWWWW", 0, (void *)&ATI_crt_800_60 },
                    158:     { 1024, 768, 1024, 1024, 76, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    159:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_76 },
                    160:     { 1024, 768, 1024, 1024, 72, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    161:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_72 },
                    162:     { 1024, 768, 1024, 1024, 60, 0, IO_8BitsPerPixel, IO_OneIsWhiteColorSpace,
                    163:        "WWWWWWWW", 0, (void *)&ATI_crt_1024_60 },
                    164:     {  800, 600, 800, 800, 72, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    165:        "PPPPPPPP", 0, (void *)&ATI_crt_800_72 },
                    166:     {  800, 600, 800, 800, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    167:        "PPPPPPPP", 0, (void *)&ATI_crt_800_60 },
                    168:     { 1024, 768, 1024, 1024, 76, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    169:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_76 },
                    170:     { 1024, 768, 1024, 1024, 72, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    171:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_72 },
                    172:     { 1024, 768, 1024, 1024, 60, 0, IO_8BitsPerPixel, IO_RGBColorSpace,
                    173:        "PPPPPPPP", 0, (void *)&ATI_crt_1024_60 },
                    174: };
                    175: 
                    176: const int ATISlowDACModeCount =
                    177:        (sizeof(ATISlowDACMode)/sizeof(ATISlowDACMode[0]));

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.