亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? lcdslin.c

?? uc-gui.rar
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
/* Remap ...A0, ...A1 -> ...CMD, ...DATA */#define LCD_READCMD0    LCD_READ_A1#define LCD_READDATA0   LCD_READ_A0#define LCD_WRITECMD0   LCD_WRITE_A1#define LCD_WRITEDATA0  LCD_WRITE_A0#ifndef LCD_WAIT  #define LCD_WAIT() while ((LCD_READ_A1()&3)!=3) /* Do not use LCD_READCMD0 to fix NC30-problem (JE) */#endif#define LCD_WRITECMD(cmd)      { LCD_WAIT(); LCD_WRITECMD0(cmd);  }#define LCD_WRITEDATA(data)    { LCD_WAIT(); LCD_WRITEDATA0(data);}/* Access Macros */#define LCD_READDATA()        \  LCD_WRITECMD(0xC5);         \  return LCD_DATA0;#define LCD_SETADR(Adr)       \  LCD_WRITEDATA((U8)Adr);     \  LCD_WRITEDATA((U8)(Adr>>8));\  LCD_WRITECMD(0x24);         \  LCD_Adr=Adr;#define LCD_WRITE1(Byte)      \  LCD_WRITEDATA(Byte);        \  LCD_WRITECMD(0xC0);         \  LCD_Adr++;/* LCD_L0_ReInit */#define LCD_RAMSIZE (0x2000)#define LCD_GSTART  (0x0)#define LCD_XSIZEB  ((LCD_XSIZE_PHYS+7)>>3)#define LCD_TSTART  (LCD_RAMSIZE-(LCD_XSIZEB)-(LCD_YSIZE_PHYS>>3))void LCD_L0_ReInit(void) {  LCD_WRITECMD(0x81);           /* SetModeXor */  LCD_WRITEDATA((U8)LCD_TSTART);/* SetTextAdr */  LCD_WRITEDATA((U8)(LCD_TSTART>>8));  LCD_WRITECMD(0x40);  LCD_WRITEDATA(1);             /* SetTextArea */  LCD_WRITEDATA(1>>8);  LCD_WRITECMD(0x41);  LCD_WRITECMD(0x9C);           /* SetTextGraph */  LCD_WRITEDATA(LCD_GSTART);    /* SetGraphAdr */  LCD_WRITEDATA(LCD_GSTART>>8);  LCD_WRITECMD(0x42);  LCD_WRITEDATA(LCD_XSIZEB);    /* SetGraphArea */  LCD_WRITEDATA(LCD_XSIZEB>>8);  LCD_WRITECMD(0x43);}/* LCD_FirstInit */void LCD_FirstInit(void) {  int i;  LCD_INIT_CONTROLLER();  LCD_SETADR(0);  for (i=0; i<100; i++) {    LCD_WRITE1(0xff);  }  LCD_SETADR(0);  for (i=0;i<LCD_RAMSIZE;i++) {    LCD_WRITE1(0x0);  }}#endif /* T6963 *//*        *********************************************************        *                                                       *        *       Write 1 byte and manage cache                   *        *                                                       *        **********************************************************/static void LCD_Write(int Adr, U8 Byte) {  if (Cache[Adr]!=Byte) {    Cache[Adr]=Byte;    if (LCD_Adr!=Adr) {      LCD_SETADR(Adr);    }    LCD_WRITE1(Byte);  }}#define LCD_WRITE(Adr,Byte) LCD_Write(Adr,Byte);/*        *********************************************************        *                                                       *        *       Internal set pixel routines                     *        *                                                       *        **********************************************************/static void _SetPixel(int x, int y, LCD_PIXELINDEX c) {  U8 Mask=1<<(7-(x&7));  int Adr=XY2OFF(x,y);  U8 CacheByte=Cache[Adr];  if (c)    CacheByte|= Mask;  else    CacheByte&=~Mask;  LCD_WRITE(Adr,CacheByte)}static PIXELCOLOR _GetPixel(int x, int y) {  int Adr=XY2OFF(x,y);  U8 Mask=1<<(7-(x&7));  return (Cache[Adr]&Mask) ? 1 : 0;}static void XorPixel   (int x, int y) {  LCD_PIXELINDEX Index = _GetPixel(x,y);  _SetPixel(x,y, LCD_NUM_COLORS-1-Index);}/*        *********************************************************        *                                                       *        *       LCD_L0_SetPixelIndex                            *        *                                                       *        *********************************************************Purpose:  This routine is called by emWin. It writes 1 pixel into the          display.*/void LCD_L0_SetPixelIndex(int x, int y, int ColorIndex) {  SETPIXEL(x, y, ColorIndex);}/*        *********************************************************        *                                                       *        *       LCD_L0_XorPixel                                 *        *                                                       *        *********************************************************Purpose:  This routine is called by emWin. It writes 1 pixel into the          display.*/void LCD_L0_XorPixel(int x, int y) {  XORPIXEL(x, y);}/*        *********************************************************        *                                                       *        *          LCD_L0_DrawHLine optimized                   *        *                                                       *        **********************************************************/#if (LCD_OPTIMIZE)               \      && (!LCD_SWAP_XY)          \      && (!LCD_MIRROR_X)         \      && (!LCD_MIRROR_Y)         \      && (!LCD_SUPPORT_COMTRANS) \      && (!LCD_SUPPORT_SEGTRANS)void LCD_L0_DrawHLine  (int x0, int y,  int x1) {  register int Off = XY2OFF(x0,y);  int iByte = x0>>3;  int Byte1 = x1>>3;  U8 Mask =    0xff   >> (x0&7);  U8 EndMask = 0xff80 >> (x1&7);  U8 Data;  if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {    for (; iByte<Byte1; iByte++) {      Data = Cache[Off];      Data ^= Mask;       LCD_WRITE(Off++,Data);      Mask = 0xff;    }    Mask &= EndMask;    Data = Cache[Off];    Data ^= Mask;     LCD_WRITE(Off++,Data);  } else {                                  /* Clear pixels in line */    int NumBytes = Byte1-iByte;    if (COLOR==0) {      if (NumBytes) {        Data = Cache[Off] & (~Mask);        LCD_WRITE(Off++,Data);        NumBytes--;      /* Fill bytes in 2 loops for speed reasons ... */        for (; NumBytes>=4; NumBytes-=4) {          LCD_WRITE(Off++,0);          LCD_WRITE(Off++,0);          LCD_WRITE(Off++,0);          LCD_WRITE(Off++,0);        }        for (; NumBytes; NumBytes--) {          LCD_WRITE(Off++,0);        }        Mask = 0xff;      }      Mask &= EndMask;      Data = Cache[Off];      Data &= ~Mask;       LCD_WRITE(Off++,Data);    } else {                                  /* Set pixels in line */      if (NumBytes) {        Data = Cache[Off] | Mask;         LCD_WRITE(Off++,Data);        NumBytes--;      /* Fill bytes in 2 loops for speed reasons ... */        for (; NumBytes>=4; NumBytes-=4) {          LCD_WRITE(Off++,0xff);          LCD_WRITE(Off++,0xff);          LCD_WRITE(Off++,0xff);          LCD_WRITE(Off++,0xff);        }        for (; NumBytes; NumBytes--) {          LCD_WRITE(Off++,0xff);        }        Mask = 0xff;      }      Mask &= EndMask;      Data = Cache[Off] | Mask;       LCD_WRITE(Off++,Data);    }  }}#else/*        *********************************************************        *                                                       *        *          LCD_L0_DrawHLine unoptimized                 *        *                                                       *        **********************************************************/void LCD_L0_DrawHLine  (int x0, int y,  int x1) {  if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {    while (x0 <= x1) {      XORPIXEL(x0, y);      x0++;    }  } else {    while (x0 <= x1) {      SETPIXEL(x0, y, COLOR);      x0++;    }  }}#endif/*        *********************************************************        *                                                       *        *          LCD_L0_DrawVLine                             *        *                                                       *        **********************************************************/void LCD_L0_DrawVLine  (int x, int y0,  int y1) {  if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {    while (y0 <= y1) {      XORPIXEL(x, y0);      y0++;    }  } else {    while (y0 <= y1) {      SETPIXEL(x, y0, COLOR);      y0++;    }  }}/*        *********************************************************        *                                                       *        *          LCD_FillRect, unoptimized                    *        *                                                       *        **********************************************************/void LCD_L0_FillRect(int x0, int y0, int x1, int y1) {  for (; y0 <= y1; y0++) {    LCD_L0_DrawHLine(x0,y0, x1);  }}/*        *********************************************************        *                                                       *        *    Support for dynamic inversion of entire LCD        *        *                                                       *        **********************************************************/#if LCD_REVERSEMODE_SUPPORTvoid LCD_SetNormalDispMode    (void) {}void LCD_SetReverseDispMode   (void) {}#endif/*        *********************************************************        *                                                       *        *          Draw Bitmap 1 BPP, optimized                 *        *                                                       *        **********************************************************/#if (LCD_OPTIMIZE)               \      && (!LCD_SWAP_XY)          \      && (!LCD_MIRROR_X)         \      && (!LCD_MIRROR_Y)         \      && (!LCD_SUPPORT_COMTRANS) \      && (!LCD_SUPPORT_SEGTRANS)static void  DrawBitLine1BPP(int x, int y, U8 const*p, int Diff, int xsize, const LCD_PIXELINDEX*pTrans) {  LCD_PIXELINDEX Index0 = *(pTrans+0);  LCD_PIXELINDEX Index1 = *(pTrans+1);  x+=Diff;  if ((Index0==Index1) & (!(GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS|LCD_DRAWMODE_XOR)))) {    LCD_PIXELINDEX ColorIndexOld= COLOR;    COLOR = Index0;    LCD_L0_DrawHLine(x,y,x+xsize-1);    COLOR = ColorIndexOld;    return;  }  {    int Adr=XY2OFF(x,y);    int x1 = x+xsize-1;    U8 Mask    = 0xff   >> (x &7);    U8 EndMask = 0xff80 >> (x1&7);    U8 CacheByte;    U16 PixelData;    int NumBytes = (x1>>3) - (x>>3);    if (NumBytes) {      CacheByte=Cache[Adr];      PixelData   = (*(p+1) | ((*p)<<8));      PixelData >>= (8+(x&7)-(Diff&7));      switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS|LCD_DRAWMODE_XOR)) {      case 0:        if (!COLOR)          PixelData ^= 255;        CacheByte = (CacheByte&~Mask)|(PixelData&Mask);        break;      case LCD_DRAWMODE_TRANS:        if (COLOR)          CacheByte |= (PixelData&Mask);        else          CacheByte &= ~(PixelData&Mask);        break;      case LCD_DRAWMODE_XOR:        CacheByte ^= (PixelData&Mask);        break;      }      LCD_WRITE(Adr++,CacheByte);      {         int DiffOld = Diff;        Diff+= 8-(x&7);         if ((DiffOld&~7) != (Diff&~7))          p++;      }      x=0;      NumBytes--;      for (; NumBytes; NumBytes--) {        PixelData   = (*(p+1) | ((*p)<<8));        PixelData >>= (8-(Diff&7));        p++;        switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS|LCD_DRAWMODE_XOR)) {        case 0:          if (!COLOR)            PixelData ^= 255;          CacheByte=PixelData&255;          break;        case LCD_DRAWMODE_TRANS:          CacheByte=Cache[Adr];          if (COLOR)            CacheByte |= PixelData;          else            CacheByte &= ~PixelData;          break;        case LCD_DRAWMODE_XOR:          CacheByte=Cache[Adr] ^ PixelData;          break;        }        LCD_WRITE(Adr++,CacheByte);      }      Mask = 0xff;    }    PixelData   = (*(p+1) | ((*p)<<8));    PixelData >>= (8+(x&7)-(Diff&7));    Mask &= EndMask;    CacheByte = Cache[Adr];    switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS|LCD_DRAWMODE_XOR)) {    case 0:      if (!COLOR)        PixelData ^= 255;      CacheByte = (CacheByte&~Mask)|(PixelData&Mask);      break;    case LCD_DRAWMODE_TRANS:      if (COLOR)        CacheByte |= (PixelData&Mask);      else        CacheByte &= ~(PixelData&Mask);      break;    case LCD_DRAWMODE_XOR:      CacheByte ^= (PixelData&Mask);      break;    }    LCD_WRITE(Adr++,CacheByte);  }}#else/*        *********************************************************        *                                                       *        *          Draw Bitmap 1 BPP, no optimization           *        *                                                       *        **********************************************************/static void  DrawBitLine1BPP(int x, int y, U8 const*p, int Diff, int xsize, const LCD_PIXELINDEX*pTrans) {  PIXELCOLOR pixels;  PIXELCOLOR Index0 = *(pTrans+0);  PIXELCOLOR Index1 = *(pTrans+1);/*        Jump to right entry point*/  pixels = *p;  switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS|LCD_DRAWMODE_XOR)) {  case 0:    switch (Diff&7) {    case 0:         goto WriteBit0;    case 1:         goto WriteBit1;    case 2:      goto WriteBit2;    case 3:      goto WriteBit3;    case 4:      goto WriteBit4;    case 5:         goto WriteBit5;    case 6:         goto WriteBit6;    case 7:         goto WriteBit7;    }    break;  case LCD_DRAWMODE_TRANS:    switch (Diff&7) {    case 0:      goto WriteTBit0;    case 1:      goto WriteTBit1;    case 2:      goto WriteTBit2;    case 3:      goto WriteTBit3;    case 4:      goto WriteTBit4;    case 5:         goto WriteTBit5;    case 6:         goto WriteTBit6;    case 7:         goto WriteTBit7;    }    break;  case LCD_DRAWMODE_XOR:    switch (Diff&7) {    case 0:         goto WriteXBit0;    case 1:         goto WriteXBit1;    case 2:      goto WriteXBit2;    case 3:      goto WriteXBit3;    case 4:      goto WriteXBit4;    case 5:         goto WriteXBit5;    case 6:         goto WriteXBit6;    case 7:         goto WriteXBit7;    }  }/*

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人综合婷婷国产精品久久免费| 国产激情一区二区三区四区| 欧美成人福利视频| 色婷婷综合在线| 国产精品一区二区不卡| 偷拍一区二区三区四区| 亚洲欧洲日韩一区二区三区| 欧美一级欧美三级| 91福利资源站| 99精品视频在线观看免费| 激情深爱一区二区| 午夜精品免费在线观看| ...xxx性欧美| 国产精品全国免费观看高清| 日韩你懂的在线观看| 欧美日产国产精品| 91成人在线免费观看| 成人av电影免费观看| 国产尤物一区二区在线 | 久久成人免费网站| 亚洲国产一区二区在线播放| 亚洲特黄一级片| 国产精品色在线| 久久久久久久综合色一本| 欧美一二区视频| 欧美一区二区在线播放| 欧美少妇性性性| 在线视频欧美精品| 99精品偷自拍| 97久久精品人人做人人爽50路| 国产乱色国产精品免费视频| 蜜桃视频一区二区三区在线观看| 一区二区视频免费在线观看| 亚洲少妇中出一区| 亚洲免费观看视频| 亚洲日本在线观看| 亚洲精选视频免费看| 一区二区三区四区亚洲| 亚洲精品你懂的| 一区二区三区久久久| 亚洲电影中文字幕在线观看| 亚洲国产欧美另类丝袜| 日韩一区精品视频| 男女男精品网站| 精品一区二区三区在线播放视频| 久久成人av少妇免费| 国产老妇另类xxxxx| 盗摄精品av一区二区三区| 成人国产精品视频| 91精彩视频在线| 欧美久久久一区| 欧美成人精精品一区二区频| 久久久久亚洲综合| 国产精品私人影院| 亚洲亚洲精品在线观看| 奇米四色…亚洲| 国产麻豆日韩欧美久久| 97久久超碰国产精品| 欧美在线一二三四区| 欧美日韩国产色站一区二区三区| 91精品国产品国语在线不卡| 久久你懂得1024| 亚洲免费观看高清| 日韩国产欧美一区二区三区| 国产乱码一区二区三区| 99re成人在线| 91精品国产乱码久久蜜臀| 久久人人97超碰com| 亚洲视频香蕉人妖| 偷拍一区二区三区四区| 国产精品亚洲综合一区在线观看| 99re成人精品视频| 欧美一级艳片视频免费观看| 国产精品色在线| 日韩黄色一级片| 粉嫩绯色av一区二区在线观看| 91成人国产精品| 日韩免费电影网站| 亚洲女子a中天字幕| 久久精品噜噜噜成人av农村| va亚洲va日韩不卡在线观看| 欧美一区二区三区在线电影| 亚洲国产精品成人久久综合一区| 亚洲伊人色欲综合网| 国产麻豆91精品| 欧美视频在线一区| 国产偷v国产偷v亚洲高清| 亚洲电影一区二区三区| 国产福利一区二区| 欧美精品一二三四| 国产精品―色哟哟| 青椒成人免费视频| 91国产精品成人| 国产欧美一区二区精品性| 日韩有码一区二区三区| 91麻豆免费看| 国产日产欧美一区| 美女尤物国产一区| 欧美吞精做爰啪啪高潮| 久久综合久久综合久久| 日韩中文欧美在线| 欧美性大战久久| 中文字幕电影一区| 久久97超碰色| 欧美三区在线观看| 亚洲欧美日韩精品久久久久| 国产一区二区三区四区五区入口| 欧美精品1区2区| 伊人开心综合网| 成人免费看片app下载| 精品国产髙清在线看国产毛片 | 日韩专区中文字幕一区二区| 99精品国产91久久久久久| 国产欧美日韩一区二区三区在线观看| 婷婷丁香激情综合| 欧日韩精品视频| 亚洲日本在线观看| bt欧美亚洲午夜电影天堂| 久久亚洲一区二区三区明星换脸| 日韩激情一区二区| 欧美高清精品3d| 五月激情六月综合| 欧美性欧美巨大黑白大战| 亚洲精品国久久99热| 91看片淫黄大片一级在线观看| 国产视频一区二区三区在线观看| 国产主播一区二区| 久久综合九色综合久久久精品综合| 亚洲成人777| 欧美日韩一级二级| 日日夜夜免费精品| 欧美精品第1页| 奇米色一区二区三区四区| 欧美一卡2卡三卡4卡5免费| 午夜激情久久久| 91精品国产乱码| 久久99精品久久久| 国产午夜精品在线观看| 国产一区欧美一区| 国产欧美一区二区三区在线看蜜臀| 国内成人免费视频| 国产亚洲一区二区三区| 成人高清在线视频| 亚洲色图欧美偷拍| 91福利国产精品| 日一区二区三区| 精品久久久影院| 粉嫩欧美一区二区三区高清影视| 欧美高清在线视频| 色婷婷av一区二区三区之一色屋| 亚洲黄色尤物视频| 91精品免费观看| 国产自产高清不卡| 国产精品久久久久久久久晋中| 色综合久久综合中文综合网| 一区二区三区在线观看动漫| 欧美日韩高清一区二区三区| 久久超碰97中文字幕| 国产精品伦理在线| 欧美写真视频网站| 久久国产精品一区二区| 久久精品夜色噜噜亚洲a∨| 色哟哟在线观看一区二区三区| 日韩中文字幕一区二区三区| 精品久久久久一区| 99精品国产视频| 日本不卡123| 中文字幕一区二区三| 欧美男男青年gay1069videost| 激情图片小说一区| 亚洲精品视频免费观看| 日韩欧美国产电影| 97se亚洲国产综合自在线观| 视频一区免费在线观看| 国产午夜精品久久久久久久 | 福利一区在线观看| 亚洲精品成人天堂一二三| 欧美一级国产精品| 91视频在线观看| 久久99精品久久久| 一区二区三区蜜桃| 国产亚洲欧美一区在线观看| 在线免费观看视频一区| 国产精品自拍毛片| 亚洲第一搞黄网站| 国产精品卡一卡二卡三| 日韩午夜激情免费电影| 99久久精品一区| 激情欧美日韩一区二区| 亚洲一区二区三区四区在线免费观看| 欧美精品一区二区三区四区 | 麻豆一区二区99久久久久| 亚洲婷婷综合久久一本伊一区| 日韩精品一区二区三区在线观看 | 亚洲欧洲综合另类在线| 日韩一区二区三区四区| 91久久香蕉国产日韩欧美9色| 国产成人在线免费| 久久精品国产99| 亚洲成人先锋电影|