extern.h revision 1.13 1 1.13 dholland /* $NetBSD: extern.h,v 1.13 2009/08/25 06:58:04 dholland Exp $ */
2 1.1 christos
3 1.1 christos /*
4 1.1 christos * Copyright (c) 1997 Christos Zoulas. All rights reserved.
5 1.1 christos *
6 1.1 christos * Redistribution and use in source and binary forms, with or without
7 1.1 christos * modification, are permitted provided that the following conditions
8 1.1 christos * are met:
9 1.1 christos * 1. Redistributions of source code must retain the above copyright
10 1.1 christos * notice, this list of conditions and the following disclaimer.
11 1.1 christos * 2. Redistributions in binary form must reproduce the above copyright
12 1.1 christos * notice, this list of conditions and the following disclaimer in the
13 1.1 christos * documentation and/or other materials provided with the distribution.
14 1.1 christos * 3. All advertising materials mentioning features or use of this software
15 1.1 christos * must display the following acknowledgement:
16 1.1 christos * This product includes software developed by Christos Zoulas.
17 1.1 christos * 4. The name of the author may not be used to endorse or promote products
18 1.1 christos * derived from this software without specific prior written permission.
19 1.1 christos *
20 1.1 christos * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
21 1.1 christos * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22 1.1 christos * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23 1.1 christos * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
24 1.1 christos * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25 1.1 christos * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 1.1 christos * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 1.1 christos * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 1.1 christos * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29 1.1 christos * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 1.1 christos */
31 1.1 christos
32 1.5 hubertf #include <string.h>
33 1.5 hubertf
34 1.1 christos /* crc.c */
35 1.10 jsm void crc_start(void);
36 1.10 jsm unsigned long crc(const char *, int);
37 1.1 christos
38 1.1 christos /* done.c */
39 1.10 jsm int score(void);
40 1.13 dholland void done(int) __dead;
41 1.10 jsm void die(int);
42 1.1 christos
43 1.1 christos /* init.c */
44 1.10 jsm void init(void);
45 1.10 jsm char *decr(int, int, int, int, int);
46 1.10 jsm void trapdel(int);
47 1.10 jsm void startup(void);
48 1.1 christos
49 1.1 christos /* io.c */
50 1.10 jsm void getin(char **, char **);
51 1.10 jsm int yes(int, int, int);
52 1.10 jsm int yesm(int, int, int);
53 1.10 jsm void rdata(void);
54 1.6 hubertf #ifdef DEBUG
55 1.10 jsm void twrite(int);
56 1.6 hubertf #endif
57 1.10 jsm void rspeak(int);
58 1.10 jsm void mspeak(int);
59 1.1 christos struct text;
60 1.10 jsm void speak(const struct text *);
61 1.10 jsm void pspeak(int, int);
62 1.1 christos
63 1.1 christos /* save.c */
64 1.10 jsm int save(const char *);
65 1.10 jsm int restore(const char *);
66 1.1 christos
67 1.1 christos /* subr.c */
68 1.10 jsm int toting(int);
69 1.10 jsm int here(int);
70 1.10 jsm int at(int);
71 1.10 jsm int liq(void);
72 1.10 jsm int liqloc(int);
73 1.10 jsm int forced(int);
74 1.10 jsm int dark(void);
75 1.10 jsm int pct(int);
76 1.10 jsm int fdwarf(void);
77 1.10 jsm int march(void);
78 1.13 dholland void bug(int) __dead;
79 1.10 jsm void checkhints(void);
80 1.10 jsm int trsay(void);
81 1.10 jsm int trtake(void);
82 1.10 jsm int trdrop(void);
83 1.10 jsm int tropen(void);
84 1.10 jsm int trkill(void);
85 1.10 jsm int trtoss(void);
86 1.10 jsm int trfeed(void);
87 1.10 jsm int trfill(void);
88 1.10 jsm void closing(void);
89 1.10 jsm void caveclose(void);
90 1.1 christos
91 1.1 christos /* vocab.c */
92 1.12 dholland void destroy(int);
93 1.10 jsm void juggle(int);
94 1.10 jsm void move(int, int);
95 1.10 jsm int put(int, int, int);
96 1.10 jsm void carry(int, int);
97 1.10 jsm void drop(int, int);
98 1.10 jsm int vocab(const char *, int, int);
99 1.5 hubertf
100 1.5 hubertf /* These three used to be functions in vocab.c */
101 1.5 hubertf #define copystr(src, dest) strcpy((dest), (src))
102 1.5 hubertf #define weq(str1, str2) (!strncmp((str1), (str2), 5))
103 1.5 hubertf #define length(str) (strlen((str)) + 1)
104 1.5 hubertf
105 1.1 christos /* wizard.c */
106 1.10 jsm void datime(int *, int *);
107 1.10 jsm void poof(void);
108 1.10 jsm int Start(void);
109 1.10 jsm void ciao(void);
110 1.10 jsm int ran(int);
111