X-Git-Url: https://hackdaworld.org/gitweb/?p=physik%2Fnlsop.git;a=blobdiff_plain;f=nlsop.c;h=f2acfb4587bc28579ad48c16cc733587bc3630de;hp=81f408de60d8ccde2bbcd974f77d2277abb5a3ae;hb=fd74c3d7003b61f0680a3272a6657a1a7913f42d;hpb=eedf79d33f24f1163cdadea0eb27c8f0b75c1d92 diff --git a/nlsop.c b/nlsop.c index 81f408d..f2acfb4 100644 --- a/nlsop.c +++ b/nlsop.c @@ -369,7 +369,7 @@ int convert_file(char *cf,d3_lattice *d3_l) int main(int argc,char **argv) { - u32 max_x,max_y,max_z,x,y,z,x_c,y_c,z_c; + u32 x,y,z,x_c,y_c,z_c; int i,quit,escape,nowait; int refresh,resave; char s_file[MAX_CHARS]; @@ -399,9 +399,9 @@ int main(int argc,char **argv) d3_lattice d3_l; info my_info; - max_x=X; - max_y=Y; - max_z=Z; + d3_l.max_x=X; + d3_l.max_y=Y; + d3_l.max_z=Z; my_info.steps=STEPS; my_info.range=RANGE; refresh=REFRESH; @@ -442,13 +442,13 @@ int main(int argc,char **argv) my_info.b_el=atof(argv[++i]); break; case 'x': - max_x=atoi(argv[++i]); + d3_l.max_x=atoi(argv[++i]); break; case 'y': - max_y=atoi(argv[++i]); + d3_l.max_y=atoi(argv[++i]); break; case 'z': - max_z=atoi(argv[++i]); + d3_l.max_z=atoi(argv[++i]); break; /* case 'X': @@ -514,19 +514,26 @@ int main(int argc,char **argv) } else usage(); } - x=max_x/2-1; - y=max_y/2-1; - z=max_z/2-1; - + x=d3_l.max_x/2-1; + y=d3_l.max_y/2-1; + z=d3_l.max_z/2-1; +#ifdef NODFB + if(!strcmp(s_file,"") + { + puts("NODFB defined, run with -S option"); + return -1; + } if(!strcmp(r_file,"")) rand_init(NULL); else rand_init(r_file); if(!strcmp(l_file,"")) { - i=max_x*max_y*max_z; - d3_lattice_init(&argc,argv,&d3_l,max_x,max_y,max_z); + i=d3_l.max_x*d3_l.max_y*d3_l.max_z; +#ifdef USE_DFB_API + d3_lattice_init(&argc,argv,&d3_l); +#endif if((d3_l.status=(unsigned char *)malloc(i*sizeof(unsigned char)))==NULL) { puts("failed allocating status buffer"); @@ -549,10 +556,15 @@ int main(int argc,char **argv) convert_file(c_file,&d3_l); puts("done"); return 1; - } else d3_lattice_init(&argc,argv,&d3_l,d3_l.max_x,d3_l.max_y,d3_l.max_z); + } +#ifdef USE_DFB_API + else d3_lattice_init(&argc,argv,&d3_l); +#endif } - + +#ifedef USE_DFB_API d3_event_init(&d3_l); +#endif strcpy(a_txt,"args:"); sprintf(s_txt,"steps: %d",my_info.steps); @@ -608,7 +620,9 @@ int main(int argc,char **argv) sprintf(conc_txt,"conc: %d",*(d3_l.extra+x+y*d3_l.max_x+z*d3_l.max_x*d3_l.max_y)); sprintf(steps_txt,"step: %d",i); sprintf(cc_txt,"total c: %d",my_info.cc); +#ifdef USE_DFB_API d3_lattice_draw(&d3_l,x,y,z,24,arg_v); +#endif // scan_event(&d3_l,&x,&y,&z,&quit,&escape); } if(i%resave==0 && strcmp(s_file,"") && resave!=0) @@ -631,11 +645,15 @@ int main(int argc,char **argv) sprintf(conc_txt,"conc: %d",*(d3_l.extra+x+y*d3_l.max_x+z*d3_l.max_x*d3_l.max_y)); strcpy(steps_txt,"step: end!"); sprintf(cc_txt,"total c: %d",my_info.cc); +#ifdef USE_DFB_API d3_lattice_draw(&d3_l,x,y,z,24,arg_v); scan_event(&d3_l,&x,&y,&z,&quit,&escape); +#endif } +#ifdef USE_DFB_API d3_lattice_release(&d3_l); +#endif return 1; }