Summary X11R4 problems on sparc 2

From: mark@gest20.sinet.slb.com
Date: Wed Feb 20 1991 - 03:38:19 CST


Well netland,
thanks for your prompt help. It seems that cg6reg.h from 4.0.3(c) is
no good abd it must be 4.1 (or later). There are however 3 ways to solve
this problem which I will include here. I have only tried number 3.

However on examination I expect the others to work as well.

Thanks to :

birger@vest.sdata.no
gls%novavax.edu%florida@gatech.edu
thakur@zerkalo.harvard.edu
bala@synopsys.com
datri@concave.convex.com

Here is the answer:

        From birger@vest.sdata.no Tue Feb 19 16:29:17 1991
        Received: from vest.sdata.no ([129.177.220.2]) by GEST20.sinet.slb.com; Tue, 19 Feb 91 16:28:42 +0100
        Received: from morgan (morgan.vest.sdata.no) by vest.sdata.no (4.1/SMI-4.1)
                id AA07937; Tue, 19 Feb 91 16:30:13 +0100
        Date: Tue, 19 Feb 91 16:30:13 +0100
        From: birger@vest.sdata.no ( Birger Wathne)
        Message-Id: <9102191530.AA07937@vest.sdata.no>
        To: mark@gest20.sinet.slb.com
        Subject: Re: X11R4 problems on sparc 2
        Status: R

        Third try.... Hope i get through this time...

        This came in on news today:

        ---------------------------------------------------------------------------
        Article 10711 of comp.sys.sun:
        Path: eik.ii.uib.no!ugle.unit.no!kth.se!sunic!uupsi!rpi!zaphod.mps.ohio-state.edu!swrinde!cs.utexas.edu!news-server.csri.toronto.edu!utgpu!cunews!bnrgate!brtph3!brchh104!brchs1!bnr.ca!rice.edu!sun-spots-request
>From: keh@eng.sun.com (Ken Hauck)
        Newsgroups: comp.sys.sun
        Subject: cg6reg.h missing from SunOS 4.1.1
        Keywords: Windows
        Message-ID: <1619@brchh104.bnr.ca>
        Date: 13 Feb 91 22:03:00 GMT
        Sender: news@brchh104.bnr.ca
        Organization: Sun-Spots
        Lines: 149
        Approved: Sun-Spots@rice.edu
        X-Original-Date: 7 Feb 91 18:30:37 GMT
        X-Sun-Spots-Digest: Volume 10, Issue 37, message 15
        X-Note: Submissions: sun-spots@rice.edu, Admin: sun-spots-request@rice.edu

        TO: Sun Users running MIT X11R4
        FROM: Joanne Blind-Griffith, SunOS Marketing
                 Ken Hauck, Graphics Software Marketing
                 Sun Microsystems, Inc.
        SUBJECT: SunOS 4.1.1 missing cg6reg.h

        PROBLEM CAUSED BY OMISSION OF CG6REG.H:

        The file /usr/include/sundev/cg6reg.h was inadvertently omitted from SunOS
        4.1.1. This file is currently used to build the MIT X11R4 Server. We
        apologize for the inconvenience that this may have caused our customers.

        SOLUTIONS:

        Three alternate options exist to successfully build the MIT X11R4 Server.
        Please use the option you find most convenient.

        1) The following #define can be put either into
        mit/server/ddx/sun/sunCG6C.c from the MIT X11R4 distribution, or into a
        file called /usr/include/sundev/cg6reg.h

        #define CG6_VADDR_COLOR 0x70016000

        2) The cg6reg.h file found on the SunOS 4.1 media is sufficient for
        building the MIT server. Customers can extract this file from their SunOS
        4.1 media.

        3) In the event that option #1 is not feasible or the SunOS 4.1 media is
        not available, use the cg6reg.h file included below. This file is the
        cg6reg.h file that was omitted from the SunOS 4.1.1 release. The file
        "cg6reg.h" will be included in the next release of the operating system.

        ------------------------------------

        /* @(#)cg6reg.h 1.10 90/07/19 SMI */

        /*
         * Copyright 1988-1989, Sun Microsystems, Inc.
         */

        #ifndef cg6reg_DEFINED
        #define cg6reg_DEFINED

        /*
         * CG6 frame buffer hardware definitions.
         */

        /* Physical frame buffer and color map addresses */
        /*
         * The base address is defined in the configuration file, e.g. GENERIC.
         * These constants are the offset from that address.
         */

        #ifdef sparc
        #define CG6_P4BASE 0xFB000000
        #else
        #define CG6_P4BASE 0xFF000000
        #endif

        #ifdef sun4c
        #define CG6_ADDR_ROM 0
        #else
        #define CG6_ADDR_ROM 0x380000
        #endif

        #define CG6_ADDR_CMAP 0x200000
        #define CG6_ADDR_FBC 0x700000
        #define CG6_ADDR_TEC 0x701000
        #define CG6_ADDR_P4REG 0x300000
        #define CG6_ADDR_OVERLAY 0x400000 /* FAKE */
        #define CG6_ADDR_FHC 0x300000
        #define CG6_ADDR_THC 0x301000
        #define CG6_ADDR_ENABLE 0x600000
        #define CG6_ADDR_COLOR 0x800000

        #define CG6_ADDR_FBCTEC CG6_ADDR_FBC
        #define CG6_ADDR_FHCTHC CG6_ADDR_FHC

        #define CG6_CMAP_SZ 8192
        #define CG6_FBCTEC_SZ 8192
        #define CG6_FHCTHC_SZ 8192
        #define CG6_ROM_SZ (64*1024)
        #define CG6_FB_SZ (1024*1024)

        /*
         * Offsets of TEC/FHC into page
         */
        #define CG6_TEC_POFF 0x1000
        #define CG6_THC_POFF 0x1000

        /*
         * Virtual (mmap offsets) addresses
         */
        #define CG6_VBASE 0x70000000
        #define CG6_VADDR(x) (CG6_VBASE + (x) * 8192)

        /*
         * CG6 Virtual object addresses
         */
        #define CG6_VADDR_FBC CG6_VADDR(0)
        #define CG6_VADDR_TEC (CG6_VADDR_FBC + CG6_TEC_POFF)
        #define CG6_VADDR_CMAP CG6_VADDR(1)
        #define CG6_VADDR_FHC CG6_VADDR(2)
        #define CG6_VADDR_THC (CG6_VADDR_FHC + CG6_THC_POFF)
        #define CG6_VADDR_ROM CG6_VADDR(3)
        #define CG6_VADDR_COLOR (CG6_VADDR_ROM + CG6_ROM_SZ)

        #define CG6_VADDR_FBCTEC CG6_VADDR_FBC
        #define CG6_VADDR_FHCTHC CG6_VADDR_FHC
        /*
         * to map in all of lego, use mmapsize below, and offset CG6_VBASE
         */
        #define MMAPSIZE(dfbsize) (CG6_VADDR_COLOR-CG6_VBASE+dfbsize)

        /*
         * convert from address returned by pr_makefromfd (eg. mmap)
         * to CG6 register set.
         */
        #define CG6VA_TO_FBC(base) \
                ((struct fbc*) (((char*)base)+(CG6_VADDR_FBC-CG6_VBASE)))
        #define CG6VA_TO_TEC(base) \
                ((struct tec*) (((char*)base)+(CG6_VADDR_TEC-CG6_VBASE)))
        #define CG6VA_TO_FHC(base) \
                ((u_int*) (((char*)base)+(CG6_VADDR_FHC-CG6_VBASE)))
        #define CG6VA_TO_THC(base) \
                ((struct thc*) (((char*)base)+(CG6_VADDR_THC-CG6_VBASE)))
        #define CG6VA_TO_DFB(base) \
                ((short*) (((char*)base)+(CG6_VADDR_COLOR-CG6_VBASE)))
        #define CG6VA_TO_ROM(base) \
                ((u_int*) (((char*)base)+(CG6_VADDR_ROM-CG6_VBASE)))
        #define CG6VA_TO_CMAP(base) \
                ((struct cg6_cmap*) (((char*)base)+(CG6_VADDR_CMAP-CG6_VBASE)))

        /* (Brooktree DAC) definitions */

        /* number of colormap entries */
        #define CG6_CMAP_ENTRIES 256

        struct cg6_cmap {
                u_int addr; /* address register */
                u_int cmap; /* color map data register */
                u_int ctrl; /* control register */
                u_int omap; /* overlay map data register */
        };

        #endif !cg6reg_DEFINED

        --------------------------------------------------------------------------
        Birger A. Wathne ######### Skrivervik Data A/S
                                               ## Thormohlensgt. 55
        email: birger@vest.sdata.no ## ##### N-5008 BERGEN
                                                ##### ## Tel: +47 5 543740
        Dir. dial: +47 5 543742 ## Fax: +47 5 322853
                                               #########



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:11 CDT