Annotation of os2sdk/demos/apps/mandel/mdraw.h, revision 1.1

1.1     ! root        1: /**    mdraw.h - mdraw include file
        !             2:  *     R. A. Garmoe  87/02/05
        !             3:  */
        !             4: 
        !             5: 
        !             6: #define MOUSE                  /* compile mouse support */
        !             7: 
        !             8: #define FALSE  0
        !             9: #define TRUE   ~FALSE
        !            10: 
        !            11: #define UP     72              /* up arrow scan code */
        !            12: #define DOWN   80              /* down arrow scan code */
        !            13: #define RIGHT  77              /* right arrow scan code */
        !            14: #define LEFT   75              /* left arrow scan code */
        !            15: 
        !            16: 
        !            17: #define RESTORE_MODE   0       /* request for notification to restore mode */
        !            18: #define RESERVED       0       /* reserved word */
        !            19: #define REDRAW         1       /* request for notification to redraw */
        !            20: #define BLOCK          1       /* wait until screen I/O is available */
        !            21: #define STACKSIZE      2048    /* size of stack to allocate for threads */
        !            22: #define GIVEUPOWNER    1       /* owner indicator */
        !            23: #define KILLTHREAD     1       /* kill indicator  */
        !            24: 
        !            25: #define MAXREAL 2000           /* maximum number of real coordinates */
        !            26: #define MAXLOOP 1000           /* maximum number of iterations */
        !            27: #define BUFFER 4096            /* number of ints to read at one time */
        !            28: 
        !            29: #define SCANTIME 20            /* scan time in milliseconds */
        !            30: #define RIPPLE_UP   0          /* ripple palette registers up */
        !            31: #define RIPPLE_DN   1          /* ripple palette registers down */
        !            32: 
        !            33: #define PAGESIZE 0x8000        /* size of display page in EGA memory */
        !            34: #define BLACK  0x00            /* EGA black value         */
        !            35: #define BLUE   0x01            /* EGA blue value          */
        !            36: #define GREEN  0x02            /* EGA green value         */
        !            37: #define CYAN   0x03            /* EGA cyan value          */
        !            38: #define RED    0x04            /* EGA red value           */
        !            39: #define MAGENTA 0x05           /* EGA magenta value       */
        !            40: #define BROWN  0x06            /* EGA brown value         */
        !            41: #define WHITE  0x07            /* EGA white value         */
        !            42: #define DGRAY  0x08            /* EGA dark gray value     */
        !            43: #define LBLUE  0x09            /* EGA light blue          */
        !            44: #define LGREEN 0x0a            /* EGA light green         */
        !            45: #define LCYAN  0x0b            /* EGA light cyan value    */
        !            46: #define LRED   0x0c            /* EGA light red value     */
        !            47: #define LMAGENTA 0x0d          /* EGA light magenta value */
        !            48: #define YELLOW 0x0e            /* EGA yellow value        */
        !            49: #define IWHITE 0x0f            /* EGA intense white value */
        !            50: 
        !            51: struct cmplx {
        !            52:        double   realp;         /* real part of number */
        !            53:        double   imagp;         /* imaginary part of number */
        !            54: };
        !            55: 
        !            56: 
        !            57: /**    This structure forms a linked list of pointers to image descriptors.
        !            58:  *     The image descriptor is stored in allocated segments so that
        !            59:  *     DS is not filled up with the image descriptor.
        !            60:  */
        !            61: 
        !            62: 
        !            63: struct ilist {
        !            64:        struct ilist *next;     /* pointer to next ilist */
        !            65:        struct ilist *prev;     /* pointer to previous ilist */
        !            66:        struct image far *desc; /* pointer to segement containing image data */
        !            67: };
        !            68: 
        !            69: 
        !            70: /**    This structure which is stored in a allocated far segment contains
        !            71:  *     the data that describes the image.  This is basically the data
        !            72:  *     stored in the header of the .cnt file.
        !            73:  */
        !            74: 
        !            75: 
        !            76: struct image {
        !            77:        unsigned savesel[2];    /* selectors for screen saves */
        !            78:        struct  cmplx ul;       /* coordinates of upper left corner */
        !            79:        struct  cmplx lr;       /* coordinates of lower right corner */
        !            80:        int     nimag;          /* number of imaginary coordinates */
        !            81:        int     lni;
        !            82:        int     lnr;
        !            83:        int     mloop;          /* maximum loop count */
        !            84:        int     nreal;          /* number of real coordinates */
        !            85: 
        !            86:        double  rinc;           /* increment in real coordinate */
        !            87:        double  iinc;           /* increment in imaginary coordinate */
        !            88:        double  aspect;         /* aspect ratio */
        !            89:        char    cmap[MAXLOOP + 1];   /* mapping from iteration counter to color */
        !            90:        long    hist[MAXLOOP + 1]; /* histogram counters */
        !            91: };

unix.superglobalmegacorp.com

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