Back out previous and clear the screen directly.
Pointed out by macallan@.
This commit is contained in:
parent
84ff1461c4
commit
79efdbb4ff
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: bwtwo.c,v 1.20 2008/12/29 14:27:59 jdc Exp $ */
|
||||
/* $NetBSD: bwtwo.c,v 1.21 2009/01/01 13:53:07 jdc Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996, 1997 The NetBSD Foundation, Inc.
|
||||
@ -79,7 +79,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: bwtwo.c,v 1.20 2008/12/29 14:27:59 jdc Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: bwtwo.c,v 1.21 2009/01/01 13:53:07 jdc Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -286,13 +286,13 @@ bwtwoattach(sc, name, isconsole)
|
||||
vcons_init_screen(&sc->vd, &bw2_console_screen, 1,
|
||||
&defattr);
|
||||
bw2_console_screen.scr_flags |= VCONS_SCREEN_IS_STATIC;
|
||||
|
||||
|
||||
bwtwo_defaultscreen.textops = &ri->ri_ops;
|
||||
bwtwo_defaultscreen.capabilities = ri->ri_caps;
|
||||
bwtwo_defaultscreen.nrows = ri->ri_rows;
|
||||
bwtwo_defaultscreen.ncols = ri->ri_cols;
|
||||
sc->vd.active = &bw2_console_screen;
|
||||
wsdisplay_cnattach(&bwtwo_defaultscreen, ri, 0, 0, defattr);
|
||||
wsdisplay_cnattach(&bwtwo_defaultscreen, ri, 0, 0, defattr);
|
||||
} else {
|
||||
/*
|
||||
* we're not the console so we just clear the screen and don't
|
||||
@ -465,10 +465,12 @@ bwtwo_init_screen(void *cookie, struct vcons_screen *scr,
|
||||
ri->ri_width = sc->sc_width;
|
||||
ri->ri_height = sc->sc_height;
|
||||
ri->ri_stride = sc->sc_stride;
|
||||
ri->ri_flg = RI_CENTER | RI_CLEAR;
|
||||
ri->ri_flg = RI_CENTER;
|
||||
|
||||
ri->ri_bits = sc->sc_fb.fb_pixels;
|
||||
|
||||
|
||||
memset(sc->sc_fb.fb_pixels, (*defattr >> 16) & 0xff,
|
||||
sc->sc_stride * sc->sc_height);
|
||||
rasops_init(ri, sc->sc_height/8, sc->sc_width/8);
|
||||
ri->ri_caps = 0;
|
||||
rasops_reconfig(ri, sc->sc_height / ri->ri_font->fontheight,
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cgsix.c,v 1.42 2008/12/29 14:42:15 jdc Exp $ */
|
||||
/* $NetBSD: cgsix.c,v 1.43 2009/01/01 13:53:53 jdc Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
@ -78,7 +78,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cgsix.c,v 1.42 2008/12/29 14:42:15 jdc Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cgsix.c,v 1.43 2009/01/01 13:53:53 jdc Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -1256,12 +1256,13 @@ cgsix_init_screen(void *cookie, struct vcons_screen *scr,
|
||||
ri->ri_height = sc->sc_height;
|
||||
ri->ri_stride = sc->sc_stride;
|
||||
ri->ri_flg = RI_CENTER;
|
||||
/* Use software for initial screen clear on old revisions */
|
||||
if (sc->sc_fhcrev < 2)
|
||||
ri->ri_flg |= RI_CLEAR;
|
||||
|
||||
ri->ri_bits = sc->sc_fb.fb_pixels;
|
||||
|
||||
/* We need unaccelerated initial screen clear on old revisions */
|
||||
if (sc->sc_fhcrev < 2)
|
||||
memset(sc->sc_fb.fb_pixels, (*defattr >> 16) & 0xff,
|
||||
sc->sc_stride * sc->sc_height);
|
||||
rasops_init(ri, sc->sc_height/8, sc->sc_width/8);
|
||||
ri->ri_caps = WSSCREEN_WSCOLORS | WSSCREEN_REVERSE;
|
||||
rasops_reconfig(ri, sc->sc_height / ri->ri_font->fontheight,
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cgthree.c,v 1.18 2008/12/29 14:27:59 jdc Exp $ */
|
||||
/* $NetBSD: cgthree.c,v 1.19 2009/01/01 13:53:07 jdc Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
@ -38,7 +38,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cgthree.c,v 1.18 2008/12/29 14:27:59 jdc Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cgthree.c,v 1.19 2009/01/01 13:53:07 jdc Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -227,13 +227,13 @@ cgthreeattach(sc, name, isconsole)
|
||||
vcons_init_screen(&sc->vd, &cg3_console_screen, 1,
|
||||
&defattr);
|
||||
cg3_console_screen.scr_flags |= VCONS_SCREEN_IS_STATIC;
|
||||
|
||||
|
||||
cgthree_defaultscreen.textops = &ri->ri_ops;
|
||||
cgthree_defaultscreen.capabilities = ri->ri_caps;
|
||||
cgthree_defaultscreen.nrows = ri->ri_rows;
|
||||
cgthree_defaultscreen.ncols = ri->ri_cols;
|
||||
sc->vd.active = &cg3_console_screen;
|
||||
wsdisplay_cnattach(&cgthree_defaultscreen, ri, 0, 0, defattr);
|
||||
wsdisplay_cnattach(&cgthree_defaultscreen, ri, 0, 0, defattr);
|
||||
} else {
|
||||
/*
|
||||
* we're not the console so we just clear the screen and don't
|
||||
@ -257,7 +257,7 @@ cgthreeattach(sc, name, isconsole)
|
||||
|
||||
/* Initialize the default color map. */
|
||||
cg3_setup_palette(sc);
|
||||
|
||||
|
||||
aa.scrdata = &cgthree_screenlist;
|
||||
aa.console = isconsole;
|
||||
aa.accessops = &cgthree_accessops;
|
||||
@ -447,7 +447,7 @@ static void
|
||||
cg3_setup_palette(struct cgthree_softc *sc)
|
||||
{
|
||||
int i, j;
|
||||
|
||||
|
||||
j = 0;
|
||||
for (i = 0; i < 256; i++) {
|
||||
sc->sc_cmap.cm_map[i][0] = rasops_cmap[j];
|
||||
@ -583,10 +583,12 @@ cgthree_init_screen(void *cookie, struct vcons_screen *scr,
|
||||
ri->ri_width = sc->sc_width;
|
||||
ri->ri_height = sc->sc_height;
|
||||
ri->ri_stride = sc->sc_stride;
|
||||
ri->ri_flg = RI_CENTER | RI_CLEAR;
|
||||
ri->ri_flg = RI_CENTER;
|
||||
|
||||
ri->ri_bits = sc->sc_fb.fb_pixels;
|
||||
|
||||
|
||||
memset(sc->sc_fb.fb_pixels, (*defattr >> 16) & 0xff,
|
||||
sc->sc_stride * sc->sc_height);
|
||||
rasops_init(ri, sc->sc_height/8, sc->sc_width/8);
|
||||
ri->ri_caps = WSSCREEN_WSCOLORS | WSSCREEN_REVERSE;
|
||||
rasops_reconfig(ri, sc->sc_height / ri->ri_font->fontheight,
|
||||
|
Loading…
x
Reference in New Issue
Block a user