Date: Thu, 17 Sep 1998 05:30:19 -0700 (PDT) From: "Jordan K. Hubbard" <jkh@FreeBSD.ORG> To: sos@FreeBSD.ORG Cc: current@FreeBSD.ORG Subject: Flickering syscons Message-ID: <199809171230.FAA03061@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
As you know, the SC_BAD_FLICKER option appears to have been added in
order to turn off an optimization(?) which causes flickering on certain
screens, like my Libretto for example. :-)
I and many others believe that anything which causes a potential pessimization
should be turned OFF by default, rather than on, so that POLA is obeyed
for those who would otherwise be rather puzzled and annoyed by bad behavior
being a new default.
What say you and Kazu to these diffs..
Index: i386/conf/LINT
===================================================================
RCS file: /home/ncvs/src/sys/i386/conf/LINT,v
retrieving revision 1.466
diff -u -r1.466 LINT
--- LINT 1998/09/15 18:16:36 1.466
+++ LINT 1998/09/17 12:25:01
@@ -801,8 +801,9 @@
makeoptions "STD8X16FONT"="cp850"
options SC_HISTORY_SIZE=200 # number of history buffer lines
options SC_DISABLE_REBOOT # disable reboot key sequence
-# If the screen flickers badly when the mouse pointer is moved, try this.
-options SC_BAD_FLICKER
+# Some screens flickers badly when the mouse pointer is moved if this is on,
+# for others it's a speedup (so try it at your own risk).
+options SC_DO_FLICKER
# To include support for VESA video modes
# Dont use together with SMP!!
options VESA # needs VM86 defined too!!
Index: i386/conf/options.i386
===================================================================
RCS file: /home/ncvs/src/sys/i386/conf/options.i386,v
retrieving revision 1.87
diff -u -r1.87 options.i386
--- options.i386 1998/09/15 18:16:37 1.87
+++ options.i386 1998/09/17 12:25:12
@@ -75,7 +75,7 @@
SC_HISTORY_SIZE opt_syscons.h
SC_DISABLE_REBOOT opt_syscons.h
SC_MOUSE_CHAR opt_syscons.h
-SC_BAD_FLICKER opt_syscons.h
+SC_DO_FLICKER opt_syscons.h
VESA opt_vesa.h
Index: i386/isa/videoio.c
===================================================================
RCS file: /home/ncvs/src/sys/i386/isa/videoio.c,v
retrieving revision 1.1
diff -u -r1.1 videoio.c
--- videoio.c 1998/09/15 18:16:38 1.1
+++ videoio.c 1998/09/17 12:17:08
@@ -984,24 +984,24 @@
outb(ATC, 0x20); /* enable palette */
#if SLOW_VGA
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x01);
#endif
outb(TSIDX, 0x02); outb(TSREG, 0x04);
outb(TSIDX, 0x04); outb(TSREG, 0x07);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x03);
#endif
outb(GDCIDX, 0x04); outb(GDCREG, 0x02);
outb(GDCIDX, 0x05); outb(GDCREG, 0x00);
outb(GDCIDX, 0x06); outb(GDCREG, 0x04);
#else
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0100);
#endif
outw(TSIDX, 0x0402);
outw(TSIDX, 0x0704);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0300);
#endif
outw(GDCIDX, 0x0204);
@@ -1026,12 +1026,12 @@
outb(ATC, 0x20); /* enable palette */
#if SLOW_VGA
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x01);
#endif
outb(TSIDX, 0x02); outb(TSREG, buf[0]);
outb(TSIDX, 0x04); outb(TSREG, buf[1]);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x03);
#endif
outb(GDCIDX, 0x04); outb(GDCREG, buf[2]);
@@ -1042,12 +1042,12 @@
outb(GDCIDX, 0x06); outb(GDCREG,(buf[4] & 0x03) | 0x0c);
}
#else
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0100);
#endif
outw(TSIDX, 0x0002 | (buf[0] << 8));
outw(TSIDX, 0x0004 | (buf[1] << 8));
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0300);
#endif
outw(GDCIDX, 0x0004 | (buf[2] << 8));
Index: pc98/conf/options.pc98
===================================================================
RCS file: /home/ncvs/src/sys/pc98/conf/options.pc98,v
retrieving revision 1.65
diff -u -r1.65 options.pc98
--- options.pc98 1998/09/09 14:39:20 1.65
+++ options.pc98 1998/09/17 12:25:17
@@ -79,7 +79,7 @@
SC_HISTORY_SIZE opt_syscons.h
SC_DISABLE_REBOOT opt_syscons.h
SC_MOUSE_CHAR opt_syscons.h
-SC_BAD_FLICKER opt_syscons.h
+SC_DO_FLICKER opt_syscons.h
LINE30 opt_syscons.h
PSM_HOOKAPM opt_psm.h
Index: pc98/pc98/syscons.c
===================================================================
RCS file: /home/ncvs/src/sys/pc98/pc98/syscons.c,v
retrieving revision 1.101
diff -u -r1.101 syscons.c
--- syscons.c 1998/09/14 11:37:58 1.101
+++ syscons.c 1998/09/17 12:26:13
@@ -5701,24 +5701,24 @@
outb(ATC, 0x20); /* enable palette */
#if SLOW_VGA
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x01);
#endif
outb(TSIDX, 0x02); outb(TSREG, 0x04);
outb(TSIDX, 0x04); outb(TSREG, 0x07);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x03);
#endif
outb(GDCIDX, 0x04); outb(GDCREG, 0x02);
outb(GDCIDX, 0x05); outb(GDCREG, 0x00);
outb(GDCIDX, 0x06); outb(GDCREG, 0x04);
#else
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0100);
#endif
outw(TSIDX, 0x0402);
outw(TSIDX, 0x0704);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0300);
#endif
outw(GDCIDX, 0x0204);
@@ -5741,12 +5741,12 @@
outb(ATC, 0x20); /* enable palette */
#if SLOW_VGA
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x01);
#endif
outb(TSIDX, 0x02); outb(TSREG, buf[0]);
outb(TSIDX, 0x04); outb(TSREG, buf[1]);
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outb(TSIDX, 0x00); outb(TSREG, 0x03);
#endif
outb(GDCIDX, 0x04); outb(GDCREG, buf[2]);
@@ -5757,12 +5757,12 @@
outb(GDCIDX, 0x06); outb(GDCREG,(buf[4] & 0x03) | 0x0c);
}
#else
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0100);
#endif
outw(TSIDX, 0x0002 | (buf[0] << 8));
outw(TSIDX, 0x0004 | (buf[1] << 8));
-#ifndef SC_BAD_FLICKER
+#ifdef SC_DO_FLICKER
outw(TSIDX, 0x0300);
#endif
outw(GDCIDX, 0x0004 | (buf[2] << 8));
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199809171230.FAA03061>
