📄 sandriverlcd.c
字号:
// file: SanDriverLCD.h
// by : Sanicle
// ver : 2005.04.22
// from: http://3mn.net
#include <string.h>
#include "2410lib.h"
#include "def.h"
//#include "option.h"
//#include "24xslib.h"
#include "SanOSlib.h"
#include "Drivers\lcdlib.h"
int surfaceFlag; //Current surface flag
int tmpi1=0;
int tmpi2=0;
U32 tmpBuffer1[512];
U32 tmpBuffer2[512];
void _CopyDot8Bit_640480(U32 xt,U32 yt,U32 xs,U32 ys)
{
//if(x<SCR_XSIZE_TFT_640480 && y<SCR_YSIZE_TFT_640480)
frameBuffer8BitTft640480[(yt)][(xt)/4]=frameBuffer8BitTft640480[(ys)][(xs)/4];
}
void _SaveDot8Bit_640480(U32 x,U32 y)
{
if(x<SCR_XSIZE_TFT_640480 && y<SCR_YSIZE_TFT_640480)
{
tmpBuffer1[tmpi1]=frameBuffer8BitTft640480[(y)][(x)/4];
tmpi1++;
}
}
void _RecoverDot8Bit_640480(U32 x,U32 y)
{
if(x<SCR_XSIZE_TFT_640480 && y<SCR_YSIZE_TFT_640480)
{
frameBuffer8BitTft640480[(y)][(x)/4]=tmpBuffer1[tmpi1];
tmpi1++;
}
}
void _SaveDot8Bit_640480_2(U32 x,U32 y)
{
if(x<SCR_XSIZE_TFT_640480 && y<SCR_YSIZE_TFT_640480)
{
tmpBuffer2[tmpi2]=frameBuffer8BitTft640480[(y)][(x)/4];
tmpi2++;
}
}
void _RecoverDot8Bit_640480_2(U32 x,U32 y)
{
if(x<SCR_XSIZE_TFT_640480 && y<SCR_YSIZE_TFT_640480)
{
frameBuffer8BitTft640480[(y)][(x)/4]=tmpBuffer2[tmpi2];
tmpi2++;
}
}
void _Copy8Bit_640480(U32 x0,U32 y0,U32 x1,U32 y1,U32 dx,U32 dy)
{
int ci,cj;
for(ci=y0;ci<=y1;ci++)
{
for(cj=x0;cj<=x1;cj++)
_CopyDot8Bit_640480(cj+dx,ci+dy,cj,ci);
}
}
void _Save8Bit_640480(U32 x0,U32 y0,U32 x1,U32 y1)
{
int ci,cj;
tmpi1=0;
for(ci=y0;ci<=y1;ci++)
{
for(cj=x0;cj<=x1;cj++)
_SaveDot8Bit_640480(cj,ci);
}
}
void _Recover8Bit_640480(U32 x0,U32 y0,U32 x1,U32 y1)
{
int ci,cj;
tmpi1=0;
for(ci=y0;ci<=y1;ci++)
{
for(cj=x0;cj<=x1;cj++)
_RecoverDot8Bit_640480(cj,ci);
}
}
void _Save8Bit_640480_2(U32 x0,U32 y0,U32 x1,U32 y1)
{
int ci,cj;
tmpi2=0;
for(ci=y0;ci<=y1;ci++)
{
for(cj=x0;cj<=x1;cj++)
_SaveDot8Bit_640480_2(cj,ci);
}
}
void _Recover8Bit_640480_2(U32 x0,U32 y0,U32 x1,U32 y1)
{
int ci,cj;
tmpi2=0;
for(ci=y0;ci<=y1;ci++)
{
for(cj=x0;cj<=x1;cj++)
_RecoverDot8Bit_640480_2(cj,ci);
}
}
void _Flip8Bit_640480()
{
if(surfaceFlag==1)
{
Lcd_MoveViewPort(0,0,MODE_TFT_8BIT_640480);
surfaceFlag=0;
}
else //if(surfaceFlag==0)
{
Lcd_MoveViewPort(0,480,MODE_TFT_8BIT_640480);
surfaceFlag=1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -