home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 10
/
aminetcdnumber101996.iso
/
Aminet
/
game
/
board
/
Backgammon.lha
/
Back.h
next >
Wrap
C/C++ Source or Header
|
1995-02-16
|
2KB
|
79 lines
/************************************************************************/
/* Hoser BackGammon version 1.0 */
/* Robert Pfister */
/* Rfd#3 Box 2340 home:(207)-873-3520 */
/* Waterville, Maine 04901 */
/* */
/* Pfister_rob%dneast@dec.decwrl */
/* */
/* Copyright June,1987 all rights reserved. */
/* */
/* This program will play a game of backgammon at the novice level */
/* */
/* The code is in 4 parts... */
/* 1) back.c - main driver */
/* / 2) eval.c - evaluation of moves */
/* \/ 3) backscn.c - screen stuff.. */
/* 4) backmenu.c - menu stuff, help text, and ``decoder'' */
/* */
/* this was compiled under Manx 3.20a, using long integers */
/* */
/* This file contains global definitions for Hoser Backgammon */
/************************************************************************/
/* Last modification: 1/ 3/92 */
/* Most recent modification 5/16/94 E.M.Greene */
/* Most recent modification 2/14/95 E.M.Greene */
#define Uside -1
#define Cside 1
#undef NULL
#define NULL ((void *) 0)
#define NL 0
#define tm1_color 0
#define tm2_color 1
#define back_color 2
#define spike1_color 3
#define spike2_color 4
#define piece1_color 5
#define piece2_color 6
#define dice_color 7
#define PerSpike 5L
#define sizeof_board (26 * sizeof(BYTE))
#include <exec/types.h>
typedef
struct {
USHORT incomplete, /* YouInc, MeInc, */
dice_total, /* YouD, MeD, */
moves, /* YouM, MeM, */
on_bar, /* YouBar, MeBar, */
doubles, /* You2, Me2, */
wasted; /* YouWasted; MeWasted*/
struct {
ULONG roll;
float average_roll;
ULONG incomplete,
wasted;} total;} you_me_rec;
/* globally-referenced routines' definitions */
void DoMenuStrip(char *text);
void PutMoveNumber(int count);
void BlinkPiece(BYTE *board, int piece);
int update(BYTE *board, int from_point, int to_point, BYTE sign);
void PutSpike(int side, int board_pos);
int valid(BYTE *board,int i1, int i2, int die2);
int DoMenu(int menu_item);
void DoMenuStrip(char *s);
void UnDoMenuStrip(void);
int decode(int x, int y);
void Gsetup(void);
void ShowDice(BYTE *dice, int turn);
void finit(void);
void DoMove(BYTE *board, BYTE *dice);
void GenerateMoves(BYTE *board, BYTE *dice);
void TextScreen(char **text, int lines);
BOOL requestor(char name[], char yes[], char no[]);