Rubik’s Cube began as an extra credit undergraduate project
for an introductory Fortran programming course (anybody remember
WATFOR?) on a PDP 1170 running the Unix operating system. Ini-
tially, it was written for Rubik’s Pocket Cube, a 2x2x2 version
of the Cube, and was never debugged. The compiler, which appar-
ently assembled code in a somewhat linear fashion, could not grab
enough memory to compiler the source. My instructor took my
problem to her supervisor, who in turn sent me to the department
heads, who told me to rewrite the blasted thing in Pascal. For
my trouble, I received 5 extra credit points.
Well, here I am now, more years later than I want to count,
and I finally decided to follow my superiors’ advice. Here,
completely rewritten in Turbo Pascal, on an IBM XT microcomputer,
for a full-size Rubik’s Cube, with plenty of memory left over
(isn’t it amazing how far computers have come in ten years?) is
Rubik’s Cube. In addition to actually compiling it, I have updat-
ed and enhanced the old Fortran version. What started out as
just a simple little program to solve the Cube has become a full-
blown nightmare (have YOU ever dreamed you were being chased by a
ten foot tall cube?) with a full-featured graphics presentation
(for Hercules and EGA; CGA just didn’t have the resolution I
needed), the ability to allow the user to make his own moves,
take back moves, reset the cube, or set up the cube any way he
likes, and, of course, routines for allowing the computer not
only to solve the cube but to save the solution to a text file
for later review. And much more. But I’m getting ahead of
myself.
Actually, the program itself should be straight-forward
enough to require little documentation. Those of you who haven’t
already abandoned me are now dismissed, if you’d like, to get
straight on to using the program. I’ve tried to make the user
screens as self-apparent as possible. But, for tidbits, tips and
traps, I’d suggest perusing this little tome eventually.
Another thing that really makes Rubik’s Cube enjoyable for me is how it manages to stay interesting even after playing it multiple times. Many games feel repetitive after a while, but here, the experience still feels fresh because of the small details and different ways you can approach the gameplay. As you continue playing, you naturally start improving and understanding the mechanics better, which makes everything feel more rewarding. I also appreciate the balance the game maintains—it’s not too difficult, but it’s not too easy either. You can play it casually for a short break or spend longer sessions without getting bored. That flexibility is one of the biggest reasons why I keep coming back to Rubik’s Cube. Overall, it’s the kind of game that doesn’t just entertain you for a moment, but actually gives you a consistently enjoyable experience every time you play.