home *** CD-ROM | disk | FTP | other *** search
- /* declare.h 19-8-91 global variable declarations */
- /*** Tierra Simulator V3.0: Copyright (c) 1991 Thomas S. Ray ***/
-
- #include "license.h"
-
- /*
- #ifndef lint
- static char sccsid[] = "@(#)declare.h 1.29 10/6/91";
- #endif
- */
-
- #ifndef LDECLAR_H
- #define LDECLAR_H
-
- FILE *oufr;
- HpInst soup;
- struct ArgInstDef aid[32]; /* instruction definition for arg.c */
- I32s AverageSize; /* average size of cells in soup */
- I32s BottomReap; /* index of cell at bottom of reaper queue, last to die */
- I32s BrkupCou; /* count of output files break.n */
- I32s BrkupCum; /* cumulative count of bytes output to break.n */
- I32s comsoc;
- I32s CountFlaw; /* counter for flaw random number */
- I32s CountMovMut; /* keep track of time since last mov_mut */
- I32s CountMutRate; /* keep track of time since last mut */
- I32s debug_switch;
- struct event DistNext; /* time of next disturbance */
- struct event Disturb; /* time of disturbance */
- I32s extr; /* which cell to isolate */
- I32s ExtractCount; /* count of cells manually extracted */
- I32s FirstOutDisk; /* has OutDisk been called */
- I32s fragment; /* 0 = memory is not fragmented 1 = memory is fragmented */
- I32s FreeBlocks; /* number of free blocks of memory */
- double Generations;/* count of elapsed generations (AvgPop/TimeBirth-Death) */
- I8s **GenInList; /* pointers to soup_in genome names */
- I8s *GenInBuf; /* buffer containing soup_in genome names */
- struct event InstExe; /* counter of instructions executed */
- struct inst is; /* structure for passing info between parse and execute */
- I32s isolate; /* isolate the genome of the cell extr */
- struct event LastDiv; /* instructions executed at last divide */
- I8s mes[7][80]; /* array of strings for message passing to front end */
- I32s num_gen; /* present number of genotypes saved to disk */
- I32s num_genq; /* present number of genotypes in RAM bank */
- I32s num_genl; /* present number of genotypes in *gl lists */
- I32s NumSiz; /* present number of sizes saved to disk */
- I32s NumSizq; /* present number of sizes in RAM bank */
- I32s NumSizl; /* present number of sizes in *sl list */
- I32s PhotonSize; /* number of instructions in photon */
- I32s RandIx1, RandIx2, RandIx3; /* for trand() */
- I32s RateFlaw; /* frequency of flaws */
- I32s RateMovMut; /* 1 / frequency of mutations per mov event */
- I32s RateMut; /* number of instructions per mutations */
- I32s reaped; /* 0 = reaper has not killed, 1 = reaper has killed */
- I32s runflag;
- I32s siz_sl; /* allocated size of *sl array */
- I8s SLASH; /* in DOS = \ = 92, in unix = / = 47 */
- I8s soup_fn[85]; /* place for soup_in filename */
- I32s SoupBot; /* index of FreeMem struct for bottom of soup memory */
- I32s SoupTop; /* index of FreeMem struct for top of soup memory */
- I32s ThisSlice; /* index of cell that is currently active */
- I32s TimeBirth; /* count of births in each million instruction */
- I32s TimeDeath; /* count of deaths in each million instruction */
- double TimePop; /* sum of ttime * NumCells for each million instructions */
- I32s TopReap; /* index of cell at top of reaper queue, next to die */
- I32s TotFlaw; /* total number of flaws in this run */
- I32s TotMovMut; /* total number of move mutations in this run */
- I32s TotMut; /* total number of background mutations in this run */
- I32u ONE; /* a constant */
- Instruction PhotonInst[80]; /* instructional representation of photon */
- Ind FreeMemCurrent; /* current amount of free memory in soup */
- Ind Search_limit; /* limit on how far address instructions will search */
- Pcells cells; /* cells array */
- Pmf FreeMem; /* free memory array */
- Pgl gl; /* list of genotypes for genebanker */
- Psl sl; /* list of unique size classes, number of gts */
- double TrandArray[98]; /* for trand() */
- struct LastOut lo; /* last data output to disk */
- struct gl_index gq_bot; /* bottom of gene queue */
- struct gl_index gq_top; /* top of gene queue */
- void (*slicer)();
-
- #ifdef __TURBOC__
- extern unsigned _stklen = 32768;
- #endif
-
- #endif
-