Annotation of Gnu-Mach/chips/screen_switch.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_switch.h
                     28:  *     Author: Alessandro Forin, Carnegie Mellon University
                     29:  *     Date:   10/90
                     30:  *
                     31:  *     Definitions of things that must be tailored to
                     32:  *     specific hardware boards for the Generic Screen Driver.
                     33:  */
                     34: 
                     35: #ifndef        SCREEN_SWITCH_H
                     36: #define        SCREEN_SWITCH_H 1
                     37: 
                     38: /*
                     39:  *     List of probe routines, scanned at cold-boot time
                     40:  *     to see which, if any, graphic display is available.
                     41:  *     This is done before autoconf, so that printing on
                     42:  *     the console works early on.  The alloc routine is
                     43:  *     called only on the first device that answers.
                     44:  *     Ditto for the setup routine, called later on.
                     45:  */
                     46: struct screen_probe_vector {
                     47:        int             (*probe)();
                     48:        unsigned int    (*alloc)();
                     49:        int             (*setup)();
                     50: };
                     51: 
                     52: /*
                     53:  *     Low-level operations on the graphic device, used
                     54:  *     by the otherwise device-independent interface code
                     55:  */
                     56: struct screen_switch {
                     57:        int     (*graphic_open)();      /* when X11 opens */
                     58:        int     (*graphic_close)();     /* .. or closes */
                     59:        int     (*set_status)();        /* dev-specific ops */
                     60:        int     (*get_status)();        /* dev-specific ops */
                     61:        int     (*char_paint)();        /* blitc */
                     62:        int     (*pos_cursor)();        /* cursor positioning */
                     63:        int     (*insert_line)();       /* ..and scroll down */
                     64:        int     (*remove_line)();       /* ..and scroll up */
                     65:        int     (*clear_bitmap)();      /* blank screen */
                     66:        int     (*video_on)();          /* screen saver */
                     67:        int     (*video_off)();
                     68:        int     (*intr_enable)();
                     69:        int     (*map_page)();          /* user-space mapping */
                     70: };
                     71: 
                     72: /*
                     73:  *     Each graphic device needs page-aligned memory
                     74:  *     to be mapped in user space later (for events
                     75:  *     and such).  Size and content of this memory
                     76:  *     is unfortunately device-dependent, even if
                     77:  *     it did not need to (puns).
                     78:  */
                     79: extern char  *screen_data;
                     80: 
                     81: extern struct screen_probe_vector screen_probe_vector[];
                     82: 
                     83: extern int screen_noop(), screen_find();
                     84: 
                     85: #endif SCREEN_SWITCH_H

unix.superglobalmegacorp.com

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