diff options
author | yokota <yokota@FreeBSD.org> | 1998-09-23 09:59:00 +0000 |
---|---|---|
committer | yokota <yokota@FreeBSD.org> | 1998-09-23 09:59:00 +0000 |
commit | b326a281a93fffb9bf6a92d3a17a0c1f663fbd32 (patch) | |
tree | 19f14876b77bda581eefefa9fd47cfc71ede7f4b /sys/i386/include/console.h | |
parent | 0929d70022b41699c512bc1265bd081a55757848 (diff) | |
download | FreeBSD-src-b326a281a93fffb9bf6a92d3a17a0c1f663fbd32.zip FreeBSD-src-b326a281a93fffb9bf6a92d3a17a0c1f663fbd32.tar.gz |
Fix and update for VESA BIOS support in syscons.
- Handle pixel (raster text) mode properly.
- Clear screen and paint border right.
- Paint text attribute (colors).
- Fix off-by-one errors.
- Add some sanity checks.
- Fix some function prototypes.
- Add some comment lines.
- Define generic text mode numbers so that the user can just give
"80x25", "80x60", "132x25"..., rather than "VGA_xxx", to `vidcontrol'
to change the current video mode. `vidoio.c' and `vesa.c' will map
these numbers to real video mode numbers appropriate and available
with the given video hardware. I believe this will be useful to make
syscons more portable across archtectures.
Diffstat (limited to 'sys/i386/include/console.h')
-rw-r--r-- | sys/i386/include/console.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/sys/i386/include/console.h b/sys/i386/include/console.h index 3373e60..638b74b 100644 --- a/sys/i386/include/console.h +++ b/sys/i386/include/console.h @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: console.h,v 1.38 1998/08/03 11:30:28 yokota Exp $ + * $Id: console.h,v 1.39 1998/09/15 18:16:37 sos Exp $ */ #ifndef _MACHINE_CONSOLE_H_ @@ -437,6 +437,17 @@ typedef struct {int scr_size[3];} scr_size_t; #define M_HGC_P1 0xe1 /* hercules graphics - page 1 @ B8000 */ #define M_MCA_MODE 0xff /* monochrome adapter mode */ +#define M_TEXT_80x25 200 /* generic text modes */ +#define M_TEXT_80x30 201 +#define M_TEXT_80x43 202 +#define M_TEXT_80x50 203 +#define M_TEXT_80x60 204 +#define M_TEXT_132x25 205 +#define M_TEXT_132x30 206 +#define M_TEXT_132x43 207 +#define M_TEXT_132x50 208 +#define M_TEXT_132x60 209 + #define SW_PC98_80x25 _IO('S', M_PC98_80x25) #define SW_PC98_80x30 _IO('S', M_PC98_80x30) #define SW_B40x25 _IO('S', M_B40x25) @@ -478,6 +489,17 @@ typedef struct {int scr_size[3];} scr_size_t; #define SW_VGA_CG640 _IO('S', M_VGA_CG640) #define SW_VGA_MODEX _IO('S', M_VGA_MODEX) +#define SW_TEXT_80x25 _IO('S', M_TEXT_80x25) +#define SW_TEXT_80x30 _IO('S', M_TEXT_80x30) +#define SW_TEXT_80x43 _IO('S', M_TEXT_80x43) +#define SW_TEXT_80x50 _IO('S', M_TEXT_80x50) +#define SW_TEXT_80x60 _IO('S', M_TEXT_80x60) +#define SW_TEXT_132x25 _IO('S', M_TEXT_132x25) +#define SW_TEXT_132x30 _IO('S', M_TEXT_132x30) +#define SW_TEXT_132x43 _IO('S', M_TEXT_132x43) +#define SW_TEXT_132x50 _IO('S', M_TEXT_132x50) +#define SW_TEXT_132x60 _IO('S', M_TEXT_132x60) + #define M_VESA_BASE 0x100 /* VESA mode number base */ #define M_VESA_CG640x400 0x100 /* 640x400, 256 color */ |