Diff for /xmil/vram/scrndraw.c between versions 1.9 and 1.12

version 1.9, 2004/08/17 16:52:46 version 1.12, 2005/02/04 06:42:12
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "scrnmng.h"  #include        "scrnmng.h"
 #include        "sysmng.h"  
 #include        "pccore.h"  #include        "pccore.h"
 #include        "iocore.h"  #include        "iocore.h"
 #include        "scrndraw.h"  #include        "scrndraw.h"
Line 9 Line 8
 #include        "makescrn.h"  #include        "makescrn.h"
   
   
         SCRN    scrn;  
         UINT8   renewalline[SURFACE_HEIGHT+4];          UINT8   renewalline[SURFACE_HEIGHT+4];
         UINT8   screenmap[SURFACE_SIZE];          UINT8   screenmap[SURFACE_SIZE];
   
Line 32  void scrndraw_initialize(void) {     //  Line 30  void scrndraw_initialize(void) {     // 
         ZeroMemory(xmil_pal32, sizeof(xmil_pal32));          ZeroMemory(xmil_pal32, sizeof(xmil_pal32));
         xmil_palettes = 0;          xmil_palettes = 0;
   
         scrn.widthmode = SCRNWIDTHMODE_WIDTH40;  
   
         updateallline(0x03030303);                      // updateallline(0x01010101);          updateallline(0x03030303);                      // updateallline(0x01010101);
         scrnmng_allflash();          scrnmng_allflash();
         sysmng_scrnwidth(scrn.widthmode);  
 }  
   
 void scrndraw_changewidth(REG8 widthmode) {  
   
         if (scrn.widthmode != widthmode) {  
                 scrn.widthmode = widthmode;  
                 sysmng_scrnwidth(widthmode);  
                 updateallline(0x01010101);                              // fillrenewalline(0x03030303)  
         }  
 }  }
   
 void scrndraw_changepalette(void) {  void scrndraw_changepalette(void) {
Line 53  void scrndraw_changepalette(void) { Line 39  void scrndraw_changepalette(void) {
 #if defined(SUPPORT_8BPP)  #if defined(SUPPORT_8BPP)
         if (scrnmng_getbpp() == 8) {          if (scrnmng_getbpp() == 8) {
                 scrnmng_palchanged();                  scrnmng_palchanged();
                 updateallline(0x01010101);                              // fillrenewalline(0x02020202)  
                 return;                  return;
         }          }
 #endif  #endif
Line 115  static REG8 rasterdraw(SDRAWFN sdrawfn,  Line 100  static REG8 rasterdraw(SDRAWFN sdrawfn, 
                 for (y=0; y<nextupdate; y+=2) {                  for (y=0; y<nextupdate; y+=2) {
                         *(UINT16 *)(renewalline + y) |= 0x0101;                          *(UINT16 *)(renewalline + y) |= 0x0101;
                 }                  }
                 return(1);                  return(SCRNUPD_FLASH);
         }          }
         else {          else {
                 return(0);                  return(0);
Line 148  const SDRAWFN *sdrawfn; Line 133  const SDRAWFN *sdrawfn;
         if (sdrawfn == NULL) {          if (sdrawfn == NULL) {
                 goto sddr_exit2;                  goto sddr_exit2;
         }          }
         switch(scrn.widthmode) {          sdrawfn += makescrn.drawmode;
                 case SCRNWIDTHMODE_WIDTH80:  
                 default:  
                         break;  
   
                 case SCRNWIDTHMODE_WIDTH40:  
                         sdrawfn += 1;  
                         break;  
   
                 case SCRNWIDTHMODE_4096:  
                         sdrawfn += 2;  
                         break;  
         }  
         fn = *sdrawfn;          fn = *sdrawfn;
         if (fn == NULL) {          if (fn == NULL) {
                 goto sddr_exit2;                  goto sddr_exit2;
Line 175  const SDRAWFN *sdrawfn; Line 148  const SDRAWFN *sdrawfn;
   
         sdraw.src = screenmap;          sdraw.src = screenmap;
         sdraw.dst = surf->ptr;          sdraw.dst = surf->ptr;
   #if defined(SIZE_QVGA)
           sdraw.width = surf->width >> 1;
   #else
         sdraw.width = surf->width;          sdraw.width = surf->width;
         sdraw.xbytes = surf->xalign * surf->width;  #endif
           sdraw.xbytes = surf->xalign * sdraw.width;
         sdraw.y = 0;          sdraw.y = 0;
         sdraw.xalign = surf->xalign;          sdraw.xalign = surf->xalign;
         sdraw.yalign = surf->yalign;          sdraw.yalign = surf->yalign;
 #if !defined(SUPPORT_PALEVENT)  #if !defined(SUPPORT_PALEVENT)
         (*fn)(&sdraw, 400);          (*fn)(&sdraw, 400);
 #else  #else
         if (((crtc.e.dispmode & SCRN64_MASK) != SCRN64_INVALID) ||          if ((crtc.e.dispmode & SCRN64_ENABLE) ||
                 (palevent.events >= SUPPORT_PALEVENT)) {                  (palevent.events >= SUPPORT_PALEVENT)) {
                 (*fn)(&sdraw, 400);                  (*fn)(&sdraw, 400);
         }          }

Removed from v.1.9  
changed lines
  Added in v.1.12


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