-/* $NetBSD: extern.h,v 1.35 2009/08/12 09:05:08 dholland Exp $ */
+/* $NetBSD: extern.h,v 1.38 2011/08/29 20:30:37 joerg Exp $ */
/*
* Copyright (c) 1983, 1993
#define MODE_LOGGER 3
/* command line flags */
-extern int randomize; /* -x, give first available ship */
-extern int longfmt; /* -l, print score in long format */
-extern int nobells; /* -b, don't ring bell before Signal */
+extern bool randomize; /* -x, give first available ship */
+extern bool longfmt; /* -l, print score in long format */
+extern bool nobells; /* -b, don't ring bell before Signal */
- /* other initial modes */
+ /* other initial data */
extern gid_t gid;
extern gid_t egid;
+#define MAXNAMESIZE 20
+extern char myname[MAXNAMESIZE];
#define dieroll() ((random()) % 6 + 1)
#define sqr(a) ((a) * (a))
#define NLOG 10
struct logs {
- char l_name[20];
+ char l_name[MAXNAMESIZE];
int l_uid;
int l_shipnum;
int l_gamenum;
short sn_turn;
};
-#define NSCENE nscene
+#define NSCENE /*nscene*/ 32
#define NSHIP 10
#define NBP 3
struct File {
int index;
- char captain[20]; /* 0 */
+ char captain[MAXNAMESIZE]; /* 0 */
short points; /* 20 */
unsigned char loadL; /* 22 */
unsigned char loadR; /* 24 */
const char *name; /* 14 */
struct ship ship[NSHIP]; /* 16 */
};
-extern struct scenario scene[];
+extern struct scenario scene[NSCENE];
extern int nscene;
struct shipspecs {
extern const char MT[9][3];
extern const char *const countryname[];
+extern const char *const shortclassname[];
extern const char *const classname[];
extern const char *const directionname[];
extern const char *const qualname[];
extern int people;
extern int hasdriver;
+
/* assorted.c */
void table(struct ship *, struct ship *, int, int, int, int);
void Cleansnag(struct ship *, struct ship *, int, int);
/* dr_main.c */
int dr_main(void);
+void startdriver(void);
/* game.c */
int maxturns(struct ship *, bool *);
int maxmove(struct ship *, int, int);
/* lo_main.c */
+void lo_curses(void);
int lo_main(void);
/* misc.c */
void unboard(struct ship *, struct ship *, int);
/* pl_1.c */
-void leave(int) __attribute__((__noreturn__));
-void choke(int) __attribute__((__noreturn__));
+void leave(int) __dead;
+void choke(int) __dead;
void child(int);
/* pl_2.c */
void newturn(int);
-void play(void) __attribute__((__noreturn__));
+void play(void) __dead;
/* pl_3.c */
void acceptcombat(void);
/* pl_7.c */
void initscreen(void);
void cleanupscreen(void);
-void Signal(const char *, struct ship *, ...)
- __attribute__((__format__(__printf__,1,3)));
-void Msg(const char *, ...)
- __attribute__((__format__(__printf__,1,2)));
+void Signal(const char *, struct ship *, ...) __printflike(1,3);
+void Msg(const char *, ...) __printflike(1,2);
int sgetch(const char *, struct ship *, int);
void sgetstr(const char *, char *, int);
void centerview(void);
void downview(void);
void leftview(void);
void rightview(void);
+void startup(void);
/* pl_main.c */
-int pl_main(void);
+void pl_main_init(void);
+void pl_main_uninit(void);
+__dead void pl_main(void);
/* sync.c */
void fmtship(char *, size_t, const char *, struct ship *);
void makesignal(struct ship *, const char *, struct ship *, ...)
- __attribute__((__format__(__printf__,2,4)));
-void makemsg(struct ship *, const char *, ...)
- __attribute__((__format__(__printf__,2,3)));
+ __printflike(2,4);
+void makemsg(struct ship *, const char *, ...) __printflike(2, 3);
int sync_exists(int);
int sync_open(void);
void sync_close(int);