1 1.20 rillig /* $NetBSD: extern.h,v 1.20 2021/05/02 12:50:43 rillig Exp $ */ 2 1.3 cgd 3 1.1 cgd /*- 4 1.3 cgd * Copyright (c) 1990, 1993 5 1.3 cgd * The Regents of the University of California. All rights reserved. 6 1.1 cgd * 7 1.1 cgd * This code is derived from software contributed to Berkeley by 8 1.1 cgd * Ed James. 9 1.1 cgd * 10 1.1 cgd * Redistribution and use in source and binary forms, with or without 11 1.1 cgd * modification, are permitted provided that the following conditions 12 1.1 cgd * are met: 13 1.1 cgd * 1. Redistributions of source code must retain the above copyright 14 1.1 cgd * notice, this list of conditions and the following disclaimer. 15 1.1 cgd * 2. Redistributions in binary form must reproduce the above copyright 16 1.1 cgd * notice, this list of conditions and the following disclaimer in the 17 1.1 cgd * documentation and/or other materials provided with the distribution. 18 1.10 agc * 3. Neither the name of the University nor the names of its contributors 19 1.1 cgd * may be used to endorse or promote products derived from this software 20 1.1 cgd * without specific prior written permission. 21 1.1 cgd * 22 1.1 cgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23 1.1 cgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24 1.1 cgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25 1.1 cgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26 1.1 cgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 1.1 cgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 1.1 cgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 1.1 cgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 1.1 cgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 1.1 cgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 1.1 cgd * SUCH DAMAGE. 33 1.1 cgd * 34 1.3 cgd * @(#)extern.h 8.1 (Berkeley) 5/31/93 35 1.1 cgd */ 36 1.1 cgd 37 1.1 cgd /* 38 1.1 cgd * Copyright (c) 1987 by Ed James, UC Berkeley. All rights reserved. 39 1.1 cgd * 40 1.1 cgd * Copy permission is hereby granted provided that this notice is 41 1.1 cgd * retained on all partial or complete copies. 42 1.1 cgd * 43 1.1 cgd * For more info on this and all of my stuff, mail edjames (at) berkeley.edu. 44 1.1 cgd */ 45 1.1 cgd 46 1.18 dholland #include <time.h> /* for time_t */ 47 1.18 dholland 48 1.18 dholland 49 1.7 hubertf extern char GAMES[]; 50 1.12 jmc extern const char *filename; 51 1.1 cgd 52 1.14 dholland extern int clck, safe_planes, test_mode; 53 1.14 dholland extern time_t start_time; 54 1.1 cgd 55 1.13 rpaulo #if 0 56 1.1 cgd extern FILE *filein, *fileout; 57 1.20 rillig #endif 58 1.1 cgd 59 1.16 dholland extern C_SCREEN *sp; 60 1.1 cgd 61 1.1 cgd extern LIST air, ground; 62 1.1 cgd 63 1.4 mycroft extern struct termios tty_start, tty_new; 64 1.1 cgd 65 1.1 cgd extern DISPLACEMENT displacement[MAXDIR]; 66 1.1 cgd 67 1.19 dholland /* in graphics.c */ 68 1.19 dholland void shutdown_gr(void); 69 1.19 dholland void ioaskquit(void); 70 1.19 dholland void ionoquit(void); 71 1.19 dholland void losermsg(const PLANE *p, const char *msg); 72 1.19 dholland 73 1.19 dholland /* misc */ 74 1.17 dholland void addplane(void); 75 1.11 jsm void append(LIST *, PLANE *); 76 1.11 jsm void check_adir(int, int, int); 77 1.11 jsm void delete(LIST *, PLANE *); 78 1.12 jmc int dir_no(int); 79 1.11 jsm void done_screen(void); 80 1.11 jsm void draw_all(void); 81 1.11 jsm void erase_all(void); 82 1.11 jsm int getAChar(void); 83 1.11 jsm int getcommand(void); 84 1.11 jsm void init_gr(void); 85 1.11 jsm void ioaddstr(int, const char *); 86 1.11 jsm void ioclrtobot(void); 87 1.11 jsm void ioclrtoeol(int); 88 1.11 jsm void ioerror(int, int, const char *); 89 1.11 jsm void iomove(int); 90 1.11 jsm int log_score(int); 91 1.15 dholland void log_score_quit(int) __dead; 92 1.15 dholland void loser(const PLANE *, const char *) __dead; 93 1.11 jsm int main(int, char *[]); 94 1.11 jsm char name(const PLANE *); 95 1.12 jmc int number(int); 96 1.11 jsm void open_score_file(void); 97 1.11 jsm void planewin(void); 98 1.11 jsm void redraw(void); 99 1.11 jsm void setup_screen(const C_SCREEN *); 100 1.11 jsm void update(int); 101 1.11 jsm int yylex(void); 102 1.9 christos #ifndef YYEMPTY 103 1.11 jsm int yyparse(void); 104 1.9 christos #endif 105 1.11 jsm const char *command(const PLANE *); 106 1.11 jsm PLANE *findplane(int); 107 1.11 jsm PLANE *newplane(void); 108