-/* $Id: drv_T6963.c,v 1.7 2004/06/06 06:51:59 reinelt Exp $
+/* $Id: drv_T6963.c,v 1.8 2004/06/09 06:40:29 reinelt Exp $
*
* new style driver for T6963-based displays
*
*
*
* $Log: drv_T6963.c,v $
+ * Revision 1.8 2004/06/09 06:40:29 reinelt
+ *
+ * splash screen for T6963 driver
+ *
* Revision 1.7 2004/06/06 06:51:59 reinelt
*
* do not display end splash screen if quiet=1
}
// max address
- m=((row+height)*DCOLS+col+width)/XRES;
+ m=((row+height-1)*DCOLS+col+width)/XRES;
for (i=(row*DCOLS+col)/XRES; i<=m; i++) {
if (Buffer1[i]==Buffer2[i]) continue;
TROWS=DROWS/YRES; // text rows
TCOLS=DCOLS/XRES; // text cols
- Buffer1=malloc(DCOLS*TROWS);
+ Buffer1=malloc(TCOLS*DROWS);
if (Buffer1==NULL) {
error ("%s: framebuffer #1 could not be allocated: malloc() failed", Name);
return -1;
}
- Buffer2=malloc(DCOLS*TROWS);
+ debug ("malloc buffer 2 (%d*%d)=%d", TCOLS, DROWS, TCOLS*DROWS);
+ Buffer2=malloc(TCOLS*DROWS);
if (Buffer2==NULL) {
error ("%s: framebuffer #2 could not be allocated: malloc() failed", Name);
return -1;
memset(Buffer1,0,TCOLS*DROWS*sizeof(*Buffer1));
memset(Buffer2,0,TCOLS*DROWS*sizeof(*Buffer2));
-
if (drv_generic_parport_open(section, Name) != 0) {
error ("%s: could not initialize parallel port!", Name);
if ((ret=drv_generic_graphic_init(section, Name))!=0)
return ret;
+ if (!quiet) {
+ char buffer[40];
+ qprintf(buffer, sizeof(buffer), "%s %dx%d", Name, DCOLS, DROWS);
+ if (drv_generic_graphic_greet (buffer, NULL)) {
+ sleep (3);
+ drv_generic_graphic_clear();
+ }
+ }
+
// register text widget
wc=Widget_Text;
wc.draw=drv_generic_graphic_draw;
// close driver & display
int drv_T6_quit (int quiet) {
-
+
info("%s: shutting down.", Name);
- drv_generic_parport_close();
+
+ drv_generic_graphic_clear();
+
+ if (!quiet) {
+ drv_generic_graphic_greet ("goodbye!", NULL);
+ }
+
drv_generic_graphic_quit();
+ drv_generic_parport_close();
if (Buffer1) {
free (Buffer1);
*
*
* $Log: drv_generic_graphic.c,v $
+ * Revision 1.9 2004/06/09 06:40:29 reinelt
+ *
+ * splash screen for T6963 driver
+ *
* Revision 1.8 2004/06/08 21:46:38 reinelt
*
* splash screen for X11 driver (and generic graphic driver)
int drv_generic_graphic_clear (void)
{
memset(drv_generic_graphic_FB, 0, DCOLS*DROWS*sizeof(*drv_generic_graphic_FB));
- drv_generic_graphic_real_blit (0, 0, DROWS * YRES, DCOLS * XRES);
+ drv_generic_graphic_real_blit (0, 0, DROWS, DCOLS);
return 0;
}