diff options
-rw-r--r-- | backgammon/common_source/back.h | 96 | ||||
-rw-r--r-- | backgammon/common_source/init.c | 38 |
2 files changed, 84 insertions, 50 deletions
diff --git a/backgammon/common_source/back.h b/backgammon/common_source/back.h index c548ce2a..8889d518 100644 --- a/backgammon/common_source/back.h +++ b/backgammon/common_source/back.h @@ -1,4 +1,4 @@ -/* $NetBSD: back.h,v 1.7 1997/10/14 00:41:15 lukem Exp $ */ +/* $NetBSD: back.h,v 1.8 1997/10/14 00:53:26 lukem Exp $ */ /* * Copyright (c) 1980, 1993 @@ -65,72 +65,72 @@ * */ -char EXEC[]; /* object for main program */ -char TEACH[]; /* object for tutorial program */ +extern char EXEC[]; /* object for main program */ +extern char TEACH[]; /* object for tutorial program */ -int pnum; /* color of player: +extern int pnum; /* color of player: -1 = white 1 = red 0 = both 2 = not yet init'ed */ -char args[100]; /* args passed to teachgammon and back */ -int acnt; /* length of args */ -int aflag; /* flag to ask for rules or instructions */ -int bflag; /* flag for automatic board printing */ -int cflag; /* case conversion flag */ -int hflag; /* flag for cleaning screen */ -int mflag; /* backgammon flag */ -int raflag; /* 'roll again' flag for recovered game */ -int rflag; /* recovered game flag */ -int tflag; /* cursor addressing flag */ -int rfl; /* saved value of rflag */ -int iroll; /* special flag for inputting rolls */ -int board[26]; /* board: negative values are white, +extern char args[100]; /* args passed to teachgammon and back */ +extern int acnt; /* length of args */ +extern int aflag; /* flag to ask for rules or instructions */ +extern int bflag; /* flag for automatic board printing */ +extern int cflag; /* case conversion flag */ +extern int hflag; /* flag for cleaning screen */ +extern int mflag; /* backgammon flag */ +extern int raflag; /* 'roll again' flag for recovered game */ +extern int rflag; /* recovered game flag */ +extern int tflag; /* cursor addressing flag */ +extern int rfl; /* saved value of rflag */ +extern int iroll; /* special flag for inputting rolls */ +extern int board[26]; /* board: negative values are white, positive are red */ -int dice[2]; /* value of dice */ -int mvlim; /* 'move limit': max. number of moves */ -int mvl; /* working copy of mvlim */ -int p[5]; /* starting position of moves */ -int g[5]; /* ending position of moves (goals) */ -int h[4]; /* flag for each move if a man was hit */ -int cturn; /* whose turn it currently is: +extern int dice[2]; /* value of dice */ +extern int mvlim; /* 'move limit': max. number of moves */ +extern int mvl; /* working copy of mvlim */ +extern int p[5]; /* starting position of moves */ +extern int g[5]; /* ending position of moves (goals) */ +extern int h[4]; /* flag for each move if a man was hit */ +extern int cturn; /* whose turn it currently is: -1 = white 1 = red 0 = just quitted -2 = white just lost 2 = red just lost */ -int d0; /* flag if dice have been reversed from +extern int d0; /* flag if dice have been reversed from original position */ -int table[6][6]; /* odds table for possible rolls */ -int rscore; /* red's score */ -int wscore; /* white's score */ -int gvalue; /* value of game (64 max.) */ -int dlast; /* who doubled last (0 = neither) */ -int bar; /* position of bar for current player */ -int home; /* position of home for current player */ -int off[2]; /* number of men off board */ -int *offptr; /* pointer to off for current player */ -int *offopp; /* pointer to off for opponent */ -int in[2]; /* number of men in inner table */ -int *inptr; /* pointer to in for current player */ -int *inopp; /* pointer to in for opponent */ +extern int table[6][6]; /* odds table for possible rolls */ +extern int rscore; /* red's score */ +extern int wscore; /* white's score */ +extern int gvalue; /* value of game (64 max.) */ +extern int dlast; /* who doubled last (0 = neither) */ +extern int bar; /* position of bar for current player */ +extern int home; /* position of home for current player */ +extern int off[2]; /* number of men off board */ +extern int *offptr; /* pointer to off for current player */ +extern int *offopp; /* pointer to off for opponent */ +extern int in[2]; /* number of men in inner table */ +extern int *inptr; /* pointer to in for current player */ +extern int *inopp; /* pointer to in for opponent */ -int ncin; /* number of characters in cin */ -char cin[100]; /* input line of current move +extern int ncin; /* number of characters in cin */ +extern char cin[100]; /* input line of current move (used for reconstructing input after a backspace) */ -char *color[]; +extern char *color[]; /* colors as strings */ -char **colorptr; /* color of current player */ -char **Colorptr; /* color of current player, capitalized */ -int colen; /* length of color of current player */ +extern char **colorptr; /* color of current player */ +extern char **Colorptr; /* color of current player, capitalized */ +extern int colen; /* length of color of current player */ -struct termios old, noech, raw;/* original tty status */ +extern struct termios old, noech, raw;/* original tty status */ -int curr; /* row position of cursor */ -int curc; /* column position of cursor */ -int begscr; /* 'beginning' of screen +extern int curr; /* row position of cursor */ +extern int curc; /* column position of cursor */ +extern int begscr; /* 'beginning' of screen (not including board) */ void addbuf __P((int)); diff --git a/backgammon/common_source/init.c b/backgammon/common_source/init.c index 35c72918..4addd6cb 100644 --- a/backgammon/common_source/init.c +++ b/backgammon/common_source/init.c @@ -1,4 +1,4 @@ -/* $NetBSD: init.c,v 1.5 1997/10/10 08:59:46 lukem Exp $ */ +/* $NetBSD: init.c,v 1.6 1997/10/14 00:53:31 lukem Exp $ */ /* * Copyright (c) 1980, 1993 @@ -38,7 +38,7 @@ #if 0 static char sccsid[] = "@(#)init.c 8.1 (Berkeley) 5/31/93"; #else -__RCSID("$NetBSD: init.c,v 1.5 1997/10/10 08:59:46 lukem Exp $"); +__RCSID("$NetBSD: init.c,v 1.6 1997/10/14 00:53:31 lukem Exp $"); #endif #endif /* not lint */ @@ -67,3 +67,37 @@ int iroll = 0; /* special flag for inputting rolls */ int rfl = 0; char *color[] = {"White", "Red", "white", "red"}; + + +char **Colorptr; +char **colorptr; +int *inopp; +int *inptr; +int *offopp; +int *offptr; +char args[100]; +int bar; +int begscr; +int board[26]; +char cin[100]; +int colen; +int cturn; +int curc; +int curr; +int d0; +int dice[2]; +int dlast; +int g[5]; +int gvalue; +int h[4]; +int home; +int in[2]; +int mvl; +int mvlim; +int ncin; +int off[2]; +int p[5]; +int rscore; +int table[6][6]; +int wscore; +struct termios old, noech, raw; |