Quikman + 8k

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.

screenshotThe 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 sizable 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:WindowsCursors — 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 extra address space allowed expansion of the game’s core 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
1st new level
1st new level

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!

One thought on “Quikman + 8k

  1. 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.

Comments are closed.