![Image](https://i.postimg.cc/d1mQcmTN/screenshot-2.png)
Over Christmas break I decided to try my hand at a text adventure conversion for the C64. I chose a ZX Spectrum game called Castle of Doom from Specsoft/Alligata software written by Mark Aldrich and John Wigglesworth of Sheffield England. Apparently the game was thought lost until Aldrich uploaded it in 2018. (Unsurprisingly, there are other games which share the same name for the Spectrum.)
Castle of Doom contains four stages consisting of 40 rooms each. Each stage includes several puzzles (you must appease or defeat a character with a specific object in order to proceed) and a few death traps. As you find each of the Lost Keys you may progress to the next stage, bringing you closer to the Wicked Wizard and his hidden gold.
The game accepts only simple commands: N/NORTH, S/SOUTH, E/EAST, W/WEST, H/HELP, P for pick up, D for drop. P or D alone will pick up or drop the first object in the location or in your inventory. You can specify which object to pick up or drop by typing all or part of its name: P SCYTHE, P SC or P S
![Image](https://i.postimg.cc/vBd8KSD6/screenshot-3.png)
The conversion:
Written in BASIC with a single bitmap logo, Castle of Doom was a relatively easy conversion. The hardest aspects were re-learning how to use the maddeningly frustrating Timanthes, cobbling together sound effects, figuring out how to run a python script, and decyphering the ZX Spectrum emulator keyboard. I was actually surprised to find that the ZX Spectrum would glide over issues with ease which were showstoppers on the Commodore: GOTO or GOSUB to a non-existent line number didn't phase the Spectrum—it just goes to the next available line number, and performing string functions on empty/short strings works quite differently on a Spectrum.
I wanted to preserve the spirit and charm of the original game—including spelling errors (SUBERB/suburb, FLOUR/flower) and the silly copyright obfuscations (HULTON/Hilton, DARLIK, Dalek)—but made choices to improve some things. I fixed a few problems in the inventory system, changed traps so that they display their location name (so you'll know what caused your untimely death as you perish), fixed a bug that caused several rooms in Stage 3 to be inaccessible, and fixed several GOSUBs without RETURNs which quickly maxed out the C64's stack memory. I didn't attempt to reproduce flashing text or the Spectrum's weird bottom-line input method—I didn't really care for them anyways.
I discovered an extra puzzle in Stage 1 which was apparently written out for some reason, so Stage 1 has the option to unlock the puzzle or play the original version. The game data also revealed the likely location of a missing object, and the unlocked version allows the Killer Raven to finally have its desires satisfied. Lastly, the game hides the Lost Keys in random locations. In the original version, entering the location would immediately transport you to the next level. I found it disappointing to be taken so abruptly out of an incompletely-mapped level, so I added the option to fully explore each stage before progressing to the next.
If I'd had more time I would have liked to redo the bitmap logo. It looks great in Vice, but on a real C64 it's stretched... or maybe it's just my VGA monitor.
I made the conversion in CBM PRG Studio with Vice, the bitmap was created with Timanthes, plus lots of help from the Lemon64 forum and Joe Forster's STA pages. I used shred/tzxtools to extract the original game data and JSSpeccy 3 to better understand how the ZX Spectrum works.
It was a lot of fun to convert, and an enjoyable game to play. I hope you'll enjoy it too!
The Commodore version can be downloaded here:
https://www.mediafire.com/file/sxf61drg ... 4.zip/file
![Image](https://i.postimg.cc/bryyyDxy/screenshot-1.png)