Commodore 64 Terminal Program

Sometimes I feel like an archaeologist rediscovering a long-forgotten world when I look back at projects I worked on as a teenager. I often examine completed programs or pieces of code that my younger self created over 30 years ago when I first started learning to program.

To set the scene, it was January 1986, and I was 16 years old, a member of one of the largest Commodore Users Groups outside the metro area in Australia (with a few hundred members, if my memory serves me correctly). I served on the club’s committee as the Software Librarian, responsible for managing public domain programs available to members.

One evening during a committee meeting, the idea was raised that our club was large enough to warrant its own Bulletin Board System (BBS). This BBS would promote the club and provide a local platform for hundreds of users, saving on long-distance phone calls. I distinctly recall two things from that meeting: First, we lacked the funds to purchase the necessary hardware (C64 + Disk Drives) and software. Second, somehow my ability to code games and utilities led to the daunting task of writing a BBS.

Looking back, I realize I had no idea how significant this undertaking would be, and the rest of the committee had nothing to lose. Thus began the quest to create a complete BBS for the Commodore 64, which culminated a year later with a last-minute rush to develop a small, user-friendly, and free terminal program.

The screenshots and code presented here capture the outcome of that night before the BBS launch and go-live meetings. Although I can’t recall whether the club meeting was on the first or second Wednesday of the month, the exact date doesn’t really matter.

On a Tuesday afternoon, just before the launch, not long after I returned home from school, the Sysop (System Operator) named Phil—or, as we committee members affectionately referred to him, “Nuggets” due to his penchant for consuming KFC—called me in a mad panic.

“Scott,” he said, “I’m so sorry. I completely forgot to tell you that we need a small, user-friendly terminal program. We’ll print it out and photocopy it for all the users with modems so they can connect. We need it for tomorrow’s meeting.”

Now, you must remember that in 1986, diskettes weren’t cheap, and cassette tapes were too slow. If we wanted people to use this new BBS, we had to provide them with the terminal program’s source code on paper for manual entry.

Armed with this new information, I set about coding a simple terminal program that could run on a Commodore 64. It needed to be small enough to fit on a single printed page. By 9 pm, I had a fully working version 1.0.

Excited, I called Nuggets to share the good news. He was over the moon and exclaimed, “I can’t believe you finished it in time, including the ability to view and print the buffer!” Unfortunately, the concept of viewing and printing the buffer was news to me—I hadn’t added those features.

So, at 11 pm, I worked diligently to enhance the program. Soon, it was working like a charm, complete with a view and print buffer option. Nuggets was thrilled.

And that’s the story of how GOS-TERM came to be.

If you would like to view the actual source code for version 2.0 written in Commodore 64 BASIC click here.

This entry was posted in 6502 Assembly Lanuage, BASIC, Commodore, Programming, Software. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *