DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T g

⟦8f60eb21b⟧ TextFile

    Length: 3924 (0xf54)
    Types: TextFile
    Names: »goCom.pas«

Derivation

└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
    └─⟦this⟧ »EUUGD18/General/GoBoard/goCom.pas« 

TextFile

{---------------------------------------------------------------------------}
{ goCom.Pas                                                                 }
{                                                                           }
{ Common Data for Go                                                        }
{ Copyright (c) 1982 by Three Rivers Computer Corp.                         }
{                                                                           }
{ Written: June 3, 1982 by Stoney Ballard                                   }
{ Edit History:                                                             }
{    June  3, 1982 Started                                                  }
{    June  4, 1982 Add dead group removal                                   }
{    June 10, 1982 Use new go file manager                                  }
{    Nov   9, 1982 Split From Go.Pas                                        }
{ V3.5 - Jan 11, 1983 Fixed bug in printer that screwed capture count       }
{ V3.6 - Jan 14, 1983 Changed Scoring and board coordinates to conform to   }
{                     tournament rules                                      }
{ V3.7 - Jan 17, 1983 added computer player!!!!                             }
{ V3.8 - Mar  8, 1983 Added PrintDiagram                                    }
{                     Made board 34 grid for printing                       }
{ V3.9 - May  3, 1983 Add board print size switch and command               }
{---------------------------------------------------------------------------}


module goCom;

exports

imports IO_Others from IO_Others;
imports fileDefs from fileDefs;

const
  version = '3.9';

  numPoints = 19;
  maxPoint = numPoints - 1;
  curC = 31;
  maxTagLen = 16;

  charHeight = 13;
  charWidth = 9;

  boardWin = 1;
  menuWin = 2;
  statWin = 3;
  bWinX = 0;
  bWinY = 0;
  bWinW = 768;
  bWinH = 768;
  mWinX = 0;
  mWinY = 768;
  mWinW = 768;
  mWinH = 192;
  sWinX = 0;
  sWinY = 960;
  sWinW = 768;
  sWinH = 64;

  promptX = sWinX + 32;
  lineY = 4;
  lineDel = 2;
  promptLine = 1;
  tagLine = 2;
  cmtLine = 3;

  boardX = bWinX + 64;
  boardY = bWinY + 32;
  pBoardX = bWinX + 44;  { for printing }
  pBoardY = bWinY + 24;
  
  passX = bWinX + 321;
  passY = bWinY + 712;  { 712 }
  passW = 126;
  passH = 13;

  captBX = bWinX + 64;
  captWX = bWinX + 578;
  captY = bWinY + 712;  { 712 }

  captNBX = captBX + 45;
  captNWX = captWX + 45;
  captNY = bWinY + 732; { 732 }

  turnX = bWinX + 325;
  turnY = bWinY + 752;  { 752 }

  none = -1;
  mInit = 1;
  mSetHc = 2;
  mPass = 3;
  mScore = 4;
  mForToBr = 5;
  mBackToBr = 6;
  mBackToStone = 7;
  mForToLeaf = 8;
  mPutTag = 9;
  mGotoTag = 10;
  mGotoRoot = 11;
  mPutCmt = 12; 
  mReadFile = 13;
  mWriteFile = 14;
  mPruneBranches = 15;
  mTogNums = 16;
  mPrintBoard = 17;
  mStepToTag = 18;
  mSetStepTag = 19;
  mQuit = 20;
  mBackOne = 21;
  mForOne = 22;
  mEraseMove = 23;
  mAutoPlay = 24;
  mPlayMyself = 25;
  mSetPlayLevel = 26;
  mDebug = 27;
  mRefBoard = 28;
  mShoState = 29;
  mPrintDiag = 30;
  mBoardSize = 31;
  mLast = 31;  { the last command in the menu }
  mPlaceStone = 32;  { this command is not in the menu }
  mCtlC = 33;   { nor is this }

type
  bVal = (black, white, empty, alternate); 
  sType = black..white;
  bRec = record
           val: bval;
           xOfs, yOfs: integer;
           mNum: integer;
           marked: boolean;
         end;

  boardArray = array[0..maxPoint] of array[0..maxPoint] of bRec;

  picBuf = array[0..63] of array[0..3] of integer;
  pPicBuf = ^picBuf;

var
  board: boardArray;
  captures: array[sType] of integer;
  moveNum: integer;
  koX, koY: integer;
  selCursor: curPatPtr;
  dotSX, dotSY: integer;
  passShowing: boolean;
  numbEnabled: boolean;
  treeDirty: boolean;
  gameFName: pathName;
  debug: boolean;
  printLarge: boolean;

private

procedure comBug;
begin { comBug }
end. { comBug }