The Castles of Dr. Creep
Now Available on Steam
The Castles of Dr. Creep is an open source reimplementation of the original 1984 Commodore 64 game by Ed Hobbs. Now with a built in castle Builder, allowing the player to create their own castles and build onto an existing castle.
" As a programmer, I appreciate the difficulty of reverse-engineering the 6502 object code to C++.
When I wrote the game, the C-64 assembler was very primitive (it couldn’t handle programs larger than 16 kb), so I had to write and assemble the source code on an Apple II, and then transfer the binary to the C-64 through cables connected to the joystick ports of the respective computers (my first experience with a “computer network”). So even though the game could not be executed on the Apple II, this computer still played a vital part in Dr. Creep’s creation.
One of the biggest problems was that the source code had to fit onto a single 144 kb floppy disk in order to work with the Apple 6502 assembler. The only way to do this was by eliminating all comments in the source code—there just wasn't any room for them. I maintained a notebook comprising hundreds of pages of flowcharts and data-layout diagrams. The nodes of the flowcharts were labeled to match the nametags in the source code. In this way, I was able to visually grasp what was going on in the code, and still fit it into the requisite space.
Furthermore, there was no such thing as a C-64 debugger, which added an additional twist to the programming.
I also didn’t have a level editor.
I drew the levels out on custom graph paper, and then used these drawings to hand-code the level data."
- Ed Hobbs 2012
Required To Play
Commodore 64 Disk Image (D64) of "The Castles of Dr. Creep", which should be placed inside the game 'data' folder.
This file may have any name, but the 'D64' extension must remain.
*Castle Builder: Editing of existing castles, or creation of new ones
Save Game Support
D64s will be created in the data\save folder, and all save games will be stored in these files. These files are compatible with the original Commodore64 game, and in return the original save games are supported.
F4 = Start Builder using current castle F5 = Start Builder with empty castle F6 = Enable Player 1 Joystick F7 = Enable Player 2 Joystick F10 = Fullscreen Toggle - = Decrease Window Size + = Increase Window Size
F1 = Options F3 = Display Highscores
In Map Screen
F1 = Save Game F2 = Load Game
Escape = Self Kill F1 = Restore Key (Pause/Resume)
######Player 1 Right Ctrl = Button Spacebar = Button (MACOSX Version) Arrows = Left/Right/Up/Down (NOT the numpad)
Numpad 0 = Button Numpad Arrows = Left/Right/Up/Down
Escape = Quit Builder F2 = Save Castle to empty 'Castle Disk' F3 = Edit Map Screen F4 = Return from Builder, in test castle mode
q = Cursor Create Object (Rotate Up) a = Cursor Create Object (Rotate Down) [ = Rotate up through Placed Objects ] = Rotate down through placed objects l = Link Object - = Previous Room = = Next Room f = Switch to exit room s = Change object state c = Change Key Color Down v = Change Key COlor Up 'Delete' = Delete selected 'placed' object Cursor Keys move the "red" square pointer Ctrl = Place Cursor Object, Select object to link to
- = Previous Room = = Next Room [ = Rotate up through doors in this room ] = Rotate down through doors in this room k = Increase Door X on map = Increase Door Y on map d = Change Door Entry Direction ; = Decrease Room Width ' = Increase Room width . = Decrease Room Height / = Increase Room Height c = Change room color Cursor Keys = Move Room
From the Intro
To start a 1 player game, press the Player1 Button To start a 2 player game, press the Player2 Button
Command Line Parameters
-u : Unlimited Lives -c : Display Console -l xx : Start Castle number 'xx'
Ed Hobbs, for the original game
Christian Bauer, for his extremely detailed 'VIC-II' documentation (https://sh.scs-trc.net/vic/)
Dag Lem, for 'reSid' the MOS6581 SID emulation library (http://en.wikipedia.org/wiki/ReSID)
Peter Schepers and the authors of the documents contained in his collection (http://ist.uwaterloo.ca/~schepers/formats.html), for the detailed disk format information
Thomas Bätzler, for his website 'Castles of Dr.Creep Revisited' (http://www.baetzler.de/c64/games/creep/)