?? loadinram.c
字號:
#include "config.h"
extern struct usart xdata cominfor[MAXCOMBUF];
extern xdata uchar all_plan; //總幀數(shù)
xdata uchar word; //這個用于向主調函數(shù)返回存儲器中是否有可顯示的內容
uchar data_load(struct windows xdata *pt, uchar type) //type=0是初始化調用,type=1是運行調用
{
uint copysize;
uchar xdata *ptd; //目的地址指針
uchar xdata *pts; //數(shù)據(jù)點指針
#ifdef USEDTW
#ifdef USEDOLDTW
uchar xdata *ptswapd; //目的地址指針
uchar xdata *ptswaps; //數(shù)據(jù)點指針
#endif
#endif
if(word != 0xaa) return 0;
pt->plan_flash = all_plan; //接收到的總幕數(shù)
if(type != 0) //這里是程序運行中要求加載數(shù)據(jù)
{
if(pt->plan_flash <= MAXPLAN)
{
pt->plan = 0;
return 1;
}
}
if(pt->plan_point == pt->plan_flash) pt->plan_point=0;
pt->plan_size=0;
while(pt->plan_point < pt->plan_flash)
{
pts = (uchar *)&cominfor[pt->plan_point];
ptd = &pt->printbuf[pt->plan_size][0];
for(copysize=0; copysize<(HANGDIP*(LIEDIP/8)); copysize++)
{
*ptd++ = *pts++;
}
#ifdef USEDTW
#ifdef USEDOLDTW
ptswaps = &pt->printbuf[pt->plan_size][0];
ptswapd = &pt->printbuf[pt->plan_size+1][0];
swapdata(ptswaps, ptswapd); //交換高低位
#endif
#endif
pt->movintype[pt->plan_size] = *pts++;
pt->movouttype[pt->plan_size] = *pts++;
pt->movsize[pt->plan_size] = *pts++;
pt->showtime[pt->plan_size] = *pts++;
pt->plan_size++;
pt->plan_point++;
if(pt->plan_size >= MAXPLAN) break;
}//ens while(pt->plan_point < pt->plan_flash)
pt->plan = 0;
return 1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -