Classic Computer Chess - ... The programs of yesteryear
''1K Chess - 1983 - David Horne''\n\nDavid Horne's 1K Chess for the unexpanded ZK-81 computer is the smallest (or one of the smallest) reasonable chess programs ever written.\n\nIt uses a mere 672 bytes. You'd have trouble writing the rules of chess in just 672 characters!\n\nDavid Horne's Sinclair ZX-81 1k chess can be obtained from [[here|http://users.ox.ac.uk/~uzdm0006/scans/1kchess/]]. And probably other places. It's from February 1983 issue of `Your Computer'.\n\n(There may have been two or more for the Sinclair. One in 1982 by Artic Computing, and this one in Feb 1983 by David Horne. I've also seen referenses to PSion's 1k chess. I'm not familiar enough with the Sinclair to know the specifics.)\n
''8080 chess - 1977 - Robert Arnstein''\n\nThe first microcomputer to play chess in an ACM tournament was Robert Arnstein's 8080 chess. Before Sargon was even written. (There were other small programs prior to that, running on small hardware on site, but they weren't technically 'microcomputers', just small computers.)\n\nYou can download a copy of the manual and Sol-20 tape image from [[here|http://www.thebattles.net/sol20/solpgms.html]]. (No source, unless somebody disassembles it. Supposedly when "Processor Technology" folded (or when the company that bought them folded), the source to a lot of stuff was released to the public. But aparently the SOL-20 people can't find it. If they can't, it's probably lost.)
''Atari Chess - 1979 - Atari (Primary chess programmer - Larry Wagner)''\n\nOne of the most remarkable chess programs ever written was ~VideoChess for the Atari 2600 game console.\n\nAcording to [[here|http://www.atarimuseum.com/videogames/consoles/2600/Atari_case_history.html]] Atari didn't want to produce a chess program but because the Atari 2600 box had a picture of a chess game, they were sued and they had to begin work on a chess cartidge.\n\nFor those unfamiliar with the Atari 2600 game console, it had a 4k address space for the cartridge, 128 bytes (just bytes, not K bytes) of ram and 10 more bytes of registers that could be used for storage.\n\nThe original prototype was 6k and required Atari to invent a bank switching scheme for the console. It was later squeezed into just 4k of ROM.\n\nThe original program was written in FORTRAN on a time share system.\n\nThe early versions had to use part of the video data area while thinking, causing the screen to become jumbled static. Later tweaked versions overcame this.\n\nSales of the chess cartridge was not strong. Mostly for the same reasons that chess programs today don't sell well... Chess is too intellectual for most people. Back then (as now) people prefered to play games with lots of action and fast movement. Not sit there and actually think.\n\n\n
''BCP - 1974-1986? - Don Beal''\n\nMr. Don Beal has donated a z8000 based version that is aproximately from 1986 WCCC. This is only an educated guess, though. It could be from a slightly different time, and there may or may not be significant changes in the program.\n\nThe program was written in Z-8000 assembly language for a custom assembler (which no longer exists.)\n\nThe source for the approx. 1986 version is [[here|./bcp1986.zip]]\n\nDon Beal has also donated a ''DRAFT'' copy of a [[paper|./alg1986review.txt]] on the algorithms used in BCP1986. Specifically the tactical search mechanism\nthat was used for experiments reported in papers published in\n"Advances in Computer Chess 5" and the AI Journal.\n\n\nBCP was started in 1974 as an experiment in artificial intelligence.\n\nIt slowly evolved in a program who's primary purpose was playing chess.\n\nIt was rewitten several times, progressing from a CDC-6400, to a PDP-11, a Z-8000 based micro, to eventually a custom hardware based system that coprocessors with the Z-8000.\n\nBCP was selective search program that had some unusual features. It some ways it was reminiscent of TECH in that its main search did no positional analysis during the look-ahead.\n\nLike most long lived chess programs, BCP went through many revisions in its life, as new ideas were tried and old ideas dropped.\n\nI am uncertain of all of the features BCP1986 had, or when various aspects changed.\n
''Bernstein Chess Program. 1958. Alex Bernstein, Michael de V. Roberts, Thomas Arbuckle and Martin A. Belsky''\n\nIt was written for the IBM 704. It executed about 42,000 instructions per second. A typical search took 8 minutes. A total of 336,000 instructions for a search.\n\nOnly the 7 most plausible moves in each position are considered. Due to forward pruining, 1+7+49+343=400 positions. 7^4 = 2401 positions are stored.\n\nEvaluation used four features. 1) Mobility. 2) Area control. 3) King defense. 4) Material, which was dominant.\n\nThe plausible move generator considered:\n\n1) Is the king in check?\n2) (a) Can material be gained.\n2) (b) Can material be lost.\n2) (c) Can material be exchanged.\n3) Is castling possible.\n4) Can minor pieces be developed?\n5) Can key squares be occupied? (Key squares are those controlled by diagonally connected pawns)\n6) Can open files be occupied?\n7) Can any pawns move?\n8) Can any piece be moved?\n\nThese were done in sequence until 7 plasubible moves were generated.\n
''Borland Chess - mid 1980s - Borland International''\n\nI believe the primary author was Kaare Danielsen who also did Advanced Star Chess etc. [[Home|http://www.danielsen.com/kaare.shtml]] [[Resume|http://www.danielsen.com/resume.shtml]]\n\nIn the early and mid 80's, Borland International was 'King of Pascal'. They published a series of toolkits to help programmers produce professional grade applications.\n\nOne of those toolkits was "Gameworks", which gave the pascal source for Chess and a few other games.\n\nThe program was relatively sophisticated considering its target audience. It uses 0x88 data\nstructures, fast move generation and ordering, a little bit of selection, static piece-square tables, simple pawn structure eval, check extensions and push-passed-7 extensions.\n\nConsidering the limitations of the 8088 PC, Turbo Pascal, and its target audience, the program was quite a bit better than it needed to be.\n\nThe program's graphics were a bit lacking. It used the PC's extended text character set to produce text pieces that looked vaguely like pieces, but it was certainly no substitute for graphics. Although considering many PC users were still using text mode and those that had graphic cards were often only CGA graphic cards, the text display was a reasonable compromise.\n\nLater, Borland distributed Chess for free with their Pascal compilers.\n\nLater still, Borland did a very rough translation into C and distributed it with the early Windows 3 compilers.\n\nAlthough I do have a copy of both the Pascal version and the C version, I do not have permission to post it. I don't even know who to contact in Borland about that.\n
''CheckMo-II - 1974 - John E. Comeau''\n\nCheckMo - II from 1974. With source. Docs are [[Here|http://www.pdp8.net/games/chess.shtml]] [[Archive.org|http://web.archive.org/web/20050220154602/http://www.pdp8.net/games/chess.shtml]]\nAuthor's page [[Here|http://users.net1plus.com/jcomeau/chekmo.htm]] [[Archive.org copy|http://web.archive.org/web/20050311234339/http://users.net1plus.com/jcomeau/chekmo.htm]]\n\n[[Local copy|./ChekMo-II.zip]] of the program.\n\nBasically, the program was written for the PDP-8 in assembly language and required 4k of memory.\n\nThe program used a full width, 3-ply, mini-max search with alpha-beta pruning. The program did not extend its search past 3-ply to play out possible captures. Instead, the terminal evaluator included a static analysis of en-prise pieces. The static analysis did not account for pinned pieces or surprise checks, so it messed up in those cases - but in most cases it gave the right answer.\n
''Chess - 1969-1980 - Larry Atkin, David Slate and Keith Gorlen''\n\nChess 4.6 by Larry Atkin and David Slate is [[Here|./chess4.6.zip]] If you'd like to view it online, you can use the [[PDF here|./chess%204.6.pdf]]. Posted with permission of authors.\n\nChess began in early 1968 when Larry Atkin and Keith Gorlen wrote a chess program for Northwestern's new CDC 6400 computer. David Slate saw it and wrote his own.\n\n(The CDC 6400, like all computers designed by Seymor Cray, had a rather odd architecture. It was essentially a 60 bit word with 48 bit integers. And since Atkin & Slate used bitboards, the lack of 4 extra bits were undoubtably extremely annoying. It could execute more than one million instructions per second or 50k flops, which is about 25 times the performance of the IBM 704 that Alan Bernstein used, and more than three times the IBM 7090 that Alan Kotok used.)\n\nAs is typical of first efforts, neither program played well. The Atkin / Gorlen program could look several moves deep, but it had a poor evaluator. David Slate's program had a relatively decent evaluator but could only look at the next move.\n\nAs you would expect, the two groups joined forces and "Chess 2.0" was ready by October 1969 and in 1970 scored 2-3 in the Northwester University Championship.\n\nBy 1971 the program had evolved into Chess 3.0 which won the first U.S. Computer Chess Championship.\n\nWork began on the 4.x series, and was ready by 1973.\n\nIn 1977, Chess 4.6 won the second World Computer Chess Championship with a 4-0 score. It was running on a Cyber-176.\n\nThe 'Chess' line of programs ended with v4.9 in 1980. David Slate had started development of a new portable FORTRAN chess program (expected to be called Chess 5.0, but was actually named NuChess) in 1977, and Larry Atkin went on to other projects.\n\nIt's interesting to note that Mr. Atkin says that he enjoyed programming in assembly language. It was Mr. Slate who created all the complex macros used in Chess. As an example, he points to evalu8, which has a syntax similar to LISP, done with assembler macros.\n\nMr. Atkin also commented that he is the author of the Capablanca chess module of the "Master Chess Trio" for the famous "Great Game Machine". That program was later converted into Chess 7.0 for various 8 bit micros of the time
''Chess 0.5 - 1978 - Larry Atkin, Peter Frey (article)''\n\nChess 0.5 is available [[Here|./Chess05.zip]]. (Includes original articles plus compilable pascal source.) Peter Frey and Larry Atkin published it in 1978 in BYTE magazine. Posted with permission of original authors.\n\nA bug in the scan & OCR has been found. [[Here|./Chess05bug.txt]] It effects the program's castling.\n\nThis is a classic chess program written by Peter Frey and Larry Atkin in 1978. Larry Atkin was the co-author (along with David Slate and Keith Gorlen) of the famous "Chess" line of programs back in the 1970's. At the time of the article, Chess was at about version 4.5.\n\nThis program, Chess 0.5, is based on his intimate knowledge of that program, but is, of course, a brand new and seperate program.\n\nThere had been some speculation as to whether the program was written for a teaching aid for a college course, or perhaps as an experiment in using a high level language for a chess program. That last one was the most plausible, since David Slate started experimental work on Chess 5.0 / NuChess in 1977, and he ended up using FORTRAN. However, Mr. Larry Atkin confirms that the program was written solely as a demonstration program specifically to be published. (Mr. Frey had recently published his book "Chess skill in man and machine" which had Atkin's and Slate's description of Chess 4.5 and the bitboard technique they used. For programmers though, a working example is much better than a description. Hence Chess 0.5)\n\nChess 0.5 was published in Byte Magazine in November and December of 1978, with a couple of additional articles in October 1978 and January 1979.\n\nSeveral chess programs were later developed based on the published Chess 0.5 Such as Merlin and Shy. And probably Chess 0.5x, although I am not sure of that
''~CoKo 1970-1973 by Dennis Cooper and Ed Kozdrowicki''\n\n~CoKo was written in Fortran IV, and it ran on a wide range of systems from several manufacturers.\n\nA move is searched until the program is satisfied with the results. This means that when the program's time limit is up, it may have only searched 4 to 8 moves of the first level.\n\n~CoKo incorporated Alan Newell, John Shaw, and Herbert Simon's "Mater" algorithm.\n\nThe authors published an article about ~CoKo in the July 1973, volume 16, number 7 issue of the CACM journal. A copy is available [[here|./CoKo.pdf]]\n\nPlease note the paper is Copyright 1973, Association for Computing Machinery, Inc. and is distributed with the following permissions\n\n<<<\n//Copyright 1973, Association for Computing Machinery, Inc. General permission to republish, but not for profit, all or part of this material is granted provided that ACM's copyright notice is given and that reference is made to the publication, to its date of issue, and to the fact that reprinting privileges were granted by permission of the Association for Computing Machiner.//\n<<<\n\n
''Colossus Chess 1983+ - Martin Bryant''\n\nColossus chess were actually a series of popular microcomputer chess programs for various platforms of the time. They were very popular for the mcros.\n\nThe authors [[web page|http://www.colossus.demon.co.uk/chess/colossuschess.htm]] gives some brief details about it and the platform it ran on. I'll quote the author's web page\n\n\n<<<\n//I developed Colossus Chess in 1983 from my existing White Knight chess program. It used various forward pruning techniques to achieve deeper, narrower tree searches than its earlier full width cousin and had a more sophisticated evaluation function. Over the following few years it was published for a large number of 8-bit micros including the Commodore 64 (the original version 2 and later version 4), BBC Micro, Acorn Electron, Apple ][, Atari, Amstrad CPC, Amstrad PCW, Sinclair Spectrum, MSX and probably a few more too! Later it was released for the 16-bit micros Atari ST, Commodore Amiga and IBM PC (now christened version 'X'). It became one of the largest selling chess programs of all time. In all cases it was written in the assembly language of the appropriate CPU. The graphics on the later 16-bit versions were developed with the assistance of Gary Thomlinson and Carl Cropley. No work has been done on the program since 1991. However, Guildhall Leisure released a rebadged version called Colossus Chess 2000//\n<<<\n\nThese systems usually ran from 2mhz to 8mhz, with 2mhz being more common of the 8 bit micros.\n\nAs to WhiteKnight, he says:\n<<<\n//My first chess program which I began developing whilst at Manchester University in 1976. My very first attempt was a bit of a non-starter but after buying a copy of 'Computer Chess' by Monroe Newborn (an excellent and entertaining read even now) the program developed into a serious player. The early versions were simply called 'Chess - Mark X'. The name 'White Knight' was only adopted before entering the program into its first computer chess tournament in the early 1980's. It was at another later tournament that I was approached by Meyer Solomon of BBC Software who was after a chess program for the fledgling BBC Micro. Two versions (marks 11 and 12) were later released for the BBC Micro and Acorn Electron in the early 1980's. White Knight won the European Microcomputer Chess Championship in 1983. (Whilst working for BBC Software I also produced the 'Second Book of Listings' [a collection of small BASIC programs for the BBC micro] and 'Doctor Who Adventure' [a video game].) Publishing rights were taken over by Longman Logotron after the closure of BBC Software in the mid 1980's.\nThe program was originally written in Pascal but when I left university I translated it into 6502 assembly for the Apple ][ micro. No work has been done on the program since about 1983//\n<<<\nSince so many people have fond memories of Colossus Chess, Mr. Bryant has given explicit permission for all of his old chess programs to be posted.\n\nUnfortunately, he couldn't find a copy to give me, or any source. He may still have it, but like most people, finding something from that far back can be difficult. Especially if you no longer have the hardware to read the tapes or disks the program is on.\n\nAlthough there are lots of copies on the web, I can't vouch for them. They could be modified, hacked, cracked or infected.\n\nI got a copy of Colossus X (for the PC) from one of the moderators of the [[Computer Chess Club|http://www.talkchess.com/]], so I tend to believe that the copy he gave me is indeed a valid copy.\n\nYou can [[download|ColossusX.zip]] a copy here. The disk image is a standard disk image that many programs can read. Since I personally don't trust warez, I have no reason to believe that you'll trust an executable you get from me! Therefor I suggest you try running it under an emulator, such as [[DosBox|http://dosbox.sourceforge.net/]] which creates a virtual dos box to safely run most older programs in. Anything that happens there, wont effect the real system. Or you could go even further and try Qemu, which emulates the PC hardware (and others) and you can run any OS you want.\n\n
config.animFast= 0.25; // Speed for animations (lower = slower)\nconfig.cascadeFast= 10; // Speed for cascade animations (higher = slower)\nconfig.options.txtUserName= "Carey";\nconfig.options.chkAutoSave= false;
Contacting me may be difficult due to the unreliability of email. I've had a heck of a lot of difficulty lately with spam filtering the mail I received as well as the mail I send being swallowed.\n\nYou can try: ClassicChess -at- GMail.com (Yes, I know gmail has problems. But hopefully it has fewer problems than my ISP...)\n\nPlease notify me before sending any attachments. And you may need to .ZIP them into an archive when sending any files. Or even better, something such as 7-ZIP, which gmail doesn't search.\n\nIf you need to send me any executables, contact me first. And you'll almost certainly have to put them inside of a 7-zip archive so gmail wont filter them out.\n\nIf that doesn't work, you can post a public message in:\n\nComputer Chess Club at [[TalkChess.com|http://www.talkchess.com/]]\n\nOr the classic newsgroup: rec.games.chess.computer\n\n\nIf you have sent me a message and didn't get a reply, then I probably didn't get it.\n
''~CrayBlitz - 1984-1995 - Robert Hyatt''\n\nIt came from his original "Blitz" program which was ported to the Cray-1 super computer, which was the fastest computer in the world at that time.\n\nSource has been recovered for Blitz & ~CrayBlitz, but is not yet available. The programs were scanned and OCR'ed and currently have a large number of errors still in them. Mr. Hyatt would like to get the programs working correctly before releasing the source.\n\nBut the important thing is that the source has been recovered and is safe.\n
Daly-CP 1970 by Chris Daly and Kenneth King.\n\nPrior to the [[first ACM|ACM-1970]] computer chess competition in 1970, various trade journals (which ones?!) were reporting on a computer that played chess on an IDIOM system.\n\nThe IDOM system was an elaborate graphical display of the chess board and used a light pen \n\nThe main computer was a Varian 620/i having only 4k of memory. The program was written Chris Daly\n\nIt used alpha-beta and searched all moves to a depth of four ply. It used only material and mobility in the evaluation.\n\nFor the ACM tournament, the program ran on-site.\n\nAfter the tournament, much was made about the program's second place finish.\n\nIn spite of the vast difference in computing power between it and the other programs (which ran on mainframes), the Daly-CP still managed to place second.\n\nThis was due to two factors. First, the program was a full width program, and therefor didn't overlook any tactical aspect within its search depth.\n\nThe second factor was hardware reliability. The mainframes often had hardware or communications problems.\n\n\n
[[Welcome]]\n[[To Find...]]
''Duchess - 1974-1982 - Tom Truscott, Bruce Wright and Eric Jensen''\n\n2nd place in Second World Computer Chess Championship (Aug 1977) \nCo-champion with CHESS 4.6 in Eighth North American CCC (Oct 1977) \nFirst place JCIT-3 computer tournament (Aug 1978) \n\nWritten at Duke University by:\nTom Truscott Duke University\nBruce Wright Duke University\nEric Jensen Jensen Research Corporation\n\nDuchess Copyright Duke University 1978. General permission to copy, but not for profit, all or part of this material is granted, provided that reference is made to Duchess and to the fact that copying privileges were granted by permission of Duke University.\n\nIBM mainframe tape image can be obtained from [[Here|http://www.prycroft6.com.au/vs2sw/]] [[Local copy|./duchess6.zip]]\n\nThe tape image is 'ready to install' if you happen to be familiar with IBM mainframes, MVS 3.8 or OS/360 MVT (It's nice to find a classic chess program that is actually available in a 'ready to install' form! Most old chess programs have little chance of ever being run again.)\n\nFor those of us who aren't familiar with the old mainframes, tapes, ebcdic, etc. and are just wanting to look, admire, and study the source, you can get v6.12 [[here|./duch6txt.zip]]. Alternatively, you can view it as a [[PDF|./DUCHESS6.PDF]] online, if so desired. (Both copies provided by Eric Jensen.)\n\nOld Net.Chess (pre-usenet) messages about Duchess [[GoogleGroups|http://groups.google.com/group/net.chess/search?q=duchess&start=0&hl=en&filter=0]]\n(It's worth pointing out that Tom Truscott was one of the developers of usenet and was using his interest in computer chess as a way to test his new 'newsgroup' development. Net.Chess was one of the very first newsgroups they created.)\n\nDuchess version 6 was developed chiefly by Tom Truscott and Bruce Wright during 1977. It was based on an earlier PL/I version also written by Tom and Bruce, and also incorporated techniques and ideas developed by Eric Jensen and Tom Truscott in 1976 as applied to the game of checkers. Duchess development continued during the late 1970's.\n\nThe authors had help from many interested parties, but could not have developed Duchess without the inspiration, motivation, and support from our professor and advisor at Duke University, Dr. Alan W. Biermann.\n\nDuchess is about 12,600 lines of assembler code, compiles into about 65k bytes of code, and uses at least 200k of memory. A reasonably big program for the times.\n
''GNU Chess - 1987? - current - Stuart Cracraft (and previously John Stanback)''\n\nGNU Chess is an open source chess program distributed under the GNU Public License. (Sometimes called the 'Copyleft virus'.)\n\nGNU Chess was originally started by Stuart Cracraft in about 1987.\n\nJohn Stanback later donated an advanced version of his "JSCP" program, which became GNU Chess v2.\n\nThis core code remained until v5, which rewrote the entire program.\n\nGnu Chess Aug 5, 1987 was received from Tony Marsland. [[Here|./cracraft.zip]]\n\nGnu Chess Jan 12, 1988 was recovered from comp.sources.games via Google in four parts. [[Part 1|http://groups.google.com/group/comp.sources.games/browse_thread/thread/204564b4caff6f67/c8349a1ea6587be5?q=chess&rnum=97#c8349a1ea6587be5]] [[Part 2|http://groups.google.com/group/comp.sources.games/browse_thread/thread/58870acd96f6bee3/e673e00dcee06b32?q=chess&rnum=96#e673e00dcee06b32]] [[Part 3|http://groups.google.com/group/comp.sources.games/browse_thread/thread/d43478a69c7ed14/73c6cdb5007d51c9?q=chess&rnum=95#73c6cdb5007d51c9]] [[Part 4|http://groups.google.com/group/comp.sources.games/browse_thread/thread/5bb8f02325d0d3b5/dcf207d1f68afffa?q=chess&rnum=90#dcf207d1f68afffa]] [[Local copy|./GNUChess1x.zip]]\n\nGnu Chess 2, from June 10, 1988 was recovered from comp.sources.games via Google in five parts. [[Part 1|http://groups.google.com/group/comp.sources.games/browse_thread/thread/f901f58f701c1eff/06a5135fb6928990?q=chess&rnum=78#06a5135fb6928990]] [[Part 2|http://groups.google.com/group/comp.sources.games/browse_thread/thread/9a24ba2094a6e098/52279bdad9da9fe9?q=chess&rnum=77#52279bdad9da9fe9]] [[Part 3|http://groups.google.com/group/comp.sources.games/browse_thread/thread/68147647b4b95811/f45996a79be60124?q=chess&rnum=76#f45996a79be60124]] [[Part 4|http://groups.google.com/group/comp.sources.games/browse_thread/thread/2123bc31a8648941/54ad3db0d0c71af3?q=chess&rnum=75#54ad3db0d0c71af3]] [[Part 5|http://groups.google.com/group/comp.sources.games/browse_thread/thread/d752e33d28e0ccec/c74083049041043c?q=chess&rnum=74#c74083049041043c]] [[Local copy|./GNUChess2.zip]]
/***\nTo use, add {{{[[HorizontalMainMenuStyles]]}}} to your StyleSheet tiddler, or you can just paste the CSS in directly. See also HorizontalMainMenu and PageTemplate.\n***/\n/*{{{*/\n#topMenu br {display:none; }\n#topMenu { padding:2px; }\n#topMenu .button, #topMenu .tiddlyLink {\n margin-left:0.5em; margin-right:0.5em;\n padding-left:3px; padding-right:3px;\n color:white; font-size:115%;\n}\n\n#topMenu .button:hover, #topMenu .tiddlyLink:hover { background:#178;}\n\n#displayArea { margin: 1em 15.7em 0em 1em; } /* so we use the freed up space */\n\n/* just in case want some QuickOpenTags in your topMenu */\n#topMenu .quickopentag { padding:0px; margin:0px; border:0px; }\n#topMenu .quickopentag .tiddlyLink { padding-right:1px; margin-right:0px; }\n#topMenu .quickopentag .button { padding-left:1px; margin-left:0px; border:0px; }\n\n\n/*}}}*/\n
''J.Biit - 1970 - Hans Berliner''\n\nJ.Biit stands for "Just Because it is There"\n\nIt was a selective search (Shannon type B) program that places considerable emphasis on chess knowledge and restricting the number of positions to be examined.\n\nIt searched to a variable depth, with an absolute limit of 14 ply. It searched a minimum of 2 ply in the middle game and 4 ply in the end game.\n\nIt used alpha-beta and incremental board updating.\n\nThe program often scored only 30-100 positions during a search.\n\nThe program was developed in PL1 on the IBM 360/65 at CMU, but was unable to use that system for the 1970 ACM tournament. Since the 360 line was supposedly compatable, Ken King offered the services of Columbia's more powerful IBM 360/91.\n\nUnfortunately they discovered that it wasn't as compatable as expected and Berliner and assistants spent two rather frantic weeks making program changes.\n\nIt used about 200k bytes of memory and was about 3500 PL1 statements. The program searches a very small tree. Berliner claimed that, on average, only 30 nodes were examined for a move that required 65 seconds of computation.\n\nIt used a "free form of search which terminated in quiescent positions... (with) the only bound being the absolute depth limit of 14 ply." It searched two plies for begining and middle games, and 4 plies for end games.\n\n
''John Stanback's Chess Program (JSCP) - 1987 - John Stanback''\n\nIt was recovered from [[Google|http://groups.google.com/group/comp.sources.games/browse_thread/thread/cecff59aba5db1e1/b15ee8bc1ab2bd60?q=chess&rnum=112#b15ee8bc1ab2bd60]] [[Local copy|./Scp.zip]]\nA bug report is available [[here|./scp-bug.txt]].\n\nThis program formed the basis of a lot of later chess programs from hobbiests. GNU Chess was also based on this, with the basic structure surviving through v4\n\nIt's somewhat amusing to note that many of the XBoard / WinBoard commands and quirks can be traced all the way back to this program\n\nJim Ablett has created a Winboard [[version|http://homepages.tesco.net/henry.ablett/jims.html]]\n\nAlso, I have a later version of the source dated [[05-26-87|./JSCPv2.c]] This was typed in by me and may still have a few typos. Also note that I added the ~STD_C stuff and the function prototypes, in order to compile & test it. I left it in because you'll need to add it anyway if you want to play with the source.\n\nThe search algorithms have changed a bit, as have the evaluator and attack scanning. It appears to be mid-way between the original posted version and the version that was later became GNU Chess v1.\n
''Kaissa - 1971-1977? by Domskoy, Vladimir Arlazarov, Alexander Bitman et al.''\n\n\nKaissa was developed from the ITEP program that won the 1966-1967 tournament against the Kotok-McCarthy program.\n\nThe program was a standard full width Shannon type A program searching 5 to 7 plies, with extensions for captures, checks, and forcing moves.\n\nThe program also used a "dummy move", which later evolved into the common "Null move"\n\nAlexander Bitman was the primary chess advisor. He was an IM with Elo 2300-2400.\n\n\nI don't know much else about this classic program.\n\n\nThere was also a PC version of Kaissa. The source for that is available [[here|./kaissa.zip]] (Permission was granted by Mr. Misha Donskoy)\n\n\nI also have some scans of the [[autocoder|./KaissaAutocode.zip]] cards for the mainframe version. These are scans of the actual hand written program.\n\nMr. Donskoy, one of the authors also has a blog entry on Kaissa. His original [[Russian|http://itblogs.ru/blogs/donskoy/archive/2005/11/11/3309.aspx]] version and a [[poorly trnaslated|http://translate.google.com/translate?u=http%3A%2F%2Fitblogs.ru%2Fblogs%2Fdonskoy%2Farchive%2F2005%2F11%2F11%2F3309.aspx&langpair=ru%7Cen&hl=en&ie=UTF8]] version done by Google.\n\n(If anybody has a better translation, please let me know.)\n
''Kotok / McCarthy - 1966''\n\nNot a lot is known about this program. Obviously it's an out growth of Alan Kotok's program, and it's reasonable to assume the program fixed many of the obvious issues. But we don't actually know for sure.\n\nThe program appears to be lost to time.\n\nMr. McCarthy said that possibly his assistant, Jim Stein (?) might possibly have a copy. We have not been able to find him, though.
''Kotok - 1962 - Elwyn R. Berlekamp, Alan Kotok, Michael Lieberman, Charles Niessen, and Robert A. Wagner''\n\nAlan Kotok's 1962 thesis with his chess program list. [[PDF|http://www.kotok.org/]] on his website.\n\nAlso on that page is a html copy of of AIM-041 ([[postscript|ftp://publications.ai.mit.edu/ai-publications/0-499/AIM-041.ps]] or [[pdf|ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-041.pdf]]) The paper was written by Mr. Kotok, but the work present was done by the entire "chess group", consisting of Alan Kotok, Elwyn R. Berlekamp (for the first year), Michael Lieberman, Charles Niessen, and Robert A. Wagner (for the third year)\n\nThe Kotok et. al. program was probably the first 'practical' chess program. (I do admit I am hesitant to use the word "practical", but it's closer than any other word I can think of to describe the program.)\n\nAlex Bernstein's program was done earlier, but it wasn't really a 'practical' chess program. It only considered 7 moves at each ply, only went to a depth of 4 plies, and didn't use the alpha-beta algorithm at all. And because of the speed of the IBM 704 (42k ops/sec), it still took 8 to 12 minutes to consider a move. In this case, the main problem was the lack of the alpha-beta algorithm, which forced him to only consider 7 moves at each ply. Technically it was a playable chess program, but it wasn't a 'practical' one.\n\nThe 1955-1957 program by Alan Newell, John Shaw and Herbert Simon did have the alpha-beta algorithm, but because of the high level language used (interpreted IPL-IV, somewhat akin to LISP), a single move could take more than an hour. (Their paper gives an estimated range of one to ten hours!!) Performance like that clearly prevents it from being a 'practical' chess program.\n\nThe Kotok et. al. program could search several moves deep, with a reasonable evaluator, and do so within a few minutes. (Alan Kotok's thesis shows game fragments where the average time per move was 1.8 and 4.4 minutes per move.)\n\nBy taking advantage of the extra processing power of the 7090 (about 7.5 times faster than Bernstein's 704), and the alpha-beta algorithm and a compiled language, the Kotok chess team was able to produce a program that you could actually sit down and play against and expect vaguely reasonable play. Not a good game, but at least vaguely reasonable play until the end game.\n\nThat's not to say the quality of play was decent. And if you actually read the paper and examine the program, you'll discover a number of significant limitations and issues. But it was closer to a real, playable chess program than any of the earlier programs.\n\nAlthough later programs such as Kotok-McCarthy or Machack VI could be argued as being the first practical / playable chess program, I think this program should have that title.
''Krause CP - 1984 - John Krause''\n\nIn the December 1984 issue of Compute! magazine, John Krause published a chess program for the Commodore 64, ~VIC-20, Atari and Apple computers.\n\nThe user interface was in BASIC, with a graphic board, and the actual search routine was in 6502 assembler.\n\nThe program was a straightforward alpha-beta / negamax chess program.\n\nIt searched to a maximum depth of six plies. It considered only material, with no positional features of any kind.\n\nThere was no quiscence search, no move ordering, nothing beyond the most simple chess program. It did not consider enpassant, castling or under-promotions.\n\nAlthough it's certainly an achievement to write a chess program in assembly language, and the program was probably written solely for publication and not for real play, a few extensions to the program would have made the program far more acceptable for one written in 1984.\n\nAlthough I do have a copy of this program, I do not yet have permission to post it.
''Los Alamos Chess Program - 1957 - James Kister, Paul Stein, Sanislaw Ulam, William Walden and Mark Wells''\n\nIt was written for MANIAC 1, a UNIVAC computer at Los Alamos Scientific Laboratory and was originally designed to develop hydrogen bombs. It executed about 11,000 instructions per second.\n\nKister, Walden & Wells did most of the programming.\n\nIt played 'miniature' chess on a 6x6 with no bishops and pawns could only move one square.\n\nIt examined all moves to a depth of 4 ply and made a move in about 12 minutes. Or about a total of about 132,000 instructions.\n\nIts evaluator was material and mobility, with legal moves having a weight of 1/8th of a pawn.\n
''MacHack VI - 1967-1970 - Richard Greenblatt''\n\nMacHack VI was the first reasonable and modern chess program.\n\nBinary executables for a PDP-10 version of Richard Greenblatt's MacHack VI can be obtained from [[Decus tape archives|http://pdp-10.trailing-edge.com/]] Tapes number 10-01 and 20-02. Apears to be dated april 13 & Jun 8 1970. These apear to be ports made by RPG (probably Dick Gruen), rather than Mr. Richard Greenblatt himself. It is unknown which version of MacHack VI these were derived from, or whether there were significant changes to the program or whether bugs were introduced.\n\nGreenblatt's paper on his program can be obtained as either [[postscript|ftp://publications.ai.mit.edu/ai-publications/0-499/AIM-174.ps]] or [[adobe pdf|ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-174.pdf]]\n\nOld net posting about a "suped-up version of Greenblatt's program" [[GoogleGroups|http://groups.google.com/group/net.chess/browse_frm/thread/4cd4c2357dba647/969d0c5b61da0cf6?q=greenblatt&rnum=1&hl=en#969d0c5b61da0cf6]]\n(It's unknown what program it was refering to. Possibly the one running the CHEOPS hardware, but that's speculation.)\n\nDevelopment of MacHack VI began in November 1966 on a PDP-6 with a performance of about 225 kips. It played its first tournament in January 1967.\n\nIt was a selective search program with a fan-out of 15, 15, 9, 9 and 7 beyond that.\n\nMacHack VI was the first chess program to actually play against people in tournaments. It was also the first 'modern' chess program, with transposition tables, opening book, and so on.\n\nIt was the first modern chess program.\n\nHowever, MacHack VI currently has more reputation than reality. There is no question it was an impressive program for the time. And it did get a 1529 chess rating in December 1968. But the reality is that much of the hype of MacHack VI is undeserved.\n\nMacHack VI had a number of significant flaws, not the least of which was an abysimal endgame. Players at the time were unused to playing a chess computer and when they reached an endgame they considered 'lost', they resigned. They didn't realize that MacHack VI couldn't play decent endgames and that they could beat it much more easily than they expected.\n\nIf MacHack VI was to play today, against players who are used to chess computers, its rating would not be nearly as high. The humans would go ahead and play the game through and many would win in the endgame.\n\nMacHack VI didn't play in any of the later computer vs. computer tournaments. Richard Greenblatt supposedly didn't have any interest in those because he saw MacHack VI as an A.I. experiment. That is probably true, but it's also extremely likely that he recognized the problems that MacHack VI had and that the program would probably not do as well against other computers as it had against humans. It wa a lot easier to let MacHack VI 'retire' while still famous than to try and fix the problems.\n\nNot having a working emulator copy of the program, I can't say what the performance of the program actually is. In other words, how it would compare to Microchess 1.5 / 2 or Sargon 1 / 2, etc. etc. However, to be honest, considering Mac Hack VI was a selective search program and the other micro programs aren't, I would expect MacHack VI to usually lose. That's just the nature of selective search in computer vs. computer play.\n\nMacHack VI was an impressive program for the time, but it does need to be put into perspective. Some people today still consider MacHack VI to be a good chess program to play against. It's not. It is just "a" chess program to play against. Its value is historic, not super great play compared to later programs.\n
[[Welcome]]\n<<tag Museum>>\n<<tag Programs>>\n[[Contact Me]]\n[[To Find...]]\n[[Thanks]]\n
''Microchess - 1976 - Peter Jennings''\n\nMicrochess 1 can be obtained from [[Peter Jenning's web site|http://www.benlo.com/microchess/microchess.html]]. (Additional sites are: [[Here|http://www.6502.org/source/games/uchess/uchess.htm]], [[Here|http://users.telenet.be/kim1-6502/microchess/microchess.html]], and [[Microchess 1.1|http://www.atarimagazines.com/computeii/issue1/page19.php]] And others.) It was written in 1976 for the KIM-1, with 1k of memory. A version for the legendary Apple 1 is [[here|./ASMmchess.txt]] (That was obtained from [[BrielComputers|http://www.brielcomputers.com/r1downloads.htm]] It says: converted from Kim-1 for Apple 1 by Larry Nelson)\n\nMicrochess for the Kim-1 was the first microcomputer chess program ever actually sold.. Sales started in November of 1976.
''Mike - 1978 - Mike Johnson''\n\nMIKE, also known as M6800 Chess, by Mike Johnson was written in 1978. Version 4.2 was donated by Mike Johnson. (Please note, this is a re-typed in copy. It assembles (the three errors can be ingored, since the generated hex is the same), but there are no guarantees there aren't major errors.) Source is [[here|./MIKE1.LST]]\n\nMike Johnson believes this is the version that was used in the 1978 PCW (first Euorpean Microcomputer tournament) and in the 1978 ACM tournament.\n\nIn the first PCW / European tournament, MIKE won first place, ahead of BORIS and Chess Challenger 10.\n\nIn the 1978 ACM, it scored 1.5. It lost against Belle but tied with Black Knight, Sargon 2 and BS6676, for a score of 1.5\n\n\nThe machine used was a 1mhz 6800 system with 16k of memory. In the UK, he used a portable tv as a monitor and a keyboard from a surplus shop. For the Washington event, he borrowed a real terminal.\n\nThe next year, he moved to a z-80 system with 8" floppy disks, so this was his last 6800 based MIKE program.\n\nMr. Johnson also donated five scanned images.\n\nThe first [[image|./wp1.jpg]] shows him and Kathe Spracklen as they watch their programs (MIKE & Sargon 2) battle. This image also shows his computer and the [[cassette system|http://www.swtpc.com/mholley/AC30/KansasCityStandard.htm]] used.\n\nThe next four images [[1|./p1.jpg]] [[2|./p2.jpg]] [[3|./p3.jpg]] [[4|./p4.jpg]] are from Personal Computer World and the PCW / European microcomputer chess championship. (Images are probably copyrighted by PCW, but since the article is about Mike Johnson and he supplied these scans, I assume it's alright to republish for non-profit use.)\n\nMike Johnson later teamed up with Dave Wilson to produce the 64 bit custom hardware based chess computer "Advance" v2.x and 3.x\n
This is our museum of classic chess programs.\n\nMost of the programs here are available in source. A few are, unfortunately, only executable.\n\nAll programs posted here are done so with the author's permission, the programs are public domain, or have been widely distributed for many years in various collections etc. and it is assumed the author knows and has no objections.\n\n
''MyChess - 1978+ by David Kittinger''\n\nIn 1978, David Kittinger was living in Alaska, which made him one of the top chess players in the state. As a result, he rarely got a chance to play a good game of chess.\n\nSo in May 1978, when he got a computer, he decided to write his own.\n\nUnfortunately, MyChess existed for some years for a variety of systems, and as a result, I don't know a great deal about the early version. Most information seems to be about the newer versions.\n\nOne thing that is known for certain about the early version is that it used an unusual board representation. It used one entry for each existing piece, which stored the square number it was on. The whole board could be represented as just 32 bytes, one for each piece.\n\nClever, but it had the side effect that when a queen promoted, it could only be promoted to a piece that had already been captured.
''Newell CP - 1958 - Alan Newell, John Shaw, and Herbert Simon''\n\nWork started in 1955 at Carnegie-Mellon University.\n\nIt was written in a high level language called IPL-IV, an interpreted list based language.\n\nThe program operated by goals. There were no limits on the width or depth of the search.\n\nIt did use the newely developed alpha-beta algorithm.\n\nBecause of the interpreted language used, each move could take one to ten hours to complete!\n\nAn outgrowth of this program was a special mating program called "MATER" which later became part of the Cooper-Kozdrowicki program CoKo.\n
Shannon's original 1949/1950 paper on writing a computer chess program. [[PDF|./Shannon.pdf]] \n\n\n\nA. Newell, J. C. Shaw, H. A. Simon's 1958 chess paper [[Page|http://domino.research.ibm.com/tchjr/journalindex.nsf/0b9bc46ed06cbac1852565e6006fe1a0/237cfeded3be103585256bfa00683d4d?OpenDocument]] [[PDF|http://www.research.ibm.com/journal/rd/024/ibmrd0204I.pdf]]\nThey use a high level language some akin to LISP. Estimated move times are one to ten hours per move! \n\n\n\nPaper on Arthur Samuel's famous checkers program from 1952-1967. Not chess related, but a classic.\n\nThis paper describes his use of bitboards (predates Kaissa), learning of evaluator weights, etc. All before the Alpha-Beta algorithm was even invented. Pretty impressive stuff. If you read the original paper and ignore the part about the IBM 701 and 704, and there being no mention of alpha-beta or negamax etc., you could very easily mistake it for much more modern research. Impressive stuff.\nOriginal 1959: [[Page|http://domino.research.ibm.com/tchjr/journalindex.nsf/0b9bc46ed06cbac1852565e6006fe1a0/39a870213169f45685256bfa00683d74?OpenDocument]] [[PDF|http://www.research.ibm.com/journal/rd/033/ibmrd0303B.pdf]]\n1967 followup paper: [[Page|http://domino.research.ibm.com/tchjr/journalindex.nsf/0b9bc46ed06cbac1852565e6006fe1a0/6fb05411fd49d77b85256bfa00683fb6?OpenDocument]] [[PDF|http://www.research.ibm.com/journal/rd/116/ibmrd1106C.pdf]]\n2000 reprint: [[Page|http://domino.research.ibm.com/tchjr/journalindex.nsf/0b9bc46ed06cbac1852565e6006fe1a0/3d602ed510e01ee985256bfa0067fb65?OpenDocument]] [[PDF |http://www.research.ibm.com/journal/rd/441/samuel.pdf]]\n\n\n\nFor those interested in the older discussions about computer chess, you might want to browse the old [[Net.Chess archives|http://groups.google.com/group/net.chess?hl=en]].
<div class='header' macro='gradient vert #000 #069'>\n<div class='headerShadow'>\n<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;\n<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>\n</div>\n<div class='headerForeground'>\n<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;\n<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>\n</div>\n<div id='topMenu' refresh='content' tiddler='MainMenu'></div>\n</div>\n<div id='sidebar'>\n<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>\n</div>\n<div id='displayArea'>\n<div id='messageArea'></div>\n<div id='tiddlerDisplay'></div>\n</div>
This is a list of some of the chess programs from 60s, 70s, and 80s.\n\nIt is certainly not complete.\n\nIf you know of anything that should be added, let me know.\n
/***\n| Name:|QuickOpenTagPlugin|\n| Purpose:|Makes tag links into a Taggly style open tag plus a normal style drop down menu|\n| Creator:|SimonBaird|\n| Source:|http://simonbaird.com/mptw/#QuickOpenTagPlugin|\n| Requires:|TW 2.x|\n| Version|1.1 (7-Feb-06)|\n\n!History\n* Version 1.1 (07/02/2006)\n** Fix Firefox 1.5.0.1 crashes\n** Updated by ~BidiX[at]~BidiX.info\n* Version 1.0 (?/01/2006)\n** First release\n\n***/\n//{{{\n\n//⊻ ⊽ ⋁ ▼ \n\nwindow.createTagButton_orig_mptw = createTagButton;\nwindow.createTagButton = function(place,tag,excludeTiddler) {\n var sp = createTiddlyElement(place,"span",null,"quickopentag");\n createTiddlyLink(sp,tag,true,"button");\n var theTag = createTiddlyButton(sp,config.macros.miniTag.dropdownchar,config.views.wikified.tag.tooltip.format([tag]),onClickTag);\n theTag.setAttribute("tag",tag);\n if(excludeTiddler)\n theTag.setAttribute("tiddler",excludeTiddler);\n return(theTag);\n};\n\nconfig.macros.miniTag = {handler:function(place,macroName,params,wikifier,paramString,tiddler) {\n var tagged = store.getTaggedTiddlers(tiddler.title);\n if (tagged.length > 0) {\n var theTag = createTiddlyButton(place,config.macros.miniTag.dropdownchar,config.views.wikified.tag.tooltip.format([tiddler.title]),onClickTag);\n theTag.setAttribute("tag",tiddler.title);\n theTag.className = "miniTag";\n }\n}};\n\nconfig.macros.miniTag.dropdownchar = (document.all?"▼":"▾"); // the fat one is the only one that works in IE\n\nconfig.macros.allTags.handler = function(place,macroName,params)\n{\n var tags = store.getTags();\n var theDateList = createTiddlyElement(place,"ul",null,null,null);\n if(tags.length === 0)\n createTiddlyElement(theDateList,"li",null,"listTitle",this.noTags);\n for (var t=0; t<tags.length; t++)\n {\n var theListItem =createTiddlyElement(theDateList,"li",null,null,null);\n var theLink = createTiddlyLink(theListItem,tags[t][0],true);\n var theCount = " (" + tags[t][1] + ")";\n theLink.appendChild(document.createTextNode(theCount));\n\n var theDropDownBtn = createTiddlyButton(theListItem," "+config.macros.miniTag.dropdownchar,this.tooltip.format([tags[t][0]]),onClickTag);\n theDropDownBtn.setAttribute("tag",tags[t][0]);\n }\n};\n\n\nsetStylesheet(\n ".quickopentag { margin-right:1.2em; border:1px solid #eee; padding:2px; padding-right:0px; padding-left:1px; }\sn"+\n ".quickopentag .tiddlyLink { padding:2px; padding-left:3px; }\sn"+\n ".quickopentag a.button { padding:1px; padding-left:2px; padding-right:2px;}\sn"+\n "a.miniTag {font-size:150%;}\sn"+\n "",\n"QuickOpenTagStyles");\n\n//}}}\n\n/***\n<html>&#x22bb; &#x22bd; &#x22c1; &#x25bc; &#x25be;</html>\n***/\n
''RT-11 - Date unknwon - Hank Maurer''\n\nA chess program for the PDP-11 RT11 by Hank Maurer can be obtained from [[Here |http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx80a/310123/]] [[Local|./RT-11_Chess.zip]] I'm not sure of the date. Probaly mid to late 1970s. \n
''Sargon - 1978 - Dan and Kathe Spracklen''\n\nThe 1978 version of Sargon by Dan & Kathe Spraklen can be obtained from [[MadScientistRoom|http://www.madscientistroom.org/chm/Sargon.html]] ([[Home|http://www.madscientistroom.org/chm/]]) (Be aware there are typographical errors in his OCR'ed copy.)\n\nSargon was not the first microcmputer chess program to play in a tournament, but it was certainly a famous one, due mostly to the authors publishing the complete z-80 source code in 1978. (The authors also had a two part article in BYTE magazine in October and November 1978 that described the basic details of their move generator and the static exchange evaluator.)\n\nThe program did not actually play all that well. Even for the time. Sure, it did win, but the quality of play was not the best, due to limitations of the static exchange evaluator.\n\nStatic exchange evaluators are inherently inaccurate and slow. That's simply their nature. That effects the speed of the search and the amount of knowledge that can be put into the evaluator. The program was slowed down even further by all the calls to the evaluator (and therefor the static exchange evaluator) for every move generated. If they had more time, they could have undoubtably produced a better first version. But it worked well enough to win the 1978 West Coast Computer Faire chess tournament. The first microcomputer chess tournament. (Which was organized and directed by Larry Wagner, who later wrote the chess engine for the chess cartridge for the Atari 2600 video console system game machine.)\n\n(Sargon 2 and its descendants also used a static exchange evaluator, along with other improvements. Acording to the book [[Digital Deli|http://www.atariarchives.org/deli/computer_chess.php]], it wasn't until Sargon 3 that the Spracklens switched to a capture search.)\n\nHowever, it was a very impressive program for the time, and is really a testament to the Spracklen's programming abilities and their ingenuity.\n\nThe speed of its development and debugging was very impressive. They did much of the basic programming and development even before they had a computer to use! Then when they did finally get a microcomputer to use, they only had a little more than a month to actually convert their flow charts and pseudocode into z80 assembler, debuging the code, the static exchange evaluator, discover flaws in their program stucture, etc. The development of the static exchange evaluator was also quite clever.\n\nAnd in addition to that, their October 1978 Byte magazine article says "In writing Sargon, it was our original intention to put together the first version without any research into the attempts made by others. In this respect Sargon is a unique creation...." So they had done little reseach before writing Sargon!\n\nVery impressive programming skills!\n\nAlso, rumor has it that after Sargon 1, Mr. Ken Thompson spent some time with the Spracklens and actually taught them quite a bit about computer chess programming. That may explain why Sargon 2 was such a vast improvement over Sargon 1 in that same year. (That's not meant to belittle the development of Sargon-1 or the Spracklen's abilities.)\n\nSargon was user ported to a variety of other z-80 based microcomputers. Some users even ported it to different processors.\n\nFor example, Kathe's brother, Gary Shannon, ported it to the 6502 based Apple-][.\n\nAnd it was ported to the 6809 originally by Brian N. Baily, although he didn't complete it. This was later finished and debuged by Ben Blish on August 4, 1981 for his 2mhz 6809 based GIMIX SS-50 running the FLEX operating system. He also added graphics for some video game hardware he had designed and added code to drive a speech synthesiser, so it could announce the moves. One of the earlier examples of a talking chess program for a home computer. (I don't know if there were earlier talking chess programs.) The port of Sargon can still be purchased as part of the [[ReFLEX|http://www.blackbeltsystems.com/flex/fm_toc.html]] emulator package,. A screen shot is [[here|http://www.blackbeltsystems.com/flex/fm_gfx.html]] named as chess.cmd\n\n
''Sfinks - 1980 - 1985? - William Fink''\n\nSfinks was a chess program in the early 80s that usually ran on the TRS-80 Model 1/3/4 and similar systems. It later ran on a PC.\n\nSfinks 1.0 debuted at the first North American Microcomputer Chess Championship in 1980. It scored 1.5-2.5, winning the price for best non-commercial program.\n\nLater in 1980, it was expanded to play two chess variations and then marketed as Sfinks 1.81\n\nSfinks 2.0 participated in the 1981 micromputer tournament in Paris. The program scored 4-3 tying for sixth place out of 18. Modifications were made (to refine the program and to remove bugs) and the program was marketed as Sfinks 3 in January 1982.\n\nAccording to the October 1982 (Vol 5, No. 10) issue of 80-US Journal (a microcomputer magazine), Sfinks 3.0 used an 'octal' board representation. In other words, the rows and columns were 8 wide, with the whole board being 64 elements. This is in contrast to most programs that use a 10x12 or similar board, which allows for a border around it to detect moving a piece off the edge of the board.\n\nAlso, Sfinks v3.0 played a short match against Sargon 2 (released in 1979) that was published in the June 1982 issue of 80-US journal. Sfinks played on a Model 4 and Sargon 2 played on a Model 1. Sfinks won all four games. It is somewhat impressive, but says more about the limitations and age of Sargon 2 (lack of a quiscence search (it still depended on a static exchange evaluator), etc.) than the quality of play by Sfinks.\n\nAfter the 1982 ACM tournament, Sfinks X was refined and released as Sfinks 4.0\n\nFor the 1983 World Championship, it was completely rewritten to run on the PC.\n\nSfinks PC ran on a PC with a 8086 card and scored about 200 to 300 positions per second. The standard 8088 processor scored only 100 to 150 positions per second.\n\nIt was written in assembler.\n\nThe author _estimated_ that the 1983 version was probably rated around 1700 to 1800 at tournament speed. A bit less than what Sargon III could do around that time, but quite a bit less than what the better dedicated micros could do at that time.\n\nBased on what little information I have, it appears to be a standard, typical chess program. No new ideas or implementions to make it stand out from all the others that were being written at that time. Iterative, full-width alpha-beta. Transposition tables and killer moves are used.\n\nNot a bad program, but nothing special.\n
<<search>><<closeAll>><<permaview>><<newTiddler>><<saveChanges>><<slider chkSliderOptionsPanel OptionsPanel 'options »' 'Change TiddlyWiki advanced options'>><<slider chkSliderContents [[TabContents]] 'contents »' 'contents'>>
... The programs of yesteryear
Classic Computer Chess
http://ClassicChess.googlepages.com/
''Stanback's Chess Program (SCP) - 1987 - John Stanback''\n\nJohn Stanback's public domain chess program can be found here. It was recovered from [[Google|http://groups.google.com/group/comp.sources.games/browse_thread/thread/cecff59aba5db1e1/b15ee8bc1ab2bd60?q=chess&rnum=112#b15ee8bc1ab2bd60]] [[Local copy|./Scp.zip]]\nA bug report is available [[here|./scp-bug.txt]].\n\nThis program formed the basis of a lot of later chess programs from hobbiests. GNU Chess was also based on this, with the basic structure surviving through v4\n\nIt's somewhat amusing to note that many of the XBoard / WinBoard commands and quirks can be traced all the way back to this program.\n
/***\nEnhancements to TW\n***/\n/*{{{*/\n[[HorizontalMainMenuStyles]]\n/*}}}*/\n\n/***\nCosmetic fixes that probably should be included in a future TW...\n***/\n/*{{{*/\n.viewer .listTitle { list-style-type:none; margin-left:-2em; }\n.editorFooter .button { padding-top: 0px; padding-bottom:0px; }\n/*}}}*/\n\n/***\nClint's fix for weird IE behaviours\n***/\n/*{{{*/\nbody {position:static;}\n.tagClear{margin-top:1em;clear:both;}\n/*}}}*/\n/***\nJust colours, fonts, tweaks etc.\n***/\n/*{{{*/\nbody {background:#eee; }\n\n.tiddler {\n border-bottom:2px solid #ccc;\n border-right:2px solid #ccc;\n border-left:1px solid #ccc;\n border-top:1px solid #ccc;\n padding-bottom:1em;\n padding-right:1em;\n\n margin-bottom:1em; \n\n background:#fff;\n}\n/*}}}*/\n\n/***\nTesting sidebar stuff\n***/\n/*{{{*/\n#sidebarOptions { border:1px #ccc solid; }\n\n#sidebarOptions .sliderPanel {\n border: 0px solid #ccc; \n background-color: #eee;\n margin: 0px;\n margin-left: 0.5em;\n padding: 0px;\n -moz-border-radius: 1em; }\n\n#sidebarOptions { \n border-top: 1px solid #ccc; \n border-left: 1px solid #ccc; \n border-bottom: 3px solid #ccc; \n border-right: 3px solid #ccc; \n padding: 0.5em; \n margin: 0.5em; \n -moz-border-radius: 1em; }\n\n#sidebarOptions .button {\n margin: 1px;\n border-color: #f00;\n border-top: 1px solid #ccc; \n border-left: 1px solid #ccc; \n border-bottom: 2px solid #ccc; \n border-right: 2px solid #ccc; \n}\n\n#sidebarOptions .button:hover {\n color: #fff;\n background: #999;\n border-top: 2px solid #ccc; \n border-left: 2px solid #ccc; \n border-bottom: 1px solid #ccc; \n border-right: 1px solid #ccc; \n}\n\n#sidebarOptions .button:active {\n color: #fff;\n background: #000;\n}\n\n/*}}}*/
''T.Belle - 1972-1975 Ken Thompson''\n\nPosted with permission of author.\n\nIt competed in the New Jersey open in 1972 and in the Atlanta ACM tournament of 1973.\n\nIt was originally written in an intermediate version of C. At the time, C hadn't been finalized or plublicly announced.\n\nAlthough he normally just named it as 'chess', the program was officially "Belle" but the USCF wouldn't allow a single name to be entered into a tournament, so he put a "T" on it with no particular meaning. T. Belle does not stand for "Tinkerbelle" or "Thompson Belle" or "Telephone Belle" (he worked at the phone company during that time.) Mr. Thompson definetly says that "T." has "no particular meaning".\n\nThe program was tested in the Westfield chess club and it got a 1420 ranting.\n\nIt was retired around 1975 in favor of the more famous hardware based "Belle" chess computer / program.\n\nT.Belle can be recoverd from [[Tuhs.org|http://minnie.tuhs.org/UnixTree/V7/usr/src/games/chess/]] [[Local copy|./T.Belle.zip]] Unsure of what particular version this is. The file dates say 1979, but Ken Thompsan says that it is indeed basically his old program.\n\nAn earlier version is available [[here|./T.Belle_v6.zip]] This is v6. The version date is uncertain.. This copy was donated by Mr. Tony Marsland.\n\nAnother version of T.Belle is [[here|./T.Belle_v68.zip]] This is v6.8 The version date is uncertain. This copy was donated by Mr. Tony Marsland.\n\nAnd another version of T.Belle is [[here|./TBelle.zip]] Mr. Marsland says this was in a directory called '1975/chess' but could be earlier. This appears to be slightly modified, but you should be able to reconstruct the original by renaming the 'xxx.cc' files to their original names, replacing the modified versions.\n\nMr. Marsland has also donated two docs. [[Belle.txt|./belle.txt]] which has an internal date of 1974. And [[projects.txt|./PROJECTS.txt]] which is a list of some of the research he did with T.Belle. (It should be noted that some places say "TinkerBelle". It would appear that Mr. Marsland is the origin of that name for the program! Mystery solved.)\n\n\nScott mentioned a few stories about T.Belle (and Belle)...\n\n^^The program I played was just called "Chess" as far as I recall (in 1978, not 1972); at least that's what the screen said, and what I typed to invoke it. It was written by Ken and was a precursor to Belle. It was a program that ran on a DEC minicomputer. \n\nIn the 80's, when I played at the very strong Westfield, NJ, chess club Friday nights, Ken used to bring a big TI printing terminal to the club. He'd set it up and call up Belle at the Labs. Then Belle would play a simul with some Westfield players. One guy, an IM, sometimes used to sit in a corner away from the terminal and play one board blindfold. I'm trying to remember his name. He moved out of state and died too young. [Mike Valvo?] He was the MC for years at the annual ACM computer chess tournament in the early 90's. He used to give blindfold simuls at the Westfield club, usually 10 boards^^\n
''TECH - 1970 by James Gillogly''\n\nAfter the first ACM tournament was over, Hans Berliner went back to CMU and reported on the amzing results of the tiny Daly CP program. Berliner's advisor, Allen Newell, heard about it and began considering the possibility of a simple Turing style program that examined all the moves to a fixed depth and used material value as a main evaluator, with the first ply having some additional limited positional analysis.\n\nThe resulting program could then be used as a "technological benchmark for chess program which will continue to improve as computer technology increases".\n\nNewell discussed his ideas with graduate student Jim Gillogly and by the time of the second ACM tournament in 1971, "TECH" was ready.\n\nTECH was written in BLISS for the PDP-10. TECH also introduced the notion of thinking on the opponent's time. Gillogly calimed that 20% of the time the program would guess the oponent's move, and thus save a lot of its own chess clock time for more complicated moves.\n\nGillogly thoroughly documented his program in his thesis and in "Artificial Intelligence" volume 3, pages 145-163. The paper is naturally titled "The Technology Chess Program".\n
''TECH-II - 1974ish - Alan Baisley, Stan Kugell, James Cooper''\n\nTECH-II from 1974 was obtained from [[here|ftp://ftp.ultimate.com/pdp10/chess2/]] Three versions.\n\nTECH-II was written by Alan Baisley, and is heavily based on Mr. Gillogly's description of his TECH program, but is a seperate program. (Mr. Gillogly does confirm that he had no actual part in TECH-II's creation, or was even aware of it until the program was finished. Some computer chess history is obviously wrong.)\n\nTECH 1 & 2 were often used for experimentation for various ideas, since they were readily available, and relatively simple.\n\nLocal copies...\n1) [[ITS|./Tech-II_with_CHEOPS.zip]] Source only. Has references to Greenblatt's CHEOPS. (Probably 1977-1978 by R. Greenblatt.)\n2) [[Tops-10|./Tech-II_for_tops10.zip]] Executable & help file. Modified.\n3) [[Tops-20|./Tech-II_for_TOPS-20.zip]] Executable & damaged source. Unknown if original version of TECH-II\n\nI haven't been able to find many details about Alan Baisley or about TECH-II. It appears he worked on part of the opening book for Richard Greenblatt's "MacHack VI" program. And he obviously decided to write his own 'technology benchmark' program based on Gillogly's TECH description. But beyond that, it's unknown.\n
<<tabs txtMainTab Timeline Timeline TabTimeline All 'All tiddlers' TabAll Tags 'All tags' TabTags More 'More lists' TabMore>>
Thanks to the following people.\n\nAlex ~Lopez-Ortiz\nDavid Slate\nEric Jensen\nFernando\nKen Thompson\nLous Kessler\nMike Johnson\nPeter Frey\nPhil Budne\nRobert Hyatt\nScot Knoke\nTony Marsland\nVladimir Medvedev\nWarren Montgomery\n\n(And I'm sure I've forgotten some, since I wasn't keep good records.)\n\n\nPlus, naturally, all of the authors who were willing to allow their programs to be saved and enjoyed by everybody.\n
I am looking for the following people and programs. These are the most important ones, so if you know where the author is at, or have a copy of the program, ''please'' let me know.\n\n|Robert Arnstein|8080 Chess|\n|Gary Calnek|Ribbit & Treefrog|\n|Chris Daly|Daly CP|\n|Richard Greenblatt|MacHack VI|\n|Ron Hansen|Ribbit & TreeFrog|\n|Kennith L. King|Daly CP|\n|David Kittinger|MyChess|\n|Jim Stein?|Kotok/McCarthy|\n|Mike Valenti|Chute 1.2|\n|unknown author|Sneaky Pete|\n\nOf slightly less importantance (but still desired), I am still looking for the following programs..\n\n8080 chess (found manual and tape image, no source yet.)\nAtari 2600 chess. (cart image. No source or engine details yet.)\nBobby\nBS '66 '76\nChess 2.x (Neither Slate nor Atkin have a copy.)\nChess 3.x (Neither Slate nor Atkin have a copy.)\nCoKo III & IV\nDaly CP\nDartmouth Chess Program (probably lost)\nGENIE\nGNU Chess 1.0 & <1.0\nITEP's program.\nKAISSA\nKotok-McCarthy program\nMicrochess 1.5 & 2.0\nMyChess (Orig cp/m & source)\nOstrich\nPawnKing\nRibbit\nSchach\nShy\nSneaky Pete (!!! Very significant historically.... But who wrote it???)\nTech\nTreeFrog\nTyro\nUSC Chess program\n\nThe acm programs listed in Bill Ward's page\n\nAnd what else? There are so many programs that it's hard to know which ones to find....\n\nI'm willing to post about anything from back then, even if it's not on the list. Just as long as I have the author's permission.\n\n\nPeople I still need to find\n\n|Robert Arnstein|8080 Chess|\n|Alan Baisley|TECH-II|\n|Herbert Brunderer|Viktor|\n|Guy Burkill|Fafner 2|\n|Gary Calnek|Ribbit & Treefrog|\n|Frederc Carlson|Tyro & USC|\n|Dennis Cooper|CoKo|\n|Chris Daly|Daly CP|\n|J. Derksen|PION|\n|Wim Elsenaar|Chess 0.5x|\n|Richard Greenblatt|MacHack VI|\n|Ron Hansen|Ribbit & TreeFrog|\n|Larry Harris|Dartmouth|\n|David Horne|1k Chess|\n|Claud Jarry|L'Excentrique|\n|Lars Karlsson|Rook|\n|Alex Kidson|Fafner 2|\n|Kennith L. King|Daly CP|\n|David Kittinger|MyChess|\n|~Hans-Joachim Karass|Bobby|\n|Kuipers|Tiny Chess|\n|Donald Miller|Xenarbor|\n|Frans Morsch|Nona|\n|~Harm-Geert Muller|Usurpator II|\n|H. Netkens|PION|\n|Oxvord Mobius|Zorland Chess|\n|Michael Parker|Albatross|\n|Jim Parry|Ribbit & TreeFrog|\n|Ulf Rathsman|Princhess|\n|Herbert Raymond|GENIE|\n|Wim Dens|Gambiet|\n|Jim Stein?|Kotok/McCarthy|\n|Barend Swets|BS '67 '76|\n|Andrew Thomason|K. Chess IV, VI, 6, etc.|\n|Mike Valenti|Chute 1.2|\n|Albert Zobrist|Tyro & USC|\n\n\n(Many of the above people and programs came from various lists I've seen. There are undoubtably others. And some programs may not actually be worth tracking down. It's hard to decide what's worth preserving and what isn't.)\n\n
Shortly after Claude Shannon's paper on programing a computer to play chess, Alan Turing decided to actually write one. [[Here|./Turing.txt]]\n\nRather than being done as a computer program, it was done as a series of steps to be followed by a person pretending to be a digital computer. He did later try to program a computer to actually play chess, but he didn't have the patience to deal with the computers of the time.\n\nBasically, his method is:\n\n# Calculate one move ahead\n# Only use material for evaluation function\n# If several moves tie, break the tie with...\n## Mobilitie of Queen, Rook, Bishop and Knight.\n### Count number of possible moves of each piece\n### Count captures as two possible moves.\n### Mobility score is the square root of this sum.\n## Piece safety\n### Add 1 point if each Rook, Bishop and Knight is defended.\n### Add 1.5 points if defended twice.\n# Other factors to break tie\n## King mobility.\n## King safety\n## Castling\n## Pawn credit\n## Mates and checks\n# Consider moves searched deeper\n## Recaptureing move\n## Capture of an undefended piece\n## Capture of a piece of higher value by a piece of lower value\n## Move giving checkmate \n
A pdp-8 chess program on papertape from 1974 is [[Here|http://pdp-8.org/papertape/CHESS.pt]] No source.\n\nAnother pdp-8 chess program on paper tape is [[Here|http://www.dbit.com/pub/pdp8/paper/]] No source. \n\nMike's chess program. In Fortran. Modified for the Cromeco, 1978. [[Here|./MikeFortran.zip]]. (In 1978-1979, Mike Johnson (of "Advance" chess computer fame) did have a 6800 assembly chess program called "Mike" (v1, v2, and v3). And he did say that at one time, he did quickly learn fortran and produce a fortran chess program.. But he says that this isn't it. The date is too early and it's not his style of programming.)\n\n
(This site is still in development. Please excuse any quirks.)\n\nWelcome to Classic Computer Chess... The web site dedicated to programs of yester-year. Chess programs from the 60s, 70s and early 80s.\n\nWhy would anybody care about chess programs from 30 or 40 years ago? There are vastly better programs available today.\n\nSure there are better programs today. But that misses the point.\n\nThese days, you can use the internet as a reference and write a chess program in a weekend. And depend on the computing power of today's computers to make it play well. It's no big deal. In fact, due to the hardware power available, it'd be difficult for the program to ''not'' play well.\n\nIf you want to make improvements to the evaluator or search, there are plenty of other programs to use as a reference.\n\nHowever, things were different back then....\n\nThere was no internet to check. Many algorithms were still fairly new. Many more basic algorithms were still being discovered. You made it up as you went along. You actually invented things. Did research. People actually got their college degree by writing chess programs!\n\nAnd the computer systems... well, most of you have only heard about waiting in line to hand a program over to somebody to see if it compiles and runs. And don't even get me started about trying to get expensive computer time for tournaments...! Let's just say that many programs couldn't. And some programs could only get a little (either an absolute time limit, or have other programs running at the same time.) And some programs actually used several different systems during a single tournamet. (Robert Hyatt has mentioned that in some tournaments, CrayBlitz would start with a very powerful Cray system when the weekend began, but by the end of the tournament, it was monday and his program would be passed off to slower, less important systems, so the final game or two would be played on slower hardware.)\n\nAnd don't forget the computing power itself.... How well do you think most programs today would run on a system with 1 mips and 128k bytes of memory? Even the biggest mainframes from back then may have had 10-20 MIPS with maybe as much as 4 megabytes of memory. Less ability than a typical PDA or some cell phones of today. Even the Cray-1 superomputer that CrayBlitz first ran on could only manage 140 mflops typical (with short bursts of up to 250mflops) and had only 8 to 32 megabytes of memory.\n\nAlso, in the early years, people still thought of chess as AI (Artificial Intelligence), instead of game programming. It was early to mid 70s when that changed due to the brute force method working so incredibly well. (This was partially triggered by the Daly CP in 1970. It was a very simple chess program, running on slow hardware, but it outperformed the larger 'intelligent' selective search programs simply because it didn't overlook moves within its search depth.)\n\nBetween the hardware of the time and research nature, many programs were most definetly experimental. In the early days, attitudes were also definetly different. For example, the CoKo programs were written in unoptimized FORTRAN. As the authors mention in their 1973 CACM paper, "It has been argued that execution would be ten times more efficient if coded in assembler language. No one here, however, has the time or energy to do it. Also, even the basic algorithms are really not well-known enough to warrant it. In addition, a chess program is not so widely used -- as a compiler is, for example -- that it will result in any net savings of computer time; on the contrary, it would result in loss."\n\nNo chess programmer today would pass up the chance for a 10x speed improvement! But back then, attitudes like that were not unheard of. Chess programming was experimental. It was research. It was Artificial Intelligence.\n\nIt wasn't mere game programming.\n\n\nUpdates:\nAdded CoKo paper\nAdded Kaissa autocoder cards\nAdded bug fix for Chess 0.5\nAdded JSCP v2\nUpdate winboard version of JSCP
''Z-Chess - 1979-1980 - Bill Miller''\n\nZ-Chess was sold by Adventure International for TRS-80 Model 1 computer, which used a z-80 processor and typically had 4k of RAM memory.\n\nIt had 7 levels of play (up to 6 plies deep) and could manage both castling and en-passant moves.
''Zorland Chess - 1986 - Oxford Mobuis (Nigel Lea, Graham Barrie, and John ??)''\n\nIn the mid 80's, Zorland was a company that sold computer programming compilers. The decided to add a series of tool kits to acompany the compilers.\n\n(If this sounds at all familiar, it should. Borland had just done the same thing. Except where as Borland was concentrating on Pascal with a variety of Pascal based add-ons, Zorland was producing 'C' tools and a variety of C based add-ons. Needless to say, it wasn't much longer before Zorland changed their name to Zortech.)\n\nOne of those kits was "Games: Zorland Games Toolkit".\n\nThere isn't anything famous or overtly significant about Zorland Chess, other than it was a fully functional Chess program with full source.\n\nThe most interesting point was that it was a bitboard chess program.\n\nToday, that's nothing special, but considering this was 1986 and the program was designed to run on the 8088, that's highly unusual. The 8088 is highly unsuitable for a bitboard style chess program.\n\nI would assume they used Slate & Atkin's published Chess 4.5 description and Atkin's published Chess 0.5 as inspiration and guide. That's the only reason I can think of why they'd used bitboards.\n\nAnd the program itself isn't really sophisticated enough to take advantage of all the extra attack information that gets laboriously updated with the old style bitboard method.\n\nBut none the less, the program did work. It did play chess. It did think on the oponnent's time. It even had fairly nice CGA graphics.\n\n\nAlthough I do have a copy of this program, I have been unable to find the copyright holder, so I can not post it.