Annotation of 43BSDReno/sys/vax/scb.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1982, 1986 Regents of the University of California.
                      3:  * All rights reserved.  The Berkeley software License Agreement
                      4:  * specifies the terms and conditions for redistribution.
                      5:  *
                      6:  *     @(#)scb.h       7.2 (Berkeley) 5/7/88
                      7:  */
                      8: 
                      9: /*
                     10:  * VAX System control block layout
                     11:  */
                     12: 
                     13: struct scb {
                     14:        int     (*scb_passiverel)();    /* BI passive release */
                     15:        int     (*scb_machchk)();       /* machine chack */
                     16:        int     (*scb_kspinval)();      /* KSP invalid */
                     17:        int     (*scb_powfail)();       /* power fail */
                     18:        int     (*scb_resinstr)();      /* reserved instruction */
                     19:        int     (*scb_custinst)();      /* XFC instr */
                     20:        int     (*scb_resopnd)();       /* reserved operand */
                     21:        int     (*scb_resaddr)();       /* reserved addr mode */
                     22:        int     (*scb_acv)();           /* access control violation */
                     23:        int     (*scb_tnv)();           /* translation not valid */
                     24:        int     (*scb_tracep)();        /* trace pending */
                     25:        int     (*scb_bpt)();           /* breakpoint instr */
                     26:        int     (*scb_compat)();        /* compatibility mode fault */
                     27:        int     (*scb_arith)();         /* arithmetic fault */
                     28:        int     (*scb_stray2)();
                     29:        int     (*scb_stray3)();
                     30:        int     (*scb_chmk)();          /* CHMK instr */
                     31:        int     (*scb_chme)();          /* CHME instr */
                     32:        int     (*scb_chms)();          /* CHMS instr */
                     33:        int     (*scb_chmu)();          /* CHMU instr */
                     34:        int     (*scb_sbisilo)();       /* SBI silo compare */
                     35: #define        scb_bierr scb_sbisilo           /*=BI error (8200) */
                     36:        int     (*scb_cmrd)();          /* corrected mem read data */
                     37:        int     (*scb_sbialert)();      /* SBI alert */
                     38:        int     (*scb_sbifault)();      /* SBI fault */
                     39:        int     (*scb_wtime)();         /* memory write timeout */
                     40: #define scb_sbierr scb_wtime           /*=SBI error (8600) */
                     41:        int     (*scb_sbifail)();       /* SBI fail (8600) */
                     42:        int     (*scb_stray4[7])();
                     43:        int     (*scb_soft[15])();      /* software interrupt */
                     44:        int     (*scb_timer)();         /* interval timer interrupt */
                     45:        int     (*scb_stray5)();
                     46:        int     (*scb_cn1rint)();       /* console terminal 1 rcv (8200) */
                     47:        int     (*scb_cn1xint)();       /* console terminal 1 xmt (8200) */
                     48:        int     (*scb_cn2rint)();       /* console 2 rcv (8200) */
                     49:        int     (*scb_cn2xint)();       /* console 2 xmt (8200) */
                     50:        int     (*scb_cn3rint)();       /* console 3 rcv (8200) */
                     51:        int     (*scb_cn3xint)();       /* console 3 xmt (8200) */
                     52:        int     (*scb_stray6[4])();
                     53:        int     (*scb_csdr)();          /* console storage receive */
                     54:        int     (*scb_csdx)();          /* console storage transmit */
                     55:        int     (*scb_ctr)();           /* console terminal receive */
                     56:        int     (*scb_ctx)();           /* console terminal transmit */
                     57:        int     (*scb_ipl14[16])();     /* device interrupts IPL 14 */
                     58:        int     (*scb_ipl15[16])();     /*   "          "    IPL 15 */
                     59:        int     (*scb_ipl16[16])();     /*   "          "    IPL 16 */
                     60:        int     (*scb_ipl17[16])();     /*   "          "    IPL 17 */
                     61:        /*
                     62:         * On the 8600, this is followed by a second copy of the SCB.
                     63:         * On the 750, this is followed by 128 uba0 device interrupts,
                     64:         * then 128 uba1 device interrupts.
                     65:         */
                     66: };
                     67: 
                     68: #ifdef KERNEL
                     69: extern struct scb scb[];
                     70: #endif
                     71: 
                     72: #define        scbentry(f, how)                ((int (*)())(((int)f)+how))
                     73: 
                     74: #define        SCB_KSTACK      0
                     75: #define        SCB_ISTACK      1
                     76: #define        SCB_WCS         2
                     77: #define        SCB_HALT        3

unix.superglobalmegacorp.com

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