bigfont-small

This commit is contained in:
y4my4my4m 2023-08-26 03:27:37 +09:00
parent b32f9cea77
commit a05b329e57
3 changed files with 336 additions and 0 deletions

44
src/Home/BigFont/Font.ZC Executable file
View file

@ -0,0 +1,44 @@
Cd(__DIR__);;
#define MAX_WIDTH 1024 // temp until we check width of doldoc
class FontMapping {
I32 character;
I32 rows[4];
} fontMap[44];
#include "Small"
U0 Font(U8 *text, U8 *color="RED") {
I64 i, j, row, lineWidth = 0;
I32 c;
"$$BG$$";
"$$%s$$",color;
for (row = 0; row < 4; row++) {
lineWidth = 0;
for (i = 0; text[i]; i++) {
c = text[i];
// Convert to lowercase
if (c >= 'A' && c <= 'Z')
c = c + ('a' - 'A');
for (j = 0; fontMap[j].character; j++) {
if (fontMap[j].character == c) {
if (lineWidth + StrLen(fontMap[j].rows[row]) > MAX_WIDTH){
Print("\n");
lineWidth = 0;
}
Print(fontMap[j].rows[row]);
lineWidth += StrLen(fontMap[j].rows[row]);
break;
}
}
}
Print("\n"); // Move to the next row after printing all characters for the current row
}
"$$FG$$";
}
// Font("ABCDEFGHIJKLMNOPQRSTUVWX`YZ");

291
src/Home/BigFont/Small.ZC Executable file
View file

@ -0,0 +1,291 @@
U0 InitFontMap() {
fontMap[0].character = 'a';
fontMap[0].rows[0] = " ";
fontMap[0].rows[1] = " ßßÜ";
fontMap[0].rows[2] = " ÛßÛ";
fontMap[0].rows[3] = " ßß";
fontMap[1].character = 'b';
fontMap[1].rows[0] = " Ü ";
fontMap[1].rows[1] = " ÛßÜ";
fontMap[1].rows[2] = " Û Û";
fontMap[1].rows[3] = " ßß ";
fontMap[2].character = 'c';
fontMap[2].rows[0] = " ";
fontMap[2].rows[1] = " ÜßÜ";
fontMap[2].rows[2] = " Û Ü";
fontMap[2].rows[3] = " ß ";
fontMap[3].character = 'd';
fontMap[3].rows[0] = " Ü";
fontMap[3].rows[1] = " ÛßÛ";
fontMap[3].rows[2] = " Û Û";
fontMap[3].rows[3] = " ßß";
fontMap[4].character = 'e';
fontMap[4].rows[0] = " ";
fontMap[4].rows[1] = " ÜßÜ";
fontMap[4].rows[2] = " Ûßß";
fontMap[4].rows[3] = " ßß";
fontMap[5].character = 'f';
fontMap[5].rows[0] = " ÜÜ";
fontMap[5].rows[1] = " Û ";
fontMap[5].rows[2] = " Ûß ";
fontMap[5].rows[3] = " Û ";
fontMap[6].character = 'g';
fontMap[6].rows[0] = " ";
fontMap[6].rows[1] = " Üßß";
fontMap[6].rows[2] = " Û Û";
fontMap[6].rows[3] = " ßß";
fontMap[7].character = 'h';
fontMap[7].rows[0] = " Ü ";
fontMap[7].rows[1] = " ÛßÜ";
fontMap[7].rows[2] = " Û Û";
fontMap[7].rows[3] = " ß ß";
fontMap[8].character = 'i';
fontMap[8].rows[0] = " ";
fontMap[8].rows[1] = " Û";
fontMap[8].rows[2] = " Û";
fontMap[8].rows[3] = " Û";
fontMap[9].character = 'j';
fontMap[9].rows[0] = " ";
fontMap[9].rows[1] = " Û";
fontMap[9].rows[2] = " Û";
fontMap[9].rows[3] = " Üß";
fontMap[10].character = 'k';
fontMap[10].rows[0] = " Ü ";
fontMap[10].rows[1] = " Û Û";
fontMap[10].rows[2] = " ÛßÜ";
fontMap[10].rows[3] = " ß ß";
fontMap[11].character = 'l';
fontMap[11].rows[0] = " ";
fontMap[11].rows[1] = " Û ";
fontMap[11].rows[2] = " Û ";
fontMap[11].rows[3] = " ßßß";
fontMap[12].character = 'm';
fontMap[12].rows[0] = " ";
fontMap[12].rows[1] = " ÛÜ ÜÛ";
fontMap[12].rows[2] = " Û ß Û";
fontMap[12].rows[3] = " ß ß";
fontMap[13].character = 'n';
fontMap[13].rows[0] = " ";
fontMap[13].rows[1] = " ÛÜ Û";
fontMap[13].rows[2] = " Û ßÛ";
fontMap[13].rows[3] = " ß ß";
fontMap[14].character = 'o';
fontMap[14].rows[0] = " ";
fontMap[14].rows[1] = " ÜßÜ";
fontMap[14].rows[2] = " Û Û";
fontMap[14].rows[3] = " ß ";
fontMap[15].character = 'p';
fontMap[15].rows[0] = " ";
fontMap[15].rows[1] = " ÛßÜ";
fontMap[15].rows[2] = " Û Û";
fontMap[15].rows[3] = " Ûß ";
fontMap[16].character = 'q';
fontMap[16].rows[0] = " ";
fontMap[16].rows[1] = " ÜßÛ";
fontMap[16].rows[2] = " Û Û";
fontMap[16].rows[3] = " ßÛ";
fontMap[17].character = 'r';
fontMap[17].rows[0] = " ";
fontMap[17].rows[1] = " ÛßÜ";
fontMap[17].rows[2] = " ÛßÜ";
fontMap[17].rows[3] = " ß ß";
fontMap[18].character = 's';
fontMap[18].rows[0] = " ";
fontMap[18].rows[1] = " Üßß";
fontMap[18].rows[2] = " ßÜ";
fontMap[18].rows[3] = " ßß ";
fontMap[19].character = 't';
fontMap[19].rows[0] = " ";
fontMap[19].rows[1] = " ÜÛÜ";
fontMap[19].rows[2] = " Û ";
fontMap[19].rows[3] = " ß";
fontMap[20].character = 'u';
fontMap[20].rows[0] = " ";
fontMap[20].rows[1] = " Û Û";
fontMap[20].rows[2] = " Û Û";
fontMap[20].rows[3] = " ß ";
fontMap[21].character = 'v';
fontMap[21].rows[0] = " ";
fontMap[21].rows[1] = " Û Û";
fontMap[21].rows[2] = " ÛÜÛ";
fontMap[21].rows[3] = " ß ";
fontMap[22].character = 'w';
fontMap[22].rows[0] = " ";
fontMap[22].rows[1] = " Û Û";
fontMap[22].rows[2] = " ÛÜßÜÛ";
fontMap[22].rows[3] = " ß ß";
fontMap[23].character = 'x';
fontMap[23].rows[0] = " ";
fontMap[23].rows[1] = " Û Û";
fontMap[23].rows[2] = " ÜßÜ";
fontMap[23].rows[3] = " ß ß";
fontMap[24].character = 'y';
fontMap[24].rows[0] = " ";
fontMap[24].rows[1] = " Û Û";
fontMap[24].rows[2] = " ßÜÛ";
fontMap[24].rows[3] = " ÜÜß";
fontMap[25].character = 'z';
fontMap[25].rows[0] = " ";
fontMap[25].rows[1] = " ßßÛ";
fontMap[25].rows[2] = " Üß ";
fontMap[25].rows[3] = " ßßß";
fontMap[26].character = ' ';
fontMap[26].rows[0] = " ";
fontMap[26].rows[1] = " ";
fontMap[26].rows[2] = " ";
fontMap[26].rows[3] = " ";
fontMap[27].character = ',';
fontMap[27].rows[0] = " ";
fontMap[27].rows[1] = " ";
fontMap[27].rows[2] = " ";
fontMap[27].rows[3] = " Û ";
fontMap[28].character = '.';
fontMap[28].rows[0] = " ";
fontMap[28].rows[1] = " ";
fontMap[28].rows[2] = " Ü ";
fontMap[28].rows[3] = " ß ";
fontMap[28].character = '.';
fontMap[28].rows[0] = " ";
fontMap[28].rows[1] = " ";
fontMap[28].rows[2] = " Ü ";
fontMap[28].rows[3] = " ß ";
fontMap[29].character = '&';
fontMap[29].rows[0] = " ";
fontMap[29].rows[1] = " ÜßÜ ";
fontMap[29].rows[2] = " ÜßÛß";
fontMap[29].rows[3] = " ßßß";
fontMap[30].character = '?';
fontMap[30].rows[0] = " ";
fontMap[30].rows[1] = " ÜßÜ";
fontMap[30].rows[2] = " Üß";
fontMap[30].rows[3] = " Ü ";
fontMap[31].character = '!';
fontMap[31].rows[0] = " ";
fontMap[31].rows[1] = " Û";
fontMap[31].rows[2] = " ß";
fontMap[31].rows[3] = " ß";
fontMap[32].character = ':';
fontMap[32].rows[0] = " ";
fontMap[32].rows[1] = " ";
fontMap[32].rows[2] = " ß";
fontMap[32].rows[3] = " ß";
fontMap[33].character = '#';
fontMap[33].rows[0] = " ";
fontMap[33].rows[1] = " ÜÛÜÛÜ";
fontMap[33].rows[2] = " ÜÛÜÛÜ";
fontMap[33].rows[3] = " ß ß ";
fontMap[34].character = '@';
fontMap[34].rows[0] = " ";
fontMap[34].rows[1] = " ÜßßÜ";
fontMap[34].rows[2] = " Û ÛÛ";
fontMap[34].rows[3] = " ᚚ ";
fontMap[35].character = '1';
fontMap[35].rows[0] = " ÜÜ ";
fontMap[35].rows[1] = " Û ";
fontMap[35].rows[2] = " Û ";
fontMap[35].rows[3] = " ßßß";
fontMap[36].character = '2';
fontMap[36].rows[0] = " ÜÜ ";
fontMap[36].rows[1] = " Û";
fontMap[36].rows[2] = " Üß ";
fontMap[36].rows[3] = " ßßß";
fontMap[37].character = '3';
fontMap[37].rows[0] = " ÜÜ ";
fontMap[37].rows[1] = " Üß";
fontMap[37].rows[2] = " Û";
fontMap[37].rows[3] = " ßß ";
fontMap[38].character = '4';
fontMap[38].rows[0] = " Ü Ü";
fontMap[38].rows[1] = " Û Û";
fontMap[38].rows[2] = " ßÛ";
fontMap[38].rows[3] = " ß";
fontMap[39].character = '5';
fontMap[39].rows[0] = " ÜÜÜ";
fontMap[39].rows[1] = " ÛÜ ";
fontMap[39].rows[2] = " Û";
fontMap[39].rows[3] = " ßß ";
fontMap[40].character = '6';
fontMap[40].rows[0] = " Ü ";
fontMap[40].rows[1] = " ÛÜ ";
fontMap[40].rows[2] = " Û Û";
fontMap[40].rows[3] = " ß ";
fontMap[41].character = '7';
fontMap[41].rows[0] = " ÜÜÜ";
fontMap[41].rows[1] = " Û";
fontMap[41].rows[2] = " Û ";
fontMap[41].rows[3] = " ß ";
fontMap[42].character = '8';
fontMap[42].rows[0] = " Ü ";
fontMap[42].rows[1] = " ßÜß";
fontMap[42].rows[2] = " Û Û";
fontMap[42].rows[3] = " ß ";
fontMap[43].character = '9';
fontMap[43].rows[0] = " Ü ";
fontMap[43].rows[1] = " ßÜÛ";
fontMap[43].rows[2] = " Û";
fontMap[43].rows[3] = " ßß ";
fontMap[44].character = '0';
fontMap[44].rows[0] = " Ü ";
fontMap[44].rows[1] = " Û Û";
fontMap[44].rows[2] = " Û Û";
fontMap[44].rows[3] = " ß ";
}
InitFontMap();
// Ü Ü ÜÜ Ü Ü
// ßßÜ ÛßÜ ÜßÜ ÛßÛ ÜßÜ Û Üßß ÛßÜ Û Û Û Û Û ÛÜ ÜÛ ÛÜ Û ÜßÜ ÛßÜ ÜßÛ ÛßÜ Üßß
// ÛßÛ Û Û Û Ü Û Û Ûßß Ûß Û Û Û Û Û Û ÛßÜ Û Û ß Û Û ßÛ Û Û Û Û Û Û ÛßÜ ßÜ
// ßß ßß ß ßß ßß Û ßß ß ß ß Üß ß ß ßßß ß ß ß ß ß Ûß ßÛ ß ß ßß
//
// ÜÛÜ Û Û Û Û Û Û Û Û Û Û ßßÛ ÜßÜ ÜßÜ Û ÜÛÜÛÜ ÜßßÜ
// Û Û Û ÛÜÛ ÛÜßÜÛ ÜßÜ ßÜÛ Üß Ü ÜßÛß Üß ß ß ÜÛÜÛÜ Û ÛÛ
// ß ß ß ß ß ß ß ÜÜß ßßß Û ß ßßß Ü ß ß ß ß ßÜÜ
// ÜÜ ÜÜ ÜÜ Ü Ü ÜÜÜ Ü ÜÜÜ Ü Ü Ü
// Û Û Üß Û Û ÛÜ ÛÜ Û ßÜß ßÜÛ Û Û
// Û Üß Û ßÛ Û Û Û Û Û Û Û Û Û
// ßßß ßßß ßß ß ßß ß ß ß ßß ß

1
src/Home/BigFont/Source.DD Executable file

File diff suppressed because one or more lines are too long