Browse Source

src/main.c, whitespace cleanup

pre-master-46
rlar 11 years ago
parent
commit
f8df1a7b2f
  1. 490
      src/main.c

490
src/main.c

@ -22,8 +22,8 @@
/* SJB added editline support 2005-05-05 */ /* SJB added editline support 2005-05-05 */
#ifdef HAVE_BSDEDITLINE #ifdef HAVE_BSDEDITLINE
# include <editline/readline.h> # include <editline/readline.h>
extern VFunction *rl_event_hook; /* missing from editline/readline.h */
extern int rl_catch_signals; /* missing from editline/readline.h */
extern VFunction *rl_event_hook; /* missing from editline/readline.h */
extern int rl_catch_signals; /* missing from editline/readline.h */
#endif #endif
#include "ngspice/iferrmsg.h" #include "ngspice/iferrmsg.h"
@ -68,8 +68,8 @@
#endif #endif
#if defined(HAVE_GNUREADLINE) || defined(HAVE_BSDEDITLINE) #if defined(HAVE_GNUREADLINE) || defined(HAVE_BSDEDITLINE)
char history_file[512] = {'\0'};
static char *application_name;
char history_file[512] = {'\0'};
static char *application_name;
#endif #endif
/* Undefine this next line for debug tracing */ /* Undefine this next line for debug tracing */
@ -87,12 +87,12 @@ bool ft_setflag = FALSE; /* TRUE = Don't abort simulation after an interrupt.
char *ft_rawfile = "rawspice.raw"; char *ft_rawfile = "rawspice.raw";
#ifdef HAS_WINGUI #ifdef HAS_WINGUI
extern void winmessage(char *new_msg); /* display a message box (defined in winmain.c)*/
extern void SetSource( char *Name); /* display the source file name in the source window */
extern int xmain(int argc, char **argv);
FILE *flogp = NULL; /* log file ('-o logfile' command line option) */
extern void winmessage(char *new_msg); /* display a message box (defined in winmain.c)*/
extern void SetSource(char *Name); /* display the source file name in the source window */
extern int xmain(int argc, char **argv);
FILE *flogp = NULL; /* log file ('-o logfile' command line option) */
#else #else
bool orflag = FALSE; /* global for -o option */
bool orflag = FALSE; /* global for -o option */
#endif #endif
FILE *slogp = NULL; /* soa log file ('--soa-log file' command line option) */ FILE *slogp = NULL; /* soa log file ('--soa-log file' command line option) */
@ -147,7 +147,7 @@ double Temp, RelTemp, Vt;
double RefPsi;/* potential at Infinity */ double RefPsi;/* potential at Infinity */
double EpsNorm, VNorm, NNorm, LNorm, TNorm, JNorm, GNorm, ENorm; double EpsNorm, VNorm, NNorm, LNorm, TNorm, JNorm, GNorm, ENorm;
/* end cider globals */
/* end cider globals */
#endif /* CIDER */ #endif /* CIDER */
struct variable *(*if_getparam)(CKTcircuit *ckt, char **name, char *param, int ind, int do_model); struct variable *(*if_getparam)(CKTcircuit *ckt, char **name, char *param, int ind, int do_model);
@ -158,16 +158,16 @@ static void sp_shutdown(int exitval);
static void app_rl_readlines(void); static void app_rl_readlines(void);
#if defined(HAVE_GNUREADLINE) || defined(HAVE_BSDEDITLINE) #if defined(HAVE_GNUREADLINE) || defined(HAVE_BSDEDITLINE)
static char *prompt(void);
static char *prompt(void);
#endif #endif
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
# include "frontend/plotting/x11.h" # include "frontend/plotting/x11.h"
# ifdef HAVE_GNUREADLINE # ifdef HAVE_GNUREADLINE
static int app_event_func(void);
static int app_event_func(void);
# endif # endif
# ifdef HAVE_BSDEDITLINE # ifdef HAVE_BSDEDITLINE
static void app_event_func(void);
static void app_event_func(void);
# endif # endif
#endif #endif
@ -185,17 +185,17 @@ extern IFsimulator SIMinfo;
#ifdef SIMULATOR #ifdef SIMULATOR
const bool ft_nutmeg = FALSE; const bool ft_nutmeg = FALSE;
extern struct comm spcp_coms[ ];
extern struct comm spcp_coms[];
struct comm *cp_coms = spcp_coms; struct comm *cp_coms = spcp_coms;
extern int OUTpBeginPlot(CKTcircuit *,JOB *,IFuid,IFuid,int,int,IFuid *,int,runDesc **);
extern int OUTpData(runDesc *,IFvalue *,IFvalue *);
extern int OUTwBeginPlot(CKTcircuit *,JOB *,IFuid,IFuid,int,int,IFuid *,int,runDesc **);
extern int OUTwReference(runDesc *,IFvalue *,void **);
extern int OUTwData(runDesc *,int,IFvalue *,void *), OUTwEnd(runDesc *), OUTendPlot(runDesc *);
extern int OUTbeginDomain(runDesc *,IFuid,int,IFvalue *);
extern int OUTpBeginPlot(CKTcircuit *, JOB *, IFuid, IFuid, int, int, IFuid *, int, runDesc **);
extern int OUTpData(runDesc *, IFvalue *, IFvalue *);
extern int OUTwBeginPlot(CKTcircuit *, JOB *, IFuid, IFuid, int, int, IFuid *, int, runDesc **);
extern int OUTwReference(runDesc *, IFvalue *, void **);
extern int OUTwData(runDesc *, int, IFvalue *, void *), OUTwEnd(runDesc *), OUTendPlot(runDesc *);
extern int OUTbeginDomain(runDesc *, IFuid, int, IFvalue *);
extern int OUTendDomain(runDesc *), OUTstopnow(void); extern int OUTendDomain(runDesc *), OUTstopnow(void);
extern void OUTerror(int,char *,IFuid *);
extern void OUTerror(int, char *, IFuid *);
#ifdef __GNUC__ #ifdef __GNUC__
extern void OUTerrorf(int, const char *fmt, ...) __attribute__ ((format (__printf__, 2, 3))); extern void OUTerrorf(int, const char *fmt, ...) __attribute__ ((format (__printf__, 2, 3)));
@ -203,7 +203,7 @@ extern void OUTerrorf(int, const char *fmt, ...) __attribute__ ((format (__prin
extern void OUTerrorf(int, const char *fmt, ...); extern void OUTerrorf(int, const char *fmt, ...);
#endif #endif
extern int OUTattributes(runDesc *,IFuid,int,IFvalue *);
extern int OUTattributes(runDesc *, IFuid, int, IFvalue *);
extern void initw(void); extern void initw(void);
@ -224,12 +224,12 @@ IFfrontEnd nutmeginfo = {
OUTbeginDomain, OUTbeginDomain,
OUTendDomain, OUTendDomain,
OUTattributes OUTattributes
};
};
#else /* SIMULATOR */ #else /* SIMULATOR */
const bool ft_nutmeg = TRUE; const bool ft_nutmeg = TRUE;
extern struct comm nutcp_coms[ ];
extern struct comm nutcp_coms[];
struct comm *cp_coms = nutcp_coms; struct comm *cp_coms = nutcp_coms;
IFfrontEnd nutmeginfo; IFfrontEnd nutmeginfo;
@ -270,6 +270,7 @@ if_inpdeck(struct line *deck, INPtables **tab)
{ {
NG_IGNORE(tab); NG_IGNORE(tab);
NG_IGNORE(deck); NG_IGNORE(deck);
return NULL; return NULL;
} }
@ -305,6 +306,7 @@ char *
if_errstring(int code) if_errstring(int code)
{ {
NG_IGNORE(code); NG_IGNORE(code);
return "spice error"; return "spice error";
} }
@ -354,6 +356,7 @@ com_snload(wordlist *wl)
{ {
NG_IGNORE(wl); NG_IGNORE(wl);
} }
void void
com_snsave(wordlist *wl) com_snsave(wordlist *wl)
{ {
@ -388,50 +391,59 @@ spice_destroy_devices(void)
#ifdef XSPICE #ifdef XSPICE
/* saj to get nutmeg to compile, not nice but necessary */ /* saj to get nutmeg to compile, not nice but necessary */
Ipc_Tiein_t g_ipc; Ipc_Tiein_t g_ipc;
Ipc_Status_t Ipc_Status_t
ipc_send_errchk(void) ipc_send_errchk(void)
{ {
Ipc_Status_t x = IPC_STATUS_OK;
return x;
Ipc_Status_t x = IPC_STATUS_OK;
return x;
} }
Ipc_Status_t Ipc_Status_t
ipc_get_line(char *str, int *len, Ipc_Wait_t wait) ipc_get_line(char *str, int *len, Ipc_Wait_t wait)
{ {
Ipc_Status_t x = IPC_STATUS_OK;
NG_IGNORE(str);
NG_IGNORE(len);
NG_IGNORE(wait);
Ipc_Status_t x = IPC_STATUS_OK;
return x;
NG_IGNORE(str);
NG_IGNORE(len);
NG_IGNORE(wait);
return x;
} }
struct line * struct line *
ENHtranslate_poly(struct line *deck) ENHtranslate_poly(struct line *deck)
{ {
NG_IGNORE(deck);
return NULL;
NG_IGNORE(deck);
return NULL;
} }
int int
load_opus(char *name) load_opus(char *name)
{ {
NG_IGNORE(name);
return 1;
NG_IGNORE(name);
return 1;
} }
char * char *
MIFgettok(char **s) MIFgettok(char **s)
{ {
NG_IGNORE(s);
return NULL;
NG_IGNORE(s);
return NULL;
} }
void void
EVTprint(wordlist *wl) EVTprint(wordlist *wl)
{ {
NG_IGNORE(wl);
NG_IGNORE(wl);
} }
struct dvec * struct dvec *
EVTfindvec(char *node) { EVTfindvec(char *node) {
NG_IGNORE(node);
return NULL;
NG_IGNORE(node);
return NULL;
} }
#endif /* XSPICE */ #endif /* XSPICE */
#endif /* SIMULATOR */ #endif /* SIMULATOR */
@ -456,22 +468,24 @@ int DEVmaxnum = 0;
- Spice3 - Spice3
- all compatibility stuff - all compatibility stuff
*/ */
COMPATMODE_T COMPATMODE_T
ngspice_compat_mode(void) ngspice_compat_mode(void)
{ {
char behaviour[80] ;
if( cp_getvar("ngbehavior", CP_STRING, behaviour)){
if (strcasecmp(behaviour, "all")==0)
return COMPATMODE_ALL;
if (strcasecmp(behaviour, "hs")==0)
return COMPATMODE_HS;
if (strcasecmp(behaviour, "ps")==0)
return COMPATMODE_PS;
if (strcasecmp(behaviour, "spice3")==0)
return COMPATMODE_SPICE3;
}
return COMPATMODE_ALL;
char behaviour[80];
if (cp_getvar("ngbehavior", CP_STRING, behaviour)) {
if (strcasecmp(behaviour, "all") == 0)
return COMPATMODE_ALL;
if (strcasecmp(behaviour, "hs") == 0)
return COMPATMODE_HS;
if (strcasecmp(behaviour, "ps") == 0)
return COMPATMODE_PS;
if (strcasecmp(behaviour, "spice3") == 0)
return COMPATMODE_SPICE3;
}
return COMPATMODE_ALL;
} }
/* -------------------------------------------------------------------------- */ /* -------------------------------------------------------------------------- */
@ -485,7 +499,7 @@ SIMinit(IFfrontEnd *frontEnd, IFsimulator **simulator)
SIMinfo.numAnalyses = spice_num_analysis(); SIMinfo.numAnalyses = spice_num_analysis();
SIMinfo.analyses = (IFanalysis **)spice_analysis_ptr(); /* va: we recast, because we use SIMinfo.analyses = (IFanalysis **)spice_analysis_ptr(); /* va: we recast, because we use
* only the public part * only the public part
*/
*/
#ifdef CIDER #ifdef CIDER
/* Evaluates limits of machine accuracy for CIDER */ /* Evaluates limits of machine accuracy for CIDER */
@ -497,7 +511,7 @@ SIMinit(IFfrontEnd *frontEnd, IFsimulator **simulator)
SPfrontEnd = frontEnd; SPfrontEnd = frontEnd;
*simulator = &SIMinfo; *simulator = &SIMinfo;
CONSTroot2 = sqrt(2.); CONSTroot2 = sqrt(2.);
CONSTvt0 = CONSTboltz * (27 /* deg c */ + CONSTCtoK ) / CHARGE;
CONSTvt0 = CONSTboltz * (27 /* deg c */ + CONSTCtoK) / CHARGE;
CONSTKoverQ = CONSTboltz / CHARGE; CONSTKoverQ = CONSTboltz / CHARGE;
CONSTe = exp(1.0); CONSTe = exp(1.0);
return OK; return OK;
@ -518,7 +532,7 @@ sp_shutdown(int exitval)
#endif #endif
if (exitval == EXIT_INFO) if (exitval == EXIT_INFO)
exitval = EXIT_NORMAL; exitval = EXIT_NORMAL;
exit (exitval);
exit(exitval);
} }
/* -------------------------------------------------------------------------- */ /* -------------------------------------------------------------------------- */
@ -535,26 +549,30 @@ prompt(void)
return NULL; /* NULL means no prompt */ return NULL; /* NULL means no prompt */
s = get_alt_prompt(); s = get_alt_prompt();
if (!s) if (!s)
s = cp_promptstring;
s = cp_promptstring;
if (!s) if (!s)
s = "->";
s = "->";
while (*s) { while (*s) {
char c = (char) strip(*s++);
switch (c) {
char c = (char) strip(*s++);
switch (c) {
case '!': case '!':
p += sprintf(p, "%d", where_history() + 1);
break;
p += sprintf(p, "%d", where_history() + 1);
break;
case '\\': case '\\':
if (*s)
c = (char) strip(*s++);
default:
*p++ = c;
break;
}
if (*s)
c = (char) strip(*s++);
default:
*p++ = c;
break;
}
} }
*p = '\0'; *p = '\0';
return pbuf; return pbuf;
} }
#endif /* HAVE_GNUREADLINE || HAVE_BSDEDITLINE */ #endif /* HAVE_GNUREADLINE || HAVE_BSDEDITLINE */
@ -615,7 +633,7 @@ app_rl_readlines(void)
rl_instream = cp_in; rl_instream = cp_in;
rl_outstream = cp_out; rl_outstream = cp_out;
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
if(dispdev->Input == X11_Input)
if (dispdev->Input == X11_Input)
rl_event_hook = app_event_func; rl_event_hook = app_event_func;
#endif #endif
rl_catch_signals = 0; /* disable signal handling */ rl_catch_signals = 0; /* disable signal handling */
@ -628,33 +646,33 @@ app_rl_readlines(void)
/* note that we want some mechanism to detect ctrl-D and expand it to exit */ /* note that we want some mechanism to detect ctrl-D and expand it to exit */
for (;;) { for (;;) {
history_set_pos(history_length);
history_set_pos(history_length);
if (SETJMP(jbuf, 1)) /* Set location to jump to after handling SIGINT (ctrl-C) */
ft_sigintr_cleanup();
if (SETJMP(jbuf, 1)) /* Set location to jump to after handling SIGINT (ctrl-C) */
ft_sigintr_cleanup();
line = readline(prompt());
line = readline(prompt());
if (!line) {
cp_evloop("quit");
continue;
}
if (!line) {
cp_evloop("quit");
continue;
}
if (*line) {
int s = history_expand(line, &expanded_line);
if (*line) {
int s = history_expand(line, &expanded_line);
if (s == 2) {
fprintf(stderr, "-> %s\n", expanded_line);
} else if (s == -1) {
fprintf(stderr, "readline: %s\n", expanded_line);
} else {
cp_evloop(expanded_line);
add_history(expanded_line);
}
free(expanded_line);
}
if (s == 2) {
fprintf(stderr, "-> %s\n", expanded_line);
} else if (s == -1) {
fprintf(stderr, "readline: %s\n", expanded_line);
} else {
cp_evloop(expanded_line);
add_history(expanded_line);
}
free(expanded_line);
}
free(line);
free(line);
} }
/* History gets written in ../fte/misccoms.c com_quit */ /* History gets written in ../fte/misccoms.c com_quit */
@ -670,24 +688,24 @@ static void
show_help(void) show_help(void)
{ {
printf("Usage: %s [OPTION]... [FILE]...\n" printf("Usage: %s [OPTION]... [FILE]...\n"
"Simulate the electical circuits in FILE.\n"
"\n"
" -a --autorun run the loaded netlist\n"
" -b, --batch process FILE in batch mode\n"
" -c, --circuitfile=FILE set the circuitfile\n"
" -i, --interactive run in interactive mode\n"
" -n, --no-spiceinit don't load the local or user's config file\n"
" -o, --output=FILE set the outputfile\n"
" -p, --pipe run in I/O pipe mode\n"
" -q, --completion activate command completion\n"
" -r, --rawfile=FILE set the rawfile output\n"
" --soa-log=FILE set the outputfile for SOA warnings\n"
" -s, --server run spice as a server process\n"
" -t, --term=TERM set the terminal type\n"
" -h, --help display this help and exit\n"
" -v, --version output version information and exit\n"
"\n"
"Report bugs to %s.\n", cp_program, Bug_Addr);
"Simulate the electical circuits in FILE.\n"
"\n"
" -a --autorun run the loaded netlist\n"
" -b, --batch process FILE in batch mode\n"
" -c, --circuitfile=FILE set the circuitfile\n"
" -i, --interactive run in interactive mode\n"
" -n, --no-spiceinit don't load the local or user's config file\n"
" -o, --output=FILE set the outputfile\n"
" -p, --pipe run in I/O pipe mode\n"
" -q, --completion activate command completion\n"
" -r, --rawfile=FILE set the rawfile output\n"
" --soa-log=FILE set the outputfile for SOA warnings\n"
" -s, --server run spice as a server process\n"
" -t, --term=TERM set the terminal type\n"
" -h, --help display this help and exit\n"
" -v, --version output version information and exit\n"
"\n"
"Report bugs to %s.\n", cp_program, Bug_Addr);
} }
/* -------------------------------------------------------------------------- */ /* -------------------------------------------------------------------------- */
@ -695,12 +713,12 @@ static void
show_version(void) show_version(void)
{ {
printf("%s compiled from %s revision %s\n" printf("%s compiled from %s revision %s\n"
"Written originally by Berkeley University\n"
"Currently maintained by the NGSpice Project\n\n"
"Copyright (C) 1985-1996,"
" The Regents of the University of California\n"
"Copyright (C) 1999-2011,"
" The NGSpice Project\n", cp_program, PACKAGE, VERSION);
"Written originally by Berkeley University\n"
"Currently maintained by the NGSpice Project\n\n"
"Copyright (C) 1985-1996,"
" The Regents of the University of California\n"
"Copyright (C) 1999-2011,"
" The NGSpice Project\n", cp_program, PACKAGE, VERSION);
} }
#ifdef SIMULATOR #ifdef SIMULATOR
@ -712,7 +730,7 @@ append_to_stream(FILE *dest, FILE *source)
size_t n; size_t n;
while ((n = fread(buf, 1, BSIZE_SP, source)) > 0) while ((n = fread(buf, 1, BSIZE_SP, source)) > 0)
fwrite(buf, n, 1, dest);
fwrite(buf, n, 1, dest);
} }
#endif /* SIMULATOR */ #endif /* SIMULATOR */
@ -734,11 +752,11 @@ read_initialisation_file(char *dir, char *name)
/* contruct the full path */ /* contruct the full path */
if (!dir || *dir == '\0') { if (!dir || *dir == '\0') {
path = name;
path = name;
} else { } else {
path = tprintf("%s" DIR_PATHSEP "%s", dir, name);
if (!path)
return FALSE; /* memory allocation error */
path = tprintf("%s" DIR_PATHSEP "%s", dir, name);
if (!path)
return FALSE; /* memory allocation error */
} }
/* now access the file */ /* now access the file */
@ -846,11 +864,11 @@ main(int argc, char **argv)
istty = (bool) isatty(fileno(stdin)); istty = (bool) isatty(fileno(stdin));
#endif #endif
init_time( );
init_time();
{ {
int rv = SIMinit(&nutmeginfo, &ft_sim); int rv = SIMinit(&nutmeginfo, &ft_sim);
if(rv != OK) {
if (rv != OK) {
ft_sperror(rv, "SIMinit"); ft_sperror(rv, "SIMinit");
sp_shutdown(EXIT_BAD); sp_shutdown(EXIT_BAD);
} }
@ -862,7 +880,7 @@ main(int argc, char **argv)
TausSeed(); TausSeed();
/* --- Process command line options --- */ /* --- Process command line options --- */
for(;;) {
for (;;) {
enum { soa_log = 1001, }; enum { soa_log = 1001, };
static struct option long_options[] = { static struct option long_options[] = {
@ -885,105 +903,105 @@ main(int argc, char **argv)
int option_index = 0; int option_index = 0;
int c = getopt_long (argc, argv, "hvbac:ino:pqr:st:",
long_options, &option_index);
int c = getopt_long(argc, argv, "hvbac:ino:pqr:st:",
long_options, &option_index);
if (c == -1) if (c == -1)
break; break;
switch (c) { switch (c) {
case 'h': /* Help */
show_help();
sp_shutdown (EXIT_INFO);
break;
case 'v': /* Version info */
show_version();
sp_shutdown (EXIT_INFO);
break;
case 'b': /* Batch mode */
{
bool x_false = FALSE;
cp_vset("addcontrol", CP_BOOL, &x_false);
ft_batchmode = TRUE;
}
break;
case 'a': /* Add control section for autorun */
if (!ft_batchmode) {
bool x_true = TRUE;
cp_vset("addcontrol", CP_BOOL, &x_true);
}
break;
case 'c': /* Circuit file */
if (optarg) {
if ((circuit_file = fopen(optarg, "r")) == NULL) {
perror(optarg);
sp_shutdown(EXIT_BAD);
}
istty = FALSE;
}
break;
case 'i': /* Interactive mode */
iflag = TRUE;
break;
case 'n': /* Don't read initialisation file */
readinit = FALSE;
break;
case 'o': /* Output file */
if (optarg) {
/* switch to line buffering for stdout */
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
sprintf (log_file, "%s", optarg);
oflag = TRUE;
}
break;
case 'p': /* Run in pipe mode */
iflag = TRUE;
istty = TRUE;
ft_pipemode = TRUE;
/* switch to line buffering for stdout */
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
break;
case 'q': /* Command completion */
qflag = TRUE;
break;
case 'r': /* The raw file */
if (optarg)
cp_vset("rawfile", CP_STRING, optarg);
rflag = TRUE;
break;
case 's': /* Server mode */
ft_servermode = TRUE;
break;
case 't':
if (optarg)
cp_vset("term", CP_STRING, optarg);
break;
case soa_log:
if (optarg) {
sprintf (soa_log_file, "%s", optarg);
srflag = TRUE;
}
break;
case '?':
break;
default:
printf ("?? getopt returned character code 0%o ??\n", c);
case 'h': /* Help */
show_help();
sp_shutdown(EXIT_INFO);
break;
case 'v': /* Version info */
show_version();
sp_shutdown(EXIT_INFO);
break;
case 'b': /* Batch mode */
{
bool x_false = FALSE;
cp_vset("addcontrol", CP_BOOL, &x_false);
ft_batchmode = TRUE;
}
break;
case 'a': /* Add control section for autorun */
if (!ft_batchmode) {
bool x_true = TRUE;
cp_vset("addcontrol", CP_BOOL, &x_true);
}
break;
case 'c': /* Circuit file */
if (optarg) {
if ((circuit_file = fopen(optarg, "r")) == NULL) {
perror(optarg);
sp_shutdown(EXIT_BAD);
}
istty = FALSE;
}
break;
case 'i': /* Interactive mode */
iflag = TRUE;
break;
case 'n': /* Don't read initialisation file */
readinit = FALSE;
break;
case 'o': /* Output file */
if (optarg) {
/* switch to line buffering for stdout */
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
sprintf(log_file, "%s", optarg);
oflag = TRUE;
}
break;
case 'p': /* Run in pipe mode */
iflag = TRUE;
istty = TRUE;
ft_pipemode = TRUE;
/* switch to line buffering for stdout */
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
break;
case 'q': /* Command completion */
qflag = TRUE;
break;
case 'r': /* The raw file */
if (optarg)
cp_vset("rawfile", CP_STRING, optarg);
rflag = TRUE;
break;
case 's': /* Server mode */
ft_servermode = TRUE;
break;
case 't':
if (optarg)
cp_vset("term", CP_STRING, optarg);
break;
case soa_log:
if (optarg) {
sprintf(soa_log_file, "%s", optarg);
srflag = TRUE;
}
break;
case '?':
break;
default:
printf ("?? getopt returned character code 0%o ??\n", c);
} }
} /* --- End of command line option processing (While(1)-loop) --- */ } /* --- End of command line option processing (While(1)-loop) --- */
@ -1009,15 +1027,15 @@ main(int argc, char **argv)
/* flogp used by winmain's putc which writes to file 'log_file' */ /* flogp used by winmain's putc which writes to file 'log_file' */
flogp = fopen(log_file, "w"); flogp = fopen(log_file, "w");
if (!flogp) { if (!flogp) {
perror (log_file);
sp_shutdown (EXIT_BAD);
perror(log_file);
sp_shutdown(EXIT_BAD);
} }
#else #else
orflag = TRUE; orflag = TRUE;
/* Connect stdout and stderr to file log_file and log stdout */ /* Connect stdout and stderr to file log_file and log stdout */
if (!freopen (log_file, "w", stdout)) {
perror (log_file);
sp_shutdown (EXIT_BAD);
if (!freopen(log_file, "w", stdout)) {
perror(log_file);
sp_shutdown(EXIT_BAD);
} }
dup2(fileno(stdout), fileno(stderr)); dup2(fileno(stdout), fileno(stderr));
setvbuf(stdout, NULL, _IOLBF, BUFSIZ); /* enable line buffering */ setvbuf(stdout, NULL, _IOLBF, BUFSIZ); /* enable line buffering */
@ -1031,8 +1049,8 @@ main(int argc, char **argv)
/* Open the soa log file */ /* Open the soa log file */
slogp = fopen(soa_log_file, "w"); slogp = fopen(soa_log_file, "w");
if (!slogp) { if (!slogp) {
perror (soa_log_file);
sp_shutdown (EXIT_BAD);
perror(soa_log_file);
sp_shutdown(EXIT_BAD);
} }
} /* srflag */ } /* srflag */
@ -1059,7 +1077,7 @@ main(int argc, char **argv)
/* Get information on memory status upon startup. /* Get information on memory status upon startup.
Would like to do this later, but cpinit evals commands. Would like to do this later, but cpinit evals commands.
fcn is in resource.c */ fcn is in resource.c */
init_rlimits( );
init_rlimits();
/* Have to initialize cp now. /* Have to initialize cp now.
fcn is in cpitf.c*/ fcn is in cpitf.c*/
@ -1106,14 +1124,14 @@ main(int argc, char **argv)
/* load user's initialisation file /* load user's initialisation file
try accessing the initialisation file in the current directory try accessing the initialisation file in the current directory
if that fails try the alternate name */ if that fails try the alternate name */
if(FALSE == read_initialisation_file("", INITSTR) &&
FALSE == read_initialisation_file("", ALT_INITSTR)) {
if (FALSE == read_initialisation_file("", INITSTR) &&
FALSE == read_initialisation_file("", ALT_INITSTR)) {
/* if that failed try in the user's home directory /* if that failed try in the user's home directory
if their HOME environment variable is set */ if their HOME environment variable is set */
char *homedir = getenv("HOME"); char *homedir = getenv("HOME");
if (homedir) if (homedir)
if(FALSE == read_initialisation_file(homedir, INITSTR) &&
FALSE == read_initialisation_file(homedir, ALT_INITSTR)) {
if (FALSE == read_initialisation_file(homedir, INITSTR) &&
FALSE == read_initialisation_file(homedir, ALT_INITSTR)) {
; ;
} }
} }
@ -1121,7 +1139,7 @@ main(int argc, char **argv)
if (!ft_batchmode) { if (!ft_batchmode) {
com_version(NULL); com_version(NULL);
DevInit( );
DevInit();
print_news(); print_news();
} }
@ -1149,15 +1167,15 @@ main(int argc, char **argv)
// initialization and seed for FastNorm Gaussian random generator // initialization and seed for FastNorm Gaussian random generator
{ {
unsigned int rseed = 66; unsigned int rseed = 66;
initnorm (0, 0);
initnorm(0, 0);
if (!cp_getvar("rndseed", CP_NUM, &rseed)) { if (!cp_getvar("rndseed", CP_NUM, &rseed)) {
time_t acttime = time(NULL); time_t acttime = time(NULL);
rseed = (unsigned int) acttime; rseed = (unsigned int) acttime;
} }
initnorm (rseed, 2);
fprintf (cp_out, "SoS %f, seed value: %ld\n", renormalize(), rseed);
initnorm(rseed, 2);
fprintf(cp_out, "SoS %f, seed value: %ld\n", renormalize(), rseed);
} }
#elif defined (WaGauss)
#elif defined(WaGauss)
{ {
unsigned int rseed = 66; unsigned int rseed = 66;
if (!cp_getvar("rndseed", CP_NUM, &rseed)) { if (!cp_getvar("rndseed", CP_NUM, &rseed)) {
@ -1203,7 +1221,7 @@ main(int argc, char **argv)
} }
#endif #endif
if(!tempfile) {
if (!tempfile) {
perror("tmpfile()"); perror("tmpfile()");
sp_shutdown(EXIT_BAD); sp_shutdown(EXIT_BAD);
} }
@ -1339,8 +1357,8 @@ main(int argc, char **argv)
#endif /* ~ SIMULATOR */ #endif /* ~ SIMULATOR */
for(;;)
if(!SETJMP(jbuf, 1)) {
for (;;)
if (!SETJMP(jbuf, 1)) {
/* enter the command processing loop */ /* enter the command processing loop */
cp_interactive = TRUE; cp_interactive = TRUE;
app_rl_readlines(); app_rl_readlines();

Loading…
Cancel
Save