1: /*
   2:  * Copyright (c) 1980 Regents of the University of California.
   3:  * All rights reserved.  The Berkeley software License Agreement
   4:  * specifies the terms and conditions for redistribution.
   5:  */
   7: #ifndef lint
   8: static char sccsid[] = "@(#)ttext1.c	5.1 (Berkeley) 5/29/85";
   9: #endif not lint
  11: #include "back.h"
  13: char    *opts = " QIMRHEDSPT";
  14: char    *prompt = "-->";
  16: char *list[] = {
  17:     "\n\n\tI\tIntroduction to Backgammon",
  18:     "\tM\tMoves and Points",
  19:     "\tR\tRemoving Men from the Board",
  20:     "\tH\tHitting Blots",
  21:     "\tE\tEnding the Game and Scoring",
  22:     "\tD\tDoubling",
  23:     "\tS\tStrategy",
  24:     "\tP\tThe Program and How to Use It",
  25:     "\nalso, you can type:",
  26:     "\t?\tto get this list",
  27:     "\tQ\tto go start playing",
  28:     "\tT\tto go straight to the tutorial",
  29:     0
  30: };
  32: char    *hello[] = {
  33:     "\n\032   These rules consist of text describing how to play Backgammon",
  34:     "followed by a tutorial session where you play a practice game",
  35:     "against the computer.  When using this program, think carefuly",
  36:     "before typing, since it reacts as soon as you type something.  In",
  37:     "addition, the program presents text output, such as these rules,",
  38:     "in small blocks that will not roll off the top of the screen.",
  39:     "Frequently, you will see the characters '-->' indicating that the",
  40:     "program is waiting for you to finish reading, and will continue",
  41:     "printing when you type a space or newline.  Also, the rules are",
  42:     "divided into sections, and although you should read them in or-",
  43:     "der, you can go directly to any of them by typing one of the fol-",
  44:     "lowing letters:",
  45:     "(Remember to hit a space or a newline to continue.)",
  46:     "",
  47:     0
  48: };
  50: char    *intro1[] = {
  51:     "\nIntroduction:",
  52:     "\n   Backgammon is a game involving the skill of two players and",
  53:     "the luck of two dice.  There are two players, red and white, and",
  54:     "each player gets fifteen men.  The object of the game is to re-",
  55:     "move all your men from the board before the opponent does.  The",
  56:     "board consists of twenty-four positions, a 'bar' and a 'home' for",
  57:     "each player.  It looks like this:",
  58:     "",
  59:     0};
  61: char    *intro2[] = {
  62:     "",
  63:     "\n   Although not indicated on the board, the players' homes are",
  64:     "located just to the right of the board.  A player's men are placed",
  65:     "there when they are removed from the board.  The board you just",
  66:     "saw was in it's initial position.  All games start with the board",
  67:     "looking like this.  Notice that red's pieces are represented by the",
  68:     "letter 'r' and white's pieces are represented by the letter 'w'.",
  69:     "Also, a position may have zero or more pieces on it, e.g.  posi-",
  70:     "tion 12 has five red pieces on it, while position 11 does not",
  71:     "have any pieces of either color.",
  72:     "",
  73:     0};
  75: char    *moves[] = {
  76:     "\nMoves and Points:",
  77:     "\n   Moves are made along the positions on the board according to",
  78:     "their numbers.  Red moves in the positive direction (clockwise",
  79:     "from 1 to 24), and white moves in the negative direction (coun-",
  80:     "terclockwise from 24 to 1).",
  81:     "\n   A turn consists of rolling the dice, and moving the number of",
  82:     "positions indicated on each die.  The two numbers can be used to",
  83:     "move one man the sum of the two rolls, or two men the number on",
  84:     "each individual die.  For example, if red rolled 6 3 at the start",
  85:     "of the game, he might move a man from 1 to 7 to 10, using both",
  86:     "dice for one man, or he might move two men from position 12, one",
  87:     "to 15 and one to 18.  (Red did not have to choose two men start-",
  88:     "ing from the same position.)  In addition, doubles are treated",
  89:     "specially in backgammon.  When a player rolls doubles, he gets to",
  90:     "move as if he had four dice instead of two.  For instance, if you",
  91:     "rolled double 2's, you could move one man eight positions, four",
  92:     "men two positions each, or any permutation in between.",
  93:     "",
  94:     "\n   However, there are certain limitations, called 'points.'  A",
  95:     "player has a point when he has two or more men on the same posi-",
  96:     "tion.  This gives him custody of that position, and his opponent",
  97:     "cannot place his men there, even if passing through on the way to",
  98:     "another position.  When a player has six points in a row, it is",
  99:     "called a 'wall,' since any of his opponent's men behind the wall",
 100:     "cannot pass it and are trapped, at least for the moment.  Notice",
 101:     "that this could mean that a player could not use part or all of",
 102:     "his roll.  However, he must use as much of his roll as possible.",
 103:     "",
 104:     0};
 106: char    *remove[] = {
 107:     "\nRemoving Men from the Board:",
 108:     "\n   The most important part of the game is removing men, since",
 109:     "that is how you win the game.  Once a man is removed, he stays",
 110:     "off the board for the duration of the game.  However, a player",
 111:     "cannot remove men until all his men are on his 'inner table,' or",
 112:     "the last six positions of the board (19-24 for red, 6-1 for",
 113:     "white).",
 114:     "\n   To get off the board, a player must roll the exact number to",
 115:     "get his man one position past the last position on the board, or",
 116:     "his 'home.'  Hence, if red wanted to remove a man from position",
 117:     "23, he would have to roll a 2, anything else would be used for",
 118:     "another man, or for another purpose.  However, there is one ex-",
 119:     "ception.  If the player rolling has no men far enough to move the",
 120:     "roll made, he may move his farthest man off the board.  For exam-",
 121:     "ple, if red's farthest man back was on position 21, he could re-",
 122:     "move men from that position if he rolled a 5 or a 6, as well as a",
 123:     "4.  Since he does not have men on 20 (where he could use a 5) or",
 124:     "on 19 (where he could use a 6), he can use these rolls for posi-",
 125:     "tion 21.  A player never has to remove men, but he must make as",
 126:     "many moves as possible.",
 127:     "",
 128:     0};
 130: char    *hits[] = {
 131:     "\nHitting Blots:",
 132:     "\n   Although two men on a position form an impenetrable point, a",
 133:     "lone man is not so secure.  Such a man is called a 'blot' and has",
 134:     "the potential of getting hit by an opposing man.  When a player's",
 135:     "blot is hit, he is placed on the bar, and the first thing that",
 136:     "player must do is move the man off the bar.  Such moves are",
 137:     "counted as if the bar is one position behind the first position",
 138:     "on the board.  Thus if red has a man on the bar and rolls 2 3, he",
 139:     "must move the man on the bar to position 2 or 3 before moving any",
 140:     "other man.  If white had points on positions 2 and 3, then red",
 141:     "would forfeit his turn.  Being on the bar is a very bad position,",
 142:     "for often a player can lose many turns trying to move off the",
 143:     "bar, as well as being set back the full distance of the board.",
 144:     "",
 145:     0};
 147: char    *endgame[] = {
 148:     "\nEnding the Game and Scoring:",
 149:     "\n   Winning a game usually wins one point, the normal value of a",
 150:     "game.  However, if the losing player has not removed any men yet,",
 151:     "then the winning player wins double the game value, called a",
 152:     "'gammon.'  If the losing player has a player on the bar or on the",
 153:     "winner's inner table, then the winner gets triple the game value,",
 154:     "which is called a 'backgammon.'  (So that's where the name comes",
 155:     "from!)",
 156:     "",
 157:     0};

Defined variables

endgame defined in line 147; never used
hello defined in line 32; never used
hits defined in line 130; never used
intro1 defined in line 50; never used
intro2 defined in line 61; never used
list defined in line 16; never used
moves defined in line 75; never used
opts defined in line 13; never used
prompt defined in line 14; never used
remove defined in line 106; never used
sccsid defined in line 8; never used
Last modified: 1985-05-29
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1489
Valid CSS Valid XHTML 1.0 Strict