Motivation

On Tuesday November 14th, 2023 I was invited to an event at York University to celebrate

 "the momentous appearance of the MCM/70 computer - a technological marvel that offered an early glimpse of a new digital reality. 

You can see my "trip report" on the MCM/70 @ 50 event here. I was honored to have been asked to bring my MCM/70 Reproduction to demonstrate at the event. The reproduction was inspired by this post by .

At the event I was delighted to meet Peter R. Jennings, author of MicroChess. Written originally for the KIM-1, MicroChess was ported to many other computers of the day such as the TRS-80Apple IICommodore PET and Atari 8-bit family. Later Peter went on to form VisiCorp,  which released VisiCalc the first electronic spreadsheet for PCs and Visi On the first GUI for the IBM PC.

Images from the MCM/70 @ 50 event. In the rightmost photo above I am chatting with Peter R. Jennings of MicroChess and VisiCorp fame.

It turns out that Peter was/is a huge APL fan. APL is the language built-in to the MCM/70 computer. Around the time he was working on MicroChess he wrote a 6502 assembler in APL. I think he had fun exercising his APL skills on the reproduction. 

The very next day November 15th,  posted  THE QUAINT HISTORY OF THE COMMODORE CHESSMATE to Hackaday. Now I'm not really a superstitious guy, and I know this was just a coincidence, but it sure felt like fate to me. I decided right there and then that I would like to create a CHESSmate reproduction. I got in touch with Peter to make sure he was OK with the idea and he was. He even graciously offered to loan me an original CHESSmate unit on which to base my reproduction. For someone that is used to just working from photos this is a rare treat for me.

Not only did Maya's post help me pick my next project, it inspired Peter to write down his recollections of the origins of CHESSmate, which can be found here.

Hardware

The hardware for the CHESSmate closely matches the KIM-1 SBC that it was based on.

I'm not going into a lot of detail here as there is a great post on Nightfall with more information.

Software

The software consists of a custom MicroChess 1.5 image and the firmware necessary to interface with the keys, display, LEDs , and beeper.

Game Plan

My plan is to make a clearly recognizable working Commodore CHESSmate, but using modern fabrication techniques. It should be relatively easy for an average person with access to a 3D printer and some soldering ability to make one based on my plans and the modelling files I will release.

I'm still in the research and thinking stage, but for sure I'll be 3D printing the case. The good news there is that the dimensions of the CHESSmate at 22 x 16 x 5 cm will allow me to print the top and bottom case parts on my Prusa MK3S whole, without having to split them into smaller pieces.

The next big component is the membrane keyboard. I'm hoping that a rigid PCB with low profile physical or dome switches combined with a color printed and laminated "membrane" will do the trick. Definitely more research and testing is required here to flesh out this plan.

And finally, what will MicroChess run on under the covers. The Nightfall article goes into some detail on why directly reproducing the CHESSmate electronics would be difficult, mainly because the RIOT chips used were pretty much custom made for the CHESSmate and are no longer available (although a fairly close analog could be designed with modern components). 

I was a software guy my whole career, so I'm more comfortable with emulation than EE.  MicroChess is already running on Oscar Vermeulen's wonderful KIM Uno diy clone. An Arduino Pro Mini runs a 6502 emulator written by Mike Chambers, which in turn executes code from the KIM-1 ROM, and this allows him to load and run MicroChess. Pretty cool. I especially liked his clever idea of mounting the Pro Mini directly on the back of his KIM Uno PCB. I have to say clever because I did the same thing on my MacroPad With Tile Holder Buttons PCB Edition project.

MacroPad on the left, KIM Uno on the right.

So my plan right now is to stand on Mike and Oscar's shoulders and run CHESSmate in emulation. I'm not completely giving up on a real 6502 based electronics alternative, but it would definitely be a stretch goal for me. Version 2.0 maybe?

Another Montage

Picture a montage of me printing and soldering and building all at fast-forward speeds. At this point, given the background and design described above, I went ahead and finished my CHESSmate Reproduction. If you are interested in the details of how this happened I would strongly encourage you to have a look at this project's logs for the complete picture. Here is a handy link: Project Logs

Happy Ending

Left: CHESSmate Reproduction   Middle: Minimal CHESSmate   Right: Original CHESSmate.

What a fun and satisfying project. The CHESSmate Reproduction turned out better than I could have hoped for, plus I made a cool (IMHO) "minimal" bare bones CHESSmate. Of course there were a few missteps along the way (see the logs for details), but  all in all things worked out pretty much as planned.

I have a couple of CHESSmate related ideas for the future. 

  1. I thought that a micro CHESSmate might be fun,  say something 1/3 the size of the minimal one pictured above.
  2. Software only CHESSmate with a proper display that includes a proper chess board. This would still be accomplished through emulation.

Not going to jump into either right away, but lately my projects have been grouped into trilogies so we'll see.