Annotation of researchv10dc/vol2/Faces/How/src/pbec2.c, revision 1.1

1.1     ! root        1: #include <stdio.h>
        !             2: 
        !             3: #define SZ     512
        !             4: 
        !             5: int lasta, lastb;
        !             6: char buf[512];
        !             7: char *back = (char *) 0;
        !             8: int Factor=0;
        !             9: int ncurve=0;
        !            10: int Xoffset = 16;
        !            11: int Yoffset = 100;
        !            12: 
        !            13: main(argc, argv)
        !            14:        char **argv;
        !            15: {
        !            16:        extern int lcnt;
        !            17:        int i;
        !            18: 
        !            19:        switch (argc) {
        !            20:        case 5:
        !            21:                back = argv[4];
        !            22:        case 4:
        !            23:                Yoffset = 100-atoi(argv[3]);
        !            24:                Xoffset = 16+atoi(argv[2]);
        !            25:        case 2:
        !            26:                Factor = atoi(argv[1]); /* >0 stretches the letter in x */
        !            27:        case 1:
        !            28:                break;
        !            29:        default:
        !            30:                fprintf(stderr, "usage: pcurve ");
        !            31:                fprintf(stderr, "[N [dX dY [background]]] < font > script\n");
        !            32:                exit(1);
        !            33:        }
        !            34: 
        !            35:        prelude();
        !            36:        printf("def curve() {\n");
        !            37:        getcurve();
        !            38: 
        !            39:        runcontour();
        !            40:        printf("}\n");
        !            41:        printf("x {\n");
        !            42:                printf("        curve()\n");
        !            43:        for (i = 100; i < lcnt; i += 100)
        !            44:                printf("        curve%d()\n", i);
        !            45:        printf("}\nx new=old\n");
        !            46: }
        !            47: 
        !            48: getcurve()
        !            49: { int a, b, c;
        !            50: 
        !            51:        for (;;)
        !            52:        {       if (fgets(buf, 512, stdin) == NULL)
        !            53:                        return;
        !            54:                c = 0;
        !            55:                while (strcmp(buf, "1e6\n") == 0)
        !            56:                {       c = 1;
        !            57:                        if (fgets(buf, 512, stdin) == NULL)
        !            58:                                return;
        !            59:                }
        !            60:                sscanf(buf, "%d %d", &a, &b);
        !            61:                addnode((a+Xoffset), (b+Yoffset), c);
        !            62:        }
        !            63: }
        !            64: 
        !            65: prelude()
        !            66: {
        !            67:        printf("def mapper(t0, t1, f0, f1, h) {\n");
        !            68:        printf("if (abs(t0-t1)>1)\n");
        !            69:        printf("{       mapper((t0+t1)/2, t1, (f0+f1)/2, f1, h)\n");
        !            70:        printf("        mapper(t0, (t0+t1)/2, f0, (f0+f1)/2, h)\n");
        !            71:        printf("} else\n");
        !            72:        printf("        new[t0, h] = $1[f0, h]\n");
        !            73:        printf("}\n");
        !            74:        if (back)
        !            75:                printf("get \"%s\"\n", back);
        !            76:        else
        !            77:                printf("x new=y*%d/%d;\n", 255, SZ-1);
        !            78:        printf("def setter(aa, b, c, d) {\n");
        !            79:        printf("        for (x=aa; x<b; x++)\n");
        !            80:        if (back)
        !            81:                printf("                new[x,c]=$2[x,c];\n");
        !            82:        else
        !            83:                printf("                new[x,c]=d;\n");
        !            84:        printf("}\n");
        !            85: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.