Annotation of cci/d/pits/cyconf.h, revision 1.1.1.1

1.1       root        1: 
                      2: /*
                      3:  * Provide about n microseconds of delay
                      4: */
                      5: #define        DELAY(n)        { register int N = (n); while (--N > 0); }
                      6: 
                      7: #define IOBASE         0xff000000
                      8: #define PGSHIFT                10
                      9: #define TBASE          0xff4000
                     10: #define ATT_ADR                0xffff4000      /* Channel attention address */
                     11: #define SCP_ADR                0xc06           /* System Conf. pointer address */
                     12: #define TM_BSIZE       (1024)          /* Block size on Cypher */
                     13: #define CYVEC          0x80            /* Cypher interrupt vector to TAHOE */
                     14: #define        RETRY           1000
                     15: 
                     16: 
                     17: struct scp     /* SYSTEM CONFIGUREATION POINTER */
                     18: {
                     19:   char sysbus ;                /* width of system buss 0=8;1=16 */
                     20:   char nu1 ;
                     21:   char pt_scb[4] ;     /* pointer to ->SYSTEM CONFIGUREATION BLOCK */
                     22: };
                     23: 
                     24: struct scb     /* System conf. block */
                     25: {
                     26:  char sysblk;
                     27:  char nu2;
                     28:  char pt_ccb[4];
                     29: };
                     30: 
                     31: struct ccb     /* CHANNEL CONTROL BLOCK */
                     32: {
                     33:   char ccw ;           /* 0x11 normal; 0x09 clear non_vect interrupt */
                     34:   char gate;           /* This is "the" GATE */
                     35:   char pt_tpb[4] ;     /* pointer to ->TAPE OPERATION BLOCK or MOVE BLOCK */
                     36: };
                     37: 
                     38: 
                     39: 
                     40: struct tpb     /* TAPE OPERATIONS PARAMETER BLOCK */
                     41: {
                     42:   long cmd ;                   /* COMMAND (input) */
                     43:   char control[2] ;            /* CONTROL (input) */
                     44:   unsigned short count ;       /* RETURN COUNT (output) */
                     45:   unsigned short size ;                /* BUFFER SIZE (input/output) */
                     46:   unsigned short rec_over ;    /* RECORDS/OVERRUN (input/output) */
                     47:   char pt_data[4] ;            /* pointer to ->SOURCE/DEST (input) */
                     48:   char status[2];              /* STATUS (output) */
                     49:   char pt_link[4] ;    /* pointer to INTERRUPT/PARAMETER BLOCK (input) */
                     50:   unsigned short unused[3];
                     51: };
                     52: 
                     53: struct tpblk   /* TAPE PARAMETER BLOCK for block move operation */
                     54: {
                     55:   long cmd ;                   /* COMMAND (input) */
                     56:   char control[2] ;            /* CONTROL (input) */
                     57:   unsigned short count ;       /* RETURN COUNT (output) */
                     58:   char source[4] ;             /* pointer to source */
                     59:   char dest[4] ;               /* pointer to Destination */
                     60:   unsigned short mask;         /* Mask/Stat search */
                     61:   unsigned short intr[2];      /* Interrupt */
                     62:   unsigned short table[2];     /* table */
                     63:   unsigned short throttle;     /* throttle word */
                     64: };
                     65: 
                     66: 
                     67: struct tmbuf
                     68:        { char byte[TM_BSIZE]; 
                     69:        } cybuf;
                     70: 

unix.superglobalmegacorp.com

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