|
|
|
|
@ -165,19 +165,25 @@ uint8_t check_chr_width(uint8_t chr[]){
|
|
|
|
|
return 2; //space character
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void put_chr(uint8_t line, uint8_t pos, uint8_t chr[]){
|
|
|
|
|
void put_chr(uint8_t line, uint8_t pos, uint8_t chr[], uint8_t size){
|
|
|
|
|
for(int i=0;i<8;i++)
|
|
|
|
|
for(int j=0;j<7;j++){
|
|
|
|
|
fb[1+(line*10)+i][(pos)+j][0] = (chr[j]&(1<<i))>>i;
|
|
|
|
|
uint8_t val = (chr[j]&(1<<i))>>i;
|
|
|
|
|
for(int x=0;x<size;x++)
|
|
|
|
|
for(int y=0;y<size;y++)
|
|
|
|
|
fb[1+(line*10)+(i*size)+y][(pos)+(j*size)+x][0] = val;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void put_line(uint8_t line, char *str){
|
|
|
|
|
void put_line(uint8_t line, char *str, uint8_t spacing, uint8_t size){
|
|
|
|
|
uint8_t pos = 0;
|
|
|
|
|
uint8_t disp_pos = 0;
|
|
|
|
|
while(str[pos] != 0){
|
|
|
|
|
put_chr(line, disp_pos, font[str[pos]-0x20]);
|
|
|
|
|
disp_pos += check_chr_width(font[str[pos]-0x20]) + 3;
|
|
|
|
|
put_chr(line, disp_pos, font[str[pos]-0x20], size);
|
|
|
|
|
disp_pos += (check_chr_width(font[str[pos]-0x20]) + 1 + spacing)*size;
|
|
|
|
|
pos++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
pos++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|