]> 4ch.mooo.com Git - 16.git/blobdiff - src/fonttes0.c
ansii rendering is working ^^
[16.git] / src / fonttes0.c
index 54d9b9acfdc2d8bc5021e8021c1e5639a09de2a4..4365b812ca68a4d4e68807e2c4dc61ebf0ca7598 100644 (file)
 \r
 void main(int argc, char near *argv[])\r
 {\r
-    int i;\r
+    int i, xp;\r
     int j;\r
        char l[16];\r
-    char c;\r
+    char c,ct;\r
     word s, o, t, w;\r
     word addr = (word) l;
     //byte *pal, *pal2, fond;
@@ -44,37 +44,46 @@ void main(int argc, char near *argv[])
        printf("%d: %x:%x\n", i, romFonts[i].seg, romFonts[i].off);\r
     }\r
 \r
-       printf("*argv[1]=%d\n", *argv[1]);\r
+//     printf("*argv[1]=%d\n", *argv[1]);\r
+
+       printf("Font type: ");\r
+       gets(&ct);
 \r
-    printf("Character: ");\r
-    scanf("%c", &c);\r
+       printf("Character: ");\r
+       gets(&c);\r
 \r
-       if(*argv[1]!=1)\r
-       switch(*argv[1])\r
+       if(ct!=1)\r
+       switch(ct)\r
        {\r
-               case 48:\r
+               case 48:
+                       printf("type 0\n");\r
                        t=0;\r
                        w=14;\r
                break;\r
-               case 49:\r
+               case 49:
+                       printf("type 1\n");\r
                        t=1;\r
                        w=8;\r
                break;\r
-               case 50:\r
+               case 50:
+                       printf("type 2\n");\r
                        t=2;\r
                        w=8;\r
                break;\r
-               case 51:\r
+               case 51:
+                       printf("type 3\n");\r
                        t=3;\r
                        w=16;\r
                break;\r
-               default:\r
+               default:
+                       printf("type 3\n");\r
                        t=3;\r
                        w=16;\r
                break;\r
        }\r
        else\r
-       {\r
+       {
+               printf("type 3\n");\r
                t=3;\r
                w=16;   \r
        }\r
@@ -150,16 +159,26 @@ void main(int argc, char near *argv[])
        //render the letter in ascii art\r
        for(i=0; i<w; i++)
        {\r
-               j=1<<8;\r
+               j=1<<8;
+               xp=0;\r
                while(j)
                {
                        //printf("j=%d\n", j);\r
                        //printf("%c", l[i] & j ? '*':' ');
                        //====printf("%02x ", l[i] & j);
-                       modexClearRegion(&page, 0, 0, 8, w, l[i] & j ? 1:8);\r
-               j>>=1;
+                       //printf("l[i]=%d       ", l[i]);
+                       //printf("j=%d  ", j);
+                       //printf("%02x\n", l[i] & j);
+                               //modexPutPixel(xp, i, l[i] & j ? 15:0);
+                               //modexpixelwr(xp, i, 0, l[i] & j ? 15:0);
+                               modexputPixel(xp, i, l[i] & j ? 15:0);
+                               //modexClearRegion(&page, xp*4, i*4, 4, 4, l[i] & j ? 15:0);
+//while(!getch());
+                       xp++;
+                       j>>=1;
                }\r
-               //====printf("\n");
+               //====
+               //printf("\n");
        }
        //modexDrawSprite(&page, 0, 0, &fontdata);
        while(!getch())\r
@@ -173,5 +192,20 @@ void main(int argc, char near *argv[])
        modexLeave();\r
        /*modexPalBlack();\r
        modexFadeOn(4, pal);*/
+       //render the letter in ascii art\r
+       for(i=0; i<w; i++)
+       {\r
+               j=1<<8;\r
+               while(j)
+               {
+                       printf("%c", l[i] & j ? '*':' ');
+                       //====printf("%02x ", l[i] & j);
+//while(!getch());
+               j>>=1;
+               }\r
+               printf("\n");
+       }
+       printf("\ni=%d\n", i);
+       printf("j=%d\n", j);
 
 }\r