Diff for /np2/x11/gtk2/gtk_screen.c between versions 1.2 and 1.3

version 1.2, 2004/07/15 14:24:33 version 1.3, 2004/07/27 17:07:50
Line 255  scrnmng_create(UINT8 mode) Line 255  scrnmng_create(UINT8 mode)
         GdkVisual *visual;          GdkVisual *visual;
         RECT_T rect;          RECT_T rect;
         int height;          int height;
         int bitcolor;  
         UINT lpitch;          UINT lpitch;
         UINT8 bytes_per_pixel;          UINT8 bytes_per_pixel;
           pixmap_format_t fmt;
           int padding;
   
         while (drawmng.drawing)          while (drawmng.drawing)
                 gtk_main_iteration_do(FALSE);                  gtk_main_iteration_do(FALSE);
Line 274  scrnmng_create(UINT8 mode) Line 275  scrnmng_create(UINT8 mode)
                 scrnmng.flag = SCRNFLAG_HAVEEXTEND;                  scrnmng.flag = SCRNFLAG_HAVEEXTEND;
   
                 visual = gtk_widget_get_visual(drawarea);                  visual = gtk_widget_get_visual(drawarea);
                 bitcolor = gtkdrawmng_getbpp(drawarea, main_window);                  if (!gtkdrawmng_getformat(drawarea, main_window, &fmt))
                 if (bitcolor == 0) {  
                         return FAILURE;                          return FAILURE;
                 } else if (bitcolor == 16) {  
                   switch (fmt.bits_per_pixel) {
                   case 16:
                         drawmng_make16mask(&drawmng.pal16mask, visual->blue_mask, visual->red_mask, visual->green_mask);                          drawmng_make16mask(&drawmng.pal16mask, visual->blue_mask, visual->red_mask, visual->green_mask);
                 } else if (bitcolor == 8) {                          break;
   
                   case 8:
                         palette_init();                          palette_init();
                           break;
                 }                  }
                 drawmng.extend = 1;                  drawmng.extend = 1;
                 bytes_per_pixel = bitcolor >> 3;                  bytes_per_pixel = (UINT8)(fmt.bits_per_pixel / 8);
   
                 if (!(mode & SCRNMODE_ROTATE)) {                  if (!(mode & SCRNMODE_ROTATE)) {
                         rect.right = 641;                          rect.right = 641;
                         rect.bottom = 480;                          rect.bottom = 480;
                         lpitch = rect.right * bytes_per_pixel;  
                         if (lpitch % 4) {  
                                 rect.right += (lpitch % 4) / bytes_per_pixel;  
                                 lpitch = rect.right * bytes_per_pixel;  
                         }  
                 } else {                  } else {
                         rect.right = 480;                          rect.right = 480;
                         rect.bottom = 641;                          rect.bottom = 641;
                   }
                   lpitch = rect.right * bytes_per_pixel;
                   padding = lpitch % (fmt.scanline_pad / 8);
                   if (padding > 0) {
                           rect.right += padding / bytes_per_pixel;
                         lpitch = rect.right * bytes_per_pixel;                          lpitch = rect.right * bytes_per_pixel;
                 }                  }
                 height = 480;                  height = 480;
Line 316  scrnmng_create(UINT8 mode) Line 321  scrnmng_create(UINT8 mode)
                 gdk_draw_rectangle(drawmng.backsurf, drawarea->style->black_gc,                  gdk_draw_rectangle(drawmng.backsurf, drawarea->style->black_gc,
                     TRUE, 0, 0, rect.right, rect.bottom);                      TRUE, 0, 0, rect.right, rect.bottom);
         }          }
         scrnmng.bpp = (UINT8)bitcolor;          scrnmng.bpp = (UINT8)fmt.bits_per_pixel;
         drawmng.lpitch = lpitch;          drawmng.lpitch = lpitch;
         scrnsurf.ss.bpp = bitcolor;          scrnsurf.ss.bpp = fmt.bits_per_pixel;
         drawmng.scrnmode = mode;          drawmng.scrnmode = mode;
         drawmng.width = 640;          drawmng.width = 640;
         drawmng.height = height;          drawmng.height = height;

Removed from v.1.2  
changed lines
  Added in v.1.3


RetroPC.NET-CVS <cvs@retropc.net>