--
[physik/morpheus.git] / defines.h
index 17e83cf..3473e30 100644 (file)
--- a/defines.h
+++ b/defines.h
 #define DEFAULT_SLOPE_NEL 1
 #define DEFAULT_START_NEL 0
 
-#define DEFAULT_A_P_RANGE 0.2
+#define DEFAULT_A_P_RANGE 3
 #define DEFAULT_A_P_FAKTOR 0.2
+#define DEFAULT_A_P_P0 0.2
+
+#define DEFAULT_C_DIST_START_CONC 0
+#define DEFAULT_C_DIST_SLOPE 1
+#define DEFAULT_C_C0 500000
 
 #define DEFAULT_STEPS 5000
 
+#define RAND_BUF_SIZE 64*1048576 /* 64 MB */
+
 /* program defines, dont touch ;) */
 
 #define URAND_MAX 0xffffffff
 #define URAND_2BYTE_MAX 0xffff
 
+#define MAX_CHARS_RANDOM_FILE 64
+#define MAX_CHARS_SAVE_FILE 64
+#define MAX_CHARS_LOAD_FILE 64
+
 typedef unsigned int u32;
 typedef long long unsigned int u64;
 
+typedef struct __cell {
+ unsigned char status; /* amorph or cryst status */
+ u32 conc; /* c concentration */
+} cell;
+
 #ifdef DEBUG
  #define DEBUG_IT 1
 #else 
@@ -41,8 +57,9 @@ typedef long long unsigned int u64;
 
 /* display stuff */
 typedef struct __display {
+ int step; /* display step */
  u32 max_x,max_y,max_z; /* dimensions */
void *cell_p; /* pointer to cell data */
cell *cell_p; /* pointer to cell data */
 #ifdef USE_DFB_API
  IDirectFB *dfb; /* pointer to dfb main construct */
  IDirectFBSurface *primary_surface; /* pointer to dfb primary surface */
@@ -58,11 +75,15 @@ typedef struct __display {
 #define DISPLAY_X_FREE 15
 #define DISPLAY_Y_FREE 15
 
-#define DISPLAY_FONT "/usr/share/DFBSee/decker.ttf"
+// defined by Makefile now
+// #define DISPLAY_FONT "./decker.ttf"
+
 #define MAX_TXT 20
  
 /* masks for u32 cell */
-#define AMORPH 0x00000001
-#define CRYSTAL 0x00000000
-#define C_CONC_MASK 0xfffffffe
+#define AMORPH 0x01
+#define CRYSTAL 0x00
+#define NAMORPH 0xfe
+#define NCRYSTAL 0xff
+#define C_CONC_MASK 0xffffffff