The Commodore 64 was the first home computer I owned, but it wasn't the first one I had played with or programmed. Back around 1981, I had been exposed to Apple IIe computers, and had enjoyed them. The first program that I'd bought for any computer was Beneath Apple Manor -- and I played the heck out of it! I built my characters up the hard way. I still have fond memories of hacking and slashing my way through the black and white dungeons, searching for treasure and trying to stay alive.
So when I bought a Commodore 64 around '83, one of my first game purchases was Telengard by Avalon Hill. I enjoyed playing it -- but this time, its code was easily viewed. I couldn't resist: I started studying it, partly to teach myself more about programming.
Eventually, I learned enough to write a program that could read the character files that Telengard stored on disk. I gave my program the ability to alter any of the info in a character's stored file, thus giving cheaters (like myself?) the ability to make gods out of their Telengard characters. Hence my program's tongue-in-cheek name: Telengod.
This is actually the second version of the program. The first was written over a (solid!) one-month period, and was largely unreadable. Why? Because magazines and books of that time heavily emphasized squeezing as much code into as little memory as possible. With the C64, that wasn't as necessary as with some earlier machines of the same general period, but I'd taken the advice and spent a solid month teaching myself to write code "that way."
At the time, I had a job with good vacation-time benefits; but I was discouraged from taking it during the school year. During the summer, they didn't care -- so I had let a month's worth of vacation time build up, and then I spent it coding up the earlier version of that program. It was an educational experience, and felt like time well spent.
I should mention here that the first version worked fine. It was just that when you tried to read the code itself, it was pretty difficult to follow what was going on. The computer understood the code, but it wasn't super-easy for humans to follow the logic or flow. That wasn't "copy protection" -- just space optimization.
By mid-1985, I had done more studying, and not just in Commodore circles. I had another longish period of free time built up, right before I was due to enter the U.S. Air Force. I decided, again, to spend time nerding out and learning stuff -- so I rewrote my earlier version of Telengod to be much more human-friendly. While more could be done along those lines, if you look through the code; you'll likely agree that using clearly labeled, well commented modules, etc. makes early home-computer code a greater pleasure to read. One day, I may work on it some more -- in fact, I've already made a start on that -- but for now, this is the "final" version of the code.
The main thing that I used my Telengod program for, back in the day, was hand-mapping some of Telengard's dungeons on graph paper. I don't recall specifically how many friends I shared the earliest version of the program with, but it was likely at least a few. I don't recall ever sharing the second version of the code with anybody (but who knows; I might have), so my good friend and archivist buddy, Adam Trionfo, will be the first to give it an official release!