$NetBSD: patch-ad,v 1.2 2012/12/27 06:13:20 dholland Exp $

- don't declare own errno
- use some const
- don't declare own fopen()
- do declare own functions
- use C89

--- te_defs.h.orig	1993-08-05 22:29:33.000000000 +0000
+++ te_defs.h
@@ -387,7 +387,6 @@ extern struct outfiledata po_file, so_fi
 extern int char_count;					/* char count for tab typer			*/
 extern char lastc;						/* last char read					*/
 extern int ttyerr;						/* error return from ioctl			*/
-extern int errno;						/* system error code				*/
 #ifdef POSIX_TECO
 extern struct termios ttybuf;			/* local copy of tty control data	*/
 #else
@@ -429,20 +428,16 @@ extern struct buffcell *insert_p;		/* po
 extern int buff_mod;					/* set to earliest buffer change	*/
 extern int search_flag;					/* set nonzero by search			*/
 
-extern char *errors[];					/* error text						*/
+extern const char *errors[];					/* error text						*/
 extern char mapch[], mapch_l[];			/* char mapping tables				*/
 extern char spec_chars[];				/* special character table			*/
 
-extern char skipto(), find_endcond(), getcmdc(), getcmdc0();	/* routines that return chars */
 
 extern FILE *eisw;						/* indirect command file pointer	*/
-extern FILE *fopen();
 
 extern struct buffcell *freebuff;		/* buffcell free-list pointer	*/
 extern struct buffcell *dly_freebuff;	/* delayed free-list pointer	*/
 extern struct is *freedcell;			/* cell free-list pointer		*/
-extern struct buffcell *get_bcell();	/* get buffcell routine			*/
-extern struct is *get_dcell();			/* get data cell routine		*/
 
 /* the text buffer header */
 extern struct qh buff;
@@ -466,3 +461,96 @@ extern struct exp_entry *esp;		/* expres
 
 /* the directory string buffer */
 extern struct qh dir_name;
+
+/* te_utils.c */
+struct buffcell *get_bcell(void);	/* get buffcell routine	*/
+VOID free_blist(struct buffcell *p);
+VOID dly_free_blist(struct buffcell *p);
+VOID free_dlyd_blist(struct buffcell *p);
+VOID reset_q_usecounts(void);
+extern struct is *get_dcell(void);	/* get data cell routine */
+VOID make_buffer(struct qh *p);
+int fwdc(struct qp *arg);
+int fwdcx(struct qp *arg);
+int backc(struct qp *arg);
+VOID set_pointer(int pos, struct qp *ptr);
+char getcmdc0(int trace);
+char getcmdc(int trace);
+int peekcmdc(char arg);
+
+/* te_subs.c */
+VOID movenchars(struct qp *from, struct qp *to, register int n);
+VOID moveuntil(struct qp *form, struct qp *to, register char c,
+	       int *n, int max, int trace);
+int get_value(int d);
+int lines(register int arg);
+int line_args(int d, struct qp *p);
+int getqspec(int fors, char c);
+VOID insert1(void);
+VOID insert2(int count);
+VOID delete1(int nchars);
+char skipto(int arg);
+VOID do_ctlp(void);
+
+/* te_main.c */
+VOID cleanup(void);
+VOID update_header(void);
+VOID init_wd(void);
+VOID get_term_par(void);
+VOID do_o(void);
+
+/* te_rdcmd.c */
+int read_cmdstr(void);
+VOID retype_cmdstr(char c);
+
+/* te_exec0.c */
+VOID exec_cmdstr(void);
+
+/* te_exec1.c */
+VOID exec_cmds1(void);
+
+/* te_exec2.c */
+VOID do_e(void);
+int do_eq(void);
+int do_eq1(char *shell);
+int do_en(void);
+int do_glob(struct qh *gbuff, struct qh *sbuff);
+VOID do_en_next(void);
+int read_filename(int flag, char func);
+VOID set_var(int extend, int *arg);
+int read_file(struct qp *rbuff, int *nchars, int endsw);
+VOID write_file(struct qp *wbuff, int nchars, int ffsw);
+VOID kill_output(struct outfiledata *outptr);
+VOID panic(void);
+VOID do_f(void);
+VOID pop_iteration(int arg);
+VOID find_enditer(void);
+VOID find_endcond(char arg);
+
+/* te_srch.c */
+int build_string(struct qh *sbuff);
+int end_search(int result);
+int setup_search(void);
+int do_nsearch(char arg);
+int do_fb(void);
+int do_search(int count);
+
+/* te_chario.c */
+VOID setup_tty(int arg);
+int gettty_nowait(void);
+int gettty(void);
+void block_inter(int func);
+VOID crlf(void);
+VOID reset_ctlo(void);
+VOID type_char(char c);
+
+/* te_window.c */
+VOID vt(int func);
+VOID do_window(int ref_flag);
+VOID set_term_par(int lines, int cols);
+VOID window(int arg);
+VOID scroll_dly(void);
+VOID display_lines(void);
+
+/* te_fxstub.c */
+void te_fx(void);
