diff -uN draw.c.orig draw.c
--- draw.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ draw.c	2021-01-19 23:31:33.000000000 -0500
@@ -47,25 +47,15 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "draw.h"
 #include "jgraph.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <math.h>
 
-void draw_label();
-void draw_axis();
-void draw_label();
-void draw_curves();
-void draw_curve();
-void draw_mark();
-void draw_arrow();
-void draw_legend();
-void draw_strings();
-void draw_graph();
-void draw_graphs();
-void draw_header();
-void draw_footer();
+#include "printline.h"
+#include "token.h"
 
 static char real_eof = EOF;
 
diff -uN draw.h.orig draw.h
--- draw.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ draw.h	2021-01-19 23:39:18.000000000 -0500
@@ -0,0 +1,18 @@
+#ifndef DRAW_H
+#define DRAW_H
+
+extern void draw_label();
+extern void draw_axis();
+extern void draw_label();
+extern void draw_curves();
+extern void draw_curve();
+extern void draw_mark();
+extern void draw_arrow();
+extern void draw_legend();
+extern void draw_strings();
+extern void draw_graph();
+extern void draw_graphs();
+extern void draw_header();
+extern void draw_footer();
+
+#endif
diff -uN edit.c.orig edit.c
--- edit.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ edit.c	2021-01-19 23:33:46.000000000 -0500
@@ -47,6 +47,8 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "edit.h"
+
 #include <stdio.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -54,24 +56,11 @@
 
 
 #include "jgraph.h"
+#include "token.h"
 
 #define MAX(a,b) ((a > b) ? a : b)
 #define MIN(a,b) ((a < b) ? a : b)
 
-void edit_label();
-void copy_curve();
-void copy_label();
-void copy_axis();
-void copy_legend();
-void inherit_axes();
-void getpattern();
-void edit_curve();
-void edit_hash_label();
-void edit_axis();
-void edit_legend();
-void edit_graph();
-void edit_graphs();
-
 void edit_label(l)
 Label l;
 {
diff -uN edit.h.orig edit.h
--- edit.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ edit.h	2021-01-19 23:39:25.000000000 -0500
@@ -0,0 +1,18 @@
+#ifndef EDIT_H
+#define EDIT_H
+
+extern void edit_label();
+extern void copy_curve();
+extern void copy_label();
+extern void copy_axis();
+extern void copy_legend();
+extern void inherit_axes();
+extern void getpattern();
+extern void edit_curve();
+extern void edit_hash_label();
+extern void edit_axis();
+extern void edit_legend();
+extern void edit_graph();
+extern void edit_graphs();
+
+#endif
Binary files jgraph.old/jgraph and jgraph/jgraph differ
diff -uN jgraph.c.orig jgraph.c
--- jgraph.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ jgraph.c	2021-01-19 23:37:14.000000000 -0500
@@ -58,6 +58,12 @@
 #endif
 
 #include "jgraph.h"
+#include "draw.h"
+#include "edit.h"
+#include "printline.h"
+#include "process.h"
+#include "show.h"
+#include "token.h"
 
 int NMARKTYPES = 17;
 int NORMALMARKTYPES = 6;
diff -uN jgraph.h.orig jgraph.h
--- jgraph.h.orig	2021-01-19 23:41:54.000000000 -0500
+++ jgraph.h	2021-01-19 23:38:24.000000000 -0500
@@ -273,6 +273,7 @@
 extern String new_string();
 extern String get_string();
 extern Label new_label();
+extern void new_graphs();
 extern char *MARKTYPESTRS[];
 extern char MARKTYPES[];
 extern int NMARKTYPES;
diff -uN printline.c.orig printline.c
--- printline.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ printline.c	2021-01-19 23:28:03.000000000 -0500
@@ -47,34 +47,12 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "printline.h"
 #include "jgraph.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 
-void gsave();
-void grestore();
-void setfont();
-void setfill();
-void setgray();
-void printline();
-void print_ebar();
-void start_line();
-void cont_line();
-void end_line();
-void bezier_control();
-void bezier_end();
-void start_poly();
-void cont_poly();
-void end_poly();
-void printellipse();
-void set_comment();
-void comment();
-void printline_c();
-void print_label();
-void setlinewidth();
-void setlinestyle();
-
 
 #define LINEWIDTHFACTOR 0.700
 #define MAX(a, b) ((a > b) ? (a) : (b))
diff -uN printline.h.orig printline.h
--- printline.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ printline.h	2021-01-19 23:27:53.000000000 -0500
@@ -0,0 +1,27 @@
+#ifndef PRINTLINE_H
+#define PRINTLINE_H
+
+void gsave();
+void grestore();
+void setfont();
+void setfill();
+void setgray();
+void printline();
+void print_ebar();
+void start_line();
+void cont_line();
+void end_line();
+void bezier_control();
+void bezier_end();
+void start_poly();
+void cont_poly();
+void end_poly();
+void printellipse();
+void set_comment();
+void comment();
+void printline_c();
+void print_label();
+void setlinewidth();
+void setlinestyle();
+
+#endif
diff -uN prio_list.h.orig prio_list.h
--- prio.orig_list.h	2021-01-19 23:41:54.000000000 -0500
+++ prio_list.h	2021-01-19 23:39:35.000000000 -0500
@@ -71,4 +71,4 @@
 */
 
 /* void prio_insert(node, list, descending); */
-
+extern void prio_insert();
diff -uN process.c.orig process.c
--- process.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ process.c	2021-01-19 23:34:57.000000000 -0500
@@ -47,12 +47,17 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "process.h"
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <math.h>
 
 #include "jgraph.h"
+#include "edit.h"
+#include "process.h"
+#include "token.h"
 
 #define ABS(a) ((a > 0.0) ? (a) : (-a))
 #define MAX(a, b) ((a > b) ? (a) : (b))
@@ -62,20 +67,6 @@
 
 static double Pi;
 
-void process_title();
-void process_legend();
-void process_axis1();
-void process_axis2();
-void process_label();
-void process_label_max_n_mins();
-void process_strings();
-void process_curve();
-void process_curves();
-void process_extrema();
-void process_label_extrema();
-void process_graph();
-void process_graphs();
-
 void process_title(g)
 Graph g;
 {
diff -uN process.h.orig process.h
--- process.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ process.h	2021-01-19 23:39:48.000000000 -0500
@@ -0,0 +1,18 @@
+#ifndef PROCESS_H
+#define PROCESS_H
+
+extern void process_title();
+extern void process_legend();
+extern void process_axis1();
+extern void process_axis2();
+extern void process_label();
+extern void process_label_max_n_mins();
+extern void process_strings();
+extern void process_curve();
+extern void process_curves();
+extern void process_extrema();
+extern void process_label_extrema();
+extern void process_graph();
+extern void process_graphs();
+
+#endif
diff -uN show.c.orig show.c
--- show.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ show.c	2021-01-19 23:35:35.000000000 -0500
@@ -47,21 +47,16 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "show.h"
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <math.h>
 #include "jgraph.h"
+#include "token.h"
 
 static void show_mltiline();
-void show_string();
-void show_label();
-void show_lmark();
-void show_curve();
-void show_axis();
-void show_legend();
-void show_graph();
-void show_graphs();
 
 static void spaces(nsp)
 int nsp;
diff -uN show.h.orig show.h
--- show.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ show.h	2021-01-19 23:39:55.000000000 -0500
@@ -0,0 +1,13 @@
+#ifndef SHOW_H
+#define SHOW_H
+
+extern void show_string();
+extern void show_label();
+extern void show_lmark();
+extern void show_curve();
+extern void show_axis();
+extern void show_legend();
+extern void show_graph();
+extern void show_graphs();
+
+#endif
diff -uN token.c.orig token.c
--- token.c.orig	2021-01-19 23:41:54.000000000 -0500
+++ token.c	2021-01-19 23:24:20.000000000 -0500
@@ -47,6 +47,8 @@
 POSSIBILITY OF SUCH DAMAGE.
 */
 
+#include "token.h"
+
 #include <stdlib.h>
 #include <math.h>
 #include <stdio.h>
diff -uN token.h.orig token.h
--- token.h.orig	1969-12-31 19:00:00.000000000 -0500
+++ token.h	2021-01-19 23:40:03.000000000 -0500
@@ -0,0 +1,16 @@
+#ifndef TOKEN_H
+#define TOKEN_H
+
+extern void set_input_file();
+extern void ungettokenchar();
+extern void get_comment();
+extern void rejecttoken();
+extern void error_header();
+extern int gettokenchar();
+extern int gettoken();
+extern int getstring();
+extern int getint();
+extern int getfloat();
+extern int getsystemstring();
+
+#endif
