X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=main.c;h=49be0ef95050c2626479a8cee0c18e60221a7af3;hb=3ec676caee02b75707e472b0294e8be51aab4c42;hp=cf2a703cc57bc0f31581ebb2477daf6cf15526a8;hpb=f463ab26135aa2850eee73b75f11103dd5f52a40;p=physik%2Fmorpheus.git diff --git a/main.c b/main.c index cf2a703..49be0ef 100644 --- a/main.c +++ b/main.c @@ -13,35 +13,60 @@ #include #include +#include +#include +#include + #include "defines.h" /* global variables */ -int sum_z_segments; +u32 sum_z_segments; +int random_fd; /* /dev/urandom file descriptor */ int usage() { puts("usage:"); puts("-h: help"); - puts("-a \t slope of C concentration with depth (default 1)"); - puts("-c \t concentration at depths 0 (default 0)"); + puts("-a \t slope of nuclear energy loss (default 1)"); + puts("-c \t nuclear enery loss at depths 0 (default 0)"); puts("-x \t # x segments (default 50)"); puts("-y \t # y segments (default 50)"); puts("-z \t # z segments (default 100)"); + puts("-s \t # steps to calculate (default 5000"); return -23; } -int main(int argc,char **argv) { - int x_seg,y_seg,z_seg; /* amount of segments */ - int x,y,z; /* segments */ +int make_amorph(u32 *segment) +{ + *segment=*segment|AMORPH + return 23; +} + +/* look at segment ... */ +int process_segment(u32 *segment) +{ + /* tag it ... testing! */ + make_amorph(segment); + + return 23; +} + +int main(int argc,char **argv) +{ + u32 x_seg,y_seg,z_seg; /* amount of segments */ + u32 x,y,z; /* segments */ int i; /* for counting */ - int slope_cc,start_cc; /* C concentration: slope, c(0) */ + int slope_nel,start_nel; /* nuclear energy loss: slope, constant */ + int steps; /* # steps */ + void *segments_p; /* default values */ - x_seg=DEFAULT_X_SEG-1; - y_seg=DEFAULT_Y_SEG-1; - z_seg=DEFAULT_Z_SEG-1; - slope_cc=DEFAULT_SLOPE_CC; - start_cc=DEFAULT_START_CC; + x_seg=DEFAULT_X_SEG; + y_seg=DEFAULT_Y_SEG; + z_seg=DEFAULT_Z_SEG; + slope_nel=DEFAULT_SLOPE_NEL; + start_nel=DEFAULT_START_NEL; + steps=DEFAULT_STEPS; /* parse command args */ for(i=1;i %d\n",sum_z_segments); /* testing ... */ - for(i=0;i<100;i++) + /* allocate segments */ + if((segments_p=malloc(x_seg*y_seg*z_seg*sizeof(u32)))==NULL) + { + puts("failed allocating memory for segments\n"); + return -23; + } + memset(segments_p,0,x_seg*y_seg*z_seg*sizeof(u32)); + + /* main routine */ + for(i=0;i