Annotation of Gnu-Mach/chips/screen_defs.h, revision 1.1.1.1

1.1       root        1: /* 
                      2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989 Carnegie Mellon University
                      4:  * All Rights Reserved.
                      5:  * 
                      6:  * Permission to use, copy, modify and distribute this software and its
                      7:  * documentation is hereby granted, provided that both the copyright
                      8:  * notice and this permission notice appear in all copies of the
                      9:  * software, derivative works or modified versions, and any portions
                     10:  * thereof, and that both notices appear in supporting documentation.
                     11:  * 
                     12:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     13:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     14:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     15:  * 
                     16:  * Carnegie Mellon requests users of this software to return to
                     17:  * 
                     18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
                     22:  * 
                     23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: /*
                     27:  *     File: screen_defs.h
                     28:  *     Author: Alessandro Forin, Carnegie Mellon University
                     29:  *     Date:   11/90
                     30:  *
                     31:  *     Definitions for the Generic Screen Driver.
                     32:  */
                     33: 
                     34: #include <chips/screen.h>
                     35: #include <chips/screen_switch.h>
                     36: #include <device/device_types.h>
                     37: 
                     38: /*
                     39:  * Driver state
                     40:  */
                     41: typedef struct screen_softc {
                     42:        user_info_t             *up;
                     43:        char                    **hw_state;     /* semi-opaque */
                     44: 
                     45:        struct screen_switch    sw;
                     46: 
                     47:        /* should also be a switch */
                     48:        io_return_t             (*kbd_set_status)();
                     49:        int                     (*kbd_reset)();
                     50:        int                     (*kbd_beep)();
                     51: 
                     52:        char                    flags;
                     53:        char                    mapped;
                     54:        char                    blitc_state;
                     55:        char                    standout;
                     56:        short                   save_row;
                     57:        short                   save_col;
                     58:        /*
                     59:         * Eventually move here all that is Kdep in the user structure,
                     60:         * to avoid crashing because of a bogus graphic server
                     61:         */
                     62:        short           frame_scanline_width;   /* in pixels */
                     63:        short           frame_height;           /* in scanlines */
                     64:        short           frame_visible_width;    /* in pixels */
                     65:        short           frame_visible_height;   /* in pixels */
                     66: 
                     67: /* This is used by all screens, therefore it is sized maximally */
                     68: #      define MaxCharRows      68      /* 2DA screen & PMAG-AA */
                     69: #      define MaxCharCols      160     /* PMAG-AA */
                     70: #      define MinCharRows      57      /* pmax */
                     71:        unsigned char           ascii_screen[MaxCharRows*MaxCharCols];
                     72: 
                     73: } *screen_softc_t;
                     74: 
                     75: extern screen_softc_t  screen(/* int unit */);
                     76: 
                     77: /*
                     78:  * This global says if we have a graphic console
                     79:  * and where it is and if it is enabled
                     80:  */
                     81: extern short   screen_console;
                     82: #define SCREEN_CONS_ENBL       (0x0100)
                     83: #define        SCREEN_ISA_CONSOLE()    (screen_console & SCREEN_CONS_ENBL)
                     84: #define SCREEN_CONS_UNIT()     (screen_console & 0x00ff)
                     85: 
                     86: /*
                     87:  * A graphic screen needs a keyboard and a mouse/tablet
                     88:  */
                     89: #define        SCREEN_LINE_KEYBOARD    0
                     90: #define        SCREEN_LINE_POINTER     1
                     91: #define        SCREEN_LINE_OTHER       (-1)
                     92: 
                     93: /* kernel font */
                     94: #define KfontWidth     8
                     95: #define KfontHeight    15
                     96: extern unsigned char kfont_7x14[];
                     97: 

unix.superglobalmegacorp.com

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