]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/modex16.c
working on font~
[16.git] / src / lib / modex16.c
index 8637d7111e4636f4c39a290bff2bd6838eda7b27..1ddefc699670533b11d02b0a466808d710c20ea6 100755 (executable)
@@ -954,46 +954,24 @@ void modexhlin(page_t *page, word xl, word xh, word y, word color)
 \r
 void modexprint(page_t *page, word x, word y, word t, word col, word bgcol, const byte *str, boolean q)\r
 {\r
-       word i, s, o, w, j, k, xp;\r
-       byte l[1024];\r
-       word addr = (word) l;\r
-       word chw=0;\r
+       word s, o, w;\r
+       word addr = (word) romFontsData.l;\r
        byte c;\r
-       byte z[10];\r
-       //byte near *bakapee;\r
-\r
-       switch(t)\r
-       {\r
-               case 0:\r
-                       w=14;\r
-               break;\r
-               case 1:\r
-                       w=8;\r
-               break;\r
-               case 2:\r
-                       w=8;\r
-               break;\r
-               case 3:\r
-                       w=16;\r
-               break;\r
-               default:\r
-                       t=3;\r
-                       w=16;\r
-               break;\r
-       }\r
 \r
        s=romFonts[t].seg;\r
        o=romFonts[t].off;\r
+       w=romFonts[t].charSize;\r
+       romFontsData.chw=0;\r
 \r
        for(; *str != '\0'; str++)\r
        {\r
        c = (*str);\r
        if((c=='\n'/* || c=="\\r
-"*/) || chw\r
+"*/) || romFontsData.chw\r
 >=page->width)\r
        {\r
-               chw=0;\r
-               y+=w;\r
+               romFontsData.chw=0;\r
+               y+=romFonts[t].charSize;\r
                continue;\r
        }\r
        //load the letter 'A'\r
@@ -1013,42 +991,10 @@ void modexprint(page_t *page, word x, word y, word t, word col, word bgcol, cons
                DEC CX\r
                JNZ L1\r
        }\r
-       //bakapee = _nmalloc(sizeof(byte)*8);\r
 //TODO: OPTIMIZE THIS!!!!\r
-               for(i=0; i<w; i++)\r
-               {\r
-                       /*modexSelectPlane(PLANE(x));\r
-                       j=1<<8;\r
-                       *bakapee=(l[i] & j ? col:bgcol);\r
-                       _fmemcpy(page->data + (((page->width/4) * (y+page->dy+i)) + ((x+page->dx+chw) / 4)), bakapee, 8);*/\r
-                       j=1<<8;\r
-                       k=0;\r
-                       xp=0;\r
-                       //every "pixel" row\r
-                       while(j)\r
-                       {\r
-                               if(q)\r
-                               //_fmemcpy(page->data + (((page->width/4) * (y)) + ((x) / 4)), l[i] & j ? col:bgcol, 8);\r
-                               modexputPixel(page, x+xp+chw, y+i, l[i] & j ? col:bgcol);\r
-                               else\r
-                                       //printf("l[i]=%c j=%02u l[i] & j=%02u %c\n", l[i] , j, l[i] & j, l[i] & j ? '*':' ');\r
-                                       //printf("%c", l[i] & j ? '*':' ');\r
-                                       z[k]=l[i] & j ? '*':' ';\r
-                               xp++;\r
-                               j>>=1;\r
-                               k++;\r
-                       }\r
-                       if(!q)\r
-                       {\r
-                               for(k=0;k<10;k++)\r
-                               {\r
-                                       printf("%c", z[k]);\r
-                               }\r
-                               printf("\n");\r
-                       }\r
-               }\r
+               modexDrawCharPBuf(page, x, y, t, col, bgcol, q);\r
+\r
                if(!q) getch();\r
-               chw += xp;\r
        }\r
        //_nfree(bakapee);\r
 }\r