aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/syscons/syscons.h
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2005-05-29 08:43:44 +0000
committerXin LI <delphij@FreeBSD.org>2005-05-29 08:43:44 +0000
commitf1121206664f83bd3a15d95139f55bf3c2cc3c2d (patch)
treeaab9212340bf7a27e76d41fc69335774ce01644e /sys/dev/syscons/syscons.h
parent41295396392e3c0114f231f2b1bc5cfb86677742 (diff)
downloadsrc-f1121206664f83bd3a15d95139f55bf3c2cc3c2d.tar.gz
src-f1121206664f83bd3a15d95139f55bf3c2cc3c2d.zip
Add VESA mode support for syscons, which enables the support of 15, 16,
24, and 32 bit modes. To use that, syscons(4) must be built with the compile time option 'options SC_PIXEL_MODE', and VESA support (a.k.a. vesa.ko) must be either loaded, or be compiled into the kernel. Do not return EINVAL when the mouse state is changed to what it already is, which seems to cause problems when you have two mice attached, and applications are not likely obtain useful information through the EINVAL caused by showing the mouse pointer twice. Teach vidcontrol(8) about mode names like MODE_<NUMBER>, where <NUMBER> is the video mode number from the vidcontrol -i mode output. Also, revert the video mode if something fails. Obtained from: DragonFlyBSD Discussed at: current@ with patch attached [1] PR: kern/71142 [2] Submitted by: Xuefeng DENG <dsnofe at msn com> [1], Cyrille Lefevre <cyrille dot lefevre at laposte dot net> [2]
Notes
Notes: svn path=/head/; revision=146736
Diffstat (limited to 'sys/dev/syscons/syscons.h')
-rw-r--r--sys/dev/syscons/syscons.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/dev/syscons/syscons.h b/sys/dev/syscons/syscons.h
index c013056739cf..460d3c5ad7b1 100644
--- a/sys/dev/syscons/syscons.h
+++ b/sys/dev/syscons/syscons.h
@@ -2,6 +2,9 @@
* Copyright (c) 1995-1998 Søren Schmidt
* All rights reserved.
*
+ * This code is derived from software contributed to The DragonFly Project
+ * by Sascha Wildner <saw@online.de>
+ *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
@@ -413,6 +416,7 @@ typedef struct sc_term_sw {
SI_SUB_DRIVERS, SI_ORDER_MIDDLE)
/* renderer function table */
+typedef void vr_init_t(scr_stat *scp);
typedef void vr_clear_t(scr_stat *scp, int c, int attr);
typedef void vr_draw_border_t(scr_stat *scp, int color);
typedef void vr_draw_t(scr_stat *scp, int from, int count, int flip);
@@ -424,6 +428,7 @@ typedef void vr_set_mouse_t(scr_stat *scp);
typedef void vr_draw_mouse_t(scr_stat *scp, int x, int y, int on);
typedef struct sc_rndr_sw {
+ vr_init_t *init;
vr_clear_t *clear;
vr_draw_border_t *draw_border;
vr_draw_t *draw;