Plan 9 from Bell Labs’s /usr/web/sources/extra/9hist/pc/vga.h

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


## diffname pc/vga.h 1992/0528
## diff -e /dev/null /n/bootesdump/1992/0528/sys/src/9/safari/vga.h
0a
enum
{
	EMISCR=		0x3CC,		/* control sync polarity */
	EMISCW=		0x3C2,
	EFCW=		0x3DA,		/* feature control */
	EFCR=		0x3CA,
	GRX=		0x3CE,		/* index to graphics registers */
	GR=		0x3CF,		/* graphics registers */
	 Grms=		 0x04,		/*  read map select register */
	SRX=		0x3C4,		/* index to sequence registers */
	SR=		0x3C5,		/* sequence registers */
	 Smmask=	 0x02,		/*  map mask */
	CRX=		0x3D4,		/* index to crt registers */
	CR=		0x3D5,		/* crt registers */
	 Cvre=		 0x11,		/*  vertical retrace end */
	ARW=		0x3C0,		/* attribute registers (writing) */
	ARR=		0x3C1,		/* attribute registers (reading) */
};

extern	void genout(int, int);
extern	void srout(int, int);
extern	void grout(int, int);
extern	void arout(int, int);
extern	void crout(int, int);
.
## diffname pc/vga.h 1992/0603
## diff -e /n/bootesdump/1992/0528/sys/src/9/safari/vga.h /n/bootesdump/1992/0603/sys/src/9/safari/vga.h
20,24c
extern	void setscreen(int, int, int);

extern	struct GBitmap	gscreen;
.
## diffname pc/vga.h 1992/0604
## diff -e /n/bootesdump/1992/0603/sys/src/9/safari/vga.h /n/bootesdump/1992/0604/sys/src/9/safari/vga.h
21a
extern	void setscreen(int, int, int);
.
20c
#define SCREENMEM	(0xA0000 | KZERO)
.
## diffname pc/vga.h 1992/1110
## diff -e /n/bootesdump/1992/0808/sys/src/9/safari/vga.h /n/bootesdump/1992/1110/sys/src/9/pc/vga.h
17a
	CMRX=		0x3C7,		/* color map read index */
	CMWX=		0x3C8,		/* color map write index */
	CM=		0x3C9,		/* color map data reg */
.
## diffname pc/vga.h 1992/1117
## diff -e /n/bootesdump/1992/1110/sys/src/9/pc/vga.h /n/bootesdump/1992/1117/sys/src/9/pc/vga.h
23a
#define CGASCREEN	((uchar*)(0xB8000 | KZERO))
#define	CGAWIDTH	160
#define	CGAHEIGHT	24
.
## diffname pc/vga.h 1994/0624
## diff -e /n/bootesdump/1992/1117/sys/src/9/pc/vga.h /n/fornaxdump/1994/0624/sys/src/brazil/pc/vga.h
28,29c
extern int vgaxi(long, uchar);
extern int vgaxo(long, uchar, uchar);

/*
 * Definitions of known hardware graphics cursors.
 */
typedef struct Hwgc {
	char	*name;
	void	(*enable)(void);
	void	(*load)(Cursor*);
	int	(*move)(Point);
	void	(*disable)(void);
} Hwgc;

extern Lock pallettelock;
.
23,26c
#define vgai(port)		inb(port)
#define vgao(port, data)	outb(port, data)
.
1,20c
/*
 * Generic VGA registers.
 */
enum {
	MiscW		= 0x03C2,	/* Miscellaneous Output (W) */
	MiscR		= 0x03CC,	/* Miscellaneous Output (R) */
	Status0		= 0x03C2,	/* Input status 0 (R) */
	Status1		= 0x03DA,	/* Input Status 1 (R) */
	FeatureR	= 0x03CA,	/* Feature Control (R) */
	FeatureW	= 0x03DA,	/* Feature Control (W) */

	Seqx		= 0x03C4,	/* Sequencer Index, Data at Seqx+1 */
	NSeqx		= 0x05,

	Crtx		= 0x03D4,	/* CRT Controller Index, Data at Crtx+1 */
	NCrtx		= 0x19,

	Grx		= 0x03CE,	/* Graphics Controller Index, Data at Grx+1 */
	NGrax		= 0x09,

	Attrx		= 0x03C0,	/* Attribute Controller Index and Data */
	NAttrx		= 0x15,

	DACMask		= 0x03C6,	/* DAC Mask */
	DACRx		= 0x03C7,	/* DAC Read Index (W) */
	DACSts		= 0x03C7,	/* DAC Status (R) */
	DACWx		= 0x03C8,	/* DAC Write Index */
	DACData		= 0x03C9,	/* DAC Data */
	NDACx		= 0x100,
.
## diffname pc/vga.h 1994/0729
## diff -e /n/fornaxdump/1994/0624/sys/src/brazil/pc/vga.h /n/fornaxdump/1994/0729/sys/src/brazil/pc/vga.h
49c
extern Lock palettelock;
.
## diffname pc/vga.h 1994/0803
## diff -e /n/fornaxdump/1994/0729/sys/src/brazil/pc/vga.h /n/fornaxdump/1994/0803/sys/src/brazil/pc/vga.h
48a
extern Hwgc *hwgc;

.
## diffname pc/vga.h 1995/0126
## diff -e /n/fornaxdump/1994/0803/sys/src/brazil/pc/vga.h /n/fornaxdump/1995/0126/sys/src/brazil/pc/vga.h
47c

	Hwgc*	link;
};

extern void addvgaclink(Vgac*);
extern void addhwgclink(Hwgc*);
.
42a
	void	(*page)(int);

	Vgac*	link;
};

/*
 * Definition of known hardware graphics cursors.
 */
typedef struct Hwgc Hwgc;
struct Hwgc {
	char*	name;
.
41c
typedef struct Vgac Vgac;
struct Vgac {
.
39c
 * Definitions of known VGA controllers.
.
24,29c
	PaddrW		= 0x03C8,	/* Palette Address Register, write */
	Pdata		= 0x03C9,	/* Palette Data Register */
	Pixmask		= 0x03C6,	/* Pixel Mask Register */
	PaddrR		= 0x03C7,	/* Palette Address Register, read */
	Pstatus		= 0x03C7,	/* DAC Status (RO) */

	Pcolours	= 256,		/* Palette */
	Pred		= 0,
	Pgreen		= 1,
	Pblue		= 2,

	Pblack		= 0x00,
	Pwhite		= 0xFF,
.
22d
19,20d
16,17d
13,14d
## diffname pc/vga.h 1996/0418
## diff -e /n/fornaxdump/1995/0126/sys/src/brazil/pc/vga.h /n/fornaxdump/1996/0418/sys/src/brazil/pc/vga.h
44a
	int	(*linear)(ulong*, ulong*, ulong*);
.
## diffname pc/vga.h 1997/1101 # deleted
## diff -e /n/fornaxdump/1996/0418/sys/src/brazil/pc/vga.h /n/emeliedump/1997/1101/sys/src/brazil/pc/vga.h
1,69d

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to [email protected].