Annotation of ntddk/src/video/miniport/cirrus/mode6410.h, revision 1.1.1.1

1.1       root        1: /*++
                      2: 
                      3: Copyright (c) 1992  Cirrus Logic, Inc.
                      4: 
                      5: Module Name:
                      6: 
                      7:     Mode6410.h
                      8: 
                      9: Abstract:
                     10: 
                     11:     This module contains all the global data used by the Cirrus Logic
                     12:     CL-6410 driver.
                     13: 
                     14: Environment:
                     15: 
                     16:     Kernel mode
                     17: 
                     18: Revision History:
                     19: 
                     20: --*/
                     21: 
                     22: //
                     23: // The first set of tables are for the CL6410
                     24: // Note that only 640x480 and 800x600 are supported.
                     25: //
                     26: // Color graphics mode 0x12, 640x480 16 colors.
                     27: //
                     28: USHORT CL6410_640x480_crt[] = {
                     29: // Unlock Key for color mode
                     30:     OW,                             // GR0A = 0xEC opens extension registers
                     31:     GRAPH_ADDRESS_PORT,
                     32:     0xec0a,
                     33:     
                     34: #ifndef INT10_MODE_SET
                     35:     OWM,
                     36:     SEQ_ADDRESS_PORT,
                     37:     5,
                     38:     0x0100,                         // start synch reset
                     39:     0x0101,0x0f02,0x0003,0x0604,    // program up sequencer
                     40: 
                     41:     OB,
                     42:     MISC_OUTPUT_REG_WRITE_PORT,
                     43:     0xe3,
                     44: 
                     45:     OW,                             //{ SetGraphCmd,{ "\x05", 0x06, 1 } },
                     46:     GRAPH_ADDRESS_PORT,
                     47:     0x0506,
                     48:     
                     49: //  EndSyncResetCmd
                     50:     OW,
                     51:     SEQ_ADDRESS_PORT,
                     52:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                     53: 
                     54:     OW,
                     55:     CRTC_ADDRESS_PORT_COLOR,
                     56:     0x0111,                         
                     57: 
                     58:     METAOUT+INDXOUT,                // program crtc registers
                     59:     CRTC_ADDRESS_PORT_COLOR,
                     60:     VGA_NUM_CRTC_PORTS,             // count
                     61:     0,                              // start index
                     62:     0x5F,0x4F,0x50,0x82,
                     63:     0x54,0x80,0x0B,0x3E,
                     64:     0x00,0x40,0x00,0x00,
                     65:     0x00,0x00,0x00,0x00,
                     66:     0xEA,0xAC,0xDF,0x28,
                     67:     0x00,0xE7,0x04,0xE3,
                     68:     0xFF,
                     69: 
                     70: // extension registers
                     71:     OWM,
                     72:     GRAPH_ADDRESS_PORT,
                     73:     16,
                     74:         0x0262,               // ER62 horz. display end extension
                     75:         0x8064,               // ER64 horz. retrace end extension
                     76:         0x0079,               // ER79 vertical overflow
                     77:         0x007a,               // ER7a coarse vert. retrace skew for interlaced odd fields
                     78:         0x007b,               // ER7b fine vert. retrace skew for interlaced odd fields
                     79:         0x007c,               // ER7c screen A start addr. extension
                     80:         0x0081,               // ER81 display mode
                     81:         0x0082,               // ER82 character clock selection
                     82:         0x1084,               // ER84 clock select extension
                     83:         0x0090,               // ER90 display memory control
                     84:         0x0091,               // ER91 CRT-circular buffer policy select
                     85:         0x0095,               // ER95 CRT-circular buffer delta & burst
                     86:         0x0096,               // ER96 display memory control test
                     87:         0x12a0,               // ERa0 bus interface unit control
                     88:         0x00a1,               // ERa1 three-state and test control
                     89:         0x00c8,               // ERc8 RAMDAC control
                     90: 
                     91:     IB,                             // prepare atc for writing
                     92:     INPUT_STATUS_1_COLOR,
                     93: 
                     94:     METAOUT+ATCOUT,                 //
                     95:     ATT_ADDRESS_PORT,               // port
                     96:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                     97:     0,                              // start index
                     98:     0x00,0x01,0x02,0x03,0x04,
                     99:     0x05,0x14,0x07,0x38,0x39,
                    100:     0x3A,0x3B,0x3C,0x3D,0x3E,
                    101:     0x3F,0x01,0x00,0x0F,0x00,0x00,
                    102: 
                    103:     METAOUT+INDXOUT,                // 
                    104:     GRAPH_ADDRESS_PORT,             // port        
                    105:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    106:     0,                              // start index 
                    107:     0x00,0x0,0x0,0x0,0x0,0x0,0x05,0x0F,0x0FF,
                    108: 
                    109:     OB,                             // turn video on.
                    110:     ATT_ADDRESS_PORT,
                    111:     VIDEO_ENABLE,
                    112:  
                    113: #endif
                    114: // disable banking
                    115:     OWM,
                    116:     GRAPH_ADDRESS_PORT,
                    117:     3,   
                    118:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    119:     0x000e,                   // ER0E page A address = 0
                    120:     0x000f,                   // ER0F page B address = 0
                    121:  
                    122:     OB,
                    123:     DAC_PIXEL_MASK_PORT,
                    124:     0xFF,
                    125: 
                    126:     EOD
                    127: };
                    128: 
                    129: USHORT CL6410_640x480_panel[] = {
                    130: // Unlock Key for color mode
                    131:     OW,                             // GR0A = 0xEC opens extension registers
                    132:     GRAPH_ADDRESS_PORT,
                    133:     0xec0a,
                    134:     
                    135: #ifndef INT10_MODE_SET
                    136:     OWM,
                    137:     SEQ_ADDRESS_PORT,
                    138:     5,
                    139:     0x0100,                         // start synch reset
                    140:     0x0101,0x0f02,0x0003,0x0604,    // program up sequencer
                    141: 
                    142:     OB,
                    143:     MISC_OUTPUT_REG_WRITE_PORT,
                    144:     0xe3,
                    145: 
                    146:     OW,                             //{ SetGraphCmd,{ "\x05", 0x06, 1 } },
                    147:     GRAPH_ADDRESS_PORT,
                    148:     0x0506,
                    149:     
                    150: //  EndSyncResetCmd
                    151:     OW,
                    152:     SEQ_ADDRESS_PORT,
                    153:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    154: 
                    155:     OW,
                    156:     CRTC_ADDRESS_PORT_COLOR,
                    157:     0x0111,                         
                    158: 
                    159:     METAOUT+INDXOUT,                // program crtc registers
                    160:     CRTC_ADDRESS_PORT_COLOR,
                    161:     VGA_NUM_CRTC_PORTS,             // count
                    162:     0,                              // start index
                    163:     0x5F,0x4F,0x50,0x82,
                    164:     0x54,0x80,0x0B,0x3E,
                    165:     0x00,0x40,0x00,0x00,
                    166:     0x00,0x00,0x00,0x00,
                    167:     0xEA,0xAC,0xDF,0x28,
                    168:     0x00,0xE7,0x04,0xE3,
                    169:     0xFF,
                    170: 
                    171: // extension registers
                    172:     OWM,
                    173:     GRAPH_ADDRESS_PORT,
                    174:     16,
                    175:         0x0262,               // ER62 horz. display end extension
                    176:         0x8064,               // ER64 horz. retrace end extension
                    177:         0x0079,               // ER79 vertical overflow
                    178:         0x007a,               // ER7a coarse vert. retrace skew for interlaced odd fields
                    179:         0x007b,               // ER7b fine vert. retrace skew for interlaced odd fields
                    180:         0x007c,               // ER7c screen A start addr. extension
                    181:         0x0181,               // ER81 display mode
                    182:         0x8982,               // ER82 character clock selection
                    183:         0xa684,               // ER84 clock select extension
                    184:         0x0090,               // ER90 display memory control
                    185:         0x0091,               // ER91 CRT-circular buffer policy select
                    186:         0x0095,               // ER95 CRT-circular buffer delta & burst
                    187:         0x0096,               // ER96 display memory control test
                    188:         0x12a0,               // ERa0 bus interface unit control
                    189:         0x00a1,               // ERa1 three-state and test control
                    190:         0xa0c8,               // ERc8 RAMDAC control
                    191: 
                    192:     IB,                             // prepare atc for writing
                    193:     INPUT_STATUS_1_COLOR,
                    194: 
                    195:     METAOUT+ATCOUT,                 //
                    196:     ATT_ADDRESS_PORT,               // port
                    197:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    198:     0,                              // start index
                    199:     0x00,0x01,0x02,0x03,0x04,
                    200:     0x05,0x14,0x07,0x38,0x39,
                    201:     0x3A,0x3B,0x3C,0x3D,0x3E,
                    202:     0x3F,0x01,0x00,0x0F,0x00,0x00,
                    203: 
                    204:     METAOUT+INDXOUT,                // 
                    205:     GRAPH_ADDRESS_PORT,             // port        
                    206:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    207:     0,                              // start index 
                    208:     0x00,0x0,0x0,0x0,0x0,0x0,0x05,0x0F,0x0FF,
                    209: 
                    210:     OB,                             // turn video on.
                    211:     ATT_ADDRESS_PORT,
                    212:     VIDEO_ENABLE,
                    213:  
                    214: #endif
                    215: // disable banking
                    216:     OWM,
                    217:     GRAPH_ADDRESS_PORT,
                    218:     3,   
                    219:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    220:     0x000e,                   // ER0E page A address = 0
                    221:     0x000f,                   // ER0F page B address = 0
                    222:  
                    223:     OB,
                    224:     DAC_PIXEL_MASK_PORT,
                    225:     0xFF,
                    226: 
                    227:     EOD
                    228: };
                    229: 
                    230: 
                    231: 
                    232: //
                    233: // Cirrus color graphics mode 0x64, 800x600 16 colors.
                    234: //
                    235: USHORT CL6410_800x600_crt[] = {
                    236: // Unlock Key for color mode
                    237:     OW,                             // GR0A = 0xEC opens extension registers
                    238:     GRAPH_ADDRESS_PORT,
                    239:     0xec0a,
                    240: 
                    241: #ifndef INT10_MODE_SET
                    242:     OWM,
                    243:     SEQ_ADDRESS_PORT,
                    244:     5,
                    245:     0x0100,                         // start synch reset
                    246:     0x0101,0x0f02,0x0003,0x0604,    // program up sequencer
                    247: 
                    248:     OB,
                    249:     MISC_OUTPUT_REG_WRITE_PORT,
                    250:     0x2f,
                    251: 
                    252:     OWM,                
                    253:     GRAPH_ADDRESS_PORT,
                    254:     3,
                    255:     0x0506,
                    256:     0x0f07,
                    257:     0xff08,
                    258:     
                    259: //  EndSyncResetCmd
                    260:     OW,
                    261:     SEQ_ADDRESS_PORT,
                    262:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    263: 
                    264:     OW,
                    265:     CRTC_ADDRESS_PORT_COLOR,
                    266:     0x0E11,                         
                    267: 
                    268:     METAOUT+INDXOUT,                // program crtc registers
                    269:     CRTC_ADDRESS_PORT_COLOR,
                    270:     VGA_NUM_CRTC_PORTS,             // count
                    271:     0,                              // start index
                    272:     0x7b,0x63,0x64,0x9e,
                    273:     0x69,0x92,0x6f,0xf0,
                    274:     0x00,0x60,0x00,0x00,
                    275:     0x00,0x00,0x00,0x00,
                    276:     0x58,0xaa,0x57,0x32,
                    277:     0x00,0x58,0x6f,0xe3,
                    278:     0xFF,
                    279: 
                    280: // extension registers
                    281:     OWM,
                    282:     GRAPH_ADDRESS_PORT,
                    283:     16,
                    284:     0x1e62,                   // ER62 horz. display end extension
                    285:     0x9264,                   // ER64 horz. retrace end extension
                    286:     0x0079,                   // ER79 vertical overflow
                    287:     0x007a,                   // ER7a coarse vert. retrace skew for interlaced odd fields
                    288:     0x007b,                   // ER7b fine vert. retrace skew for interlaced odd fields
                    289:     0x007c,                   // ER7c screen A start addr. extension
                    290:     0x0081,                   // ER81 display mode
                    291:     0x0082,                   // ER82 character clock selection
                    292:     0xac84,                   // ER84 clock select extension
                    293:     0x0090,                   // ER90 display memory control
                    294:     0x0391,                   // ER91 CRT-circular buffer policy select
                    295:     0x0a95,                   // ER95 CRT-circular buffer delta & burst
                    296:     0x0096,                   // ER96 display memory control test
                    297:     0x12a0,                   // ERa0 bus interface unit control
                    298:     0x00a1,                   // ERa1 three-state and test control
                    299:     0x00c8,                   // ERc8 RAMDAC control
                    300: 
                    301:     IB,                             // prepare atc for writing
                    302:     INPUT_STATUS_1_COLOR,
                    303: 
                    304:     METAOUT+ATCOUT,                 //
                    305:     ATT_ADDRESS_PORT,               // port
                    306:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    307:     0,                              // start index
                    308:     0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF,
                    309:     0x01,0x0,0x0F,0x0,0x0,
                    310: 
                    311:     METAOUT+INDXOUT,                // 
                    312:     GRAPH_ADDRESS_PORT,             // port        
                    313:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    314:     0,                              // start index 
                    315:     0x00,0x0,0x0,0x0,0x0,0x0,0x05,0x0F,0x0FF,
                    316: 
                    317:     OB,                             // turn video on.
                    318:     ATT_ADDRESS_PORT,
                    319:     VIDEO_ENABLE,
                    320: 
                    321: #endif
                    322: // disable banking
                    323:     OWM,
                    324:     GRAPH_ADDRESS_PORT,
                    325:     3,   
                    326:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    327:     0x000e,                   // ER0E page A address = 0
                    328:     0x000f,                   // ER0F page B address = 0
                    329:  
                    330:     OB,
                    331:     DAC_PIXEL_MASK_PORT,
                    332:     0xFF,
                    333: 
                    334:     EOD
                    335: };
                    336: //-----------------------------
                    337: // standard VGA text modes here
                    338: //-----------------------------
                    339: 
                    340: USHORT CL6410_80x25_14_Text_crt[] = {
                    341: // Unlock Key for color mode
                    342:     OW,                             // GR0A = 0xEC opens extension registers
                    343:     GRAPH_ADDRESS_PORT,
                    344:     0xec0a,
                    345:  
                    346: #ifndef INT10_MODE_SET
                    347:     OWM,
                    348:     SEQ_ADDRESS_PORT,
                    349:     5,
                    350:     0x0100,0x0001,0x0302,0x0003,0x0204,    // program up sequencer
                    351: 
                    352:     OB,
                    353:     MISC_OUTPUT_REG_WRITE_PORT,
                    354:     0x67,
                    355: 
                    356:     OW,                
                    357:     GRAPH_ADDRESS_PORT,
                    358:     0x0e06,
                    359:     
                    360: //  EndSyncResetCmd
                    361:     OW,
                    362:     SEQ_ADDRESS_PORT,
                    363:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    364: 
                    365:     OW,
                    366:     CRTC_ADDRESS_PORT_COLOR,
                    367:     0x0511,                         
                    368: 
                    369:     METAOUT+INDXOUT,                // program crtc registers
                    370:     CRTC_ADDRESS_PORT_COLOR,
                    371:     VGA_NUM_CRTC_PORTS,             // count
                    372:     0,                              // start index
                    373:     0x5F,0x4f,0x50,0x82,
                    374:     0x55,0x81,0xbf,0x1f,
                    375:     0x00,0x4f,0x0d,0x0e,
                    376:     0x00,0x00,0x01,0xe0,
                    377:     0x9c,0xae,0x8f,0x28,
                    378:     0x1f,0x96,0xb9,0xa3,
                    379:     0xFF,
                    380: 
                    381: // extension registers
                    382:     OWM,
                    383:     GRAPH_ADDRESS_PORT,
                    384:     16,
                    385:     0x0262,                   // ER62 horz. display end extension
                    386:     0x8164,                   // ER64 horz. retrace end extension
                    387:     0x0079,                   // ER79 vertical overflow
                    388:     0x007a,                   // ER7a coarse vert. retrace skew for interlaced odd fields
                    389:     0x007b,                   // ER7b fine vert. retrace skew for interlaced odd fields
                    390:     0x007c,                   // ER7c screen A start addr. extension
                    391:     0x0081,                   // ER81 display mode
                    392:     0x0082,                   // ER82 character clock selection
                    393:     0x1084,                   // ER84 clock select extension
                    394:     0x0090,                   // ER90 display memory control
                    395:     0x0391,                   // ER91 CRT-circular buffer policy select
                    396:     0x0095,                   // ER95 CRT-circular buffer delta & burst
                    397:     0x0096,                   // ER96 display memory control test
                    398:     0x12a0,                   // ERa0 bus interface unit control
                    399:     0x00a1,                   // ERa1 three-state and test control
                    400:     0x00c8,                   // ERc8 RAMDAC control
                    401: 
                    402:     IB,                             // prepare atc for writing
                    403:     INPUT_STATUS_1_COLOR,
                    404: 
                    405:     METAOUT+ATCOUT,                 //
                    406:     ATT_ADDRESS_PORT,               // port
                    407:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    408:     0,                              // start index
                    409:     0x0,0x1,0x2,0x3,0x4,0x5,0x14,0x7,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,
                    410:     0x00,0x0,0x0F,0x0,0x0,
                    411: 
                    412:     METAOUT+INDXOUT,                //
                    413:     GRAPH_ADDRESS_PORT,             // port        
                    414:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    415:     0,                              // start index 
                    416:     0x00,0x0,0x0,0x0,0x0,0x10,0x0e,0x0,0x0FF,
                    417: 
                    418:     IB,                             // prepare atc for writing
                    419:     INPUT_STATUS_1_COLOR,
                    420: 
                    421:     OB,                             // turn video on.
                    422:     ATT_ADDRESS_PORT,
                    423:     VIDEO_ENABLE,
                    424: 
                    425: #endif
                    426: // disable banking
                    427:     OWM,
                    428:     GRAPH_ADDRESS_PORT,
                    429:     3,   
                    430:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    431:     0x000e,                   // ER0E page A address = 0
                    432:     0x000f,                   // ER0F page B address = 0
                    433:  
                    434:     OB,
                    435:     DAC_PIXEL_MASK_PORT,
                    436:     0xFF,
                    437: 
                    438:     EOD
                    439: };
                    440: //
                    441: // 80x25 and 720 x 400
                    442: //
                    443: 
                    444: USHORT CL6410_80x25_14_Text_panel[] = {
                    445: // Unlock Key for color mode
                    446:     OW,                             // GR0A = 0xEC opens extension registers
                    447:     GRAPH_ADDRESS_PORT,
                    448:     0xec0a,
                    449:  
                    450: #ifndef INT10_MODE_SET
                    451:     OWM,
                    452:     SEQ_ADDRESS_PORT,
                    453:     5,
                    454:     0x0100,0x0001,0x0302,0x0003,0x0204,    // program up sequencer
                    455: 
                    456:     OWM,
                    457:     SEQ_ADDRESS_PORT,
                    458:     2,
                    459:     0x0006,0x0fc07,    // program up sequencer
                    460: 
                    461:     OB,
                    462:     MISC_OUTPUT_REG_WRITE_PORT,
                    463:     0x67,
                    464: 
                    465:     OW, 
                    466:     GRAPH_ADDRESS_PORT,
                    467:     0x0e06,
                    468:     
                    469: //  EndSyncResetCmd
                    470:     OW,
                    471:     SEQ_ADDRESS_PORT,
                    472:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    473: 
                    474:     OW,
                    475:     CRTC_ADDRESS_PORT_COLOR,
                    476:     0x0E11,                         
                    477: 
                    478:     METAOUT+INDXOUT,                // program crtc registers
                    479:     CRTC_ADDRESS_PORT_COLOR,
                    480:     VGA_NUM_CRTC_PORTS,             // count
                    481:     0,                              // start index
                    482:     0x5F,0x4f,0x50,0x82,0x55,0x81,0xbf,0x1f,0x00,0x4f,0xd,0xe,0x0,0x0,0x0,0x0,
                    483:     0x9c,0x8e,0x8f,0x28,0x1f,0x96,0xb9,0xa3,0xFF,
                    484: 
                    485: // extension registers
                    486:     OWM,
                    487:     GRAPH_ADDRESS_PORT,
                    488:     16,
                    489:     0x1e62,                   // ER62 horz. display end extension
                    490:     0x9264,                   // ER64 horz. retrace end extension
                    491:     0x0079,                   // ER79 vertical overflow
                    492:     0x007a,                   // ER7a coarse vert. retrace skew for interlaced odd fields
                    493:     0x007b,                   // ER7b fine vert. retrace skew for interlaced odd fields
                    494:     0x007c,                   // ER7c screen A start addr. extension
                    495:     0x0081,                   // ER81 display mode
                    496:     0x0082,                   // ER82 character clock selection
                    497:     0xac84,                   // ER84 clock select extension
                    498:     0x0090,                   // ER90 display memory control
                    499:     0x0391,                   // ER91 CRT-circular buffer policy select
                    500:     0x0a95,                   // ER95 CRT-circular buffer delta & burst
                    501:     0x0096,                   // ER96 display memory control test
                    502:     0x12a0,                   // ERa0 bus interface unit control
                    503:     0x00a1,                   // ERa1 three-state and test control
                    504:     0x00c8,                   // ERc8 RAMDAC control
                    505: 
                    506:     IB,                             // prepare atc for writing
                    507:     INPUT_STATUS_1_COLOR,
                    508: 
                    509:     METAOUT+ATCOUT,                 //
                    510:     ATT_ADDRESS_PORT,               // port
                    511:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    512:     0,                              // start index
                    513:     0x0,0x1,0x2,0x3,0x4,0x5,0x14,0x7,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,
                    514:     0x04,0x0,0x0F,0x8,0x0,
                    515: 
                    516:     METAOUT+INDXOUT,                //
                    517:     GRAPH_ADDRESS_PORT,             // port        
                    518:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    519:     0,                              // start index 
                    520:     0x00,0x0,0x0,0x0,0x0,0x10,0x0e,0x0,0x0FF,
                    521: 
                    522:     OB,                             // turn video on.
                    523:     ATT_ADDRESS_PORT,
                    524:     VIDEO_ENABLE,
                    525: 
                    526: #endif
                    527: // disable banking
                    528:     OWM,
                    529:     GRAPH_ADDRESS_PORT,
                    530:     3,   
                    531:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    532:     0x000e,                   // ER0E page A address = 0
                    533:     0x000f,                   // ER0F page B address = 0
                    534:  
                    535:     OB,
                    536:     DAC_PIXEL_MASK_PORT,
                    537:     0xFF,
                    538: 
                    539:     EOD
                    540: };
                    541: USHORT CL6410_80x25Text_crt[] = {
                    542: // Unlock Key for color mode
                    543:     OW,                             // GR0A = 0xEC opens extension registers
                    544:     GRAPH_ADDRESS_PORT,
                    545:     0xec0a,
                    546:  
                    547: #ifndef INT10_MODE_SET
                    548:     OWM,
                    549:     SEQ_ADDRESS_PORT,
                    550:     5,
                    551:     0x0100,0x0001,0x0302,0x0003,0x0204,    // program up sequencer
                    552: 
                    553:     OB,
                    554:     MISC_OUTPUT_REG_WRITE_PORT,
                    555:     0x67,
                    556: 
                    557:     OW,                
                    558:     GRAPH_ADDRESS_PORT,
                    559:     0x0e06,
                    560:     
                    561: //  EndSyncResetCmd
                    562:     OW,
                    563:     SEQ_ADDRESS_PORT,
                    564:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    565: 
                    566:     OW,
                    567:     CRTC_ADDRESS_PORT_COLOR,
                    568:     0x0511,                         
                    569: 
                    570:     METAOUT+INDXOUT,                // program crtc registers
                    571:     CRTC_ADDRESS_PORT_COLOR,
                    572:     VGA_NUM_CRTC_PORTS,             // count
                    573:     0,                              // start index
                    574:     0x5F,0x4f,0x50,0x82,
                    575:     0x55,0x81,0xbf,0x1f,
                    576:     0x00,0x4f,0x0d,0x0e,
                    577:     0x00,0x00,0x01,0xe0,
                    578:     0x9c,0xae,0x8f,0x28,
                    579:     0x1f,0x96,0xb9,0xa3,
                    580:     0xFF,
                    581: 
                    582: // extension registers
                    583:     OWM,
                    584:     GRAPH_ADDRESS_PORT,
                    585:     16,
                    586:     0x0262,                   // ER62 horz. display end extension
                    587:     0x8164,                   // ER64 horz. retrace end extension
                    588:     0x0079,                   // ER79 vertical overflow
                    589:     0x007a,                   // ER7a coarse vert. retrace skew for interlaced odd fields
                    590:     0x007b,                   // ER7b fine vert. retrace skew for interlaced odd fields
                    591:     0x007c,                   // ER7c screen A start addr. extension
                    592:     0x0081,                   // ER81 display mode
                    593:     0x0082,                   // ER82 character clock selection
                    594:     0x1084,                   // ER84 clock select extension
                    595:     0x0090,                   // ER90 display memory control
                    596:     0x0391,                   // ER91 CRT-circular buffer policy select
                    597:     0x0095,                   // ER95 CRT-circular buffer delta & burst
                    598:     0x0096,                   // ER96 display memory control test
                    599:     0x12a0,                   // ERa0 bus interface unit control
                    600:     0x00a1,                   // ERa1 three-state and test control
                    601:     0x00c8,                   // ERc8 RAMDAC control
                    602: 
                    603:     IB,                             // prepare atc for writing
                    604:     INPUT_STATUS_1_COLOR,
                    605: 
                    606:     METAOUT+ATCOUT,                 //
                    607:     ATT_ADDRESS_PORT,               // port
                    608:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    609:     0,                              // start index
                    610:     0x0,0x1,0x2,0x3,0x4,0x5,0x14,0x7,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,
                    611:     0x00,0x0,0x0F,0x0,0x0,
                    612: 
                    613:     METAOUT+INDXOUT,                //
                    614:     GRAPH_ADDRESS_PORT,             // port        
                    615:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    616:     0,                              // start index 
                    617:     0x00,0x0,0x0,0x0,0x0,0x10,0x0e,0x0,0x0FF,
                    618: 
                    619:     IB,                             // prepare atc for writing
                    620:     INPUT_STATUS_1_COLOR,
                    621: 
                    622:     OB,                             // turn video on.
                    623:     ATT_ADDRESS_PORT,
                    624:     VIDEO_ENABLE,
                    625: 
                    626: #endif
                    627: // disable banking
                    628:     OWM,
                    629:     GRAPH_ADDRESS_PORT,
                    630:     3,   
                    631:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    632:     0x000e,                   // ER0E page A address = 0
                    633:     0x000f,                   // ER0F page B address = 0
                    634:  
                    635:     OB,
                    636:     DAC_PIXEL_MASK_PORT,
                    637:     0xFF,
                    638: 
                    639:     EOD
                    640: };
                    641: //
                    642: // 80x25 and 720 x 400
                    643: //
                    644: 
                    645: USHORT CL6410_80x25Text_panel[] = {
                    646: // Unlock Key for color mode
                    647:     OW,                             // GR0A = 0xEC opens extension registers
                    648:     GRAPH_ADDRESS_PORT,
                    649:     0xec0a,
                    650:  
                    651: #ifndef INT10_MODE_SET
                    652:     OWM,
                    653:     SEQ_ADDRESS_PORT,
                    654:     5,
                    655:     0x0100,0x0001,0x0302,0x0003,0x0204,    // program up sequencer
                    656: 
                    657:     OWM,
                    658:     SEQ_ADDRESS_PORT,
                    659:     2,
                    660:     0x0006,0x0fc07,    // program up sequencer
                    661: 
                    662:     OB,
                    663:     MISC_OUTPUT_REG_WRITE_PORT,
                    664:     0x67,
                    665: 
                    666:     OW, 
                    667:     GRAPH_ADDRESS_PORT,
                    668:     0x0e06,
                    669:     
                    670: //  EndSyncResetCmd
                    671:     OW,
                    672:     SEQ_ADDRESS_PORT,
                    673:     IND_SYNC_RESET + (END_SYNC_RESET_VALUE << 8),
                    674: 
                    675:     OW,
                    676:     CRTC_ADDRESS_PORT_COLOR,
                    677:     0x0E11,                         
                    678: 
                    679:     METAOUT+INDXOUT,                // program crtc registers
                    680:     CRTC_ADDRESS_PORT_COLOR,
                    681:     VGA_NUM_CRTC_PORTS,             // count
                    682:     0,                              // start index
                    683:     0x5F,0x4f,0x50,0x82,0x55,0x81,0xbf,0x1f,0x00,0x4f,0xd,0xe,0x0,0x0,0x0,0x0,
                    684:     0x9c,0x8e,0x8f,0x28,0x1f,0x96,0xb9,0xa3,0xFF,
                    685: 
                    686: // extension registers
                    687:     OWM,
                    688:     GRAPH_ADDRESS_PORT,
                    689:     16,
                    690:     0x1e62,                   // ER62 horz. display end extension
                    691:     0x9264,                   // ER64 horz. retrace end extension
                    692:     0x0079,                   // ER79 vertical overflow
                    693:     0x007a,                   // ER7a coarse vert. retrace skew for interlaced odd fields
                    694:     0x007b,                   // ER7b fine vert. retrace skew for interlaced odd fields
                    695:     0x007c,                   // ER7c screen A start addr. extension
                    696:     0x0081,                   // ER81 display mode
                    697:     0x0082,                   // ER82 character clock selection
                    698:     0xac84,                   // ER84 clock select extension
                    699:     0x0090,                   // ER90 display memory control
                    700:     0x0391,                   // ER91 CRT-circular buffer policy select
                    701:     0x0a95,                   // ER95 CRT-circular buffer delta & burst
                    702:     0x0096,                   // ER96 display memory control test
                    703:     0x12a0,                   // ERa0 bus interface unit control
                    704:     0x00a1,                   // ERa1 three-state and test control
                    705:     0x00c8,                   // ERc8 RAMDAC control
                    706: 
                    707:     IB,                             // prepare atc for writing
                    708:     INPUT_STATUS_1_COLOR,
                    709: 
                    710:     METAOUT+ATCOUT,                 //
                    711:     ATT_ADDRESS_PORT,               // port
                    712:     VGA_NUM_ATTRIB_CONT_PORTS,      // count
                    713:     0,                              // start index
                    714:     0x0,0x1,0x2,0x3,0x4,0x5,0x14,0x7,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,
                    715:     0x04,0x0,0x0F,0x8,0x0,
                    716: 
                    717:     METAOUT+INDXOUT,                //
                    718:     GRAPH_ADDRESS_PORT,             // port        
                    719:     VGA_NUM_GRAPH_CONT_PORTS,       // count       
                    720:     0,                              // start index 
                    721:     0x00,0x0,0x0,0x0,0x0,0x10,0x0e,0x0,0x0FF,
                    722: 
                    723:     OB,                             // turn video on.
                    724:     ATT_ADDRESS_PORT,
                    725:     VIDEO_ENABLE,
                    726: 
                    727: #endif
                    728: // disable banking
                    729:     OWM,
                    730:     GRAPH_ADDRESS_PORT,
                    731:     3,   
                    732:     0x030d,                   // ER0D = Paging control: 1 64K page, 
                    733:     0x000e,                   // ER0E page A address = 0
                    734:     0x000f,                   // ER0F page B address = 0
                    735:  
                    736:     OB,
                    737:     DAC_PIXEL_MASK_PORT,
                    738:     0xFF,
                    739: 
                    740:     EOD
                    741: };
                    742: 
                    743: 

unix.superglobalmegacorp.com

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