📄 hanzi.h
字号:
/**/
void getPic(volatile BYTE *p_hz,int x,int y,int b_width,int ifont){
long temp;
long i=0;
int ab;
BYTE hz_temp;
long HZADD;
int a;
BYTE fontnum=4;
BYTE f_temp;
volatile unsigned char *pdata=(volatile unsigned char*) 0x8000;
//x=30;
//y=47;
//ifont=ifont+2;
//ifont=5-ifont;
/*
a=ifont/4;
if(a==0)
ifont=ifont%3;
if(a!=0)
ifont=a*4+((ifont%4)%2);
*/
if(ifont<4){
////////////////////////////////
ifont=ifont%3;
if((x>=16)&&(x<100)){
temp=((x-16)*94+y-1);
temp=temp*288;
}
if((x==1)||(x==2)){
temp=((x-1)*94+y-1);
temp=temp*288;
temp=temp+0x1dbe00;
}
if(x==3){
temp=y;
temp=temp*144;
temp=temp+0x1e9180;
}
if(x==4){
temp=y-1;
temp=temp*288;
temp=temp+0x1f0000;
}
//////////////////////////////////
// temp=temp+(ifont%2)*0x200000;
HZADD=temp%0x8000;
ab=temp/0x8000;
///////////////////////////
f_temp=g_flag;
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag); //ab0-6
*pdata=ab;
fontnum=4+ifont;
//temp=fontnum;
g_flag=g_flag|(0x00+fontnum);
g_flag=g_flag&(0xF0+fontnum);
selectchip(g_flag);
///////////// hz
//////////////////////////
for(i=0;i<288;i++){
if((i+HZADD)!=0x8000){
*(p_hz+i)=*(pdata+i+HZADD);
}
else{
/*p=0x8400;*/
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag); //ab0-6
/**p=X+1;*/
*pdata=(ab+1);
*pdata=(ab+1);
//fontnum=4+ifont;
g_flag=g_flag|(0x00+fontnum);
g_flag=g_flag&(0xF0+fontnum);
selectchip(g_flag);
HZADD=0-i;
hz_temp=*pdata;
*(p_hz+i)=hz_temp;
}
}
}
////////////////////////////////////////////////////////////////////////
if(ifont>=4){
///////////////////////////////////////////////
ifont=ifont%4;
ifont=ifont%2;
if((x>=16)&&(x<100)){
temp=((x-16)*94+y-1);
temp=temp*128;
temp=temp+ifont*0x100000;
}
if((x==1)||(x==2)){
temp=((x-1)*94+y-1);
temp=temp*128;
temp=temp+0xd3800+ifont*0x100000;
}
if(x==3){
temp=y;
temp=temp*64;
temp=temp+0xd9600+ifont*0x100000;
}
/////////////////////////////////////
HZADD=temp%0x8000;
ab=temp/0x8000;
///////////////////////////////////
f_temp=g_flag;
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag); //ab0-6
*pdata=ab;
fontnum=7;
g_flag=g_flag|(0x00+fontnum);
g_flag=g_flag&(0xF0+fontnum);
selectchip(g_flag);
////////////////////////////////////
for(i=0;i<128;i++)
*(p_hz+i)=*(pdata+i+HZADD);
////////////////////////////////////
}
selectchip(f_temp);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -