diff --git a/sys/arch/sparc/include/fbvar.h b/sys/arch/sparc/include/fbvar.h index b93cba993672..8c037fc6cf12 100644 --- a/sys/arch/sparc/include/fbvar.h +++ b/sys/arch/sparc/include/fbvar.h @@ -1,4 +1,4 @@ -/* $NetBSD: fbvar.h,v 1.2 1994/11/20 20:53:04 deraadt Exp $ */ +/* $NetBSD: fbvar.h,v 1.3 1995/09/17 20:41:30 pk Exp $ */ /* * Copyright (c) 1992, 1993 @@ -48,9 +48,18 @@ * Frame buffer variables. All frame buffer drivers must provide the * following in order to participate. */ + +#ifdef RCONSOLE +#include +#endif + struct fbdriver { /* device unblank function (force kernel output to display) */ - void (*fbd_unblank)(struct device *); + void (*fbd_unblank) __P((struct device *)); + int (*fbd_open) __P((dev_t, int, int, struct proc *)); + int (*fbd_close) __P((dev_t, int, int, struct proc *)); + int (*fbd_ioctl) __P((dev_t, u_long, caddr_t, int, struct proc *)); + int (*fbd_mmap) __P((dev_t, int, int)); #ifdef notyet void (*fbd_wrrop)(); /* `write region' rasterop */ void (*fbd_cprop)(); /* `copy region' rasterop */ @@ -67,44 +76,13 @@ struct fbdevice { struct fbdriver *fb_driver; /* pointer to driver */ struct device *fb_device; /* parameter for fbd_unblank */ +#ifdef RCONSOLE /* Raster console emulator state */ - u_int fb_bits; /* see defines below */ - int fb_ringing; /* bell currently ringing */ - int fb_belldepth; /* audible bell depth */ - int fb_scroll; /* stupid sun scroll mode */ - - int fb_p0; /* escape sequence parameter 0 */ - int fb_p1; /* escape sequence parameter 1 */ - - int *fb_row; /* emulator row */ - int *fb_col; /* emulator column */ - - int fb_maxrow; /* emulator height of screen */ - int fb_maxcol; /* emulator width of screen */ - - int fb_emuwidth; /* emulator screen width */ - int fb_emuheight; /* emulator screen height */ - - int fb_xorigin; /* x origin for first column */ - int fb_yorigin; /* y origin for first row */ - - struct raster *fb_sp; /* frame buffer raster */ - struct raster *fb_cursor; /* optional cursor */ - int fb_ras_blank; /* current screen blank raster op */ - - struct raster_font *fb_font; /* font and related info */ - int fb_font_ascent; /* distance from font to char origin */ + struct rconsole fb_rcons; +#endif }; -#define FB_INESC 0x001 /* processing an escape sequence */ -#define FB_STANDOUT 0x002 /* standout mode */ -/* #define FB_BOLD 0x? /* boldface mode */ -#define FB_INVERT 0x008 /* white on black mode */ -#define FB_VISBELL 0x010 /* visual bell */ -#define FB_CURSOR 0x020 /* cursor is visible */ -#define FB_P0_DEFAULT 0x100 /* param 0 is defaulted */ -#define FB_P1_DEFAULT 0x200 /* param 1 is defaulted */ -#define FB_P0 0x400 /* working on param 0 */ -#define FB_P1 0x800 /* working on param 1 */ - void fbattach __P((struct fbdevice *)); +#ifdef RCONSOLE +void fbrcons_init __P((struct fbdevice *)); +#endif