Annotation of coherent/a/usr/include.b4ps2/sys/vt.h, revision 1.1.1.1

1.1       root        1: #ifndef VT_H
                      2: #define VT_H
                      3: 
                      4: /*
                      5:  * Type definitions
                      6:  */
                      7: 
                      8: /*
                      9:  * Virtual terminal structure VTDATA
                     10:  */
                     11: #ifdef _I386
                     12: typedef        struct  {
                     13:        unsigned        int     off;
                     14:        unsigned    /*short*/   seg;
                     15: }      faddr_t;
                     16: #endif
                     17: 
                     18: typedef struct _VTDATA {
                     19:        /*
                     20:         * Elements dealing with the graphic adaptor 
                     21:         * - equivalent to the assembler definitions above.
                     22:         */
                     23:        void    (*vmm_func)();
                     24:        unsigned vmm_port,      vmm_seg,        vmm_off;
                     25:        unsigned vmm_rowl,      vmm_col,        vmm_pos,        vmm_attr;
                     26:        unsigned vmm_n1,        vmm_n2,         vmm_brow;
                     27:        unsigned vmm_erow,      vmm_lrow,       vmm_srow;
                     28:        unsigned vmm_scol,      vmm_ibrow,      vmm_ierow;
                     29:        unsigned vmm_invis;
                     30:        unsigned vmm_slow,      vmm_wrap,       vmm_visible,    vmm_esc;
                     31:        unsigned vmm_mseg,      vmm_moff,       vmm_vseg,       vmm_voff;
                     32: 
                     33:        /*
                     34:         * Elements dealing with both the graphic adaptor & keyboard 
                     35:         * - equivalent to the assembler definitions above.
                     36:         */
                     37:        dev_t           vt_ind;
                     38: #ifdef _I386
                     39:        KBTBL           vt_kb[MAX_KEYS];
                     40:        char            *vt_buffer;
                     41: #else
                     42:        SEG             *vt_buffer;
                     43: #endif
                     44:        /*
                     45:         * Elements dealing with the keyboard 
                     46:         *
                     47:         * The keyboard mapping table is too large to fit into kernel data space,
                     48:         * so we need to allocate a segment to it.
                     49:         * The function keys tend to be small and tend to change substantially
                     50:         * more often than the mapping table, so we keep them in the kernel data space.
                     51:         */
                     52:        int             vnkb_lastc;             /* state info */
                     53:        unsigned        vnkb_shift;             /* Overall shift state */
                     54:        unsigned        char **vnkb_funkeyp;    /* Pointer to array of func. key ptrs */
                     55:        FNKEY           *vnkb_fnkeys;           /* Pointer to structure of values */
                     56:        unsigned        vnkb_fklength;          /* length of k_fnval field in fnkeys */
                     57:        unsigned        vnkb_sh_index;          /* shift/lock state index */
                     58:        char            vnkb_fk_loaded;         /* true == function keys resident */
                     59: }      VTDATA;
                     60: 
                     61: typedef struct _HWentry {
                     62:        unsigned char   count, found;
                     63:        short   port;
                     64:        faddr_t vidmemory;
                     65:        struct  {
                     66:                unsigned char   row;
                     67:                unsigned char   col;
                     68: #define        TEXTBLOCK 4000  /* 25 x 80 x 2 */
                     69:        } screen;
                     70:        short   start;
                     71: } HWentry;
                     72: 
                     73: #ifndef        KB_MAJOR
                     74: #include <sys/devices.h>               /* KB_MAJOR defined in here */
                     75: #endif
                     76: 
                     77: #ifndef        VT_MAJOR
                     78: #define        VT_MAJOR        KB_MAJOR
                     79: #endif
                     80: 
                     81: #define        VT_PHYSICAL     0x40
                     82: #define        VT_HW           0x30
                     83: #define        VT_HW_COLOR     0x00
                     84: #define        VT_HW_MONO      0x10
                     85: 
                     86: #define        VT_INDEX(dev)   (dev&0x3F)
                     87: 
                     88: #define        NO_DEVICE       0xFF    /* to signify that the minor does not exist */
                     89: 
                     90: #define        PRINTV  if(vt_verbose)printf
                     91: #define        PUTC    if(vt_verbose)putc
                     92: 
                     93: /*
                     94:  * patchable params for non-standard keyboards
                     95:  */
                     96: extern int     KBDATA;                 /* Keyboard data */
                     97: extern int     KBCTRL;                 /* Keyboard control */
                     98: extern int     KBSTS_CMD;              /* Keyboard status/command */
                     99: extern int     KBFLAG;                 /* Keyboard reset flag */
                    100: extern int     KBBOOT;                 /* 0: disallow reboot from keyboard */
                    101: extern int     KBTIMEOUT;              /* shouldn't need this much */
                    102: extern int     KBCMDBYTE;              /* no translation */
                    103: 
                    104: /*
                    105:  * globals
                    106:  */
                    107: extern int             vtmax, vtcount, vtactive;
                    108: extern int             vt_verbose, vt_opened, vtloaded;
                    109: extern VTDATA          *vtconsole, **vtdata;
                    110: extern char            kb_table_loaded;
                    111: extern HWentry         *vtHWtable[];
                    112: 
                    113: #endif /* VT_H */

unix.superglobalmegacorp.com

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