freebsd-dev/sys/dev/syscons
Kazutaka YOKOTA ac4c944d67 Fixes annoying behavior and a bug regarding the destructive
cursor (CHAR_CURSOR)

1. Reduced the number of calls to set_destructive_cursor().  The
destructive cursor produced noticeable overhead on the system.  It was
caused by draw_cursor_image() calling set_destructive_cursor() every
so often.

set_destructive_cursor() absolutely needs to be called when

a) the character code under the cursor has changed either because
   the cursor moved or because the screen was updated or the mouse
   pointer overlapped the cursor.
b) Or a new font has been loaded,
c) or the video mode has been changed,
d) or the cursor shape has been changed,
e) or the user switched virtual consoles.

2. Turn off the configuration flag CHAR_CURSOR (destructive cursor) in
scattach() if we have a non-VGA card.  The destructive cursor works
only for VGA.

3. Removed redundant calls to set_destructive_cursor() in some places.

4. Fixed the "disappearing mouse pointer" problem. The mouse pointer
looked hidden under the destructive cursor when it overlaped the cursor.

A slightly different version of the patch was reviewd and OKed by
sos and ache.
1997-06-30 13:31:49 +00:00
..
blank Make MOD_* macros almost consistent: 1997-04-06 10:49:22 +00:00
daemon Take the OS release string from the kernel variable `osrelease' 1997-06-24 12:43:18 +00:00
fade Make MOD_* macros almost consistent: 1997-04-06 10:49:22 +00:00
green Make MOD_* macros almost consistent: 1997-04-06 10:49:22 +00:00
snake Make MOD_* macros almost consistent: 1997-04-06 10:49:22 +00:00
star Make MOD_* macros almost consistent: 1997-04-06 11:14:13 +00:00
syscons.c Fixes annoying behavior and a bug regarding the destructive 1997-06-30 13:31:49 +00:00
syscons.h A fix/work-around for ThinkPad 535. 1997-06-29 15:11:40 +00:00