Gambiet

From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * Gambiet

Gambiet 80 cover [1]

Gambiet,
a chess program by Wim Rens, initially written in Z80 assembly to run on a TRS-80 [2], and the first Dutch commercial chess program, merchandised through Microtrend [3]. Gambiet 80 played the first WMCCC 1980 in London, where it finished third with 3/5, and further the European MCC 1981 and European MCC 1982 [4], and the first three Dutch Computer Chess Championships. Gambiet 81 was runner-up behind YNCT 1.0 at the DOCCC 1981, and Gambiet 82 did even better, winning the DOCCC 1982 [5] running on a Xerox Star. Gambiet 83 played the DOCCC 1983 with a fifth place.

Gambiet was base of Microtrend Experimental, which also played the European MCC 1981 with its brother, and was further commercialized in 1982 for the Philips Videopac G7000 video game console, as Videopac C 7010 chess module [6] with its own Z80-compatible NSC800 CMOS microprocessor [7].

Description

Gambiet is a Shannon Type-A Stategy program, performing alpha-beta with a classical mailbox board representation and following byte-wise piece coding optimized for efficiency [8] :

        7654 3210
king    x110 1111
queen   x000 1001
rook    x000 0101
bishop  x000 0011
knight  x011 0011
pawn    x001 0001
border  1100 0000
empty   0000 0000

MSB, bit 7 is the piece color, x = 0 for white and x = 1 for black pieces. While LSB, bit 0, acts as piece indicator - set for any piece, the lower nibble already contains their point value equivalence in a {1,3,3,5,9,15} solution, luckily all values odd. The bits 1 to 4 (or even 0 to 4) may act as table index for move generation purpose, similar, bit 4 and 5 enumerate to the four possibly useful states of {sliding piece, pawn, king, knight}. However, the leading code saving trick in conjunction with bit 6 after loading the code into the accumulator and shifting it left one (SLA) , is to use disjoint Z80 processor flags [9] with four conditional jumps in the right order for up to five cases to distinguish. Zero flag is set for empty squares, parity (odd) for squares off the board, sign flag in case of a king, carry for black pieces and white pieces otherwise.

LDA  A,(SQUARE)    ; get piece code to Accu (A)
SLA  A             ; A := A << 1
JP   Z, EMPTY      ; if ( A == 0 ) empty square 
JP   PO, OFFBOARD  ; else if ( parity(A) is odd ) off the board
JP   M, KING       ; else if ( A < 0 ) occupied by king
JP   C, BLACK      ; else if ( carry ) occupied by black piece
JP   WHITE         ; else occupied by white piece

How it began

Wim Rens in his June 1981 Databus article Grondslagen van computerschaak on how it began with Microtrend and Gambiet [10]:

The second milestone of Gambiet's triumph [11] was achieved under the watchful eye of the firm Microtrend. At home of one of their directors were two TSR-80's, one running Sargon II, the other Gabmol [12]. Microtrend was looking for a chess game in their collection, and end of June a decision was made and a contract placed. The result was impressive: two equally fast Tandy computers and Gambiet had no trouble with the once-famous Sargon. 

Microtrend

According to Trademarkia, GAMBIET was trademark by Microtrend International B.V. in Amsterdam, filed October 26, 1981, as United States trademark, canceled September 13, 1989 [13].

GambietInfo.JPG

Gambiet order form by Microtrend, U.S.A., InfoWorld, May 1981 [14]

Selected Games

WMCCC 1980

WMCCC 1980, round 3, Gambiet 80 - Sargon 2.5 Auto RB [15]

[Event "WMCCC 1980"]
[Site "London, United Kingdom"]
[Date "1980.09.05"]
[Round "3"]
[White "Gambiet 80"]
[Black "Sargon 2.5 Auto RB"]
[Result "1-0"]

1.e4 c5 2.Nf3 d6 3.Bb5+ Bd7 4.a4 Bxb5 5.axb5 Nf6 6.Nc3 Nbd7 7.O-O e5 8.d3 Be7 
9.Be3 O-O 10.Qc1 Nb6 11.Kh1 Qd7 12.Bg5 Qe6 13.Rd1 Ng4 14.Be3 Rfc8 15.b3 d5 
16.exd5 Qd7 17.d6 Bxd6 18.h4 Qe6 19.h5 Nf6 20.h6 Nbd5 21.Nxd5 Nxd5 22.hxg7 Nc3 
23.Re1 Kxg7 24.Bd2 Nxb5 25.Bf4 f6 26.Bd2 Bf8 27.c4 Nd4 28.Bh6+ Kg6 29.Nxd4 cxd4 
30.Bxf8 Rxf8 31.Kh2 Qb6 32.Qd1 h5 33.Kh3 Rac8 34.Kg3 Kg5 35.Qd2+ Kf5 36.Kh2 Rg8 
37.b4 a6 38.c5 Qb5 39.Kh3 b6 40.cxb6 Rc3 41.Qa2 Rxd3+ 42.g3 Rb8 43.Qxa6 Rxb6 
44.Qc8+ Kg5 45.Qc1+ Kg6 46.Rb1 Rc3 47.Qd1 Rc4 48.g4 hxg4+ 49.Qxg4+ Kf7 50.Qf5 Rxb4 
51.Rxb4 Qxb4 52.Rxe5 Qc3+ 53.f3 d3 54.Qd7+ Kg6 55.Rd5 Rb3 56.Qe8+ Kg7 57.Qe7+ Kg6 
58.Qe4+ Kg7 59.Rd7+ Kh6 60.Rh7+ Kg5 61.f4# 1-0 

DOCCC 1982

DOCCC 1982, round 8, upcoming tournament winner Gambiet 82 loses from newcomer Rebel [16]

[Event "DOCCC 1982"]
[Site "Wageningen NED"]
[Date "1982.10.??"]
[Round "8"]
[White "Gambiet 82"]
[Black "Rebel"]
[Result "0-1"]

1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Ba4 Nf6 5.O-O Be7 6.Re1 b5 7.Bb3 d6 8.c3 O-O 9.h3 Na5 
10.Bc2 c5 11.d4 Qc7 12.Nbd2 Bd7 13.d5 Rfc8 14.Qe2 Rab8 15.b3 Qb6 16.Qe3 Ra8 17.Bb2 Rc7 
18.Bd3 Nh5 19.Bf1 Nf4 20.c4 Rb7 21.cxb5 Bxb5 22.Rac1 Bxf1 23.Kxf1 Qb5+ 24.Nc4 h6 
25.Qc3 Nxc4 26.Qxc4 Nd3 27.Re2 Nxc1 28.Qxc1 Qd3 29.Ne1 Qb5 30.Qe3 Bg5 31.Qc3 Rbb8
32.Nd3 Qe8 33.Rc2 f6 34.a4 Qg6 35.Qc4 Rb7 36.b4 cxb4 37.Nxb4 Qh5 38.Re2 a5 39.Nd3 Qf7 
40.Qc6 Qd7 41.Rc2 Rab8 42.Qc4 Rb3 43.Kg1 g6 44.Kh1 f5 45.Kg1 fxe4 46.Qxe4 Qf5 
47.Qxf5 gxf5 48.Nxe5 Rxb2 49.Rxb2 Rxb2 50.Nc6 Kf7 51.g3 Kf6 52.f4 Rb1+ 53.Kf2 Bxf4 
54.gxf4 Ra1 55.Ke3 Rxa4 56.h4 h5 57.Nd4 Ra1 58.Nb5 Rd1 59.Nxd6 Rxd5 60.Nc4 a4 
61.Nb6 Ra5 62.Nc4 Rc5 63.Kd4 Rc8 64.Kd3 0-1

See also

Publications

External Links

Dave King, Jon Hiseman, Barbara Thompson, Volker Kriegel, Wolfgang Dauner,
Charlie Mariano, Albert Mangelsdorff, Ian Carr, Ack van Rooyen, Kenny Wheeler

References

  1. Gambiet 80 cover from Computerschaak by Peter van Grijfland
  2. Eerste Nederlands Kampioenschappen Computerschaken (Dutch)
  3. GAMBIET - Reviews & Brand Information - Microtrend International B.V. Amsterdam , Serial Number: 73334547 by Trademarkia
  4. Tony Harrington (1983). The third European Microcomputer Chess tournament. Creative Computing, Vol. 9, No. 1
  5. Gambiet '82, de nieuwe Nederlandse computerschaak kampioen! - Nieuwe pagina 1, CSVN supplement site
  6. Philips, Videopac C 7010, French Manual, pdf
    © 1982 N.V. Philips Gloeilampenfabrieken - Holland
    © 1982 Wim Rens, Microtrend International - Holland
  7. National Semiconductor NSC800 from CPU-World: Microprocessor news, benchmarks, information and pictures
  8. Wim Rens (1981). Grondslagen van computerschaak. Databus 06-81, pp. 13-15, pdf hosted by Hein Veldhuis
  9. same flags as 8080, and even 8086, x86 and x86-64 with parity for the least significant byte
  10. Free translation from Dutch, excerpt from: Wim Rens (1981). Grondslagen van computerschaak. Databus 06-81, pp. 13-15, pdf hosted by Hein Veldhuis (Dutch)
  11. first milestone was winning a match from IGM in early 1980
  12. Gabmol was Gambiet's initial name
  13. GAMBIET - Reviews & Brand Information - Microtrend International B.V. Amsterdam , Serial Number: 73334547
  14. Gambiet order form, InfoWorld, Vol. 3, No. 9, May 11, 1981, from Google Books
  15. London 1980 - Chess - Round 3 - Game 4 (ICGA Tournaments)
  16. Downloads | Open Dutch Computer Chess Championships | Games

Up one level