Annotation of 43BSDTahoe/new/X/libibm/libsrc/apa8c.c, revision 1.1.1.1

1.1       root        1: #ifndef lint
                      2: static char *rcsid_apa8c_c = "$Header: apa8c.c,v 10.1 86/11/19 10:39:58 jg Exp $";
                      3: #endif lint
                      4: /* apa8c.c - APA8C controller initialization
                      5:  *
                      6:  *     apa8c_init              APA8C initialization routine
                      7:  *     apa8c_set_colors        set defualt colors
                      8:  *
                      9:  *     Author:
                     10:  *             Scott Bates
                     11:  *             Brown University
                     12:  *             IRIS, Box 1946
                     13:  *             Providence, RI 02912
                     14:  *
                     15:  *
                     16:  *             Copyright (c) 1986 Brown University
                     17:  *
                     18:  * Permission to use, copy, modify and distribute this software and its
                     19:  * documentation for any purpose and without fee is hereby granted, provided
                     20:  * that the above copyright notice appear in all copies, and that both
                     21:  * that copyright notice and this permission notice appear in supporting
                     22:  * documentation, and that the name of Brown University not be used in
                     23:  * advertising or publicity pertaining to distribution of the software
                     24:  * without specific, written prior permission. Brown University makes no
                     25:  * representations about the suitability of this software for any purpose.
                     26:  * It is provided "as-is" without express or implied warranty.
                     27:  */
                     28: 
                     29: #include "private.h"
                     30: #include "bitblt.h"
                     31: #include "apa8c.h"
                     32: 
                     33: /*
                     34:  * Initialize APA8C
                     35:  */
                     36: 
                     37: apa8c_init()
                     38: {
                     39:        u_short tmp;
                     40: 
                     41: #ifdef TRACE_X
                     42:         fprintf (stderr, "In apa8c_init\n");
                     43:         fflush (stderr);
                     44: #endif TRACE_X
                     45: 
                     46:         /*
                     47:          * Initialize (reset) the APA8C screen
                     48:          */
                     49: 
                     50:        /*
                     51:         * Set up the write and data mask.
                     52:         */
                     53: 
                     54:        SET_APA8C_WRITEMASK(NOMASK);
                     55:        SET_APA8C_DATAMASK(HIDDEN_DM);
                     56: 
                     57:        /*
                     58:         * Set up the APA8C control register to use its system read/write
                     59:         * calls in the X direction.
                     60:         */
                     61: 
                     62:        SET_APA8C_FC(DCR_VEN | DCR_SEN | DCR_SWR | DCR_X | HIDDEN_FUNC);
                     63: 
                     64:        /*
                     65:         * Set up the color plane select register and foreground/background
                     66:         * registers.
                     67:         */
                     68: 
                     69:        *(u_short *)CPS_REG = DEFAULT_CPS;
                     70:        *(u_short *)FGBG_REG = DEFAULT_FGBG;
                     71: 
                     72:        /*
                     73:         * Set default colors in Video Look-up Table.
                     74:         */
                     75: 
                     76:        apa8c_set_colors();
                     77: 
                     78:        /*
                     79:         * Test for the APA8C screen.
                     80:         */
                     81: 
                     82:        tmp = *(u_short *)SCREEN_BASE;
                     83:        *(u_short *)SCREEN_BASE = 0x0F0F;
                     84:        if (*(u_short *)SCREEN_BASE != 0x0F0F) {
                     85:                /*
                     86:                 * Log error and exit
                     87:                 */
                     88: 
                     89:                DeviceError("apa8 color not found !!");
                     90:                exit(2);
                     91:        }
                     92:        *(u_short*)SCREEN_BASE = tmp;
                     93: }
                     94: 
                     95: /*
                     96:  * Sets default foreground and background colors in 
                     97:  * video look-up table. FG_COLOR and BG_COLOR are default 
                     98:  * colors. They are defined in apa8c.h
                     99:  */
                    100: 
                    101: static
                    102: apa8c_set_colors()
                    103: {
                    104:        register i;
                    105: 
                    106: #ifdef TRACE_X
                    107:         fprintf (stderr, "In apa8c_set_colors\n");
                    108:         fflush (stderr);
                    109: #endif TRACE_X
                    110: 
                    111:        for (i = 0; i < VLT_SIZE; i++) {
                    112:                if (i == 15)
                    113:                        *(u_short *)VLT_REG = (u_short) (i | FG_COLOR);
                    114:                else
                    115:                        *(u_short *)VLT_REG = (u_short) (i | BG_COLOR);
                    116:        }
                    117: }

unix.superglobalmegacorp.com

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