1 /* $NetBSD: extern.h,v 1.15 2009/05/25 23:48:32 dholland Exp $ */
4 * Copyright (c) 1990, 1993
5 * The Regents of the University of California. All rights reserved.
7 * This code is derived from software contributed to Berkeley by
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * 3. Neither the name of the University nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
22 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * @(#)extern.h 8.1 (Berkeley) 5/31/93
38 * Copyright (c) 1987 by Ed James, UC Berkeley. All rights reserved.
40 * Copy permission is hereby granted provided that this notice is
41 * retained on all partial or complete copies.
43 * For more info on this and all of my stuff, mail edjames@berkeley.edu.
47 extern const char *filename
;
49 extern int clck
, safe_planes
, test_mode
;
50 extern time_t start_time
;
53 extern FILE *filein
, *fileout
;
56 extern C_SCREEN screen
, *sp
;
58 extern LIST air
, ground
;
60 extern struct termios tty_start
, tty_new
;
62 extern DISPLACEMENT displacement
[MAXDIR
];
65 void append(LIST
*, PLANE
*);
66 void check_adir(int, int, int);
67 void check_edge(int, int);
68 void check_edir(int, int, int);
69 void check_line(int, int, int, int);
70 void check_linepoint(int, int);
71 void check_point(int, int);
73 int compar(const void *, const void *);
74 void delete(LIST
*, PLANE
*);
77 void done_screen(void);
79 void draw_line(WINDOW
*, int, int, int, int, const char *);
85 void ioaddstr(int, const char *);
86 void ioclrtobot(void);
88 void ioerror(int, int, const char *);
92 void log_score_quit(int) __dead
;
93 void loser(const PLANE
*, const char *) __dead
;
94 int main(int, char *[]);
95 char name(const PLANE
*);
99 void open_score_file(void);
104 int read_file(const char *);
107 void setup_screen(const C_SCREEN
*);
108 int too_close(const PLANE
*p1
, const PLANE
*p2
, int);
110 int yyerror(const char *);
115 const char *Left(int);
116 const char *Right(int);
117 const char *airport(int);
118 const char *beacon(int);
119 const char *benum(int);
120 const char *circle(int);
121 const char *climb(int);
122 const char *command(const PLANE
*);
123 const char *default_game(void);
124 const char *delayb(int);
125 const char *descend(int);
126 const char *ex_it(int);
127 PLANE
*findplane(int);
128 const char *ignore(int);
129 const char *left(int);
130 const char *mark(int);
131 PLANE
*newplane(void);
132 const char *okay_game(const char *);
133 const char *rel_dir(int);
134 const char *right(int);
135 const char *setalt(int);
136 const char *setplane(int);
137 const char *setrelalt(int);
138 const char *timestr(int);
139 const char *to_dir(int);
140 const char *turn(int);
141 const char *unmark(int);