Noughts and Crosses
* NOTE * - Geocities regularly sends me a message telling me that there is more than 3 Gig/month being downloaded from here, and that they have to disable my downloads.  While I am quite flattered at the usage statistics, I apologise if Yahoo! decides to make this page unavailable from time to time as a result.

Hi!  My name is Richard Cavell and I'm a semi-professional computer programmer from Melbourne, Australia.  I wrote a small program that plays noughts and crosses, with a Windows interface.  I wrote the program to teach myself how to program the Windows GDI.

I've always received a lot of help from the online programming community, and I'm offering the source code to my program free by way of saying thanks. 

You may download the noughts and crosses game from here.  The compressed program file download is 72 kilobytes. 
Screenshot
Download Area
Noughts and crosses (70 KB)
Source code (1.5 Meg)
About Me
Name: Richard Cavell
Email: [email protected]
The source code is also available.  It is about 1.5 Megabytes.  I have zipped the entire Visual C++ workspace so that you ought to be able to unzip it and recompile it without issue.  It was last compiled using Visual C++ 6.0 with no service packs.

I ought to thank Steve Chapel, with whom I have lost contact, for writing the minimax search algorithm that is used in the code.  He wrote a command-line version of noughts and crosses.  My goal was to write a Windows GDI program, and that's what I've done.  I decided to reuse his code rather than reinvent the wheel.  I have simply written stub routines to interface with his code.

I ought to say that the source code is not very 'professional'.  I wrote this when I was only just starting in programming, so please don't take this as an example of how to write decent code.

I know that there is a Visual Basic course in England in which the teacher asks his students to write a noughts-and-crosses engine in VB.  At the start of every semester, I get a dozen emails asking for the VB source.

I can't send you the VB source, because there is none.  This thing is coded in Visual C++.  You're welcome to download my code and use it as inspiration.  I think that trawling the Internet for source code is an entirely valid method of speeding up your development time.

Fabian Woets emailed me in April 2002 to alert me to the fact that he's done something similar at
www.geocities.com/ultimateprograms.  He doesn't supply his source code, but his program seems to do more or less what mine does.

I don't have the time to work on the code I've put on this page - I'm getting paid to write a commercial program, plus I have a real life outside computer programming.  If you reckon you can do better than Fabian or myself, please give it a go.  Perhaps you could use my code as a starting place and fix it up.

If you have any questions, please email me at [email protected]
Hosted by www.Geocities.ws

1