home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!olivea!pagesat!netsys!agate!howland.reston.ans.net!zaphod.mps.ohio-state.edu!usc!news.service.uci.edu!unogate!mvb.saic.com!dayton.saic.com!dayvd.dayton.saic.com!ake
- From: ake@dayvd.dayton.saic.com (Earle Ake)
- Newsgroups: vmsnet.sources.games
- Subject: ldb - Long Distance Backgammon [16/16]
- Message-ID: <1993Apr8.110739.1@dayvd.dayton.saic.com>
- Date: 8 Apr 93 16:07:39 GMT
- Organization: Science Applications Intl Corp - Dayton, OH
- Lines: 696
- NNTP-Posting-Host: dayvd.dayton.saic.com
- Xref: uunet vmsnet.sources.games:677
-
- -+-+-+-+-+-+-+-+ START OF PART 16 -+-+-+-+-+-+-+-+
- XAlthough`20by`20default`20upward`20play`20goes`20toward`20the`20top`20of`20the
- V`20screen,
- Xthis`20can`20be`20reversed`20(for`20your`20screen`20only)`20by`20the`20"Invert
- V"
- Xcommand`20in`20the`20Control`20menu,
- Xaccessible`20via`20the
- X`7B`5Cit`20--control`7D
- Xcommand`20line`20argument.`20`20The`20default`20for`20this`20line`20is`20"up",
- V
- Xand`20is`20overridden`20by`20the
- X`7B`5Cit`20--direction`7D
- Xcommand`20line`20argument.
- X`5CIPitem`7B`7Binitialboard`7D`7D
- XAs`20was`20alluded`20to`20earlier,`20your`20screen`20shows`20one`20of
- Xthree`20possible`20board`20images`20at`20any`20time.`20`20Although
- Xthe`20purpose`20for`20this
- Xwill`20be`20explained`20later,`20this`20line`20allows`20you`20to`20select
- Xwhich`20of`20these`20three`20boards`20should`20be`20displayed`20initially.
- XThe`20legal`20values`20are`20"before",`20"after",`20and`20"current".
- XThe`20default`20is`20"current".
- X`5CIPitem`7B`7Bautoroll`7D`7D
- XIf`20you`20were`20the`20last`20to`20double,`20you`20have`20no`20option
- Xbut`20to`20roll`20the`20dice`20when`20it`20is`20your`20turn.`20`20If
- Xautoroll`20is`20enabled,`20ldb`20will`20roll`20the`20dice`20for`20you`20automa
- Vtically
- Xin`20this`20case.`20`20For`20those`20that`20prefer`20consistency,`20autoroll
- Xmay`20be`20disabled,`20although`20attempting`20to`20double`20when`20you
- Xdoubled`20last`20will`20cause`20an
- Xerror`20message.`20`20Possible`20values`20for`20autoroll`20are`20"yes"`20and
- V`20"no",
- Xwith`20"yes"`20being`20the`20default.
- X`5CIPitem`7B`7Bautomove`7D`7D
- XEach`20time`20you`20roll`20the`20dice,`20ldb`20determines`20how`20many
- Xlegal`20ways`20there`20are`20for`20you`20to`20use`20your`20rolls.`20`20In`20th
- Ve
- Xrelatively`20unusual`20case`20where`20there`20is`20only`20one`20way
- Xfor`20you`20to`20use`20your`20rolls,`20ldb`20can`20automatically`20apply
- Xthis`20move`20to`20your`20board`20before`20displaying`20it.`20`20Automove
- Xis`20disabled`20by`20default`20because`20quite`20frankly`20it's
- Xpretty`20annoying.`20`20Possible`20values`20for`20automove`20are`20"yes"
- Xand`20"no",`20with`20"no"`20being`20the`20default.
- X`5CIPitem`7B`7Bautodouble`7D`7D
- XOne`20of`20the`20official`20rules`20of`20backgammon`20allows`20for
- Xautomatically`20doubling`20the`20game`20value`20when`20the`20opening
- Xroll`20is`20a`20tie.`20`20The`20rules`20go`20on`20to`20state`20that`20automati
- Vc
- Xdoubling`20is`20only`20to`20be`20used`20when`20the`20players`20agree`20beforeh
- Vand
- Xon`20its`20use`20and`20limitations.`20`20The`20method`20ldb`20uses`20to`20impl
- Vement
- Xthis`20somewhat`20vague`20rule`20is`20to`20allow`20each`20player`20to`20specif
- Vy
- Xa`20maximum`20number`20of`20autodoubles`20they`20are`20willing`20to`20accept
- V`20in
- X`7B`5Cit`20.ldbrc,`7D
- Xand`20for`20the`20maximum`20number`20of`20autodoubles`20applied`20to`20any`20g
- Vame
- Xto`20be`20the`20lesser`20of`20the`20two`20players'`20specified`20limits.
- XFor`20example,`20if`20you`20set
- X`7B`5Cit`20autodouble=4`7D
- Xin`20your`20.ldbrc,`20no`20game`20you`20play`20will`20ever`20be`20autodoubled
- Xmore`20than`204`20times,`20although`20the`20number`20of`20tied`20opening`20rol
- Vls
- Xis`20obviously`20not`20limited.`20`20However,`20if`20you`20were`20to`20start
- V`20a`20game
- Xwith`20someone`20who`20had`20set
- X`7B`5Cit`20autodouble=2`20,`7D
- Xthat`20game`20would`20be`20limited`20to`20at`20most`202`20autodoubles.`20`20If
- V`20you`20don't
- Xwant`20to`20play`20automatic`20doubles,`20set
- Xautodouble=0,`20which`20is`20also`20the`20default.
- X`5CIPitem`7B`7Bsuperkey`7D`7D
- XIf`20you`20live`20in`20fear`20of`20roving`20supervisors`20(or`20other
- Xfun-impaired`20individuals)`20running`20across`20you`20playing`20an
- Xinnocent`20game`20of`20backgammon,
- Xyou`20may`20want`20to`20enable`20the`20superkey`20function.
- XJust`20pick`20a`20key`20on`20the`20keyboard`20you`20never`20use`20in`20ldb,
- V`20such`20as`20the
- Xbackquote,`20and`20put`20a`20line`20in
- X`7B`5Cit`20.ldbrc`7D
- Xsetting`20superkey`20to`20the
- X`7B`5Cit`20decimal`5C`20ASCII`5C`20code`7D
- Xof`20the`20key`20you`20want;`20for`20example,`20to`20use`20the`20backquote`20k
- Vey,
- Xuse`20"superkey=96".
- XOnly`20single--character`20keys`20are`20allowed,`20and
- Xthe`20key`20you`20select`20will`20not`20be`20usable`20for`20normal`20purposes
- Xwithin`20ldb.`20`20Make`20it`20one`20you`20can`20hit`20in`20a`20hurry.
- X`5CIPitem`7B`7Bsupercmd`7D`7D
- XIf`20you'd`20rather`20have`20a`20program`20of`20your`20choice`20come`20up
- Xinstead`20of`20the`20shell`20when`20the`20superkey`20is`20pressed,
- Xput`20it`20on`20this`20line.`20`20It`20will`20be`20passed
- Xunchanged`20to`20a`20shell`20via`20the`20system()`20function.
- XVMS`20users`20should`20read`20the`20note`20in`20the`20section`20titled
- X"VMS`20NOTES"`20on`20supercmd`20functionality.
- X`5CIPitem`7B`7Bcheckpoint`7D`7D
- XThis`20option`20keeps`20the`20gamefile`20up`20to`20date`20by`20writing`20it
- V`20out
- Xwhenever`20the`20dice`20are`20rolled`20or`20a`20message`20is`20sent.`20`20This
- V
- Xprevents`20game`20information`20from`20being`20lost`20if`20ldb`20crashes,
- Xyour`20machine`20goes`20down,`20or`20what`20have`20you.`20`20This`20option`20i
- Vs
- Xenabled`20by`20default,`20and`20I`20highly`20recommend`20you`20leave`20it
- Xthat`20way.`20`20If`20you`20just`20can't`20stand`20the`20thought`20of`20a`20fe
- Vw`20extra
- Xwrites`20to`20disk,`20you`20can`20disable`20it`20with`20"checkpoint=no".
- XOn`20your`20own`20head`20be`20it.
- X`5CIPitem`7B`7Bdebug`7D`7D
- XThis`20option`20enables`20various`20debug`20messages.`20`20It`20is`20a`20bitma
- Vp,
- Xwith`20each`20set`20bit`20enabling`20debug`20messages`20from`20a`20different
- V`20part
- Xof`20ldb.`20`20Most`20people`20will`20want`20to`20leave`20it`20at`200,`20which
- V`20is
- Xthe`20default.`20`20If`20you`20want`20debug`20messages,`20look`20for`20the
- Xdefinitions`20of`20DB`5C_*`20in`20ldb.h.
- X`5Cend`7BIPlist`7D`5Cpar
- X`5Cshead`7BPEOPLE`20FILE`7D
- XLdb`20maintains`20a`20list`20of`20all`20of`20the`20people`20you
- Xhave`20ever`20played.`20`20This`20file`20is`20used`20for`20several`20purposes:
- V
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7B1`7D`7D
- XIt`20stores`20the`20number`20of`20games,`20points,`20gammons,`20backgammons,
- Xand`20matches`20you`20have`20won`20and`20lost`20to`20that`20person.
- X`5CIPitem`7B`7B2`7D`7D
- XIt`20stores`20the`20address`20for`20that`20person,`20and`20the
- Xaddress`20that`20person`20should`20use`20to`20get`20to`20you.
- XIt`20also`20allows`20you`20to`20assign`20an`20alias`20to`20that`20person,
- Xand`20to`20use`20that`20alias`20when`20starting`20a`20game`20instead
- Xof`20the`20full`20e--mail`20address.
- X`5CIPitem`7B`7B3`7D`7D
- XIt`20stores`20information`20that`20allows`20ldb`20to`20reject
- Xstart`20messages`20from`20defunct`20games.
- X`5Cend`7BIPlist`7D`5Cpar
- XNormally,`20you`20should`20never`20have`20to`20edit`20the
- Xpeople`20file,`20but`20it`20is`20described`20here`20in`20case
- Xyou`20need`20to`20for`20some`20reason.`20`20It`20is`20in`20the`20same
- Xoverall`20format`20as`20.ldbrc`20(name/value`20pairs).
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7Baddr`7D`7D
- XThis`20is`20the`20address`20of`20the`20opponent.`20`20This`20is`20what
- Xuniquely`20defines`20the`20record,`20in`20case`20you`20are`20playing
- Xtwo`20people`20with`20the`20same`20name.
- X`5CIPitem`7B`7Bname`7D`7D
- XThis`20is`20the`20name`20of`20the`20opponent.
- X`5CIPitem`7B`7Balias`7D`7D
- XThis`20is`20a`20"nickname"`20you`20can`20assign`20to
- Xan`20opponent.`20`20When`20a`20new`20opponent`20is`20found,
- Xthe`20alias`20is`20initialized`20to`20the`20first`20word`20of
- Xthe`20opponent's`20name,`20with`20all`20upper`20case`20letters
- Xchanged`20to`20lower.`20`20You`20can`20change`20the`20alias`20to
- Xany`20desired`20string`20with`20a`20text`20editor`20(just`20make`20sure
- Xldb`20isn't`20running`20at`20the`20time,`20or`20your`20changes`20will
- Xbe`20lost).
- X`5CIPitem`7B`7Bmyaddr`7D`7D
- XThis`20is`20the`20address`20that`20this`20opponent`20should`20use`20to
- Xmail`20to`20you.`20`20This`20saves`20you`20from`20having`20to`20specify
- Xthe`20-myaddr`20argument`20when`20starting`20a`20game,`20and`20is
- Xespecially`20important`20with`20permanent`20games,`20since
- Xthese`20games`20are`20started`20automatically`20without`20giving
- Xyou`20a`20chance`20to`20change`20your`20address.`20`20If`20you`20only
- Xhave`20one`20e--mail`20path,`20you`20can`20ignore`20this.
- XThis`20field`20is`20initialized`20to`20the`20value`20of`20the
- X`7B`5Cit`20--myaddr`7D
- Xoption`20at`20the`20time`20the`20first`20game`20with
- Xthis`20opponent`20is`20started,`20or`20to
- Xthe`20value`20of`20myaddr`20from`20.ldbrc`20if`20no
- X`7B`5Cit`20--myaddr`7D
- Xoption`20was`20used.
- X`5CIPitem`7B`7Bequiv`7D`7D
- XThe`20presence`20of`20this`20field`20flags`20this`20as`20an`20"equiv"
- Xrecord.`20`20Equiv`20records`20allow`20one`20opponent`20to`20have`20multiple
- Xe--mail`20addresses,`20but`20to`20cause`20all`20of`20them`20to`20refer`20to
- Xone`20people`20record.`20`20Equiv`20records`20have`20no`20valid`20fields
- Xexcept
- X`7B`5Cit`20addr`7D
- Xand
- X`7B`5Cit`20equiv,`7D
- Xand`20must`20be`20preceded`20by`20the`20record`20they`20refer`20to`20in`20the
- V`20people`20file.
- X`5CIPitem`7B`7Bfence`7D`7D
- XThe`20fence`20is`20defined`20as`20the`20start`20time`20of`20the`20most
- Xrecently`20started`20game`20that`20has`20finished.`20`20If`20that`20makes
- Xno`20sense,`20don't`20worry,`20you`20should`20never`20have`20to`20mess
- Xwith`20it.`20`20It`20is`20used`20to`20discard`20old`20start`20messages`20that
- Xyou`20forgot`20to`20clean`20out`20of`20your`20mail.
- X`5CIPitem`7B`7Bscore`7D`7D
- XThis`20is`20an`20array`20of`2010`20numbers`20that`20represent,`20in`20order:
- X`5CIPitem`7B`7B`7D`7D
- X`5Cnofill
- X`20`20`20`20`20-`20Games`20won
- X`20`20`20`20`20-`20Games`20lost
- X`20`20`20`20`20-`20Points`20won
- X`20`20`20`20`20-`20Points`20lost
- X`20`20`20`20`20-`20Gammons`20won
- X`20`20`20`20`20-`20Gammons`20lost
- X`20`20`20`20`20-`20Backgammons`20won
- X`20`20`20`20`20-`20Backgammons`20lost
- X`20`20`20`20`20-`20Matches`20won
- X`20`20`20`20`20-`20Matches`20lost
- X`5Cfill
- X`5CIPitem`7B`7B`7D`7D
- XThis`20information`20is`20stored`20purely`20for`20whatever`20purposes`20you
- Xcan`20think`20of.
- X`5CIPitem`7B`7Bend`7D`7D
- XThis`20line`20is`20required`20to`20separate`20people`20records.`20`20If`20you
- Xhand`20enter`20a`20record,`20you`20must`20be`20sure`20to`20put`20an`20end`20ma
- Vrker
- Xor`20your`20record`20will`20merge`20with`20the`20next`20one,`20which`20is
- Xnot`20what`20you`20want.
- X`5Cend`7BIPlist`7D`5Cpar
- X`5Cshead`7BSTARTING`20A`20GAME`7D
- XTo`20start`20a`20game,`20you`20must`20use`20the
- X`7B`5Cit`20--start`7D
- Xcommand`20line`20argument,`20along`20with`20the`20e--mail`20address`20of
- Xthe`20person`20you`20wish`20to`20play`20with.
- XFor`20example,
- X`5Cnofill
- X`20`20`20`20`20ldb`20--start`20mybuddy@back.gammon.com
- X`5Cfill
- XIf`20you`20want`20to`20play`20'w',`20and`20make`20your`20opponent`20play
- X'b',`20use`20the`20command
- X`5Cnofill
- X`20`20`20`20`20ldb`20--color`20wb`20--start`20black@blah.blah.blah
- X`5Cfill
- XSee`20the
- XOPTIONS`20section`20for`20more`20details`20on`20the`20available
- Xcommand`20line`20arguments.
- X`7B`5Cit`20Ldb`7D
- Xwill`20not`20allow`20you`20to`20play`20with`20yourself,`20but
- Xthat's`20ok`20because`20you'd`20probably`20lose.
- X`5Cpar
- XWhen`20you`20start`20a`20game,`20ldb`20sends`20your`20e--mail`20address
- Xto`20your`20opponent,`20along`20with
- Xyour`20opening`20roll.`20`20When`20your`20opponent`20receives
- Xyour`20message,`20his`20ldb`20will`20roll`20his`20opening`20roll,`20and
- Xdecide`20who`20won.`20`20If`20you`20won,`20his`20ldb`20will`20send`20your`20ld
- Vb
- Xa`20message`20to`20that`20effect,`20and`20the`20board`20will`20come`20up
- Xon`20your`20screen`20with`20that`20roll`20in`20your`20move`20block.`20`20If
- V`20he
- Xwon,`20he`20will`20use`20the`20opening`20roll`20and`20his`20ldb`20will`20send
- Xyour`20ldb
- Xa`20message`20telling`20you`20how`20he`20moved.`20`20Either`20way,`20the`20gam
- Ve`20is`20off
- Xand`20running.
- X`5Cpar
- XIf,`20by`20unfortunate`20chance,`20the`20opening`20roll`20is`20a`20tie,
- Xyour`20opponent's`20ldb`20will`20send
- Xyour`20ldb`20a`20message`20to`20that`20effect.
- XThis`20will`20cause`20a`20new`20opening`20roll`20sequence`20as
- Xdescribed`20above.
- XA`20message`20will`20be`20printed`20telling`20you
- Xwhat's`20going`20on;
- Xjust`20keep`20feeding`20the`20incoming`20messages`20to`20ldb,`20and
- Xit`20will`20take`20care`20of`20everything.
- X`5Cpar
- X`5Cshead`7BPLAYING`20A`20GAME`7D
- XWhen`20it`20is`20your`20turn,`20the`20game`20will`20be`20displayed`20on`20your
- V`20screen,
- Xand`20you`20will`20be
- Xfaced`20with`20three`20options:`20Roll,`20Double,`20or`20Concede.
- XUnless`20you`20are`20very`20cocky,`20I`20would`20not`20suggest`20doubling
- Xat`20this`20point.`20`20You`20could`20always`20concede,`20but`20I`20really
- Xthink`20that`20would`20be`20selling`20yourself`20short.
- XSo`20you`20should`20choose`20"Roll".
- XJust`20press`20"r",`20and`20watch`20your`20roll`20appear`20on
- Xyour`20move`20block`20(along`20the`20right`20side`20of`20the`20screen,`20under
- V`20the
- Xword`20"You").`20`20You`20should`20see`20two`20numbers`20appear`20(four`20if
- V`20you
- Xrolled`20doubles),`20and`20the`20word`20UNUSED`20beside`20them.
- XDecide`20which`20of`20the`20rolls`20you`20want`20to`20use`20first,`20and`20pre
- Vss
- Xthe`20number`20of`20that`20roll.`20`20For`20example,`20say`20you`20rolled
- X1`206,`20and`20you`20want`20to`20move`20the`20obvious`208--7,`2013--7`20to
- Xmake`20your`20bar`20point.
- XJust`20hit`20"6".`20`20Notice`20the`20cursor`20jump`20up`20to`20your`20move
- V`20block,`20beside
- Xthe`20"6"`20roll?`20`20It`20is`20waiting`20for`20you`20to`20enter`20the`20poin
- Vt`20you`20want
- Xto`20move`20from.`20`20Press`20"1"`20"3"`20(don't`20hit`20return).`20`20You
- V`20should`20see
- Xa`20piece`20move`20from`2013`20to`207,`20and`20this`20fact`20will`20be`20refle
- Vcted`20in
- Xyour`20move`20block`20as`20well.`20`20Now,`20press`20"1".`20`20Again`20the`20c
- Vursor
- Xjumps`20to`20the`20move`20block,`20and`20you`20type`20"8".
- XThe`20second`20entry`20in`20the`20move`20block
- Xreflects`20this`20move,`20as`20does`20the`20board.`20`20Happy?`20`20If`20not,
- V`20press
- X"r";`20this`20will`20reset`20your`20rolls`20to`20UNUSED`20and`20put
- Xthe`20board`20back`20to`20how`20it`20was`20before`20you`20moved,
- Xand`20then`20you`20can`20enter`20some`20different`20moves.`20`20Otherwise,`20h
- Vit`20"s"
- X(not`20"q"!)
- Xto`20send`20the`20move.`20`20The`20cursor`20will`20jump`20down`20to`20the`20me
- Vssage`20area,
- Xwhere`20you`20get`20a`20chance`20to`20enclose`20a`20message`20to`20your`20oppo
- Vnent,
- Xperhaps`20to`20gloat`20over`20the`20great`20move`20you`20just`20made.
- XYou`20only`20get`202`20lines`20of`2056`20characters,`20so`20keep`20it`20short.
- V`20`20When
- Xyou`20are`20done,`20press`20$<$return$>$.`20`20Your`20move`20is`20on`20its`20w
- Vay!
- X`5Cpar
- XThere`20are`20three`20shortcuts`20you`20can`20use
- Xafter`20you`20have`20entered`20your`20first`20move:
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7B1.`7D`7D
- XYou`20can`20press`20$<$return$>$,`20which`20will`20"repeat"`20your`20last`20mo
- Vve.
- XThat`20is,`20your`20next`20remaining`20roll`20will`20move`20from`20the`20same
- Xpoint`20as`20your`20last`20one`20moved`20from.`20`20This`20is`20handy`20when
- Xusing`20doubles`20to`20move`20more`20than`20one`20piece`20from`20the`20same
- V`20point.
- X`5CIPitem`7B`7B2.`7D`7D
- XYou`20can`20press`20$<$space$>$,`20which`20will`20"continue"`20your`20last`20m
- Vove.
- XThat`20is,`20your`20next`20remaining`20roll`20will`20move`20from`20the
- Xpoint`20your`20last`20move`20ended`20on.
- X`5CIPitem`7B`7B3.`7D`7D
- XYou`20can`20press`20"p",`20which`20will`20attempt`20to`20make`20the`20point
- V`20your
- Xlast`20move`20ended`20on.`20`20In`20our`201`206`20example`20above,`20you`20cou
- Vld`20have
- Xjust`20hit`20"p"`20after`20you`20moved`2013--7,`20and`20ldb`20would`20have`20f
- Vigured
- Xout`20that`20to`20make`20the`207`20point`20with`20the`20remaining`20roll`20of
- V`201,
- Xit`20would`20have`20to`20move`20a`20piece`20from`20the`208`20point.
- X`5Cend`7BIPlist`7D`5Cpar
- XIn`20addition,`20there`20is`20one`20more`20shortcut`20that`20may`20be`20used
- Xwith`20any`20roll.`20`20If`20you`20want`20to`20use`20a`20roll`20to`20bear`20of
- Vf
- Xa`20piece,`20you`20can`20just`20hit`20"o".`20`20Ldb`20will`20locate`20the
- Xpoint`20(if`20any)`20from`20which`20pieces`20may`20be`20legally`20borne`20off
- Xby`20the`20next`20unused`20roll,`20and`20make`20that`20move`20automatically.
- XYou`20can`20also`20select`20a`20roll,`20then`20hit`20"o".
- X`5Cpar
- XIf`20you`20use`20your`20moves,`20hit`20"Send",`20and`20start`20to`20enter`20yo
- Vur
- Xmessage,`20then`20realize`20you`20made`20a`20mistake,`20you`20can`20press
- XESC`20to`20get`20out`20of`20send`20and`20back`20into`20the`20game,`20where
- Xyou`20can`20use`20"Reset"`20and`20re--enter`20your`20moves.
- X`5Cpar
- X`5Cshead`7BDOUBLING`7D
- XIf`20you`20decide`20to`20double,`20just`20choose`20"Double"`20instead`20of
- X"Roll".`20`20You`20will`20get`20to`20enclose`20a`20message,`20just`20like`20wh
- Ven
- Xyou`20send`20a`20move,`20then`20your`20message`20gets`20sent.`20`20Once`20you
- V`20have
- Xdoubled,`20you`20cannot`20double`20again`20until`20your`20opponent`20does`20so
- V,
- Xso`20ldb`20automatically`20selects`20"Roll"`20and`20sends`20you`20to`20the
- Xnext`20menu.`20`20If`20you`20don't`20like`20this,`20you`20can`20disable`20it
- V`20by
- Xsetting
- X`7B`5Cit`20autoroll=no`7D
- Xin`20.ldbrc.
- X`5Cpar
- XIf`20your`20opponent`20doubles,`20you`20will`20see`20a`20message`20just`20unde
- Vr
- Xthe`20board`20to`20that`20effect,`20and`20a`20menu`20will`20come`20up
- Xallowing`20you`20to`20Accept`20or`20Decline`20the`20double.
- XDeclining`20the`20double`20means`20you`20lose`20the`20game`20for`20the
- Xcurrent`20game`20value.`20`20Accepting`20means`20that`20the`20game
- Xcontinues,`20but`20its`20value`20is`20doubled.`20`20The`20current
- Xgame`20value`20is`20shown`20to`20the`20left`20of`20the`20board.`20`20After
- Xyou`20accept,`20you`20should`20see`20this`20display`20move`20next`20to`20your
- Xhome`20board,`20indicating`20that`20you`20own`20the`20doubling`20cube.
- X`5Cpar
- XIf`20the`20Crawford`20rule`20is`20in`20effect,`20and`20the`20either
- Xplayer`20is`20within`201`20point`20of`20winning`20the`20match,
- Xdoubling`20is`20illegal,`20and`20will`20result`20in`20an`20error`20message.
- X`5Cpar
- X`5Cshead`7BBOARDS`7D
- X`7B`5Cit`20Ldb`7D
- Xmaintains`20three`20board`20images`20at`20all`20times.`20`20These`20are:
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7B1`7D`7D
- XThe`20board`20before`20your`20opponent's`20last`20move.
- XIt`20is`20for`20display`20purposes`20only,`20so`20you`20can`20see`20your
- Xopponent's`20move`20"before`20and`20after".`20`20The`20pieces`20your`20opponen
- Vt
- Xis`20going`20to`20move`20are`20highlighted.
- X`5CIPitem`7B`7B2`7D`7D
- XThe`20board`20after`20your`20opponent's`20last`20move.
- XIt`20shows`20the`20condition`20of`20the
- Xboard`20after`20your`20opponent's`20last`20move,`20with`20the`20pieces`20he
- Xmoved`20highlighted.
- X`5CIPitem`7B`7B3`7D`7D
- XThe`20current`20board.`20`20This`20is`20the`20"real"`20board`20that`20shows
- V`20the
- Xcurrent`20state`20of`20the`20game.
- XNothing`20is`20highlighted.
- X`5Cend`7BIPlist`7D`5Cpar
- XBy`20default,`20ldb`20displays`20the`20Current`20board`20at`20all`20times.`20
- V`20If
- Xyou`20want`20to`20see`20the`20other`20boards,`20use`20the`20Board`20command
- X(provided`20it`20is`20in`20the`20current`20menu).`20`20This`20will`20cycle`20t
- Vhrough
- Xthe`20three`20boards`20in`20the`20order`20they`20are`20listed`20above.`20`20Th
- Ve`20second
- Xline`20of`20the`20screen`20tells`20you`20which`20board`20is`20displayed`20(nea
- Vr`20the`20left).`20`20When
- Xyou`20roll,`20ldb`20automatically`20switches`20to`20the`20current`20board`20if
- V
- Xit`20is`20not`20already`20up.`20`20You`20can`20set`20which`20of`20these`20thre
- Ve`20boards
- Xis`20initially`20displayed`20via`20the
- X`7B`5Cit`20initialboard`7D
- Xsetting`20in`20.ldbrc.
- X`5Cpar
- X`5Cshead`7BENTERING`20COMMENTS`7D
- XWhenever`20you`20send`20a`20move`20to`20your`20opponent,`20you`20are
- Xgiven`20the`20opportunity`20to`20enclose`20a`20two`20line`20comment.
- XWhile`20entering`20your`20comment,`20certain`20keys`20have`20special`20meaning
- V.
- XThese`20are:
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7BBS/DEL`7D`7D
- XThe`20backspace`20and`20delete`20(or`20rubout)`20keys`20both`20erase`20the
- Xlast`20character`20typed.`20`20You`20can`20backspace`20from`20one`20line`20to
- Xthe`20previous`20one.
- X`5CIPitem`7B`7B`5C`5E`7B`7DW/`5C`5E`7B`7DB`7D`7D
- XThe`20`5C`5E`7B`7DW`20and`20`5C`5E`7B`7DB`20(control-W`20and`20control-B)`20ke
- Vys`20both`20erase`20the
- Xlast`20word`20typed.`20`20Words`20are`20delimited`20by`20spaces.
- X`5CIPitem`7B`7B`5C`5E`7B`7DX/`5C`5E`7B`7DU`7D`7D
- XThe`20`5C`5E`7B`7DX`20and`20`5C`5E`7B`7DU`20(control-X`20and`20control-U)`20ke
- Vys`20erase`20the
- Xcurrent`20line`20and`20move`20to`20the`20end`20of`20the`20previous`20line,
- Xor`20to`20the`20beginning`20of`20the`20first`20line`20if`20used`20on`20the
- Xfirst`20line.
- X`5CIPitem`7B`7BRETURN`7D`7D
- XIf`20you`20press`20return`20on`20an`20empty`20line,`20or`20on`20the`20last`20l
- Vine,
- Xthe`20comment`20is`20finished.`20`20Otherwise,`20the`20cursor`20moves`20to`20t
- Vhe
- Xnext`20line.
- X`5CIPitem`7B`7BESC`7D`7D
- XThe`20escape`20key`20aborts`20the`20operation`20(e.g.`20Send),`20restores
- Xthe`20previous`20comment,`20and`20returns`20to`20the`20previous`20menu.
- XThis`20allows`20you`20to`20change`20your`20mind`20and`20back`20out`20of
- Xan`20operation.
- X`5Cend`7BIPlist`7D`5Cpar
- XAll`20other`20keys`20are`20entered`20into`20the`20comment.`20`20When`20you`20r
- Veach
- Xthe`20end`20of`20a`20line,`20ldb`20word-wraps`20to`20the`20next`20line,`20or
- V`20beeps
- Xif`20you`20are`20at`20the`20end`20of`20the`20last`20line.`20`20Note`20that`20t
- Vhe
- Xsuperkey`20is`20still`20active`20while`20entering`20comments,`20and
- Xcannot`20be`20entered`20into`20a`20comment.
- X`5Cpar
- X`5Cshead`7BCONTROLLING`20A`20GAME`7D
- XThe
- X`7B`5Cit`20--control`7D
- Xoption`20permits`20you`20to`20control`20your`20games`20in
- Xcertain`20ways.`20`20Each`20of`20your`20current`20games`20are
- Xdisplayed,`20one`20at`20a`20time,`20just`20as`20they`20are`20when`20you
- Xare`20playing,`20allowing`20you`20to`20perform`20any`20of`20the
- Xfunctions`20on`20the`20control`20menu.
- XThe`20control`20menu`20has`20the`20following`20commands:
- X`5Cbegin`7BIPlist`7D
- X`5CIPitem`7B`7BInvert`7D`7D
- XThis`20allows`20you`20to`20invert`20the`20board`20for`20this`20game.`20`20The
- Xboard`20will`20invert`20immediately`20on`20your`20screen,`20so`20you`20can
- Xsee`20if`20you`20like`20it.`20`20Pressing
- X`7B`5Cit`20Invert`7D
- Xagain`20will`20put`20it`20back`20to`20normal.`20`20Inverting`20the`20board`20d
- Voes
- Xnot`20affect`20the`20point`20numbering`20or`20the`20color`20you`20play,
- Xit`20merely`20draws`20the`20board`20with`20the`20low-numbered`20points`20at
- Xthe`20top`20of`20the`20screen`20rather`20than`20the`20bottom.`20`20You`20may
- V`20find
- Xit`20easier`20to`20make`20all`20of`20your`20games`20play`20a`20certain`20direc
- Vtion.
- X`5CIPitem`7B`7BResend`7D`7D
- XFrom`20time`20to`20time,`20messages`20may`20be`20lost`20due`20to`20faulty`20ma
- Vilers
- Xor`20human`20error.`20`20If`20your`20last`20message`20gets`20lost,`20you`20can
- V
- Xregenerate`20it`20with`20the
- X`7B`5Cit`20Resend`7D
- Xcommand.`20`20There`20is`20no`20harm`20in`20regenerating`20messages,`20as
- Xldb`20will`20ignore`20duplicate`20messages.`20`20If`20you`20and`20your`20oppon
- Vent
- Xhave`20forgotten`20whose`20move`20it`20is,`20the`20easiest`20way`20to`20get
- V`20going
- Xagain`20is`20for`20both`20of`20you`20to`20resend`20your`20last`20message.`20
- V`20The`20one
- Xthat`20got`20lost`20will`20be`20accepted,`20and`20the`20game`20will`20be`20off
- V
- Xand`20running`20again.`20`20So`20that`20you`20can`20resend`20the`20last`20move
- V
- Xof`20a`20game,`20completed`20games`20are`20kept`20in`20your`20.ldbdata`20for
- X1`20week,`20after`20which`20they`20are`20deleted.`20`20They`20may`20be`20delet
- Ved
- Xsooner`20with`20the`20Delete`20Game`20command.`20`20Note`20also`20that
- Xgames`20that`20have`20been`20waiting`20for`20your`20opponent`20for`20more`20th
- Van
- X1`20week`20have`20an`20automatic`20resend`20performed`20whenever`20you`20run
- V`20ldb.
- X`5CIPitem`7B`7BGet`5C`20Resend`7D`7D
- XThis`20allows`20you`20to`20send`20a`20message`20to`20your`20opponent's
- Xldb`20requesting`20a`20resend.`20`20This`20saves`20your`20opponent`20the
- Xtrouble`20of`20getting`20into
- X`7B`5Cit`20--control,`7D
- Xfinding`20which`20game`20you're`20talking`20about,`20and`20resending.
- XInstead,`20he`20can`20just`20feed`20your`20resend`20request`20message`20into
- Xldb`20like`20it`20was`20a`20regular`20move.`20`20Version`201.0`20of`20ldb
- Xnot`20only`20does`20not`20support`20this`20feature,`20but`20will`20crash
- Xif`20a`20resend`20request`20packet`20is`20sent`20to`20it,`20so
- X`7B`5Cit`20--control`7D
- Xwill`20check`20to`20make`20sure`20your`20opponent`20is`20running
- Xthe`20proper`20version
- Xbefore`20sending`20the`20message.
- X`5CIPitem`7B`7BScreen`5C`20Dump`7D`7D
- XThis`20command`20makes`20an`20exact`20copy`20of`20the`20screen`20in`20the
- Xfile`20"ldb`5C_screen.dmp".`20`20This`20could`20be`20useful`20if`20you
- Xwant`20to`20mail`20the`20board`20to`20someone`20or`20print`20it`20out.
- X`5CIPitem`7B`7BDelete`5C`20Game`7D`7D
- XThis`20command`20marks`20a`20game`20for`20deletion.`20`20The`20game`20is`20not
- V`20deleted
- Xuntil`20you`20quit,`20and`20you`20can`20undelete`20it`20by`20pressing`20D`20ag
- Vain.
- XNormally,`20you`20should`20not`20delete`20a`20game`20in`20this`20manner,
- Xyou`20should`20play`20until`20someone`20wins`20or`20concedes.`20`20The
- X`7B`5Cit`20Delete`5C`20Game`7D
- Xcommand`20can`20be`20used`20to`20get`20rid`20of`20games`20where`20your`20oppon
- Vent
- Xdoesn't`20answer`20his`20mail,`20or`20doesn't`20want`20to`20play,`20etc.
- X`5CIPitem`7B`7BNext`5C`20Game`7D`7D
- XThe`20next`20game`20is`20displayed.`20`20If`20there`20is`20no`20next`20game,
- Xthis`20choice`20is`20equivalent`20to
- X`7B`5Cit`20Quit.`7D
- X`5CIPitem`7B`7BQuit`7D`7D
- XThis`20allows`20you`20to`20exit`20from
- X`7B`5Cit`20--control`20.`7D
- XIf`20you`20made`20any`20changes`20to`20your`20games,`20you`20will`20be`20given
- V`20the`20opportunity
- Xto`20save`20these`20changes,`20then`20ldb`20will`20exit.
- X`5Cend`7BIPlist`7D`5Cshead`7BVMS`20NOTES`7D
- X`5Cpar
- XVMS`20users`20have`20a`20few`20unique`20considerations:
- X`5Cpar
- XOn`20VMS,`20the`20default`20file`20names`20are`20changed`20from`20.ldb*`20to
- V`20ldb.*.`20`20This
- Xgroups`20all`20ldb`20files`20together.
- X`5Cpar
- XVMS`20mail`20doesn't`20append
- Xmessages`20to`20an`20existing`20file,`20it`20creates`20new`20versions.
- XTo`20accommodate`20this,`20vms-compiled`20executables`20will`20search`20all
- V`20versions
- Xof`20a`20file`20by`20default.`20`20This`20applies`20to`20files`20specified`20o
- Vn`20the`20command
- Xline`20as`20well`20as`20the`20file`20specified`20in`20your`20ldb.rc.`20`20You
- V`20can`20disable
- Xthis`20in`20either`20case`20by`20specifying`20a`20version`20number,`20or`20by
- V`20specifying
- Xversion`20number`200`20to`20get`20the`20most`20current`20version.`20`20The`20d
- Vefault`20setting
- Xin`20ldb.rc`20is`20to`20scan`20sys`5C$login:ldb.rcv;*.`20`20You`20might`20want
- V`20to`20change
- Xthis`20to`20ldb.txt;*,`20since`20that`20is`20the`20default`20extension`20added
- V`20by
- Xmail`20when`20you`20extract`20a`20file.`20`20If`20you`20use`20multiple`20versi
- Vons,`20you
- Xshould`20be`20careful`20not`20to`20PURGE`20until`20after`20you`20have`20run
- V`20ldb.
- X`5Cpar
- XIf`20you`20have`20the`20Eunice`20package,`20ldb`20will`20compile`20and`20run
- V`20under`20it`20fine,
- Xbut`20any`20files`20created`20by`20the`20Eunice--compiled`20version
- X(most`20notably`20the`20games`20file)
- Xwill`20be`20incompatible`20with`20the`20VAX`20C--compiled`20version.`20`20Use
- V`20the
- Xunixtovms`20command`20to`20convert.
- X`5Cpar
- XLdb`20is`20available`20in`20vms`5C_share`20format`20with`20the`20manual`20pref
- Vormatted.
- XIf`20you`20have`20MMS,`20you`20can`20use`20the`20makefile.vms`20provided`20by
- V`20entering:
- X`5Cnofill
- X`20`20`20`20`20`5C$`20rename`20makefile.vms`20makefile.
- X`20`20`20`20`20`5C$`20make
- X`5Cfill
- XIf`20you`20don't`20have`20a`20make`20available,`20you`20can`20compile`20with:
- X`5Cnofill
- X`20`20`20`20`20`5C$`20@makeldb
- X`5Cfill
- XAfter`20ldb`20is`20compiled,`20you'll`20probably`20want
- Xto`20define`20a`20symbol`20such`20as:
- X`5Cnofill
- X`20`20`20`20`20`5C$`20ldb`20:==`20`5C$dua0:`5Bme.ldb`5Dldb
- X`5Cfill
- Xso`20you`20can`20run`20it.
- X`5Cpar
- XThe`20VMS`20implementation`20spawns`20a`20subprocess`20with`20no`20command`20w
- Vhen`20the
- Xsuperkey`20is`20pressed.`20`20You`20can`20enter`20LOGOUT`20or`20EOJ`20to`20ret
- Vurn`20to`20the
- Xgame.`20`20If`20you`20define`20a`20command`20to`20run`20when`20the`20superkey
- V`20is`20pressed,
- Xthe`20command`20will`20be`20run,`20but`20you`20will`20still`20need`20to`20logo
- Vut`20of
- Xthe`20subprocess`20to`20return`20to`20ldb.
- X`5Cpar
- X`5Cshead`7BBUGS`7D
- X`5Cpar
- XA`20game`20file`20created`20by`20ldb`20under`20Eunice`20must`20be`20run`20thro
- Vugh
- X"unixtovms"`20before`20the`20VAX--C`20ldb`20can`20read`20it.
- X`5Cpar
- XThe`20"Concede"`20command`20violates`20the`20rules,`20in`20that`20it`20allows
- V`20one
- Xplayer`20to`20unilaterally`20settle`20the`20game`20for`20the`20current`20game
- V`20value.
- XThis`20could`20be`20used`20to`20avoid`20an`20impending`20gammon.
- X`5Cpar
- XThe`20superkey`20function`20only`20works`20when`20ldb`20is`20waiting`20for`20a
- V`20key.
- XIf`20ldb`20is`20doing`20something`20time-consuming,`20such`20as`20calculating
- Xlegal`20moves,`20the`20superkey`20will`20not`20work`20until`20the`20calculatio
- Vn
- Xis`20complete.
- X`5Cpar
- XThere`20should`20be`20a`20way`20to`20play`20interactively`20(using`20socket
- V`20connections,
- Xfor`20example),`20rather`20than`20via`20e--mail.
- X`5Cpar
- XUnder`20Eunice,`20there`20is`20a`20bug`20when`20delmail`20is`20enabled,
- Xreceived`20mail`20is`20in`20a`20file`20with`20multiple`20versions,
- Xand`20these`20versions`20are`20entered`20on`20the`20command`20line
- X(as`20opposed`20to`20being`20specified`20by`20a`20pattern`20in`20.ldbrc).
- XEunice`20handles`20multiple`20versions`20by`20appending`20a`20dot`20and`20the
- V`20version
- Xnumber`20to`20all`20versions`20of`20the`20file`20but`20the`20newest`20version,
- V
- Xto`20which`20it`20appends`20nothing.`20`20When`20the`20most`20recent`20version
- V`20is`20deleted,
- Xthe`20next`20older
- Xversion`20becomes`20the`20most`20recent,`20and`20has`20no`20version`20suffix
- Xattached.`20`20This`20file`20will`20be`20skipped,`20since`20its`20name`20chang
- Ved
- Xbetween`20the`20time`20the`20file`20list`20was`20created`20and`20the`20file
- V`20is`20opened.
- XAll`20other`20files`20will`20be`20scanned`20properly.`20`20The`20work-around
- V`20for`20this
- Xis`20to`20not`20use`20a`20pattern`20like`20'ldb`20ldb.txt*'`20on`20the`20comma
- Vnd`20line
- Xto`20specify`20all`20versions`20of`20the`20file,`20but`20rather`20use`20'ldb
- V`20ldb.txt.*`20ldb.txt'
- Xso`20that`20the`20most`20recent`20version`20is`20scanned`20(and`20thus`20delet
- Ved)`20last.
- XAlternatively,`20the`20pattern`20can`20be`20quoted`20so`20that`20ldb`20interpr
- Vets
- Xit`20instead`20of`20the`20shell.
- X`5Cpar
- XThe
- X`7B`5Cit`20--myaddr`7D
- Xcommand`20line`20option`20should`20override`20the
- Xmyaddr`20line`20in`20the`20people`20file.
- X`5Cpar
- XVersion`201.0`20of`20ldb`20only`20allowed`20the`20colors`20red,
- Xwhite,`20and`20black,`20represented`20by`20r,`20w,`20and`20b,
- Xrespectively.`20`20Although`20ldb`201.0`20will`20allow`20games
- Xto`20be`20started`20and`20played`20correctly`20with`20different
- Xcolors,`20the`20move`20blocks`20will`20have`20the`20string`20"*BAD`20COLOR*"
- Xdisplayed`20where`20the`20color`20should`20be,`20making`20it`20difficult
- Xto`20figure`20out`20which`20color`20you`20are`20playing.`20`20Upgrading
- Xto`20a`20newer`20ldb`20will`20fix`20this.`20`20Nevertheless,`20if`20you
- Xare`20playing`20someone`20who`20is`20using`20ldb`201.0,`20you`20may`20want
- Xto`20restrict`20your`20color`20choices`20to`20r,`20w,`20and`20b.
- X`5Cpar
- XThe`20Crawford`20rule`20option`20may`20be`20incorrect.`20`20As`20implemented,
- Xit`20prevents`20doubling`20for`20any`20game`20where`20either`20player
- Xis`20within`20one`20point`20of`20winning`20the`20match.`20`20Some`20people
- Xplay`20the`20Crawford`20rule`20such`20that`20doubling`20is`20only
- Xillegal`20for`20the`20first`20game`20that`20a`20player
- Xis`20withing`20one`20point`20of`20winning;`20if`20that`20player
- Xdoes`20not`20win`20the`20Crawford`20rule`20game,
- Xdoubling`20for`20subsequent`20games`20is`20allowed.
- XAn`20authoritative`20description`20of`20this`20rule`20is`20needed.
- X%
- X%`20end`20of`20input`20file:`20ldb.man
- X%--------------------------------------------------
- X`5Cend`7Bdocument`7D
- $ call unpack LDB.TEX;1 1031385950 ""
- $ v=f$verify(v)
- $ exit
-