summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2005-01-18 21:53:24 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2005-01-18 21:53:24 +0000
commitcef54d1b6b1947701403863687eec35892c39b28 (patch)
tree45457fc799f964bc914858937ace2fe179eb54ad /sys
parent303c14716119d5ddc16090a2800c6606e9314f12 (diff)
Better colormap recovery after X11 exits.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/hp300/dev/diofb.c5
-rw-r--r--sys/arch/hp300/dev/topcat.c5
2 files changed, 7 insertions, 3 deletions
diff --git a/sys/arch/hp300/dev/diofb.c b/sys/arch/hp300/dev/diofb.c
index 94f2b776df8..1c825b51dfa 100644
--- a/sys/arch/hp300/dev/diofb.c
+++ b/sys/arch/hp300/dev/diofb.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: diofb.c,v 1.4 2005/01/18 19:17:03 miod Exp $ */
+/* $OpenBSD: diofb.c,v 1.5 2005/01/18 21:53:23 miod Exp $ */
/*
* Copyright (c) 2005, Miodrag Vallat
@@ -223,6 +223,9 @@ diofb_fbsetup(struct diofb *fb)
fb->cmap.r[1] = 0xff;
fb->cmap.g[1] = 0xff;
fb->cmap.b[1] = 0xff;
+ fb->cmap.r[(1 << fb->planes) - 1] = 0xff;
+ fb->cmap.g[(1 << fb->planes) - 1] = 0xff;
+ fb->cmap.b[(1 << fb->planes) - 1] = 0xff;
strlcpy(fb->wsd.name, "std", sizeof(fb->wsd.name));
fb->wsd.ncols = fb->cols;
diff --git a/sys/arch/hp300/dev/topcat.c b/sys/arch/hp300/dev/topcat.c
index 39229c6d12f..966bbd4356a 100644
--- a/sys/arch/hp300/dev/topcat.c
+++ b/sys/arch/hp300/dev/topcat.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: topcat.c,v 1.4 2005/01/18 19:17:03 miod Exp $ */
+/* $OpenBSD: topcat.c,v 1.5 2005/01/18 21:53:23 miod Exp $ */
/*
* Copyright (c) 2005, Miodrag Vallat.
@@ -317,6 +317,7 @@ topcat_reset(struct diofb *fb, int scode, struct diofbreg *fbr)
if (fb->planes > 8)
fb->planes = 8;
+ fb->bmv = topcat_windowmove;
topcat_restore(fb);
return (0);
@@ -350,7 +351,6 @@ topcat_restore(struct diofb *fb)
tc->ren = fb->planemask;
tc->prr = RR_COPY;
- fb->bmv = topcat_windowmove;
diofb_fbsetup(fb);
diofb_fontunpack(fb);
@@ -360,6 +360,7 @@ topcat_restore(struct diofb *fb)
if (fb->planes > 1) {
topcat_setcolor(fb, 0);
topcat_setcolor(fb, 1);
+ topcat_setcolor(fb, (1 << fb->planes) - 1);
}
/*