Annotation of researchv10no/games/psych.c, revision 1.1.1.1

1.1       root        1: /*
                      2:        psych - draw pretty pictures on 4014
                      3: 
                      4:        compile as cc psych.c -lm -l4014
                      5:                could use other plot-type library
                      6: 
                      7: */
                      8: #include "stdio.h"
                      9: 
                     10: char   obuf[BUFSIZ];
                     11: 
                     12: main() {
                     13:        int c;
                     14:        float g, fact, d, z, b;
                     15:        float x, y, limit = 0.25;
                     16:        int xx, yy;
                     17:        double sin(), cos();
                     18:        int i, first;
                     19:        long time(), t;
                     20: 
                     21:        setbuf(stdout, obuf);
                     22:        time(&t);
                     23:        srand(t&0177777);
                     24:   top:
                     25:        g = ((float)rand()/32767.) * 10;
                     26:        fact = ((float)rand()/32767.) * 20;
                     27:        erase();
                     28:        d = 0.1;
                     29:        z = 0;
                     30:        first = 0;
                     31:        for (i = 1; i <= 500; i++) {
                     32:                b = (z-110) / 1.57;
                     33:                z += g;
                     34:                g = (0-g) * fact;
                     35:                fact = 1 / fact;
                     36:                d *= 1.01;
                     37:                x = d * cos(b);
                     38:                y = d * sin(b);
                     39:                if (x*x > limit || y*y > limit)
                     40:                        break;
                     41:                xx = (x+0.5) * 3120 + 500;
                     42:                yy = (y+0.5) * 3120;
                     43:                if (first == 0)
                     44:                        move(xx, yy);
                     45:                cont(xx, yy);
                     46:                first = 1;
                     47:        }
                     48:        printf("\015"); /* out of plot mode */
                     49:        fflush(stdout);
                     50:        while ((c=getchar()) != '\n' && c!=EOF)
                     51:                ;
                     52:        if(c == '\n')
                     53:                goto top;
                     54: }

unix.superglobalmegacorp.com

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