Last year, I re-discovered a Pac-Man clone I wrote way back in 1984 for the Commodore VIC 20. A month later, I enhanced the game, yet kept it within the memory constraints of a stock VIC 20 — quite the personal accomplishment and it received a few unexpected accolades afterward.
This past year, I moved on to other VIC 20 related projects, including a slick software sprite library and a sequel to Omega Race that implemented the new graphics handler. This past week, I returned to Quikman to retro-fit it with the improved video… and a few more features.
The result is Quikman+ requiring an additional 8k of memory expansion, mainly due to the software sprite’s requirement to double-buffer the video display. For those not familiar with the term “k”, it was short for “kilobyte” which is 1,024 bytes. Yes, read that again — a thousand bytes, not millions as in megabytes and certainly not billions as in gigabytes. So, eight of those are an additional 8,192 bytes over the 3,584 bytes available in a stock VIC 20. In 8-bit computing, that is a sizeable amount to do some nifty programming. You can appreciate these meager numbers more if you compare it to a simple Windows cursor file in C:\Windows\Cursors — some of those simplest of icons would challenge the VIC 20′s ability to load it into memory!
With the double-buffering in place, the game play is smoother because of the flicker-free animation. But the expanded address space allowed the game’s core to be expanded to include:
- an opening splash screen (top)
- a gaming options menu (left)
- one or two player mode
- choice of arcade maze run: original Pac-Man or progression through the four Ms. Pac-Man mazes (sample of the first one below)
- starting fruit level
- pressing the STOP key aborts the current game in progress; at the menu, it returns the machine back to BASIC
A bonus feature was the inclusion of auto-detection code for the presence of a Mega-Cart. If this cartridge is plugged in, the game’s high score will be saved to its NVRAM, allowing its persistence to be retrieved by future games to try to beat. Cool!








#1 by Rob on September 27, 2009 - 7:22 am
I suppose the theme for all of this is VIC 20 was different — a trailblazer for affordable home computing — and a flame should burn forever marking it as a pioneering leader in that space. So us “aging geeks” continue to pour what’s left of our diminishing IQ into a piece of hardware that has less memory than one contact kept in a cellphone — a genuine human attempt to perpetuate validation that VIC 20 could do “just about anything”, despite its handicap against that next Commodore model which ultimately made a permanent mark in history as “people” know it.