Diff for /np2/wince/scrnmng.cpp between versions 1.4 and 1.7

version 1.4, 2003/12/01 03:38:52 version 1.7, 2004/02/18 02:03:37
Line 11 Line 11
 #endif  #endif
   
   
   #if defined(GX_DLL)
   #pragma comment(lib, "gx.lib")
   #endif
   
   
 typedef struct {  typedef struct {
         BOOL    rotate;          BOOL    rotate;
         VRAMHDL vram;          VRAMHDL vram;
Line 39  static SCRNSTAT scrnstat; Line 44  static SCRNSTAT scrnstat;
 static  SCRNSURF        scrnsurf;  static  SCRNSURF        scrnsurf;
   
 static  BYTE            gx_disable = 1;  static  BYTE            gx_disable = 1;
   extern  GXKeyList       gx_keylist;
   
 static const TCHAR      errmsg[] = STRLITERAL("Error");  static const TCHAR      errmsg[] = STRLITERAL("Error");
   
Line 145  b16d_err: Line 151  b16d_err:
         return;          return;
 }  }
   
 void scrnmng_keybinds(struct GXKeyList *gxkey) {  
   
         short   tmp;  
   
         if (scrnmng.rotate) {  
                 tmp = gxkey->vkLeft;  
                 gxkey->vkLeft = gxkey->vkDown;  
                 gxkey->vkDown = gxkey->vkRight;  
                 gxkey->vkRight = gxkey->vkUp;  
                 gxkey->vkUp = tmp;  
         }  
 }  
   
   
 // ----  // ----
   
Line 257  RGB16 scrnmng_makepal16(RGB32 pal32) { Line 250  RGB16 scrnmng_makepal16(RGB32 pal32) {
         RGB16   ret;          RGB16   ret;
   
         ret = (pal32.p.r & 0xf8) << 8;          ret = (pal32.p.r & 0xf8) << 8;
 #if defined(SIZE_QVGA)  #if defined(SIZE_QVGA) && !defined(SIZE_VGATEST)
         ret += (pal32.p.g & 0xfc) << (3 + 16);          ret += (pal32.p.g & 0xfc) << (3 + 16);
 #else  #else
         ret += (pal32.p.g & 0xfc) << 3;          ret += (pal32.p.g & 0xfc) << 3;
Line 291  const SCRNSURF *scrnmng_surflock(void) { Line 284  const SCRNSURF *scrnmng_surflock(void) {
                 scrnsurf.xalign = 2;                  scrnsurf.xalign = 2;
                 scrnsurf.yalign = scrnmng.vram->yalign;                  scrnsurf.yalign = scrnmng.vram->yalign;
         }          }
   #if !defined(SIZE_VGATEST)
         scrnsurf.width = min(scrnstat.width, 640);          scrnsurf.width = min(scrnstat.width, 640);
         scrnsurf.height = min(scrnstat.height, 400);          scrnsurf.height = min(scrnstat.height, 400);
   #else
           scrnsurf.width = min(scrnstat.width, 320);
           scrnsurf.height = min(scrnstat.height, 200);
   #endif
         scrnsurf.bpp = 16;          scrnsurf.bpp = 16;
         scrnsurf.extend = 0;          scrnsurf.extend = 0;
         return(&scrnsurf);          return(&scrnsurf);
Line 407  BOOL scrnmng_mousepos(LPARAM *lp) { Line 405  BOOL scrnmng_mousepos(LPARAM *lp) {
         return(SUCCESS);          return(SUCCESS);
 }  }
   
   void scrnmng_clear(BOOL logo) {
   
           BMPFILE *bf;
           BYTE    *p;
           BYTE    *q;
           int             y;
           int             x;
           long    yalign;
   
           if (gx_disable) {
                   return;
           }
           bf = NULL;
           if (logo) {
                   bf = (BMPFILE *)bmpdata_solvedata(nekop2_bmp);
           }
           p = (BYTE *)GXBeginDraw();
           q = p;
           y = gx_dp.cyHeight;
           yalign = gx_dp.cbyPitch - (gx_dp.cbxPitch * gx_dp.cxWidth);
           do {
                   x = gx_dp.cxWidth;
                   do {
                           *(UINT16 *)q = 0;
                           q += gx_dp.cbxPitch;
                   } while(--x);
                   q += yalign;
           } while(--y);
           bmp16draw(bf, p + scrnmng.start, scrnmng.width, scrnmng.height,
                                                                                           scrnmng.xalign, scrnmng.yalign);
           GXEndDraw();
           if (bf) {
                   _MFREE(bf);
           }
   }
   
   void scrnmng_keybinds(void) {
   
           short   tmp;
   
           if (scrnmng.rotate) {
                   tmp = gx_keylist.vkLeft;
                   gx_keylist.vkLeft = gx_keylist.vkDown;
                   gx_keylist.vkDown = gx_keylist.vkRight;
                   gx_keylist.vkRight = gx_keylist.vkUp;
                   gx_keylist.vkUp = tmp;
           }
   }
   
   
 // ---- for menubase  // ---- for menubase
   
Line 483  const BYTE  *q; Line 530  const BYTE  *q;
         GXEndDraw();          GXEndDraw();
 }  }
   
   
 // ---- clear  
   
 void scrnmng_clear(BOOL logo) {  
   
         BMPFILE *bf;  
         BYTE    *p;  
         BYTE    *q;  
         int             y;  
         int             x;  
         long    yalign;  
   
         if (gx_disable) {  
                 return;  
         }  
         bf = NULL;  
         if (logo) {  
                 bf = (BMPFILE *)bmpdata_solvedata(nekop2_bmp);  
         }  
         p = (BYTE *)GXBeginDraw();  
         q = p;  
         y = gx_dp.cyHeight;  
         yalign = gx_dp.cbyPitch - (gx_dp.cbxPitch * gx_dp.cxWidth);  
         do {  
                 x = gx_dp.cxWidth;  
                 do {  
                         *(UINT16 *)q = 0;  
                         q += gx_dp.cbxPitch;  
                 } while(--x);  
                 q += yalign;  
         } while(--y);  
         bmp16draw(bf, p + scrnmng.start, scrnmng.width, scrnmng.height,  
                                                                                         scrnmng.xalign, scrnmng.yalign);  
         GXEndDraw();  
         if (bf) {  
                 _MFREE(bf);  
         }  
 }  
   

Removed from v.1.4  
changed lines
  Added in v.1.7


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