/* primary modules */

   /* Misc. Utility Functions */
void error(int);
double time2sec(int, int, int, int, float);
void sec2time(double, int*, int*, int*, int*, float*);
void doy(doy_date*, int, int);
void pause(void);
void pause_bell(void);
void gprintf(int*, int*, char*, ...);
int ctchr(char *, char);
void fileout(int, int[], int, int);
int strpos(char *, char);

   /* OPEN & MANIPULATE DATA Functions */
void pws16_server_begin (void);             /* initialization routine */
int  pws16_server_command (void);           /* command routine */
int  pws16_server_data (void);              /* data read routine */
void pws16_server_end (void);               /* deallocation routine */
void pws16_file_begin (void);             /* initialization routine */
int  pws16_file_command (void);           /* command routine */
int  pws16_file_data (void);              /* data read routine */
void pws16_file_end (void);               /* deallocation routine */
void pws16_net_begin (void);             /* initialization routine */
int  pws16_net_command (void);           /* command routine */
int  pws16_net_data (void);              /* data read routine */
void pws16_net_end (void);               /* deallocation routine */

   /* PWS Graphics */
int  pws16_device (char *);          /* output device selection returns # */
void externalBGI(char *, char *);
void testGraphError(void);
void exit_graph(void);               /* Clear Graphics Screen */
int superscriptxy(int, int, int, int, int, int, char *);

   /* PWS Normal Plot of Average, Peaks and Gyrofrequency */
void pws16_label (void);             /* plot label routine */
void pws16_plot (void);              /* data plotting routine */
void pws16_gray_plot(void);

   /* PWS Snapshot Inits and Graphics */
void pws16_snap_label (void);        /* Write borders, labels, etc ... */
void pws16_snap_plot (void);         /* Plot Snapshot info */

   /* PWS Commands in Data Card */
void define_commands(void);
boolean cmd_invalid(void);
boolean cmd_units(void);
boolean cmd_spacecraft(void);
boolean cmd_year(void);
boolean cmd_day(void);
boolean cmd_hour(void);
boolean cmd_minute(void);
boolean cmd_span(void);
boolean cmd_min(void);
boolean cmd_max(void);
boolean cmd_cmin(void);
boolean cmd_cmax(void);
boolean cmd_fg(void);
boolean cmd_fgonly(void);
boolean cmd_peaks(void);
boolean cmd_nopeaks(void);
boolean cmd_reset(void);
boolean cmd_help(void);
boolean cmd_survey(void);
boolean cmd_snapshot(void);
boolean cmd_gray(void);
boolean cmd_color(void);
boolean cmd_output(void);
boolean cmd_filter(void);
boolean cmd_fmin(void);
boolean cmd_fmax(void);
boolean cmd_window(void);
boolean cmd_quit(void);
boolean cmd_c01(void);
boolean cmd_c02(void);
boolean cmd_c03(void);
boolean cmd_c04(void);
boolean cmd_c05(void);
boolean cmd_c06(void);
boolean cmd_c07(void);
boolean cmd_c08(void);
boolean cmd_c09(void);
boolean cmd_c10(void);
boolean cmd_c11(void);
boolean cmd_c12(void);
boolean cmd_c13(void);
boolean cmd_c14(void);
boolean cmd_c15(void);
boolean cmd_c16(void);
boolean cmd_ignore(void);
boolean cmd_input(void);
boolean cmd_run(void);
boolean cmd_shell(void);
boolean findinput(char *);
boolean channel(int, int);
int kmdcmp(const void *, const void *);
boolean kmdadd(char *, char *);
