I wrote the first game, Klondike, in 1984. It was written using the first Macintosh development environment (a borrowed Lisa computer plus a Macintosh 128K), in the Mac’s original development language, Pascal. A couple of years later, the availability of TML Pascal, the first native Pascal compiler I could obtain on the Macintosh, made it possible for me to continue to evolve Klondike and develop new, related games. At the time, I was using a 512K Mac with an external 400K drive. Now, THAT seems like a long time ago! Canfield was the first of the other games to be developed; I actually had a version of it running before having to return the borrowed Lisa, but it wasn’t released until I obtained TML Pascal.
The first of these games, Klondike, may be the most commonly-known version of solitaire. The Macintosh version has been a lasting success, enough so that more than one person has written to curse the day some friend gave them a copy. A recent letter included a screen shot proving that person (his Mom, actually) had played over 31,000 games of Klondike on his copy.
In January, 1987, Klondike won the Boston Computer Society’s award for excellence in Macintosh public domain and shareware development.
When Multifinder was released, Klondike was adapted to be Multifinder aware (it already had a ‘SIZE’ resource, as defined for Switcher, the precursor of Multifinder).
After version 3.6, I added the ability to save and open external ‘decks’ (documents), which hold a private scoreboard and option selections. This was to support families with more than one Klondike fan: more than one husband (or wife) wrote in to complain that their spouse was getting so good, and making such high scores, they were no longer able to keep their own name on the high scores list.
More recently, the game was improved visually (in my opinion) by providing full animation of cards when moving them around.
I have been able to verify that the games work in 32-bit addressing mode. They also work under A/UX.
As of version 5.0, the games became System 7 friendly, which mainly meant that they handled high-level Apple Events. They also used Apple’s Sound Manager to play tunes when they dealt the cards and when you won a game. This was to provide compatibility with new and future Macs, although it seems to have ruined the sound when played on my Plus. It bombed my upgraded 512K with System 6.0.8.
Version 5.1 replaced the original WaveTable sound with Square Wave, which seems to work on older Macs (although it isn’t quite as pleasant-sounding on newer Macs). I have also provided a color background to play on, and animation when returning cards to their original positions when no legal move was made.
Version 6.0 added a full set of color face card pictures. The option menu structure was simplified, and fast play made easier by the addition of ‘intelligence’ to move cards for you when you double-click on them.
Version 7.0 was the first FAT Klondike, containing both 68K and PowerMac code. In addition to including both types of code, it now includes four different solitaire games. Double-click intelligence was improved for better scores, and 256 levels of Undo added for those who get carried away. The Options menu has been replaced by a Preferences dialog box, and preferences and high scores are now saved in a file in the Preferences folder in the current System folder. With this change, Klondike no longer modifies its own program file to save preferences and high scores. This is not only safer but more compatible with disk compression utilities such as Disk Doubler.
As of version 7.5, a second flavor of Klondike was added to complement the classic FAT Klondike: KlondikeX, a PPC only Carbon application for Mac OS 9 and later.
Klondike 7.6 is now a ‘FAT Carbon’ application, including 68K, PPC and Carbon versions in a single application.
Klondike 7.7 has been updated to work optimally with Mac OS X 10.0 and the latest versions of CarbonLib on OS 8/9. It was also tested on a Mac Plus using System 6.0.7.
Klondike 8.0 allows the cards and layout to be expanded for easier viewing. This version drops support for 68K and requires Carbon, either OS X or OS 8.5+ with CarbonLib.
Klondike 9.0 adds high resolution face card images, for a much improved look with large windows. There is also more animation and a high resolution, OS X-style 128x128 icon.
In anticipation of the migration of OS X to the Intel platform, Klondike 10.0 is now a bundled Carbon application, with the addition of another solitaire game: FreeCell. It supports 10.2 and later, except for 10.2.2-10.2.4, which can’t be used due to font handling problems. Animation has been enhanced with the addition of some Quartz graphics effects.
Klondike 10.1 is a Universal application. A Game menu has been added to make it easy to switch games.
Klondike 10.2 uses Quartz rather than QuickDraw for optimum graphics performance. Preferences and high scores are also kept in an XML file so that player names are stored in Unicode, which supports more languages.
Version 10.3 has been brought further up to date by completely eliminating classic Resource Files, and high score history has been expanded to remember more scores, as well as to allow replaying the same deal of any high scoring game. The game window background can now be made translucent, up to the point of completely revealing the desktop under the cards.
In May, 2009 Klondike was completely reimplemented in Cocoa Touch and a version released for the iPhone as iKlondike. In April 2010, iKlondike was updated to a Universal app with a scalable layout and cards suitable for the iPad as well as iPhone.
As of November, 2010, Klondike 10.4 and iKlondike 10.4 are versions of the same code base containing minor bug fixes and improvements. iKlondike 10.4 is the first version created for compatibility with the Mac App Store and is Intel-only. Klondike 10.4 remains the shareware version and is a Universal binary for both Intel and PPC systems.
Klondike/iKlondike 11.0 (April, 2011) was a complete port of Klondike to Cocoa, based on the Cocoa Touch (iOS) version of iKlondike. Because of the Cocoa and Objective-C technologies involved in this port, version 11.0 requires an Intel Mac running OS X 10.6 or later. Klondike 11.0 implements essentially all the functionality of Klondike 10.4, including multiple players, adjustable background transparency, and replay of selected games in history. Enhancements include tracking of player statistics, moving cards by ‘flicking’ in the desired direction with the mouse, and keeping history of Casino game scores.
In November 2011 iKlondike 11.2 became a sandboxed application as required by new App Store rules.
In June 2012, version 11.3 added retina graphics, and the shareware version of Klondike was signed for compatibility with Gatekeeper.
Klondike/iKlondike 11.4 added support for Handoff in March 2015.
In December 2020, I obtained an Apple Silicon development machine
and built Klondike 11.8 as a Universal application, which runs
natively on both Intel and Apple Silicon processors.
In October 2023, I updated Klondike to 11.8.1, both
future-proofing it by replacing the use of some deprecated APIs
and implementing some user requests.