v1.6 Paku Paku - A game for early PC/MS-DOS ComputersMenu Screen
VERSION 1.6 Released
see the Revisions Page for details on what's new.
This game started out as an expansion to my Retrochallenge 2011 Winter Warmup entry. I made a Turbo Pascal 7 unit to implement the undocumented 160x100 16 color graphics mode on the original CGA card -- and decided to make a game with it. Since that original demo it has grown into a full fledged Pac-Man type game.
The minimum target system I set for the project was an original 4.77mhz 8088 class machine with only 128k of RAM. In todays age of "just throw more hardware at it", cutting the code down to the bone was a refreshing change. It's actually kind of funny how the original Pac Man fit the code into a tiny little ROM on a much less powerful 3mhz 8 bit Z80 processor; but it had some really hot video with hardware sprites -- on the PC the CGA, EGA and even VGA cards lacked hardware sprites, meaning everything has to be handled in code on the processor. The original 224x288 graphics not only fit poorly in PC screen resolutions, compared to the oddball semi-graphics mode I'm using it's almost three times the pixel count... made this one a really good challenge for me. Thankfully much of this type of maze-game logic is based on a 28x36 screen grid, with the playfield only using 28x32 of that... move the high score and score off to the side, and there's enough height left over for the playfield, number of lives and level bonus symbols.
In addition to the special video mode I've gone through and added support for a wide array of early PC sound cards. While the lowly PC speaker was first on the list, I very quickly added Tandy/PCJr sound, the original Creative CM/S (aka Game Blaster), Adlib/FM... and this latest release introduces MIDI support code crafted for the Roland MT-32... with the possibility of General Midi or even custom patch assignments.
Send your postcards to:Jason M. Knight
233 Baker Street
Keene, NH 03421
I'm distributing this game as cardware. If you enjoy it please send a postcard to the provided address. The code for the game is released to the public domain. Do what you like with it so long as credit is given to the copyright holder, Jason M. Knight. I have included the full Pascal and Assembler source code to the game in the distribution. Feel free to play with it, come up with anything cool from it let me know.
P.S. Namco/Atari/Whoever the current Pac Man license holder is -- this game is meant as a tribute and is not being released for profit. At no time have I viewed or examined the source code to Pac-Man, and base all of this recreation upon observations and freely available information off the Internet. You really want to sue an old man on disability, good luck getting ANYTHING of value out of it.
Besides, I could always just change it into a K.C. Munchkin clone
Running it under DosBox
If you want to try this game on a modern non-DOS computer your best bet will be to run it under DosBox. Much of the game's development cycle was performed using DosBox for testing so it should run flawlessly. The best settings to use for DOSBOX are:
machine=cga core=auto cputype=auto cycles=auto oplmode=cms
You should then start the program with the /cms command line option for the best sound quality. The game should run well in just about any dosbox configuration given the support for all major color video cards and adlib support.
On Windows systems I highly recommend you set
output=ddraw or even better
output=direct3d, the latter only being present on SVN builds. (last time I checked). Linux and OSX users naturally should try the various OpenGL renderers.