Retro Computer Chess part 3: Bringing it home
So far I have written about Alan Turings paper machine from the 50s, and how Mac Hack IV running on a mainframe computer became the first chess program to beat a human player under tournament conditions in the 60s.
Today I will be moving forward to the 70s. Up to this point computers had been large hulking creations of vacuum tubes, wires and transistors that filled entire rooms. But the micro processor changed all that. With the 8080 processor in 1974, Intel managed to produce a single chip processor with enough processing power to be a viable choice for designers and engineers wanting to push computing into new markets. By 1975 the chip was seen in the MITS Altair 8800, considered the first succesful home computer product. Not that you could really do much with it, mind you: The Altair was basically a box with a load of switches and LEDs. Without any other peripherals available at the time, your only option for entering and running programs on it was to laborously enter binary codes with the switches, and then interpreting the blinking LEDs. It wouldn't do your taxes, you couldn't surf the web, and just forget about games. But it was a computer, and it was affordable enough for the most hardcore hobbyists to take the expense to bring one home and tinker with it.
One more year down the line, and MOS Technology releases the KIM-1, powered by their own 6502 processor. The computer was basically a circuit board with a 6 character digital LED display and a hexadecimal keypad. The board was butt naked: You had to build your own case. You also had to get a suitable power supply and solder it on yourself.
Peter Jennings purchased one of these. Having previously dabbled with computers of various kinds, and even programmed an old homebrew computer to retrieve chess openings from tape and play them, he decided to program a full chess program. The result was Microchess. At first Microchess was only sold as a manual. The actual program was supplied as a listing of hexadecimal codes on one page in the manual, for the user to type in and save to tape. Later, it was also possible to buy Microchess on tape.
Peter only did Microchess in his spare time, and the first orders were expedited at night after he was finished at work. But when he managed to get MOS to include a flyer advertising Microchess with every shipped KIM-1, he scored the jackpot. One out of three people who bought a KIM-1 subsequently ordered a tape copy of Microchess. Peter soon found himself starting a thriving business, and Microchess became the first computer program ever to reach 50000 sold copies.
The whole story about how Microchess began can be read on Peter Jennings own site. The site also includes some alternative options for playing against Microchess today. Here I will list even more options:
- The orignal program can be played using the Soft6502 simulator. This is probably the closest you get to the original without the actual hardware. Forget algebraic notation: You enter moves using a special octal numbering of the board, and receive moves back the same way. The program does no attempts at validating your moves. Also, it has no way of handling special moves such as castling, en passant and promotions. Instead, it relies on you to make the necessary corrections to the board. For instance, if you want to castle you must first move your king two squares. Then you must tell the computer that you also want to move your rook to the correct castled square, effectively inputting two moves at once. Then you can tell the computer to make its move. The program has no opening book, but one single opening line can be hardcoded into the program. This design desicion makes little sense to me: If you want to play one specific opening you could might as well just make all the moves yourself, and when you have the desired position you can tell the computer to move. The Soft6502 program and the required file for playing Microchess is available from Peters site. The original program supports 3 different levels of play.
- In 2005, Bill Forster made a 6502 emulator and ported Microchess to C as a console program. This is probably an easier option for playing against Microchess, as it supports algebraic notation and even gives you an ASCII chessboard output. I have tested this program against the Soft6502 implementation, and as far as I can see the emulation is accurate. This version is available from Peters site.
- In 2007, Andre Adrian took Bill Forsters idea one step further and implemented Microchess as a Winboard engine. However, during my testing I have found that this version has a few problems with the mentioned special moves (castling, en passant, promotions), making the program produce illegal or illogical moves in certain conditions. But apart from that, the program works just fine, especially if you avoid playing these particular moves yourself. The engine is available from Andre Adrians site. The site is in german, but an awesome resource for retro computer chess if you can work out the language. The engine can be used in any GUI supporting the Winboard protocol, including Arena or Chessmaster. The engine currently holds a 573 ELO rating in the CCRL 40/4 list.
- There is also a port for the Commodore 64 (!), that provides a pseudo-KIM-1-like playing experience, except you get onscreen display of the board coordinates, piece values and a menu system for changing skill levels and opening lines. I have tested this using VICE emulator. The play does not seem to conform 100% to the original 1.0 version, but it should provide a fairly accurate experience about how it is to play against the original program.
- In 1978 Microchess 1.5 was released for the Tandy TRS-80. Like 1.0, it supports 3 different levels of play. But unlike the KIM-1, you now have a screen with the chessboard, and moves are entered using algebraic notation. I have tested this program using a TRS-80 emulator.
- In 1978 Commodore release the Chessmate, a dedicated chess computer supposedly powered by Microchess 1.5. I have not been able to test this version.
- In 1978 Microchess 2.0 was released for Apple II and Commodore PET. Like the TRS-80 program, both versions gives you a graphical board and algebraic notation. The number of levels have been bumped up to 8. I have tested both versions using AppleWin and VICE emulators.
- In 1979 Novag released the Chess Champion MK II dedicated chess computer, again supposedly powered by Microchess 1.5. This version I have tested, as it is available for MESS emulator, with box graphics and all. It supports 8 levels of play. Gameplay seems to be similar to 2.0 for Apple II and PET.
So much for how it came to be and how it looks. But how does it play? Well, as you can probably guess from the ELO rating of the Winboard engine, not very well. Here's a couple of games. The first game, I have played against 1.0 on normal level.
Here against Microchess 1.5 level 3 on the TRS-80:
And here's a game against Microchess 2.0 level 8:
That's it for now. I hope to return later with more looks at home computer chess programs from the 70s. See you then!