/* COLOR definiert -> Farbversion nicht definiert -> SW Version */ /* ANZEIGEOPTIONEN */ typedef struct { unsigned compare : 2; /* 0 And 1 Or 2 Xor */ unsigned wait : 1; /* 1 warten auf taste 0 zeit */ unsigned richtung : 1; /* 0 vorw„rts 1 vor und zurck */ unsigned repeat : 1; /* 0 einmal 1 wiederholt */ } AO_FLAGS; typedef struct { AO_FLAGS flags; unsigned wait_pic; unsigned wait_end; } SHOW_OPTS; /* FRACTALPARAMETER */ /* normales Fractal */ typedef struct { unsigned zykl : 1; int start : 5; unsigned first : 4; unsigned last : 4; } FR_COLOR; typedef struct { int end_col; int col_end[5]; int col_step[5]; FR_COLOR col[5]; } FRAC_COL; typedef struct { #ifdef COLOR unsigned x1 : 1; #else unsigned color : 1; /* 0 normal 1 invers */ #endif unsigned size : 2; /* 0 small 1 mid 2 big */ unsigned type : 3; /* 0 sw 1 grau 0 grau 1 black 2 raster 3 vline 4 hline */ unsigned speed : 2; /* 0 quick 1 exact */ unsigned updown : 1; /* 0 hoch 1 tief */ } FR_TYPE; typedef struct { FR_TYPE type; #ifdef COLOR int col_tab[16]; #endif long iter; long time; double real_min; double real_max; double imag_min; double imag_max; double real_const; double imag_const; double alpha; double abbruch; int tiefe; int lastline; FRAC_COL col; } FRACTAL; /* freies Fractal */ typedef struct { unsigned op : 2; /* 0 and 1 or 2 xor */ unsigned abbr1 : 2; /* 0 abs 1 re 2 im abbr1==abbr2 -> nur ein vergleich */ unsigned abbr2 : 2; /* 0 abs 1 re 2 im */ unsigned p_flag : 1; /* 0 modulo 1 speziell */ unsigned p_op : 2; /* 0 and 1 or 2 xor */ unsigned p1 : 2; /* 0 abs 1 re 2 im */ unsigned p2 : 2; /* 0 abs 1 re 2 im */ } FR_FREE; typedef struct { FR_TYPE type; #ifdef COLOR int col_tab[16]; #endif long iter; long time; double real_min; double real_max; double imag_min; double imag_max; double real_const; double imag_const; double alpha; double abbruch; int tiefe; int lastline; FRAC_COL col; char formel[62]; FR_FREE free; } FRFRAC; /* 3d Fractal */ typedef struct { FR_TYPE type; #ifdef COLOR int col_tab[16]; #endif long iter; long time; double real_min; double real_max; double imag_min; double imag_max; double real_const; double imag_const; double alpha; double abbruch; int tiefe; int lastline; } D3_FRAC; /* EINSTELLUNGEN */ typedef struct { #ifdef COLOR unsigned x0 : 1; #else unsigned frac_type : 1; /* 0 kompakt 1 stad */ #endif unsigned pic_type : 2; /* 0 doodle 1 degas 2 stad 3 snapshot */ unsigned block : 1; /* 0 maus 0 fadenkreuz */ unsigned gong : 1; /* 0 aus 1 ein */ unsigned save : 1; /* 0 aus 1 ein */ unsigned save_war : 1; /* 0 aus 1 ein */ unsigned abbruch : 1; /* 0 aus 1 ein */ unsigned delete : 2; /* 0 nie 1 neu 2 mehrere 3 immer */ unsigned quit : 2; /* 0 nie 1 neu 3 immer */ unsigned hc_size : 2; /* 0 klein 1 grož 2 quer 3 doppel */ unsigned hc_leer : 1; /* 0 nicht drucken 1 drucken */ unsigned hc_text : 1; /* 0 nicht drucken 1 drucken */ unsigned hc_abst : 1; /* 0 aus 1 ein */ unsigned hc_ff : 8; /* bilder bis formfeed */ unsigned d_tos : 1; /* 0 eigene pr_out 1 tos pr_out */ unsigned pack : 1; /* 0 bilder nicht packen 1 bilder packen */ #ifndef COLOR unsigned col_flag : 1; /* 0 normal 1 invers */ #endif } FR_FLAGS; #ifdef COLOR typedef struct { unsigned speed : 16; unsigned first : 4; unsigned last : 4; unsigned dir : 1; /* 0 links 1 rechts */ } CYCLE_OPT; #endif typedef struct { FR_FLAGS flags; char path[40]; long mem_rest; int tiefe; SHOW_OPTS show; int fr_anzahl; char fr_name[10]; FRACTAL fr_start; FRACTAL fr_ende; char fr_change[9]; int ff_anzahl; char ff_name[10]; FRFRAC ff_start; FRFRAC ff_ende; char ff_change[9]; int d3_anzahl; char d3_name[10]; D3_FRAC d3_start; D3_FRAC d3_ende; char d3_change[9]; char d_code[8][10]; char d_rand[9]; #ifdef COLOR int col_tab[16]; CYCLE_OPT cycle; int col_tabs[12][16]; #endif } FR_SET;