xref: /csrg-svn/sys/sparc/sbus/bwtworeg.h (revision 63322)
155135Storek /*
2*63322Sbostic  * Copyright (c) 1992, 1993
3*63322Sbostic  *	The Regents of the University of California.  All rights reserved.
455135Storek  *
555135Storek  * This software was developed by the Computer Systems Engineering group
655135Storek  * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
755135Storek  * contributed to Berkeley.
855135Storek  *
955503Sbostic  * All advertising materials mentioning features or use of this software
1055503Sbostic  * must display the following acknowledgement:
1155503Sbostic  *	This product includes software developed by the University of
1259213Storek  *	California, Lawrence Berkeley Laboratory.
1355503Sbostic  *
1455135Storek  * %sccs.include.redist.c%
1555135Storek  *
16*63322Sbostic  *	@(#)bwtworeg.h	8.1 (Berkeley) 06/11/93
1755135Storek  *
1859213Storek  * from: $Header: bwtworeg.h,v 1.4 92/11/26 02:28:05 torek Exp $
1955135Storek  */
2055135Storek 
2155135Storek /*
2255135Storek  * bwtwo display registers.
2355135Storek  *
2455135Storek  * The registers start at offset 0x400000 and repeat every 32 bytes
2555135Storek  * (presumably only the low order address lines are decoded).  Video RAM
2655135Storek  * starts at offset 0x800000.  We use separate pointers to each so that
2755135Storek  * the sparc addressing modes work well.
2855135Storek  */
2955135Storek struct bwtworeg {
3055135Storek 	/*
3155135Storek 	 * The xxx0 range is all 0xff on my IPC but causes a screen glitch
3255135Storek 	 * on my SS1+, so it must do *some*thing... the xxx1 range is full
3355135Storek 	 * of values but I do not know what they are.  bw_ctl changes for
3455135Storek 	 * a blanked screen.
3555135Storek 	 */
3655135Storek 	char	bw_xxx0[16];
3755135Storek 	u_char	bw_ctl;			/* contains video enable */
3855135Storek 	char	bw_xxx1[15];
3955135Storek };
4055135Storek 
4155135Storek /* bits in bw_ctl */
4255135Storek #define	CTL_VE	0x40			/* video enable */
4355135Storek 
4455135Storek /* offsets */
4555135Storek #define	BWREG_ID	0
4655135Storek #define	BWREG_REG	0x400000
4755135Storek #define	BWREG_MEM	0x800000
4855135Storek 
4955135Storek /* same, but for gdb */
5055135Storek struct bwtwo_all {
5155135Storek 	long	ba_id;			/* ID = 0xfe010104 on my IPC */
5255135Storek 	char	ba_xxx0[0x400000-4];
5355135Storek 	struct	bwtworeg ba_reg;	/* control registers */
5455135Storek 	char	ba_xxx1[0x400000-32];
5555135Storek 	char	ba_ram[4096];		/* actually larger */
5655135Storek };
57