-/* $NetBSD: extern.h,v 1.11 2009/08/12 04:28:27 dholland Exp $ */
+/* $NetBSD: extern.h,v 1.16 2012/01/08 18:17:41 dholland Exp $ */
/*
* Copyright (c) 1997 Christos Zoulas. All rights reserved.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by Christos Zoulas.
- * 4. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
*/
#include <string.h>
+#include <stdint.h>
/* crc.c */
-void crc_start(void);
-unsigned long crc(const char *, int);
+struct crcstate {
+ uint32_t crcval;
+ unsigned step;
+};
+
+void crc_start(struct crcstate *);
+void crc_add(struct crcstate *, const void *, size_t);
+uint32_t crc_get(struct crcstate *);
/* done.c */
int score(void);
-void done(int) __attribute__((__noreturn__));
+void done(int) __dead;
void die(int);
/* init.c */
int pct(int);
int fdwarf(void);
int march(void);
-void bug(int) __attribute__((__noreturn__));
+void bug(int) __dead;
void checkhints(void);
int trsay(void);
int trtake(void);
void caveclose(void);
/* vocab.c */
-void dstroy(int);
+void destroy(int);
void juggle(int);
void move(int, int);
int put(int, int, int);