version 1.23, 2005/05/16 14:29:11 |
version 1.24, 2005/05/22 03:45:08 |
Line 328 static void cg6_ras_copyrows(void *, int |
|
Line 328 static void cg6_ras_copyrows(void *, int |
|
static void cg6_ras_copycols(void *, int, int, int, int); |
static void cg6_ras_copycols(void *, int, int, int, int); |
static void cg6_ras_erasecols(void *, int, int, int, long int); |
static void cg6_ras_erasecols(void *, int, int, int, long int); |
static void cg6_ras_eraserows(void *, int, int, long int); |
static void cg6_ras_eraserows(void *, int, int, long int); |
#ifdef RASTERCONSOLE |
#if defined(RASTERCONSOLE) && defined(CG6_BLIT_CURSOR) |
static void cg6_ras_do_cursor(struct rasops_info *); |
static void cg6_ras_do_cursor(struct rasops_info *); |
#endif |
#endif |
static void |
static void |
Line 589 cg6_ras_eraserows(void *cookie, int row, |
|
Line 589 cg6_ras_eraserows(void *cookie, int row, |
|
#endif |
#endif |
} |
} |
|
|
#ifdef RASTERCONSOLE |
#if defined(RASTERCONSOLE) && defined(CG6_BLIT_CURSOR) |
/* |
/* |
* Really want something more like fg^bg here, but that would be more |
* Really want something more like fg^bg here, but that would be more |
* or less impossible to migrate to colors. So we hope there's |
* or less impossible to migrate to colors. So we hope there's |
Line 599 cg6_ras_eraserows(void *cookie, int row, |
|
Line 599 cg6_ras_eraserows(void *cookie, int row, |
|
static void |
static void |
cg6_ras_do_cursor(struct rasops_info *ri) |
cg6_ras_do_cursor(struct rasops_info *ri) |
{ |
{ |
struct cg6_screen *scr=ri->ri_hw; |
struct cg6_screen *scr = ri->ri_hw; |
struct cgsix_softc *sc=scr->sc; |
struct cgsix_softc *sc = scr->sc; |
int row, col; |
int row, col; |
|
|
row = ri->ri_crow * ri->ri_font->fontheight; |
row = ri->ri_crow * ri->ri_font->fontheight; |
col = ri->ri_ccol * ri->ri_font->fontwidth; |
col = ri->ri_ccol * ri->ri_font->fontwidth; |
cg6_invert(sc, ri->ri_yorigin + row,ri->ri_xorigin + |
cg6_invert(sc, ri->ri_xorigin + col,ri->ri_yorigin + |
col, ri->ri_font->fontwidth, ri->ri_font->fontheight); |
row, ri->ri_font->fontwidth, ri->ri_font->fontheight); |
} |
} |
#endif /* RASTERCONSOLE */ |
#endif /* RASTERCONSOLE */ |
|
|
Line 662 cg6attach(struct cgsix_softc *sc, char * |
|
Line 662 cg6attach(struct cgsix_softc *sc, char * |
|
sc->sc_fb.fb_rinfo.ri_ops.copycols = cg6_ras_copycols; |
sc->sc_fb.fb_rinfo.ri_ops.copycols = cg6_ras_copycols; |
sc->sc_fb.fb_rinfo.ri_ops.erasecols = cg6_ras_erasecols; |
sc->sc_fb.fb_rinfo.ri_ops.erasecols = cg6_ras_erasecols; |
sc->sc_fb.fb_rinfo.ri_ops.eraserows = cg6_ras_eraserows; |
sc->sc_fb.fb_rinfo.ri_ops.eraserows = cg6_ras_eraserows; |
|
#ifdef CG6_BLIT_CURSOR |
sc->sc_fb.fb_rinfo.ri_do_cursor = cg6_ras_do_cursor; |
sc->sc_fb.fb_rinfo.ri_do_cursor = cg6_ras_do_cursor; |
|
#endif |
cg6_ras_init(sc); |
cg6_ras_init(sc); |
} |
} |
#endif |
#endif |
Line 673 cg6attach(struct cgsix_softc *sc, char * |
|
Line 675 cg6attach(struct cgsix_softc *sc, char * |
|
sc->sc_stride = fb->fb_type.fb_width; |
sc->sc_stride = fb->fb_type.fb_width; |
sc->sc_height = fb->fb_type.fb_height; |
sc->sc_height = fb->fb_type.fb_height; |
|
|
|
printf("\n"); |
|
printf("%s: framebuffer size: %d MB\n", sc->sc_dev.dv_xname, |
|
sc->sc_ramsize >> 20); |
|
|
#if NWSDISPLAY |
#if NWSDISPLAY |
/* setup rasops and so on for wsdisplay */ |
/* setup rasops and so on for wsdisplay */ |
wsfont_init(); |
wsfont_init(); |
Line 700 cg6attach(struct cgsix_softc *sc, char * |
|
Line 706 cg6attach(struct cgsix_softc *sc, char * |
|
wsdisplay_cnattach(&cgsix_defaultscreen, ri, 0, 0, defattr); |
wsdisplay_cnattach(&cgsix_defaultscreen, ri, 0, 0, defattr); |
} |
} |
|
|
|
|
aa.console = isconsole; |
aa.console = isconsole; |
aa.scrdata = &cgsix_screenlist; |
aa.scrdata = &cgsix_screenlist; |
aa.accessops = &cgsix_accessops; |
aa.accessops = &cgsix_accessops; |
aa.accesscookie = sc; |
aa.accesscookie = sc; |
printf("\n"); |
|
printf("%s: framebuffer size: %d MB\n", sc->sc_dev.dv_xname, |
|
sc->sc_ramsize >> 20); |
|
config_found(&sc->sc_dev, &aa, wsemuldisplaydevprint); |
config_found(&sc->sc_dev, &aa, wsemuldisplaydevprint); |
#else |
#else |
printf("\n"); |
|
bt_initcmap(&sc->sc_cmap, 256); |
bt_initcmap(&sc->sc_cmap, 256); |
cg6_loadcmap(sc, 0, 256); |
cg6_loadcmap(sc, 0, 256); |
|
|
Line 1676 cg6_invert(struct cgsix_softc *sc, int x |
|
Line 1679 cg6_invert(struct cgsix_softc *sc, int x |
|
fbc->fbc_alu = CG6_ALU_FLIP; |
fbc->fbc_alu = CG6_ALU_FLIP; |
fbc->fbc_arecty = y; |
fbc->fbc_arecty = y; |
fbc->fbc_arectx = x; |
fbc->fbc_arectx = x; |
fbc->fbc_arecty = y+he - 1; |
fbc->fbc_arecty = y + he - 1; |
fbc->fbc_arectx = x+wi - 1; |
fbc->fbc_arectx = x + wi - 1; |
CG6_DRAW_WAIT(fbc); |
CG6_DRAW_WAIT(fbc); |
} |
} |
|
|