diff --git a/.gitignore b/.gitignore index db459d9..b2b0c16 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,6 @@ coverage *.njsproj *.sln *.sw? + +font-converter/bdf2asm/files +font-converter/fnt2asm/files \ No newline at end of file diff --git a/font-converter/Bm437CompaqThin8x8-8.asm b/font-converter/Bm437CompaqThin8x8-8.asm deleted file mode 100644 index f23c3e3..0000000 --- a/font-converter/Bm437CompaqThin8x8-8.asm +++ /dev/null @@ -1,2562 +0,0 @@ -// Font: Bm437CompaqThin8x8-8 - -//00 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//01 -.byte %01111110 -.byte %10000001 -.byte %10100101 -.byte %10000001 -.byte %10111101 -.byte %10011001 -.byte %10000001 -.byte %01111110 - -//02 -.byte %01111110 -.byte %11111111 -.byte %11011011 -.byte %11111111 -.byte %11000011 -.byte %11100111 -.byte %11111111 -.byte %01111110 - -//03 -.byte %01101100 -.byte %11111110 -.byte %11111110 -.byte %11111110 -.byte %01111100 -.byte %00111000 -.byte %00010000 -.byte %00000000 - -//04 -.byte %00010000 -.byte %00111000 -.byte %01111100 -.byte %11111110 -.byte %01111100 -.byte %00111000 -.byte %00010000 -.byte %00000000 - -//05 -.byte %00111000 -.byte %01111100 -.byte %00111000 -.byte %11111110 -.byte %11010110 -.byte %00010000 -.byte %00010000 -.byte %01111100 - -//06 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %01111100 -.byte %11111110 -.byte %01111100 -.byte %00010000 -.byte %01111100 - -//07 -.byte %00000000 -.byte %00000000 -.byte %00011000 -.byte %00111100 -.byte %00111100 -.byte %00011000 -.byte %00000000 -.byte %00000000 - -//08 -.byte %11111111 -.byte %11111111 -.byte %11100111 -.byte %11000011 -.byte %11000011 -.byte %11100111 -.byte %11111111 -.byte %11111111 - -//09 -.byte %00000000 -.byte %00111100 -.byte %01100110 -.byte %01000010 -.byte %01000010 -.byte %01100110 -.byte %00111100 -.byte %00000000 - -//0A -.byte %11111111 -.byte %11000011 -.byte %10011001 -.byte %10111101 -.byte %10111101 -.byte %10011001 -.byte %11000011 -.byte %11111111 - -//0B -.byte %00011111 -.byte %00000011 -.byte %00000101 -.byte %01111101 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 - -//0C -.byte %00111110 -.byte %01000001 -.byte %01000001 -.byte %01000001 -.byte %00111110 -.byte %00001000 -.byte %00111110 -.byte %00001000 - -//0D -.byte %00111111 -.byte %00100001 -.byte %00111111 -.byte %00100000 -.byte %00100000 -.byte %00100000 -.byte %01100000 -.byte %11000000 - -//0E -.byte %00111111 -.byte %00100001 -.byte %00111111 -.byte %00100001 -.byte %00100001 -.byte %00100011 -.byte %01100110 -.byte %11000000 - -//0F -.byte %10011001 -.byte %01011010 -.byte %00111100 -.byte %11100111 -.byte %11100111 -.byte %00111100 -.byte %01011010 -.byte %10011001 - -//10 -.byte %10000000 -.byte %11100000 -.byte %11111000 -.byte %11111110 -.byte %11111000 -.byte %11100000 -.byte %10000000 -.byte %00000000 - -//11 -.byte %00000010 -.byte %00001110 -.byte %00111110 -.byte %11111110 -.byte %00111110 -.byte %00001110 -.byte %00000010 -.byte %00000000 - -//12 -.byte %00010000 -.byte %00111000 -.byte %01111100 -.byte %00010000 -.byte %00010000 -.byte %01111100 -.byte %00111000 -.byte %00010000 - -//13 -.byte %00100100 -.byte %00100100 -.byte %00100100 -.byte %00100100 -.byte %00100100 -.byte %00000000 -.byte %00100100 -.byte %00000000 - -//14 -.byte %01111111 -.byte %10010010 -.byte %10010010 -.byte %01110010 -.byte %00010010 -.byte %00010010 -.byte %00010010 -.byte %00000000 - -//15 -.byte %00111110 -.byte %01100001 -.byte %00111000 -.byte %01000100 -.byte %01000100 -.byte %00111000 -.byte %10001100 -.byte %01111000 - -//16 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %01111110 -.byte %01111110 -.byte %01111110 -.byte %00000000 - -//17 -.byte %00010000 -.byte %00111000 -.byte %01111100 -.byte %00010000 -.byte %01111100 -.byte %00111000 -.byte %00010000 -.byte %11111110 - -//18 -.byte %00010000 -.byte %00111000 -.byte %01111100 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00000000 - -//19 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %01111100 -.byte %00111000 -.byte %00010000 -.byte %00000000 - -//1A -.byte %00000000 -.byte %00001000 -.byte %00000100 -.byte %11111110 -.byte %00000100 -.byte %00001000 -.byte %00000000 -.byte %00000000 - -//1B -.byte %00000000 -.byte %00100000 -.byte %01000000 -.byte %11111110 -.byte %01000000 -.byte %00100000 -.byte %00000000 -.byte %00000000 - -//1C -.byte %00000000 -.byte %00000000 -.byte %10000000 -.byte %10000000 -.byte %10000000 -.byte %11111110 -.byte %00000000 -.byte %00000000 - -//1D -.byte %00000000 -.byte %00100100 -.byte %01100110 -.byte %11111111 -.byte %01100110 -.byte %00100100 -.byte %00000000 -.byte %00000000 - -//1E -.byte %00000000 -.byte %00011000 -.byte %00111100 -.byte %01111110 -.byte %11111111 -.byte %11111111 -.byte %00000000 -.byte %00000000 - -//1F -.byte %00000000 -.byte %11111111 -.byte %11111111 -.byte %01111110 -.byte %00111100 -.byte %00011000 -.byte %00000000 -.byte %00000000 - -//20 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//21 -.byte %00010000 -.byte %00111000 -.byte %00111000 -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00010000 -.byte %00000000 - -//22 -.byte %00100100 -.byte %00100100 -.byte %00100100 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//23 -.byte %00100100 -.byte %00100100 -.byte %11111111 -.byte %00100100 -.byte %11111111 -.byte %00100100 -.byte %00100100 -.byte %00000000 - -//24 -.byte %00010000 -.byte %01111100 -.byte %10000000 -.byte %01111000 -.byte %00000100 -.byte %11111000 -.byte %00010000 -.byte %00000000 - -//25 -.byte %00000000 -.byte %11000110 -.byte %11001100 -.byte %00011000 -.byte %00110000 -.byte %01100110 -.byte %11000110 -.byte %00000000 - -//26 -.byte %00111000 -.byte %01000100 -.byte %00111000 -.byte %01010110 -.byte %10000100 -.byte %10000100 -.byte %01110110 -.byte %00000000 - -//27 -.byte %00100000 -.byte %00100000 -.byte %01000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//28 -.byte %00010000 -.byte %00100000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %00100000 -.byte %00010000 -.byte %00000000 - -//29 -.byte %00100000 -.byte %00010000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00010000 -.byte %00100000 -.byte %00000000 - -//2A -.byte %00000000 -.byte %01000100 -.byte %00111000 -.byte %11111110 -.byte %00111000 -.byte %01000100 -.byte %00000000 -.byte %00000000 - -//2B -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %11111110 -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00000000 - -//2C -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00100000 - -//2D -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//2E -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00000000 - -//2F -.byte %00000010 -.byte %00000100 -.byte %00001000 -.byte %00010000 -.byte %00100000 -.byte %01000000 -.byte %10000000 -.byte %00000000 - -//30 -.byte %01111100 -.byte %10000010 -.byte %10000110 -.byte %10001010 -.byte %10010010 -.byte %10100010 -.byte %01111100 -.byte %00000000 - -//31 -.byte %00010000 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %01111100 -.byte %00000000 - -//32 -.byte %01111000 -.byte %10000100 -.byte %00000100 -.byte %00010000 -.byte %01000000 -.byte %10000100 -.byte %11111100 -.byte %00000000 - -//33 -.byte %01111000 -.byte %10000100 -.byte %00000100 -.byte %00111000 -.byte %00000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//34 -.byte %00001000 -.byte %00011000 -.byte %00101000 -.byte %01001000 -.byte %11111110 -.byte %00001000 -.byte %00011100 -.byte %00000000 - -//35 -.byte %11111100 -.byte %10000000 -.byte %11111000 -.byte %00000100 -.byte %00000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//36 -.byte %00111000 -.byte %01000000 -.byte %10000000 -.byte %11111000 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//37 -.byte %11111100 -.byte %10000100 -.byte %00001000 -.byte %00010000 -.byte %00100000 -.byte %00100000 -.byte %00100000 -.byte %00000000 - -//38 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//39 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %01111100 -.byte %00000100 -.byte %00001000 -.byte %01110000 -.byte %00000000 - -//3A -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00000000 - -//3B -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00100000 - -//3C -.byte %00010000 -.byte %00100000 -.byte %01000000 -.byte %10000000 -.byte %01000000 -.byte %00100000 -.byte %00010000 -.byte %00000000 - -//3D -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %00000000 - -//3E -.byte %00100000 -.byte %00010000 -.byte %00001000 -.byte %00000100 -.byte %00001000 -.byte %00010000 -.byte %00100000 -.byte %00000000 - -//3F -.byte %01111000 -.byte %10000100 -.byte %00000100 -.byte %00001000 -.byte %00010000 -.byte %00000000 -.byte %00010000 -.byte %00000000 - -//40 -.byte %01111100 -.byte %10000010 -.byte %10011110 -.byte %10010010 -.byte %10011110 -.byte %10000000 -.byte %01111000 -.byte %00000000 - -//41 -.byte %00110000 -.byte %01001000 -.byte %10000100 -.byte %10000100 -.byte %11111100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//42 -.byte %11111100 -.byte %01000010 -.byte %01000010 -.byte %01111100 -.byte %01000010 -.byte %01000010 -.byte %11111100 -.byte %00000000 - -//43 -.byte %00111100 -.byte %01000010 -.byte %10000000 -.byte %10000000 -.byte %10000000 -.byte %01000010 -.byte %00111100 -.byte %00000000 - -//44 -.byte %11111000 -.byte %01000100 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %01000100 -.byte %11111000 -.byte %00000000 - -//45 -.byte %11111110 -.byte %01000010 -.byte %01001000 -.byte %01111000 -.byte %01001000 -.byte %01000010 -.byte %11111110 -.byte %00000000 - -//46 -.byte %11111110 -.byte %01000010 -.byte %01001000 -.byte %01111000 -.byte %01001000 -.byte %01000000 -.byte %11100000 -.byte %00000000 - -//47 -.byte %00111100 -.byte %01000010 -.byte %10000000 -.byte %10000000 -.byte %10001110 -.byte %01000010 -.byte %00111110 -.byte %00000000 - -//48 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %11111100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//49 -.byte %00111000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//4A -.byte %00001110 -.byte %00000100 -.byte %00000100 -.byte %00000100 -.byte %01000100 -.byte %01000100 -.byte %00111000 -.byte %00000000 - -//4B -.byte %11000010 -.byte %01000100 -.byte %01001000 -.byte %01110000 -.byte %01000100 -.byte %01000010 -.byte %11000010 -.byte %00000000 - -//4C -.byte %11100000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %01000010 -.byte %11111110 -.byte %00000000 - -//4D -.byte %10000010 -.byte %11000110 -.byte %10101010 -.byte %10010010 -.byte %10000010 -.byte %10000010 -.byte %10000010 -.byte %00000000 - -//4E -.byte %10000010 -.byte %11000010 -.byte %10100010 -.byte %10010010 -.byte %10001010 -.byte %10000110 -.byte %10000010 -.byte %00000000 - -//4F -.byte %00111000 -.byte %01000100 -.byte %10000010 -.byte %10000010 -.byte %10000010 -.byte %01000100 -.byte %00111000 -.byte %00000000 - -//50 -.byte %11111100 -.byte %01000010 -.byte %01000010 -.byte %01111100 -.byte %01000000 -.byte %01000000 -.byte %11100000 -.byte %00000000 - -//51 -.byte %00111000 -.byte %01000100 -.byte %10000010 -.byte %10000010 -.byte %10000010 -.byte %01010100 -.byte %00111000 -.byte %00000100 - -//52 -.byte %11111100 -.byte %01000010 -.byte %01000010 -.byte %01111100 -.byte %01000100 -.byte %01000010 -.byte %11000010 -.byte %00000000 - -//53 -.byte %01111000 -.byte %10000100 -.byte %10000000 -.byte %01111000 -.byte %00000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//54 -.byte %11111110 -.byte %10010010 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//55 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %11111100 -.byte %00000000 - -//56 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01001000 -.byte %00110000 -.byte %00000000 - -//57 -.byte %10000010 -.byte %10000010 -.byte %10000010 -.byte %10010010 -.byte %10101010 -.byte %11000110 -.byte %10000010 -.byte %00000000 - -//58 -.byte %10000010 -.byte %01000100 -.byte %00101000 -.byte %00010000 -.byte %00101000 -.byte %01000100 -.byte %10000010 -.byte %00000000 - -//59 -.byte %10000010 -.byte %01000100 -.byte %00101000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//5A -.byte %11111110 -.byte %10000100 -.byte %10001000 -.byte %00010000 -.byte %00100010 -.byte %01000010 -.byte %11111110 -.byte %00000000 - -//5B -.byte %01111000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %01000000 -.byte %01111000 -.byte %00000000 - -//5C -.byte %10000000 -.byte %01000000 -.byte %00100000 -.byte %00010000 -.byte %00001000 -.byte %00000100 -.byte %00000010 -.byte %00000000 - -//5D -.byte %01111000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %01111000 -.byte %00000000 - -//5E -.byte %00010000 -.byte %00101000 -.byte %01000100 -.byte %10000010 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//5F -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111111 - -//60 -.byte %00100000 -.byte %00100000 -.byte %00010000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//61 -.byte %00000000 -.byte %00000000 -.byte %01111000 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %01110110 -.byte %00000000 - -//62 -.byte %11000000 -.byte %01000000 -.byte %01111100 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %11011100 -.byte %00000000 - -//63 -.byte %00000000 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %10000000 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//64 -.byte %00001100 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01110110 -.byte %00000000 - -//65 -.byte %00000000 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %11111100 -.byte %10000000 -.byte %01111000 -.byte %00000000 - -//66 -.byte %00111000 -.byte %01000100 -.byte %01000000 -.byte %11100000 -.byte %01000000 -.byte %01000000 -.byte %11100000 -.byte %00000000 - -//67 -.byte %00000000 -.byte %00000000 -.byte %01110110 -.byte %10000100 -.byte %10000100 -.byte %01111100 -.byte %00000100 -.byte %11111000 - -//68 -.byte %11000000 -.byte %01000000 -.byte %01001100 -.byte %01100010 -.byte %01000010 -.byte %01000010 -.byte %11000010 -.byte %00000000 - -//69 -.byte %00010000 -.byte %00000000 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//6A -.byte %00000100 -.byte %00000000 -.byte %00000100 -.byte %00000100 -.byte %00000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 - -//6B -.byte %11000000 -.byte %01000000 -.byte %01000010 -.byte %01000100 -.byte %01111000 -.byte %01000100 -.byte %11000010 -.byte %00000000 - -//6C -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//6D -.byte %00000000 -.byte %00000000 -.byte %11101100 -.byte %10010010 -.byte %10010010 -.byte %10010010 -.byte %10000010 -.byte %00000000 - -//6E -.byte %00000000 -.byte %00000000 -.byte %11111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//6F -.byte %00000000 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//70 -.byte %00000000 -.byte %00000000 -.byte %11011100 -.byte %01000010 -.byte %01000010 -.byte %01111100 -.byte %01000000 -.byte %11100000 - -//71 -.byte %00000000 -.byte %00000000 -.byte %01110110 -.byte %10000100 -.byte %10000100 -.byte %01111100 -.byte %00000100 -.byte %00001110 - -//72 -.byte %00000000 -.byte %00000000 -.byte %11011100 -.byte %01100010 -.byte %01000000 -.byte %01000000 -.byte %11100000 -.byte %00000000 - -//73 -.byte %00000000 -.byte %00000000 -.byte %01111100 -.byte %10000000 -.byte %01111000 -.byte %00000100 -.byte %11111000 -.byte %00000000 - -//74 -.byte %00010000 -.byte %00010000 -.byte %01111100 -.byte %00010000 -.byte %00010000 -.byte %00010010 -.byte %00001100 -.byte %00000000 - -//75 -.byte %00000000 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01110110 -.byte %00000000 - -//76 -.byte %00000000 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01001000 -.byte %00110000 -.byte %00000000 - -//77 -.byte %00000000 -.byte %00000000 -.byte %10000010 -.byte %10010010 -.byte %10101010 -.byte %11000110 -.byte %10000010 -.byte %00000000 - -//78 -.byte %00000000 -.byte %00000000 -.byte %10000100 -.byte %01001000 -.byte %00110000 -.byte %01001000 -.byte %10000100 -.byte %00000000 - -//79 -.byte %00000000 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111100 -.byte %00000100 -.byte %11111000 - -//7A -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %10001000 -.byte %00110000 -.byte %01000100 -.byte %11111100 -.byte %00000000 - -//7B -.byte %00011000 -.byte %00100000 -.byte %00100000 -.byte %11000000 -.byte %00100000 -.byte %00100000 -.byte %00011000 -.byte %00000000 - -//7C -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00000000 - -//7D -.byte %01100000 -.byte %00010000 -.byte %00010000 -.byte %00001100 -.byte %00010000 -.byte %00010000 -.byte %01100000 -.byte %00000000 - -//7E -.byte %01100100 -.byte %10011000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//7F -.byte %00000000 -.byte %00010000 -.byte %00101000 -.byte %01000100 -.byte %10000010 -.byte %10000010 -.byte %11111110 -.byte %00000000 - -//80 -.byte %01111000 -.byte %10000100 -.byte %10000000 -.byte %10000100 -.byte %01111000 -.byte %00011000 -.byte %00000100 -.byte %01111000 - -//81 -.byte %00000000 -.byte %10000100 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//82 -.byte %00001100 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %11111100 -.byte %10000000 -.byte %01111000 -.byte %00000000 - -//83 -.byte %01111110 -.byte %10000001 -.byte %00111100 -.byte %00000010 -.byte %00111110 -.byte %01000010 -.byte %00111101 -.byte %00000000 - -//84 -.byte %10000100 -.byte %00000000 -.byte %01111000 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//85 -.byte %11000000 -.byte %00000000 -.byte %01111000 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//86 -.byte %00100000 -.byte %00100000 -.byte %01111000 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//87 -.byte %00000000 -.byte %00000000 -.byte %01111000 -.byte %10000000 -.byte %10000000 -.byte %01111000 -.byte %00000100 -.byte %00111000 - -//88 -.byte %01111110 -.byte %10000001 -.byte %00111100 -.byte %01000010 -.byte %01111110 -.byte %01000000 -.byte %00111100 -.byte %00000000 - -//89 -.byte %10000100 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %11111100 -.byte %10000000 -.byte %01111000 -.byte %00000000 - -//8A -.byte %01100000 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %11111100 -.byte %10000000 -.byte %01111000 -.byte %00000000 - -//8B -.byte %01001000 -.byte %00000000 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//8C -.byte %01111100 -.byte %10000010 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//8D -.byte %01100000 -.byte %00000000 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//8E -.byte %10000010 -.byte %00111000 -.byte %01000100 -.byte %10000010 -.byte %11111110 -.byte %10000010 -.byte %10000010 -.byte %00000000 - -//8F -.byte %00110000 -.byte %00010000 -.byte %01000100 -.byte %10000010 -.byte %11111110 -.byte %10000010 -.byte %10000010 -.byte %00000000 - -//90 -.byte %00001100 -.byte %11111100 -.byte %01000000 -.byte %01111000 -.byte %01000000 -.byte %01000000 -.byte %11111100 -.byte %00000000 - -//91 -.byte %00000000 -.byte %00000000 -.byte %01100111 -.byte %00011001 -.byte %01111111 -.byte %10011000 -.byte %01110111 -.byte %00000000 - -//92 -.byte %00111111 -.byte %01001000 -.byte %10001000 -.byte %11111111 -.byte %10001000 -.byte %10001000 -.byte %10001111 -.byte %00000000 - -//93 -.byte %01111000 -.byte %10000100 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//94 -.byte %10000100 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//95 -.byte %11000000 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//96 -.byte %01111110 -.byte %10000001 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %00111100 -.byte %00000000 - -//97 -.byte %00100000 -.byte %00010000 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %00111100 -.byte %00000000 - -//98 -.byte %10000100 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111100 -.byte %00000100 -.byte %11111000 - -//99 -.byte %01000010 -.byte %00011000 -.byte %00100100 -.byte %01000010 -.byte %01000010 -.byte %00100100 -.byte %00011000 -.byte %00000000 - -//9A -.byte %10000100 -.byte %00000000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//9B -.byte %00010000 -.byte %00010000 -.byte %01111110 -.byte %10000000 -.byte %10000000 -.byte %01111110 -.byte %00010000 -.byte %00010000 - -//9C -.byte %00111000 -.byte %01000100 -.byte %01000100 -.byte %11100000 -.byte %01000000 -.byte %10000010 -.byte %11111100 -.byte %00000000 - -//9D -.byte %01000100 -.byte %00101000 -.byte %00010000 -.byte %01111100 -.byte %00010000 -.byte %01111100 -.byte %00010000 -.byte %00010000 - -//9E -.byte %11111000 -.byte %10000100 -.byte %10000100 -.byte %11111000 -.byte %10000010 -.byte %10000111 -.byte %10000010 -.byte %10000011 - -//9F -.byte %00001100 -.byte %00010010 -.byte %00010000 -.byte %00111000 -.byte %00010000 -.byte %00010000 -.byte %10010000 -.byte %01100000 - -//A0 -.byte %00011100 -.byte %00000000 -.byte %01111000 -.byte %00000100 -.byte %01111100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//A1 -.byte %00011000 -.byte %00000000 -.byte %00110000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00111000 -.byte %00000000 - -//A2 -.byte %00001000 -.byte %00010000 -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//A3 -.byte %00001000 -.byte %00010000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %01111010 -.byte %00000000 - -//A4 -.byte %01100100 -.byte %10011000 -.byte %10111000 -.byte %11000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//A5 -.byte %01100100 -.byte %10011000 -.byte %10000100 -.byte %10100100 -.byte %10010100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//A6 -.byte %00111100 -.byte %01000100 -.byte %01000100 -.byte %00111010 -.byte %00000000 -.byte %01111110 -.byte %00000000 -.byte %00000000 - -//A7 -.byte %00111000 -.byte %01000100 -.byte %01000100 -.byte %00111000 -.byte %00000000 -.byte %01111100 -.byte %00000000 -.byte %00000000 - -//A8 -.byte %00100000 -.byte %00000000 -.byte %00100000 -.byte %01000000 -.byte %10000000 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//A9 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %11000000 -.byte %11000000 -.byte %00000000 -.byte %00000000 - -//AA -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111100 -.byte %00001100 -.byte %00001100 -.byte %00000000 -.byte %00000000 - -//AB -.byte %01000010 -.byte %01000100 -.byte %01001000 -.byte %01010110 -.byte %01101001 -.byte %01000010 -.byte %10000100 -.byte %00001111 - -//AC -.byte %01000010 -.byte %01000100 -.byte %01001000 -.byte %01010011 -.byte %01100101 -.byte %01001001 -.byte %10001111 -.byte %00000001 - -//AD -.byte %00010000 -.byte %00010000 -.byte %00000000 -.byte %00010000 -.byte %00111000 -.byte %00111000 -.byte %00010000 -.byte %00000000 - -//AE -.byte %00000000 -.byte %00100010 -.byte %01000100 -.byte %10001000 -.byte %01000100 -.byte %00100010 -.byte %00000000 -.byte %00000000 - -//AF -.byte %00000000 -.byte %01000100 -.byte %00100010 -.byte %00010001 -.byte %00100010 -.byte %01000100 -.byte %00000000 -.byte %00000000 - -//B0 -.byte %00100010 -.byte %10001000 -.byte %00100010 -.byte %10001000 -.byte %00100010 -.byte %10001000 -.byte %00100010 -.byte %10001000 - -//B1 -.byte %01010101 -.byte %10101010 -.byte %01010101 -.byte %10101010 -.byte %01010101 -.byte %10101010 -.byte %01010101 -.byte %10101010 - -//B2 -.byte %11011011 -.byte %01110111 -.byte %11011011 -.byte %11101110 -.byte %11011011 -.byte %01110111 -.byte %11011011 -.byte %11101110 - -//B3 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//B4 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %11111000 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//B5 -.byte %00011000 -.byte %00011000 -.byte %11111000 -.byte %00011000 -.byte %11111000 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//B6 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %11110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//B7 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111110 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//B8 -.byte %00000000 -.byte %00000000 -.byte %11111000 -.byte %00011000 -.byte %11111000 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//B9 -.byte %00110110 -.byte %00110110 -.byte %11110110 -.byte %00000110 -.byte %11110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//BA -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//BB -.byte %00000000 -.byte %00000000 -.byte %11111110 -.byte %00000110 -.byte %11110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//BC -.byte %00110110 -.byte %00110110 -.byte %11110110 -.byte %00000110 -.byte %11111110 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//BD -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %11111110 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//BE -.byte %00011000 -.byte %00011000 -.byte %11111000 -.byte %00011000 -.byte %11111000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//BF -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111000 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//C0 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//C1 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//C2 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//C3 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//C4 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//C5 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %11111111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//C6 -.byte %00011000 -.byte %00011000 -.byte %00011111 -.byte %00011000 -.byte %00011111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//C7 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//C8 -.byte %00110110 -.byte %00110110 -.byte %00110111 -.byte %00110000 -.byte %00111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//C9 -.byte %00000000 -.byte %00000000 -.byte %00111111 -.byte %00110000 -.byte %00110111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//CA -.byte %00110110 -.byte %00110110 -.byte %11110111 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//CB -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %11110111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//CC -.byte %00110110 -.byte %00110110 -.byte %00110111 -.byte %00110000 -.byte %00110111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//CD -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//CE -.byte %00110110 -.byte %00110110 -.byte %11110111 -.byte %00000000 -.byte %11110111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//CF -.byte %00011000 -.byte %00011000 -.byte %11111111 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//D0 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//D1 -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00000000 -.byte %11111111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//D2 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//D3 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//D4 -.byte %00011000 -.byte %00011000 -.byte %00011111 -.byte %00011000 -.byte %00011111 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//D5 -.byte %00000000 -.byte %00000000 -.byte %00011111 -.byte %00011000 -.byte %00011111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//D6 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00111111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//D7 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %00110110 -.byte %11111111 -.byte %00110110 -.byte %00110110 -.byte %00110110 - -//D8 -.byte %00011000 -.byte %00011000 -.byte %11111111 -.byte %00011000 -.byte %11111111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//D9 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %00011000 -.byte %11111000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//DA -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00011111 -.byte %00011000 -.byte %00011000 -.byte %00011000 - -//DB -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 - -//DC -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 - -//DD -.byte %11110000 -.byte %11110000 -.byte %11110000 -.byte %11110000 -.byte %11110000 -.byte %11110000 -.byte %11110000 -.byte %11110000 - -//DE -.byte %00001111 -.byte %00001111 -.byte %00001111 -.byte %00001111 -.byte %00001111 -.byte %00001111 -.byte %00001111 -.byte %00001111 - -//DF -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %11111111 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//E0 -.byte %00000000 -.byte %00000000 -.byte %01100010 -.byte %10010100 -.byte %10001000 -.byte %10010100 -.byte %01100010 -.byte %00000000 - -//E1 -.byte %00000000 -.byte %01111000 -.byte %10000100 -.byte %11111000 -.byte %10000100 -.byte %11111000 -.byte %10000000 -.byte %10000000 - -//E2 -.byte %00000000 -.byte %11111100 -.byte %10000100 -.byte %10000000 -.byte %10000000 -.byte %10000000 -.byte %10000000 -.byte %00000000 - -//E3 -.byte %00000000 -.byte %11111110 -.byte %00101000 -.byte %00101000 -.byte %00101000 -.byte %00101000 -.byte %00101000 -.byte %00000000 - -//E4 -.byte %11111100 -.byte %10000100 -.byte %01000000 -.byte %00100000 -.byte %01000000 -.byte %10000100 -.byte %11111100 -.byte %00000000 - -//E5 -.byte %00000000 -.byte %00000000 -.byte %01111110 -.byte %10001000 -.byte %10001000 -.byte %10001000 -.byte %01110000 -.byte %00000000 - -//E6 -.byte %00000000 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %01000010 -.byte %01111100 -.byte %01000000 -.byte %10000000 - -//E7 -.byte %00000000 -.byte %01110110 -.byte %10001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00000000 - -//E8 -.byte %11111000 -.byte %00100000 -.byte %01110000 -.byte %10001000 -.byte %10001000 -.byte %01110000 -.byte %00100000 -.byte %11111000 - -//E9 -.byte %00111000 -.byte %01000100 -.byte %10000010 -.byte %11111110 -.byte %10000010 -.byte %01000100 -.byte %00111000 -.byte %00000000 - -//EA -.byte %00111000 -.byte %01000100 -.byte %10000010 -.byte %10000010 -.byte %00101000 -.byte %00101000 -.byte %01101100 -.byte %00000000 - -//EB -.byte %00011100 -.byte %00010000 -.byte %00001000 -.byte %01111100 -.byte %10000100 -.byte %10000100 -.byte %01111000 -.byte %00000000 - -//EC -.byte %00000000 -.byte %00000000 -.byte %01111100 -.byte %10010010 -.byte %10010010 -.byte %01111100 -.byte %00000000 -.byte %00000000 - -//ED -.byte %00000010 -.byte %00000100 -.byte %01111110 -.byte %10001001 -.byte %10010001 -.byte %01111110 -.byte %01000000 -.byte %10000000 - -//EE -.byte %00111000 -.byte %01000000 -.byte %10000000 -.byte %11111000 -.byte %10000000 -.byte %01000000 -.byte %00111000 -.byte %00000000 - -//EF -.byte %01111000 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %10000100 -.byte %00000000 - -//F0 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %11111100 -.byte %00000000 -.byte %00000000 - -//F1 -.byte %00100000 -.byte %00100000 -.byte %11111100 -.byte %00100000 -.byte %00100000 -.byte %00000000 -.byte %11111100 -.byte %00000000 - -//F2 -.byte %01000000 -.byte %00100000 -.byte %00010000 -.byte %00100000 -.byte %01000000 -.byte %00000000 -.byte %11111100 -.byte %00000000 - -//F3 -.byte %00010000 -.byte %00100000 -.byte %01000000 -.byte %00100000 -.byte %00010000 -.byte %00000000 -.byte %11111100 -.byte %00000000 - -//F4 -.byte %00001110 -.byte %00010001 -.byte %00010001 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 -.byte %00010000 - -//F5 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %00001000 -.byte %10001000 -.byte %10001000 -.byte %01110000 - -//F6 -.byte %00100000 -.byte %00100000 -.byte %00000000 -.byte %11111000 -.byte %00000000 -.byte %00100000 -.byte %00100000 -.byte %00000000 - -//F7 -.byte %00000000 -.byte %01100100 -.byte %10011000 -.byte %00000000 -.byte %01100100 -.byte %10011000 -.byte %00000000 -.byte %00000000 - -//F8 -.byte %00111000 -.byte %01000100 -.byte %01000100 -.byte %00111000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//F9 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00011000 -.byte %00011000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//FA -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00011000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//FB -.byte %00000111 -.byte %00000100 -.byte %00000100 -.byte %00000100 -.byte %01100100 -.byte %00100100 -.byte %00011100 -.byte %00001100 - -//FC -.byte %01011000 -.byte %01000100 -.byte %01000100 -.byte %01000100 -.byte %01000100 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//FD -.byte %00110000 -.byte %01001000 -.byte %00010000 -.byte %00100000 -.byte %01111000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - -//FE -.byte %00000000 -.byte %00000000 -.byte %00111100 -.byte %00111100 -.byte %00111100 -.byte %00111100 -.byte %00000000 -.byte %00000000 - -//FF -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 -.byte %00000000 - diff --git a/font-converter/Bm437CompaqThin8x8-8.bdf b/font-converter/Bm437CompaqThin8x8-8.bdf deleted file mode 100644 index 6fce12e..0000000 --- a/font-converter/Bm437CompaqThin8x8-8.bdf +++ /dev/null @@ -1,3440 +0,0 @@ -STARTFONT 2.1 -FONT -FontForge-Bm437 CompaqThin 8x8-Normal-R-Normal--8-60-96-96-C-80-WinRoman-0 -SIZE 6 96 96 -FONTBOUNDINGBOX 8 8 0 -1 -COMMENT "Generated by fontforge, http://fontforge.sourceforge.net" -COMMENT "FON conversion by VileR, 2020; license: CC BY-SA 4.0" -STARTPROPERTIES 34 -FOUNDRY "FontForge" -FAMILY_NAME "Bm437 CompaqThin 8x8" -WEIGHT_NAME "Normal" -SLANT "R" -SETWIDTH_NAME "Normal" -ADD_STYLE_NAME "" -PIXEL_SIZE 8 -POINT_SIZE 60 -RESOLUTION_X 96 -RESOLUTION_Y 96 -SPACING "C" -AVERAGE_WIDTH 80 -CHARSET_REGISTRY "WinRoman" -CHARSET_ENCODING "0" -FONTNAME_REGISTRY "" -CHARSET_COLLECTIONS "WinRoman" -FONT_NAME "Bm437CompaqThin8x8" -FACE_NAME "Bm437 CompaqThin 8x8" -COPYRIGHT "FON conversion by VileR, 2020; license: CC BY-SA 4.0" -FONT_VERSION "001.000" -FONT_ASCENT 6 -FONT_DESCENT 2 -UNDERLINE_POSITION -1 -UNDERLINE_THICKNESS 1 -X_HEIGHT 4 -CAP_HEIGHT 6 -RAW_ASCENT 800 -RAW_DESCENT 200 -NORM_SPACE 8 -RELATIVE_WEIGHT 40 -RELATIVE_SETWIDTH 50 -FIGURE_WIDTH 8 -AVG_LOWERCASE_WIDTH 80 -AVG_UPPERCASE_WIDTH 80 -ENDPROPERTIES -CHARS 256 -STARTCHAR uni0000 -ENCODING 0 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 1 7 -1 -BITMAP -00 -ENDCHAR -STARTCHAR uni0001 -ENCODING 1 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -7E -81 -A5 -81 -BD -99 -81 -7E -ENDCHAR -STARTCHAR uni0002 -ENCODING 2 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -7E -FF -DB -FF -C3 -E7 -FF -7E -ENDCHAR -STARTCHAR uni0003 -ENCODING 3 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -6C -FE -FE -FE -7C -38 -10 -ENDCHAR -STARTCHAR uni0004 -ENCODING 4 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -10 -38 -7C -FE -7C -38 -10 -ENDCHAR -STARTCHAR uni0005 -ENCODING 5 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -38 -7C -38 -FE -D6 -10 -10 -7C -ENDCHAR -STARTCHAR uni0006 -ENCODING 6 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -10 -10 -38 -7C -FE -7C -10 -7C -ENDCHAR -STARTCHAR uni0007 -ENCODING 7 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 4 2 1 -BITMAP -60 -F0 -F0 -60 -ENDCHAR -STARTCHAR uni0008 -ENCODING 8 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -FF -FF -E7 -C3 -C3 -E7 -FF -FF -ENDCHAR -STARTCHAR uni0009 -ENCODING 9 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 1 0 -BITMAP -78 -CC -84 -84 -CC -78 -ENDCHAR -STARTCHAR uni000A -ENCODING 10 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -FF -C3 -99 -BD -BD -99 -C3 -FF -ENDCHAR -STARTCHAR uni000B -ENCODING 11 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -1F -03 -05 -7D -84 -84 -84 -78 -ENDCHAR -STARTCHAR uni000C -ENCODING 12 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 1 -1 -BITMAP -7C -82 -82 -82 -7C -10 -7C -10 -ENDCHAR -STARTCHAR uni000D -ENCODING 13 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -3F -21 -3F -20 -20 -20 -60 -C0 -ENDCHAR -STARTCHAR uni000E -ENCODING 14 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -3F -21 -3F -21 -21 -23 -66 -C0 -ENDCHAR -STARTCHAR uni000F -ENCODING 15 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -99 -5A -3C -E7 -E7 -3C -5A -99 -ENDCHAR -STARTCHAR uni0010 -ENCODING 16 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -80 -E0 -F8 -FE -F8 -E0 -80 -ENDCHAR -STARTCHAR uni0011 -ENCODING 17 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -02 -0E -3E -FE -3E -0E -02 -ENDCHAR -STARTCHAR uni0012 -ENCODING 18 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 1 -1 -BITMAP -20 -70 -F8 -20 -20 -F8 -70 -20 -ENDCHAR -STARTCHAR uni0013 -ENCODING 19 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 2 0 -BITMAP -90 -90 -90 -90 -90 -00 -90 -ENDCHAR -STARTCHAR uni0014 -ENCODING 20 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -7F -92 -92 -72 -12 -12 -12 -ENDCHAR -STARTCHAR uni0015 -ENCODING 21 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -3E -61 -38 -44 -44 -38 -8C -78 -ENDCHAR -STARTCHAR uni0016 -ENCODING 22 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 3 1 0 -BITMAP -FC -FC -FC -ENDCHAR -STARTCHAR uni0017 -ENCODING 23 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -10 -38 -7C -10 -7C -38 -10 -FE -ENDCHAR -STARTCHAR uni0018 -ENCODING 24 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 1 0 -BITMAP -20 -70 -F8 -20 -20 -20 -20 -ENDCHAR -STARTCHAR uni0019 -ENCODING 25 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 1 0 -BITMAP -20 -20 -20 -20 -F8 -70 -20 -ENDCHAR -STARTCHAR uni001A -ENCODING 26 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 1 -BITMAP -08 -04 -FE -04 -08 -ENDCHAR -STARTCHAR uni001B -ENCODING 27 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 1 -BITMAP -20 -40 -FE -40 -20 -ENDCHAR -STARTCHAR uni001C -ENCODING 28 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 4 0 1 -BITMAP -80 -80 -80 -FE -ENDCHAR -STARTCHAR uni001D -ENCODING 29 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 1 -BITMAP -24 -66 -FF -66 -24 -ENDCHAR -STARTCHAR uni001E -ENCODING 30 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 1 -BITMAP -18 -3C -7E -FF -FF -ENDCHAR -STARTCHAR uni001F -ENCODING 31 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 1 -BITMAP -FF -FF -7E -3C -18 -ENDCHAR -STARTCHAR space -ENCODING 32 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 1 7 -1 -BITMAP -00 -ENDCHAR -STARTCHAR exclam -ENCODING 33 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -40 -E0 -E0 -40 -40 -00 -40 -ENDCHAR -STARTCHAR quotedbl -ENCODING 34 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 3 2 4 -BITMAP -90 -90 -90 -ENDCHAR -STARTCHAR numbersign -ENCODING 35 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -24 -24 -FF -24 -FF -24 -24 -ENDCHAR -STARTCHAR dollar -ENCODING 36 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -10 -7C -80 -78 -04 -F8 -10 -ENDCHAR -STARTCHAR percent -ENCODING 37 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 0 -BITMAP -C6 -CC -18 -30 -66 -C6 -ENDCHAR -STARTCHAR ampersand -ENCODING 38 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -38 -44 -38 -56 -84 -84 -76 -ENDCHAR -STARTCHAR quotesingle -ENCODING 39 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 3 1 4 -BITMAP -40 -40 -80 -ENDCHAR -STARTCHAR parenleft -ENCODING 40 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 1 0 -BITMAP -20 -40 -80 -80 -80 -40 -20 -ENDCHAR -STARTCHAR parenright -ENCODING 41 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -80 -40 -20 -20 -20 -40 -80 -ENDCHAR -STARTCHAR asterisk -ENCODING 42 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 1 -BITMAP -44 -38 -FE -38 -44 -ENDCHAR -STARTCHAR plus -ENCODING 43 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 1 -BITMAP -10 -10 -FE -10 -10 -ENDCHAR -STARTCHAR comma -ENCODING 44 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 3 2 -1 -BITMAP -40 -40 -80 -ENDCHAR -STARTCHAR hyphen -ENCODING 45 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 1 0 3 -BITMAP -FC -ENDCHAR -STARTCHAR period -ENCODING 46 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 2 3 0 -BITMAP -80 -80 -ENDCHAR -STARTCHAR slash -ENCODING 47 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -02 -04 -08 -10 -20 -40 -80 -ENDCHAR -STARTCHAR zero -ENCODING 48 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -7C -82 -86 -8A -92 -A2 -7C -ENDCHAR -STARTCHAR one -ENCODING 49 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 1 0 -BITMAP -20 -60 -20 -20 -20 -20 -F8 -ENDCHAR -STARTCHAR two -ENCODING 50 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -04 -10 -40 -84 -FC -ENDCHAR -STARTCHAR three -ENCODING 51 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -04 -38 -04 -84 -78 -ENDCHAR -STARTCHAR four -ENCODING 52 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -08 -18 -28 -48 -FE -08 -1C -ENDCHAR -STARTCHAR five -ENCODING 53 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -FC -80 -F8 -04 -04 -84 -78 -ENDCHAR -STARTCHAR six -ENCODING 54 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -38 -40 -80 -F8 -84 -84 -78 -ENDCHAR -STARTCHAR seven -ENCODING 55 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -FC -84 -08 -10 -20 -20 -20 -ENDCHAR -STARTCHAR eight -ENCODING 56 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -84 -78 -84 -84 -78 -ENDCHAR -STARTCHAR nine -ENCODING 57 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -84 -7C -04 -08 -70 -ENDCHAR -STARTCHAR colon -ENCODING 58 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 6 3 0 -BITMAP -80 -80 -00 -00 -80 -80 -ENDCHAR -STARTCHAR semicolon -ENCODING 59 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 7 2 -1 -BITMAP -40 -40 -00 -00 -40 -40 -80 -ENDCHAR -STARTCHAR less -ENCODING 60 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 0 0 -BITMAP -10 -20 -40 -80 -40 -20 -10 -ENDCHAR -STARTCHAR equal -ENCODING 61 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 4 0 1 -BITMAP -FC -00 -00 -FC -ENDCHAR -STARTCHAR greater -ENCODING 62 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 2 0 -BITMAP -80 -40 -20 -10 -20 -40 -80 -ENDCHAR -STARTCHAR question -ENCODING 63 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -04 -08 -10 -00 -10 -ENDCHAR -STARTCHAR at -ENCODING 64 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -7C -82 -9E -92 -9E -80 -78 -ENDCHAR -STARTCHAR A -ENCODING 65 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -30 -48 -84 -84 -FC -84 -84 -ENDCHAR -STARTCHAR B -ENCODING 66 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FC -42 -42 -7C -42 -42 -FC -ENDCHAR -STARTCHAR C -ENCODING 67 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -3C -42 -80 -80 -80 -42 -3C -ENDCHAR -STARTCHAR D -ENCODING 68 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -F8 -44 -42 -42 -42 -44 -F8 -ENDCHAR -STARTCHAR E -ENCODING 69 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FE -42 -48 -78 -48 -42 -FE -ENDCHAR -STARTCHAR F -ENCODING 70 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FE -42 -48 -78 -48 -40 -E0 -ENDCHAR -STARTCHAR G -ENCODING 71 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -3C -42 -80 -80 -8E -42 -3E -ENDCHAR -STARTCHAR H -ENCODING 72 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -84 -84 -FC -84 -84 -84 -ENDCHAR -STARTCHAR I -ENCODING 73 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -E0 -40 -40 -40 -40 -40 -E0 -ENDCHAR -STARTCHAR J -ENCODING 74 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 1 0 -BITMAP -1C -08 -08 -08 -88 -88 -70 -ENDCHAR -STARTCHAR K -ENCODING 75 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -C2 -44 -48 -70 -44 -42 -C2 -ENDCHAR -STARTCHAR L -ENCODING 76 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -E0 -40 -40 -40 -40 -42 -FE -ENDCHAR -STARTCHAR M -ENCODING 77 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -C6 -AA -92 -82 -82 -82 -ENDCHAR -STARTCHAR N -ENCODING 78 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -C2 -A2 -92 -8A -86 -82 -ENDCHAR -STARTCHAR O -ENCODING 79 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -38 -44 -82 -82 -82 -44 -38 -ENDCHAR -STARTCHAR P -ENCODING 80 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FC -42 -42 -7C -40 -40 -E0 -ENDCHAR -STARTCHAR Q -ENCODING 81 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -38 -44 -82 -82 -82 -54 -38 -04 -ENDCHAR -STARTCHAR R -ENCODING 82 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FC -42 -42 -7C -44 -42 -C2 -ENDCHAR -STARTCHAR S -ENCODING 83 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -80 -78 -04 -84 -78 -ENDCHAR -STARTCHAR T -ENCODING 84 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FE -92 -10 -10 -10 -10 -38 -ENDCHAR -STARTCHAR U -ENCODING 85 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -84 -84 -84 -84 -84 -FC -ENDCHAR -STARTCHAR V -ENCODING 86 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -84 -84 -84 -84 -48 -30 -ENDCHAR -STARTCHAR W -ENCODING 87 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -82 -82 -92 -AA -C6 -82 -ENDCHAR -STARTCHAR X -ENCODING 88 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -44 -28 -10 -28 -44 -82 -ENDCHAR -STARTCHAR Y -ENCODING 89 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -44 -28 -10 -10 -10 -38 -ENDCHAR -STARTCHAR Z -ENCODING 90 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -FE -84 -88 -10 -22 -42 -FE -ENDCHAR -STARTCHAR bracketleft -ENCODING 91 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 1 0 -BITMAP -F0 -80 -80 -80 -80 -80 -F0 -ENDCHAR -STARTCHAR backslash -ENCODING 92 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -80 -40 -20 -10 -08 -04 -02 -ENDCHAR -STARTCHAR bracketright -ENCODING 93 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 1 0 -BITMAP -F0 -10 -10 -10 -10 -10 -F0 -ENDCHAR -STARTCHAR asciicircum -ENCODING 94 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 4 0 3 -BITMAP -10 -28 -44 -82 -ENDCHAR -STARTCHAR underscore -ENCODING 95 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 1 0 -1 -BITMAP -FF -ENDCHAR -STARTCHAR grave -ENCODING 96 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 3 2 4 -BITMAP -80 -80 -40 -ENDCHAR -STARTCHAR a -ENCODING 97 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -78 -04 -7C -84 -76 -ENDCHAR -STARTCHAR b -ENCODING 98 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -C0 -40 -7C -42 -42 -42 -DC -ENDCHAR -STARTCHAR c -ENCODING 99 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -78 -84 -80 -84 -78 -ENDCHAR -STARTCHAR d -ENCODING 100 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -0C -04 -7C -84 -84 -84 -76 -ENDCHAR -STARTCHAR e -ENCODING 101 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -78 -84 -FC -80 -78 -ENDCHAR -STARTCHAR f -ENCODING 102 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -38 -44 -40 -E0 -40 -40 -E0 -ENDCHAR -STARTCHAR g -ENCODING 103 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 -1 -BITMAP -76 -84 -84 -7C -04 -F8 -ENDCHAR -STARTCHAR h -ENCODING 104 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -C0 -40 -4C -62 -42 -42 -C2 -ENDCHAR -STARTCHAR i -ENCODING 105 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -40 -00 -C0 -40 -40 -40 -E0 -ENDCHAR -STARTCHAR j -ENCODING 106 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 8 0 -1 -BITMAP -04 -00 -04 -04 -04 -84 -84 -78 -ENDCHAR -STARTCHAR k -ENCODING 107 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -C0 -40 -42 -44 -78 -44 -C2 -ENDCHAR -STARTCHAR l -ENCODING 108 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -C0 -40 -40 -40 -40 -40 -E0 -ENDCHAR -STARTCHAR m -ENCODING 109 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -EC -92 -92 -92 -82 -ENDCHAR -STARTCHAR n -ENCODING 110 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -F8 -84 -84 -84 -84 -ENDCHAR -STARTCHAR o -ENCODING 111 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -78 -84 -84 -84 -78 -ENDCHAR -STARTCHAR p -ENCODING 112 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 -1 -BITMAP -DC -42 -42 -7C -40 -E0 -ENDCHAR -STARTCHAR q -ENCODING 113 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 -1 -BITMAP -76 -84 -84 -7C -04 -0E -ENDCHAR -STARTCHAR r -ENCODING 114 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -DC -62 -40 -40 -E0 -ENDCHAR -STARTCHAR s -ENCODING 115 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -7C -80 -78 -04 -F8 -ENDCHAR -STARTCHAR t -ENCODING 116 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 1 0 -BITMAP -20 -20 -F8 -20 -20 -24 -18 -ENDCHAR -STARTCHAR u -ENCODING 117 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -84 -84 -84 -84 -76 -ENDCHAR -STARTCHAR v -ENCODING 118 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -84 -84 -84 -48 -30 -ENDCHAR -STARTCHAR w -ENCODING 119 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -82 -92 -AA -C6 -82 -ENDCHAR -STARTCHAR x -ENCODING 120 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -84 -48 -30 -48 -84 -ENDCHAR -STARTCHAR y -ENCODING 121 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 0 -1 -BITMAP -84 -84 -84 -7C -04 -F8 -ENDCHAR -STARTCHAR z -ENCODING 122 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 0 -BITMAP -FC -88 -30 -44 -FC -ENDCHAR -STARTCHAR braceleft -ENCODING 123 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 0 0 -BITMAP -18 -20 -20 -C0 -20 -20 -18 -ENDCHAR -STARTCHAR bar -ENCODING 124 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 7 3 0 -BITMAP -80 -80 -80 -00 -80 -80 -80 -ENDCHAR -STARTCHAR braceright -ENCODING 125 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 1 0 -BITMAP -C0 -20 -20 -18 -20 -20 -C0 -ENDCHAR -STARTCHAR asciitilde -ENCODING 126 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 2 0 5 -BITMAP -64 -98 -ENDCHAR -STARTCHAR uni007F -ENCODING 127 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 0 -BITMAP -10 -28 -44 -82 -82 -FE -ENDCHAR -STARTCHAR Euro -ENCODING 128 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 8 0 -1 -BITMAP -78 -84 -80 -84 -78 -18 -04 -78 -ENDCHAR -STARTCHAR NameMe.129 -ENCODING 129 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 0 -BITMAP -84 -00 -84 -84 -84 -7A -ENDCHAR -STARTCHAR quotesinglbase -ENCODING 130 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -0C -00 -78 -84 -FC -80 -78 -ENDCHAR -STARTCHAR florin -ENCODING 131 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -7E -81 -3C -02 -3E -42 -3D -ENDCHAR -STARTCHAR quotedblbase -ENCODING 132 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -84 -00 -78 -04 -7C -84 -7A -ENDCHAR -STARTCHAR ellipsis -ENCODING 133 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -C0 -00 -78 -04 -7C -84 -7A -ENDCHAR -STARTCHAR dagger -ENCODING 134 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -20 -20 -78 -04 -7C -84 -7A -ENDCHAR -STARTCHAR daggerdbl -ENCODING 135 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 0 -1 -BITMAP -78 -80 -80 -78 -04 -38 -ENDCHAR -STARTCHAR circumflex -ENCODING 136 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -7E -81 -3C -42 -7E -40 -3C -ENDCHAR -STARTCHAR perthousand -ENCODING 137 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -00 -78 -84 -FC -80 -78 -ENDCHAR -STARTCHAR Scaron -ENCODING 138 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -60 -00 -78 -84 -FC -80 -78 -ENDCHAR -STARTCHAR guilsinglleft -ENCODING 139 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 1 0 -BITMAP -90 -00 -60 -20 -20 -20 -70 -ENDCHAR -STARTCHAR OE -ENCODING 140 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -7C -82 -30 -10 -10 -10 -38 -ENDCHAR -STARTCHAR NameMe.141 -ENCODING 141 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 7 1 0 -BITMAP -C0 -00 -60 -20 -20 -20 -70 -ENDCHAR -STARTCHAR Zcaron -ENCODING 142 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -82 -38 -44 -82 -FE -82 -82 -ENDCHAR -STARTCHAR NameMe.143 -ENCODING 143 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -30 -10 -44 -82 -FE -82 -82 -ENDCHAR -STARTCHAR NameMe.144 -ENCODING 144 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -0C -FC -40 -78 -40 -40 -FC -ENDCHAR -STARTCHAR quoteleft -ENCODING 145 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 0 -BITMAP -67 -19 -7F -98 -77 -ENDCHAR -STARTCHAR quoteright -ENCODING 146 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -3F -48 -88 -FF -88 -88 -8F -ENDCHAR -STARTCHAR quotedblleft -ENCODING 147 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -78 -84 -84 -84 -78 -ENDCHAR -STARTCHAR quotedblright -ENCODING 148 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -00 -78 -84 -84 -84 -78 -ENDCHAR -STARTCHAR bullet -ENCODING 149 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -C0 -00 -78 -84 -84 -84 -78 -ENDCHAR -STARTCHAR endash -ENCODING 150 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 7 0 0 -BITMAP -7E -81 -42 -42 -42 -42 -3C -ENDCHAR -STARTCHAR emdash -ENCODING 151 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 1 0 -BITMAP -40 -20 -84 -84 -84 -84 -78 -ENDCHAR -STARTCHAR tilde -ENCODING 152 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 8 0 -1 -BITMAP -84 -00 -84 -84 -84 -7C -04 -F8 -ENDCHAR -STARTCHAR trademark -ENCODING 153 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 1 0 -BITMAP -84 -30 -48 -84 -84 -48 -30 -ENDCHAR -STARTCHAR scaron -ENCODING 154 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -84 -00 -84 -84 -84 -84 -78 -ENDCHAR -STARTCHAR guilsinglright -ENCODING 155 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -10 -10 -7E -80 -80 -7E -10 -10 -ENDCHAR -STARTCHAR oe -ENCODING 156 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -38 -44 -44 -E0 -40 -82 -FC -ENDCHAR -STARTCHAR NameMe.157 -ENCODING 157 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 1 -1 -BITMAP -88 -50 -20 -F8 -20 -F8 -20 -20 -ENDCHAR -STARTCHAR zcaron -ENCODING 158 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -F8 -84 -84 -F8 -82 -87 -82 -83 -ENDCHAR -STARTCHAR Ydieresis -ENCODING 159 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -0C -12 -10 -38 -10 -10 -90 -60 -ENDCHAR -STARTCHAR uni00A0 -ENCODING 160 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -1C -00 -78 -04 -7C -84 -7A -ENDCHAR -STARTCHAR exclamdown -ENCODING 161 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -60 -00 -C0 -40 -40 -40 -E0 -ENDCHAR -STARTCHAR cent -ENCODING 162 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -08 -10 -78 -84 -84 -84 -78 -ENDCHAR -STARTCHAR sterling -ENCODING 163 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -08 -10 -84 -84 -84 -84 -7A -ENDCHAR -STARTCHAR currency -ENCODING 164 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -64 -98 -B8 -C4 -84 -84 -84 -ENDCHAR -STARTCHAR yen -ENCODING 165 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -64 -98 -84 -A4 -94 -84 -84 -ENDCHAR -STARTCHAR brokenbar -ENCODING 166 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 1 1 -BITMAP -78 -88 -88 -74 -00 -FC -ENDCHAR -STARTCHAR section -ENCODING 167 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 6 1 1 -BITMAP -70 -88 -88 -70 -00 -F8 -ENDCHAR -STARTCHAR dieresis -ENCODING 168 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -20 -00 -20 -40 -80 -84 -78 -ENDCHAR -STARTCHAR copyright -ENCODING 169 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 3 0 1 -BITMAP -FC -C0 -C0 -ENDCHAR -STARTCHAR ordfeminine -ENCODING 170 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 3 0 1 -BITMAP -FC -0C -0C -ENDCHAR -STARTCHAR guillemotleft -ENCODING 171 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -42 -44 -48 -56 -69 -42 -84 -0F -ENDCHAR -STARTCHAR logicalnot -ENCODING 172 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -42 -44 -48 -53 -65 -49 -8F -01 -ENDCHAR -STARTCHAR uni00AD -ENCODING 173 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 3 7 2 0 -BITMAP -40 -40 -00 -40 -E0 -E0 -40 -ENDCHAR -STARTCHAR registered -ENCODING 174 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 1 -BITMAP -22 -44 -88 -44 -22 -ENDCHAR -STARTCHAR macron -ENCODING 175 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 1 1 -BITMAP -88 -44 -22 -44 -88 -ENDCHAR -STARTCHAR degree -ENCODING 176 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -22 -88 -22 -88 -22 -88 -22 -88 -ENDCHAR -STARTCHAR plusminus -ENCODING 177 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -55 -AA -55 -AA -55 -AA -55 -AA -ENDCHAR -STARTCHAR uni00B2 -ENCODING 178 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -DB -77 -DB -EE -DB -77 -DB -EE -ENDCHAR -STARTCHAR uni00B3 -ENCODING 179 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 8 3 -1 -BITMAP -C0 -C0 -C0 -C0 -C0 -C0 -C0 -C0 -ENDCHAR -STARTCHAR acute -ENCODING 180 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 0 -1 -BITMAP -18 -18 -18 -18 -F8 -18 -18 -18 -ENDCHAR -STARTCHAR mu -ENCODING 181 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 0 -1 -BITMAP -18 -18 -F8 -18 -F8 -18 -18 -18 -ENDCHAR -STARTCHAR paragraph -ENCODING 182 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -36 -36 -36 -36 -F6 -36 -36 -36 -ENDCHAR -STARTCHAR periodcentered -ENCODING 183 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 4 0 -1 -BITMAP -FE -36 -36 -36 -ENDCHAR -STARTCHAR cedilla -ENCODING 184 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 6 0 -1 -BITMAP -F8 -18 -F8 -18 -18 -18 -ENDCHAR -STARTCHAR uni00B9 -ENCODING 185 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 0 -1 -BITMAP -36 -36 -F6 -06 -F6 -36 -36 -36 -ENDCHAR -STARTCHAR ordmasculine -ENCODING 186 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 2 -1 -BITMAP -D8 -D8 -D8 -D8 -D8 -D8 -D8 -D8 -ENDCHAR -STARTCHAR guillemotright -ENCODING 187 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 -1 -BITMAP -FE -06 -F6 -36 -36 -36 -ENDCHAR -STARTCHAR onequarter -ENCODING 188 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 2 -BITMAP -36 -36 -F6 -06 -FE -ENDCHAR -STARTCHAR onehalf -ENCODING 189 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 2 -BITMAP -36 -36 -36 -36 -FE -ENDCHAR -STARTCHAR threequarters -ENCODING 190 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 5 0 2 -BITMAP -18 -18 -F8 -18 -F8 -ENDCHAR -STARTCHAR questiondown -ENCODING 191 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 4 0 -1 -BITMAP -F8 -18 -18 -18 -ENDCHAR -STARTCHAR Agrave -ENCODING 192 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 5 3 2 -BITMAP -C0 -C0 -C0 -C0 -F8 -ENDCHAR -STARTCHAR Aacute -ENCODING 193 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 2 -BITMAP -18 -18 -18 -18 -FF -ENDCHAR -STARTCHAR Acircumflex -ENCODING 194 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 4 0 -1 -BITMAP -FF -18 -18 -18 -ENDCHAR -STARTCHAR Atilde -ENCODING 195 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 3 -1 -BITMAP -C0 -C0 -C0 -C0 -F8 -C0 -C0 -C0 -ENDCHAR -STARTCHAR Adieresis -ENCODING 196 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 1 0 2 -BITMAP -FF -ENDCHAR -STARTCHAR Aring -ENCODING 197 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -18 -18 -18 -18 -FF -18 -18 -18 -ENDCHAR -STARTCHAR AE -ENCODING 198 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 3 -1 -BITMAP -C0 -C0 -F8 -C0 -F8 -C0 -C0 -C0 -ENDCHAR -STARTCHAR Ccedilla -ENCODING 199 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 8 2 -1 -BITMAP -D8 -D8 -D8 -D8 -DC -D8 -D8 -D8 -ENDCHAR -STARTCHAR Egrave -ENCODING 200 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 2 2 -BITMAP -D8 -D8 -DC -C0 -FC -ENDCHAR -STARTCHAR Eacute -ENCODING 201 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 2 -1 -BITMAP -FC -C0 -DC -D8 -D8 -D8 -ENDCHAR -STARTCHAR Ecircumflex -ENCODING 202 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 2 -BITMAP -36 -36 -F7 -00 -FF -ENDCHAR -STARTCHAR Edieresis -ENCODING 203 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 6 0 -1 -BITMAP -FF -00 -F7 -36 -36 -36 -ENDCHAR -STARTCHAR Igrave -ENCODING 204 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 8 2 -1 -BITMAP -D8 -D8 -DC -C0 -DC -D8 -D8 -D8 -ENDCHAR -STARTCHAR Iacute -ENCODING 205 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 3 0 2 -BITMAP -FF -00 -FF -ENDCHAR -STARTCHAR Icircumflex -ENCODING 206 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -36 -36 -F7 -00 -F7 -36 -36 -36 -ENDCHAR -STARTCHAR Idieresis -ENCODING 207 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 2 -BITMAP -18 -18 -FF -00 -FF -ENDCHAR -STARTCHAR Eth -ENCODING 208 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 5 0 2 -BITMAP -36 -36 -36 -36 -FF -ENDCHAR -STARTCHAR Ntilde -ENCODING 209 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 6 0 -1 -BITMAP -FF -00 -FF -18 -18 -18 -ENDCHAR -STARTCHAR Ograve -ENCODING 210 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 4 0 -1 -BITMAP -FF -36 -36 -36 -ENDCHAR -STARTCHAR Oacute -ENCODING 211 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 2 2 -BITMAP -D8 -D8 -D8 -D8 -FC -ENDCHAR -STARTCHAR Ocircumflex -ENCODING 212 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 5 3 2 -BITMAP -C0 -C0 -F8 -C0 -F8 -ENDCHAR -STARTCHAR Otilde -ENCODING 213 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 6 3 -1 -BITMAP -F8 -C0 -F8 -C0 -C0 -C0 -ENDCHAR -STARTCHAR Odieresis -ENCODING 214 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 4 2 -1 -BITMAP -FC -D8 -D8 -D8 -ENDCHAR -STARTCHAR multiply -ENCODING 215 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -36 -36 -36 -36 -FF -36 -36 -36 -ENDCHAR -STARTCHAR Oslash -ENCODING 216 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -18 -18 -FF -18 -FF -18 -18 -18 -ENDCHAR -STARTCHAR Ugrave -ENCODING 217 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 5 0 2 -BITMAP -18 -18 -18 -18 -F8 -ENDCHAR -STARTCHAR Uacute -ENCODING 218 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 4 3 -1 -BITMAP -F8 -C0 -C0 -C0 -ENDCHAR -STARTCHAR Ucircumflex -ENCODING 219 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -FF -FF -FF -FF -FF -FF -FF -FF -ENDCHAR -STARTCHAR Udieresis -ENCODING 220 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 4 0 -1 -BITMAP -FF -FF -FF -FF -ENDCHAR -STARTCHAR Yacute -ENCODING 221 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 8 0 -1 -BITMAP -F0 -F0 -F0 -F0 -F0 -F0 -F0 -F0 -ENDCHAR -STARTCHAR Thorn -ENCODING 222 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 8 4 -1 -BITMAP -F0 -F0 -F0 -F0 -F0 -F0 -F0 -F0 -ENDCHAR -STARTCHAR germandbls -ENCODING 223 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 4 0 3 -BITMAP -FF -FF -FF -FF -ENDCHAR -STARTCHAR agrave -ENCODING 224 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -62 -94 -88 -94 -62 -ENDCHAR -STARTCHAR aacute -ENCODING 225 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 -1 -BITMAP -78 -84 -F8 -84 -F8 -80 -80 -ENDCHAR -STARTCHAR acircumflex -ENCODING 226 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 6 0 0 -BITMAP -FC -84 -80 -80 -80 -80 -ENDCHAR -STARTCHAR atilde -ENCODING 227 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 0 -BITMAP -FE -28 -28 -28 -28 -28 -ENDCHAR -STARTCHAR adieresis -ENCODING 228 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -FC -84 -40 -20 -40 -84 -FC -ENDCHAR -STARTCHAR aring -ENCODING 229 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 5 0 0 -BITMAP -7E -88 -88 -88 -70 -ENDCHAR -STARTCHAR ae -ENCODING 230 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 -1 -BITMAP -42 -42 -42 -42 -7C -40 -80 -ENDCHAR -STARTCHAR ccedilla -ENCODING 231 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 6 0 0 -BITMAP -76 -88 -08 -08 -08 -08 -ENDCHAR -STARTCHAR egrave -ENCODING 232 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 0 -1 -BITMAP -F8 -20 -70 -88 -88 -70 -20 -F8 -ENDCHAR -STARTCHAR eacute -ENCODING 233 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -38 -44 -82 -FE -82 -44 -38 -ENDCHAR -STARTCHAR ecircumflex -ENCODING 234 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 7 0 0 -BITMAP -38 -44 -82 -82 -28 -28 -6C -ENDCHAR -STARTCHAR edieresis -ENCODING 235 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -1C -10 -08 -7C -84 -84 -78 -ENDCHAR -STARTCHAR igrave -ENCODING 236 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 4 0 1 -BITMAP -7C -92 -92 -7C -ENDCHAR -STARTCHAR iacute -ENCODING 237 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 8 8 0 -1 -BITMAP -02 -04 -7E -89 -91 -7E -40 -80 -ENDCHAR -STARTCHAR icircumflex -ENCODING 238 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 0 0 -BITMAP -38 -40 -80 -F8 -80 -40 -38 -ENDCHAR -STARTCHAR idieresis -ENCODING 239 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -78 -84 -84 -84 -84 -84 -84 -ENDCHAR -STARTCHAR eth -ENCODING 240 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 1 -BITMAP -FC -00 -FC -00 -FC -ENDCHAR -STARTCHAR ntilde -ENCODING 241 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -20 -20 -FC -20 -20 -00 -FC -ENDCHAR -STARTCHAR ograve -ENCODING 242 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -40 -20 -10 -20 -40 -00 -FC -ENDCHAR -STARTCHAR oacute -ENCODING 243 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 7 0 0 -BITMAP -10 -20 -40 -20 -10 -00 -FC -ENDCHAR -STARTCHAR ocircumflex -ENCODING 244 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 3 -1 -BITMAP -70 -88 -88 -80 -80 -80 -80 -80 -ENDCHAR -STARTCHAR otilde -ENCODING 245 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 8 0 -1 -BITMAP -08 -08 -08 -08 -08 -88 -88 -70 -ENDCHAR -STARTCHAR odieresis -ENCODING 246 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 7 0 0 -BITMAP -20 -20 -00 -F8 -00 -20 -20 -ENDCHAR -STARTCHAR divide -ENCODING 247 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 6 5 0 1 -BITMAP -64 -98 -00 -64 -98 -ENDCHAR -STARTCHAR oslash -ENCODING 248 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 4 1 3 -BITMAP -70 -88 -88 -70 -ENDCHAR -STARTCHAR ugrave -ENCODING 249 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 2 3 2 -BITMAP -C0 -C0 -ENDCHAR -STARTCHAR uacute -ENCODING 250 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 2 1 3 2 -BITMAP -C0 -ENDCHAR -STARTCHAR ucircumflex -ENCODING 251 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 7 8 1 -1 -BITMAP -0E -08 -08 -08 -C8 -48 -38 -18 -ENDCHAR -STARTCHAR udieresis -ENCODING 252 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 5 5 1 2 -BITMAP -B0 -88 -88 -88 -88 -ENDCHAR -STARTCHAR yacute -ENCODING 253 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 5 1 2 -BITMAP -60 -90 -20 -40 -F0 -ENDCHAR -STARTCHAR thorn -ENCODING 254 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 4 4 2 1 -BITMAP -F0 -F0 -F0 -F0 -ENDCHAR -STARTCHAR ydieresis -ENCODING 255 -SWIDTH 1000 0 -DWIDTH 8 0 -BBX 1 1 7 -1 -BITMAP -00 -ENDCHAR -ENDFONT diff --git a/font-converter/bdf2asm.ts b/font-converter/bdf2asm/bdf2asm.ts similarity index 84% rename from font-converter/bdf2asm.ts rename to font-converter/bdf2asm/bdf2asm.ts index 8c0ad08..2873ae2 100644 --- a/font-converter/bdf2asm.ts +++ b/font-converter/bdf2asm/bdf2asm.ts @@ -7,15 +7,27 @@ import { readFileSync, writeFileSync } from 'node:fs'; -const fontName = 'Bm437CompaqThin8x8-8'; +if (process.argv.length > 3) { + console.log('too many arguments'); + process.exit(); +} +if (process.argv.length < 3) { + console.log('too few arguments'); + process.exit(); +} -const content = readFileSync(`./font-converter/${fontName}.bdf`, 'binary'); +const argument = process.argv[2]; // first argument + +const baseName = argument.split('.bdf')[0]; +const bdfFileName = argument; + +const content = readFileSync(`./font-converter/bdf2asm/files/${bdfFileName}`, 'binary'); let newContent = ''; const lines = content.split(String.fromCharCode(0x0d) + String.fromCharCode(0x0a)); -newContent = newContent.concat(`// Font: ${fontName}\n\n`); +newContent = newContent.concat(`// Font: ${baseName}\n\n`); lines.forEach((value, index, array) => { if (value.substring(0, 9) === 'STARTCHAR') { @@ -76,4 +88,4 @@ lines.forEach((value, index, array) => { } }); -writeFileSync(`./font-converter/${fontName}.asm`, newContent, 'binary'); +writeFileSync(`./font-converter/bdf2asm/files/${baseName}.asm`, newContent, 'binary'); diff --git a/font-converter/fnt2asm/BitmapFontGeneratorFont.ts b/font-converter/fnt2asm/BitmapFontGeneratorFont.ts new file mode 100644 index 0000000..ec0acdc --- /dev/null +++ b/font-converter/fnt2asm/BitmapFontGeneratorFont.ts @@ -0,0 +1,69 @@ +export class BitmapFontGeneratorFont { + font: Font; +} + +export class Font { + info: Info; + common: Common; + pages: Pages | SinglePage; + chars: Chars; +} + +export class Info { + face: string; + size: string; + bold: string; + italic: string; + charset: string; + unicode: string; + stretchH: string; + smooth: string; + aa: string; + padding: string; + spacing: string; + outline: string; +} + +export class Common { + lineHeight: string; + base: string; + scaleW: string; + scaleH: string; + pages: string; + packed: string; + alphaChnl: string; + redChnl: string; + greenChnl: string; + blueChnl: string; +} + +export class Pages { + page: Page[]; +} + +export class SinglePage { + page: Page; +} + +export class Page { + id: string; + file: string; +} + +export class Chars { + count: string; + char: Char[]; +} + +export class Char { + id: string; + x: string; + y: string; + width: string; + height: string; + xOffset: string; + yOffset: string; + xadvance: string; + page: string; + chnl: string; +} diff --git a/font-converter/fnt2asm/codepage437ToUnicode.ts b/font-converter/fnt2asm/codepage437ToUnicode.ts new file mode 100644 index 0000000..47d4973 --- /dev/null +++ b/font-converter/fnt2asm/codepage437ToUnicode.ts @@ -0,0 +1,259 @@ +// Code, Symbol, Unicode +export const codepage437ToUnicode = [ + [0x00, '�', 0x0000], + [0x01, '☺', 0x263a], + [0x02, '☻', 0x263b], + [0x03, '♥', 0x2665], + [0x04, '♦', 0x2666], + [0x05, '♣', 0x2663], + [0x06, '♠', 0x2660], + [0x07, '•', 0x2022], + [0x08, '◘', 0x25d8], + [0x09, '○', 0x25cb], + [0x0a, '◙', 0x25d9], + [0x0b, '♂', 0x2642], + [0x0c, '♀', 0x2640], + [0x0d, '♪', 0x266a], + [0x0e, '♫', 0x266b], + [0x0f, '☼', 0x263c], + [0x10, '►', 0x25ba], + [0x11, '◄', 0x25c4], + [0x12, '↕', 0x2195], + [0x13, '‼', 0x203c], + [0x14, '¶', 0x00b6], + [0x15, '§', 0x00a7], + [0x16, '▬', 0x25ac], + [0x17, '↨', 0x21a8], + [0x18, '↑', 0x2191], + [0x19, '↓', 0x2193], + [0x1a, '→', 0x2192], + [0x1b, '←', 0x2190], + [0x1c, '∟', 0x221f], + [0x1d, '↔', 0x2194], + [0x1e, '▲', 0x25b2], + [0x1f, '▼', 0x25bc], + [0x20, ' ', 0x0020], + [0x21, '!', 0x0021], + [0x22, '"', 0x0022], + [0x23, '#', 0x0023], + [0x24, '$', 0x0024], + [0x25, '%', 0x0025], + [0x26, '&', 0x0026], + [0x27, "'", 0x0027], + [0x28, '(', 0x0028], + [0x29, ')', 0x0029], + [0x2a, '*', 0x002a], + [0x2b, '+', 0x002b], + [0x2c, ',', 0x002c], + [0x2d, '-', 0x002d], + [0x2e, '.', 0x002e], + [0x2f, '/', 0x002f], + [0x30, '0', 0x0030], + [0x31, '1', 0x0031], + [0x32, '2', 0x0032], + [0x33, '3', 0x0033], + [0x34, '4', 0x0034], + [0x35, '5', 0x0035], + [0x36, '6', 0x0036], + [0x37, '7', 0x0037], + [0x38, '8', 0x0038], + [0x39, '9', 0x0039], + [0x3a, ':', 0x003a], + [0x3b, ';', 0x003b], + [0x3c, '<', 0x003c], + [0x3d, '=', 0x003d], + [0x3e, '>', 0x003e], + [0x3f, '?', 0x003f], + [0x40, '@', 0x0040], + [0x41, 'A', 0x0041], + [0x42, 'B', 0x0042], + [0x43, 'C', 0x0043], + [0x44, 'D', 0x0044], + [0x45, 'E', 0x0045], + [0x46, 'F', 0x0046], + [0x47, 'G', 0x0047], + [0x48, 'H', 0x0048], + [0x49, 'I', 0x0049], + [0x4a, 'J', 0x004a], + [0x4b, 'K', 0x004b], + [0x4c, 'L', 0x004c], + [0x4d, 'M', 0x004d], + [0x4e, 'N', 0x004e], + [0x4f, 'O', 0x004f], + [0x50, 'P', 0x0050], + [0x51, 'Q', 0x0051], + [0x52, 'R', 0x0052], + [0x53, 'S', 0x0053], + [0x54, 'T', 0x0054], + [0x55, 'U', 0x0055], + [0x56, 'V', 0x0056], + [0x57, 'W', 0x0057], + [0x58, 'X', 0x0058], + [0x59, 'Y', 0x0059], + [0x5a, 'Z', 0x005a], + [0x5b, '[', 0x005b], + [0x5c, '\\', 0x005c], + [0x5d, ']', 0x005d], + [0x5e, '^', 0x005e], + [0x5f, '_', 0x005f], + [0x60, '`', 0x0060], + [0x61, 'a', 0x0061], + [0x62, 'b', 0x0062], + [0x63, 'c', 0x0063], + [0x64, 'd', 0x0064], + [0x65, 'e', 0x0065], + [0x66, 'f', 0x0066], + [0x67, 'g', 0x0067], + [0x68, 'h', 0x0068], + [0x69, 'i', 0x0069], + [0x6a, 'j', 0x006a], + [0x6b, 'k', 0x006b], + [0x6c, 'l', 0x006c], + [0x6d, 'm', 0x006d], + [0x6e, 'n', 0x006e], + [0x6f, 'o', 0x006f], + [0x70, 'p', 0x0070], + [0x71, 'q', 0x0071], + [0x72, 'r', 0x0072], + [0x73, 's', 0x0073], + [0x74, 't', 0x0074], + [0x75, 'u', 0x0075], + [0x76, 'v', 0x0076], + [0x77, 'w', 0x0077], + [0x78, 'x', 0x0078], + [0x79, 'y', 0x0079], + [0x7a, 'z', 0x007a], + [0x7b, '{', 0x007b], + [0x7c, '|', 0x007c], + [0x7d, '}', 0x007d], + [0x7e, '~', 0x007e], + [0x7f, '⌂', 0x2302], + [0x80, 'Ç', 0x00c7], + [0x81, 'ü', 0x00fc], + [0x82, 'é', 0x00e9], + [0x83, 'â', 0x00e2], + [0x84, 'ä', 0x00e4], + [0x85, 'à', 0x00e0], + [0x86, 'å', 0x00e5], + [0x87, 'ç', 0x00e7], + [0x88, 'ê', 0x00ea], + [0x89, 'ë', 0x00eb], + [0x8a, 'è', 0x00e8], + [0x8b, 'ï', 0x00ef], + [0x8c, 'î', 0x00ee], + [0x8d, 'ì', 0x00ec], + [0x8e, 'Ä', 0x00c4], + [0x8f, 'Å', 0x00c5], + [0x90, 'É', 0x00c9], + [0x91, 'æ', 0x00e6], + [0x92, 'Æ', 0x00c6], + [0x93, 'ô', 0x00f4], + [0x94, 'ö', 0x00f6], + [0x95, 'ò', 0x00f2], + [0x96, 'û', 0x00fb], + [0x97, 'ù', 0x00f9], + [0x98, 'ÿ', 0x00ff], + [0x99, 'Ö', 0x00d6], + [0x9a, 'Ü', 0x00dc], + [0x9b, '¢', 0x00a2], + [0x9c, '£', 0x00a3], + [0x9d, '¥', 0x00a5], + [0x9e, '₧', 0x20a7], + [0x9f, 'ƒ', 0x0192], + [0xa0, 'á', 0x00e1], + [0xa1, 'í', 0x00ed], + [0xa2, 'ó', 0x00f3], + [0xa3, 'ú', 0x00fa], + [0xa4, 'ñ', 0x00f1], + [0xa5, 'Ñ', 0x00d1], + [0xa6, 'ª', 0x00aa], + [0xa7, 'º', 0x00ba], + [0xa8, '¿', 0x00bf], + [0xa9, '⌐', 0x2310], + [0xaa, '¬', 0x00ac], + [0xab, '½', 0x00bd], + [0xac, '¼', 0x00bc], + [0xad, '¡', 0x00a1], + [0xae, '«', 0x00ab], + [0xaf, '»', 0x00bb], + [0xb0, '░', 0x2591], + [0xb1, '▒', 0x2592], + [0xb2, '▓', 0x2593], + [0xb3, '│', 0x2502], + [0xb4, '┤', 0x2524], + [0xb5, '╡', 0x2561], + [0xb6, '╢', 0x2562], + [0xb7, '╖', 0x2556], + [0xb8, '╕', 0x2555], + [0xb9, '╣', 0x2563], + [0xba, '║', 0x2551], + [0xbb, '╗', 0x2557], + [0xbc, '╝', 0x255d], + [0xbd, '╜', 0x255c], + [0xbe, '╛', 0x255b], + [0xbf, '┐', 0x2510], + [0xc0, '└', 0x2514], + [0xc1, '┴', 0x2534], + [0xc2, '┬', 0x252c], + [0xc3, '├', 0x251c], + [0xc4, '─', 0x2500], + [0xc5, '┼', 0x253c], + [0xc6, '╞', 0x255e], + [0xc7, '╟', 0x255f], + [0xc8, '╚', 0x255a], + [0xc9, '╔', 0x2554], + [0xca, '╩', 0x2569], + [0xcb, '╦', 0x2566], + [0xcc, '╠', 0x2560], + [0xcd, '═', 0x2550], + [0xce, '╬', 0x256c], + [0xcf, '╧', 0x2567], + [0xd0, '╨', 0x2568], + [0xd1, '╤', 0x2564], + [0xd2, '╥', 0x2565], + [0xd3, '╙', 0x2559], + [0xd4, '╘', 0x2558], + [0xd5, '╒', 0x2552], + [0xd6, '╓', 0x2553], + [0xd7, '╫', 0x256b], + [0xd8, '╪', 0x256a], + [0xd9, '┘', 0x2518], + [0xda, '┌', 0x250c], + [0xdb, '█', 0x2588], + [0xdc, '▄', 0x2584], + [0xdd, '▌', 0x258c], + [0xde, '▐', 0x2590], + [0xdf, '▀', 0x2580], + [0xe0, 'α', 0x03b1], + [0xe1, 'ß', 0x00df], + [0xe2, 'Γ', 0x0393], + [0xe3, 'π', 0x03c0], + [0xe4, 'Σ', 0x03a3], + [0xe5, 'σ', 0x03c3], + [0xe6, 'µ', 0x00b5], + [0xe7, 'τ', 0x03c4], + [0xe8, 'Φ', 0x03a6], + [0xe9, 'Θ', 0x0398], + [0xea, 'Ω', 0x03a9], + [0xeb, 'δ', 0x03b4], + [0xec, '∞', 0x221e], + [0xed, 'φ', 0x03c6], + [0xee, 'ε', 0x03b5], + [0xef, '∩', 0x2229], + [0xf0, '≡', 0x2261], + [0xf1, '±', 0x00b1], + [0xf2, '≥', 0x2265], + [0xf3, '≤', 0x2264], + [0xf4, '⌠', 0x2320], + [0xf5, '⌡', 0x2321], + [0xf6, '÷', 0x00f7], + [0xf7, '≈', 0x2248], + [0xf8, '°', 0x00b0], + [0xf9, '∙', 0x2219], + [0xfa, '·', 0x00b7], + [0xfb, '√', 0x221a], + [0xfc, 'ⁿ', 0x207f], + [0xfd, '²', 0x00b2], + [0xfe, '■', 0x25a0], + [0xff, ' ', 0x00a0] +]; diff --git a/font-converter/fnt2asm/default.bmfc b/font-converter/fnt2asm/default.bmfc new file mode 100644 index 0000000..02082f8 --- /dev/null +++ b/font-converter/fnt2asm/default.bmfc @@ -0,0 +1,65 @@ +# AngelCode Bitmap Font Generator configuration file +fileVersion=1 + +# font settings +fontName=Modern DOS 8x8 +fontFile= +charSet=0 +fontSize=8 +aa=1 +scaleH=100 +useSmoothing=0 +isBold=0 +isItalic=0 +useUnicode=1 +disableBoxChars=1 +outputInvalidCharGlyph=1 +dontIncludeKerningPairs=1 +useHinting=1 +renderFromOutline=0 +useClearType=1 +autoFitNumPages=0 +autoFitFontSizeMin=0 +autoFitFontSizeMax=0 + +# character alignment +paddingDown=0 +paddingUp=0 +paddingRight=0 +paddingLeft=0 +spacingHoriz=0 +spacingVert=0 +useFixedHeight=1 +forceZero=1 +widthPaddingFactor=0.00 + +# output file +outWidth=256 +outHeight=256 +outBitDepth=8 +fontDescFormat=1 +fourChnlPacked=0 +textureFormat=tga +textureCompression=0 +alphaChnl=1 +redChnl=0 +greenChnl=0 +blueChnl=0 +invA=0 +invR=0 +invG=0 +invB=0 + +# outline +outlineThickness=0 + +# selected chars +chars=32-126,160-172,174,176-255,264-265,268-271,282-285,292-293,305,308-309,327-328,338-339,344-345,348 +chars=349,352-353,356-357,364-367,376,381-382,402,710-711,728,730,732,915,920,931,934,937,945,948-949 +chars=960,963-964,966,8211-8212,8216-8218,8220-8222,8224-8226,8230,8240,8249-8250,8252,8319,8359,8364 +chars=8369,8375,8471,8482,8592-8597,8616,8729-8730,8734-8735,8745,8776,8801,8804-8805,8962,8976,8992-8993 +chars=9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552-9580,9600,9604,9608,9612,9616-9619,9632 +chars=9644,9650,9658,9660,9668,9675,9688-9689,9786-9788,9792,9794,9824,9827,9829-9830,9834-9835,57504 +chars=57505-57507,57520-57523 + +# imported icon images diff --git a/font-converter/fnt2asm/fnt2asm.ts b/font-converter/fnt2asm/fnt2asm.ts new file mode 100644 index 0000000..dcc2460 --- /dev/null +++ b/font-converter/fnt2asm/fnt2asm.ts @@ -0,0 +1,140 @@ +/* + Reads an fnt XML file and the corresponding image files in + Truevision TGA Format and stores all glyphs as described in Codepage437 + as an Kick Assembler file that is useable within the 65-o-fun project. + + Information about the glyph location is stored in an XML file. + https://www.angelcode.com/products/bmfont/doc/file_format.html + + Both are exported with the Bitmap Font Generator: + https://www.angelcode.com/products/bmfont/ + + See reference: https://en.wikipedia.org/wiki/Truevision_TGA +*/ + +import { readFileSync, writeFileSync } from 'node:fs'; +import xmlToJson from 'xml-to-json-stream'; +import { codepage437ToUnicode } from './codepage437ToUnicode'; +import { BitmapFontGeneratorFont, Page, Pages, SinglePage } from './BitmapFontGeneratorFont'; + +if (process.argv.length > 3) { + console.log('too many arguments'); + process.exit(); +} +if (process.argv.length < 3) { + console.log('too few arguments'); + process.exit(); +} + +const argument = process.argv[2]; // first argument + +const parser = xmlToJson({ attributeMode: true }); + +const baseName = argument.split('.fnt')[0]; +const fntFileName = argument; + +const fntFile = readFileSync(`./font-converter/fnt2asm/files/${fntFileName}`, 'binary'); + +const dummyChar = ['00000000', '00000000', '00000000', '00000000', '00000000', '00000000', '00000000', '00000000']; + +parser.xmlToJson(fntFile, (err, json: BitmapFontGeneratorFont) => { + if (err) { + console.log(err); + } + + let count = 0; + + let bitmapFont: string[][] = []; + + let missingChars: string[] = []; + + codepage437ToUnicode.forEach(value => { + const codepage437Code = value[0] as number; + const codepage437Unicode = value[2] as number; + + const char = json.font.chars.char.find(char => parseInt(char.id) === codepage437Unicode); + if (char) { + //console.log(`${codepage437Code} === ${codepage437Unicode}`); + count++; + + let page: Page | undefined; + + if (typeof (json.font.pages as Pages).page.find === 'function') { + page = (json.font.pages as Pages).page.find(page => page.id === char.page); + } else { + page = (json.font.pages as SinglePage).page; + } + + if (page) { + const content = readFileSync(`./font-converter/fnt2asm/files/${page.file}`, 'binary'); + + const imageIDLength = content[0].charCodeAt(0); + const colorMapType = content[1].charCodeAt(0); + const imageType = content[2].charCodeAt(0); + + //console.log(`imageIDLength: ${imageIDLength} colorMapType: ${colorMapType} imageType: ${imageType}`); + + const firstEntryIndex = content[3].charCodeAt(0) | (content[4].charCodeAt(0) << 8); + const colorMapLength = content[5].charCodeAt(0) | (content[6].charCodeAt(0) << 8); + const colorMapEntrySize = content[7].charCodeAt(0); + + //console.log(`firstEntryIndex: ${firstEntryIndex} colorMapLength: ${colorMapLength} colorMapEntrySize: ${colorMapEntrySize}`); + + const xOrigin = content[8].charCodeAt(0) | (content[9].charCodeAt(0) << 8); + const yOrigin = content[10].charCodeAt(0) | (content[11].charCodeAt(0) << 8); + + //console.log(`xOrigin: ${xOrigin} yOrigin: ${yOrigin}`); + + const imageWidth = content[12].charCodeAt(0) | (content[13].charCodeAt(0) << 8); + const imageHeight = content[14].charCodeAt(0) | (content[15].charCodeAt(0) << 8); + const pixelDepth = content[16].charCodeAt(0); + + //console.log(`imageWidth: ${imageWidth} imageHeight: ${imageHeight} pixelDepth: ${pixelDepth}`); + + const alphaChannelDepth = content[17].charCodeAt(0) & 0x00000111; + const pixelOrderingV = (content[17].charCodeAt(0) & 0x00001000) === 0x00001000 ? 'right-to-left' : 'left-to-right'; + const pixelOrderingH = (content[17].charCodeAt(0) & 0x00010000) === 0x00010000 ? 'top-to-bottom' : 'bottom-to-top'; + + //console.log(`alphaChannelDepth: ${alphaChannelDepth} pixelOrderingV: ${pixelOrderingV} pixelOrderingH: ${pixelOrderingH}`); + + const bitmapChar = getChar(parseInt(char.x), parseInt(char.y)); + bitmapFont.push(bitmapChar); + console.log(bitmapChar); + + function getChar(charPosX: number, charPosY: number) { + const char: string[] = []; + + for (let y = 0 + charPosY * 256; y < 8 * 256 + charPosY * 256; y = y + 256) { + let row = ''; + + for (let x = 0 + charPosX; x < 8 + charPosX; x++) { + row = row.concat(content[18 + x + y].charCodeAt(0) === 0 ? '0' : '1'); + } + + char.push(row); + } + + return char; + } + } + } else { + bitmapFont.push(dummyChar); + missingChars.push(codepage437Code.toString(16).toUpperCase().padStart(2, '0')); + } + }); + + let asmContent = ''; + asmContent = asmContent.concat(`// Font: ${baseName}\n`); + asmContent = asmContent.concat(`// Found ${count}/${codepage437ToUnicode.length} codepage437 chars\n`); + asmContent = asmContent.concat(`// Missing: ${missingChars.join(', ')}\n`); + asmContent = asmContent.concat(`// bitmapFont Length incl. dummy chars ${bitmapFont.length}\n`); + + bitmapFont.forEach((bitmapChar, index) => { + asmContent = asmContent.concat(`\n//${index.toString(16).toUpperCase().padStart(2, '0')}\n`); + bitmapChar.forEach(bitmapLine => { + asmContent = asmContent.concat(`.byte %${bitmapLine}\n`); + }); + }); + + writeFileSync(`./font-converter/fnt2asm/files/${baseName}.asm`, asmContent, 'binary'); +}); diff --git a/package-lock.json b/package-lock.json index 5b5fbef..4a75222 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,8 @@ "version": "0.0.0", "dependencies": { "vue": "^3.5.12", - "vue-router": "^4.5.0" + "vue-router": "^4.5.0", + "xml-to-json-stream": "^1.1.0" }, "devDependencies": { "@types/node": "^22.10.1", @@ -1699,9 +1700,9 @@ "license": "MIT" }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", "funding": [ { "type": "github", @@ -2461,6 +2462,15 @@ "engines": { "node": ">=8" } + }, + "node_modules/xml-to-json-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xml-to-json-stream/-/xml-to-json-stream-1.1.0.tgz", + "integrity": "sha512-JaxUCQOk9+KajLNUV51elxlXI8cmN9rX4LVuhdCUtD7Z6N3lBsaD6l6caqjBPB1rieCZXviaoq4OKwAeup4RhA==", + "license": "MIT", + "bin": { + "tojson": "bin/tojson.js" + } } } } diff --git a/package.json b/package.json index 0e6cd08..ca57bfb 100644 --- a/package.json +++ b/package.json @@ -10,12 +10,14 @@ "test": "vitest", "singleStepTests": "npx tsx ./tests/singleStepTests.ts", "testProg": "npx tsx ./tests/testProg.ts", - "bdf2asm": "npx tsx ./font-converter/bdf2asm.ts", + "bdf2asm": "npx tsx ./font-converter/bdf2asm/bdf2asm.ts", + "fnt2asm": "npx tsx ./font-converter/fnt2asm/fnt2asm.ts", "coverage": "vitest run --coverage" }, "dependencies": { "vue": "^3.5.12", - "vue-router": "^4.5.0" + "vue-router": "^4.5.0", + "xml-to-json-stream": "^1.1.0" }, "devDependencies": { "@types/node": "^22.10.1",