Boulder Dash Construction Kit

copyright © 2017 Kalevi Kolttonen <kalevi@kolttonen.fi>

Introduction

Boulder Dash Construction Kit (hereafter abbreviated as BDCK) is an 8-bit computer program released in 1986. It is available for Atari 800, Commodore 64 and Sinclair ZX Spectrum. BDCK is used to create your own Boulder Dash caves and intermissions. Those two form complete Boulder Dash games that can be distributed on tapes or floppy disks. However, the caves and intermissions built with BDCK are not stand-alone and require BDCK to be loaded before they can be played.

This article aims to be a simple and detailed hands-on tutorial on how to use BDCK together with the VICE emulator on Fedora Linux 25. We focus on the VICE emulator because:

Using VICE we can work with floppy disk images, i.e. virtual floppy disks. Remember that there is nothing magical about physical floppy disks. Ultimately they can be interpreted as strings of bits (a long line of zeroes and ones), and when it comes to floppy disk images, the string of bits is simply a regular binary file on your modern computer. The floppy disk image files are structured so as to resemble real floppies, and VICE knows how to read from and write to these "virtual floppies". This means that we need no real tapes or floppies. Instead we can pretend that we have a Commodore 1541 disk drive connected to the VICE emulator and we can store our own BDCK caves onto disk images. And of course we can read them back too.

Overview

Our plan is to do the following steps:

  1. Install Fedora Linux 25. You can skip this step if you are already running some Unix/Linux variant and know how to use it properly. I will focus on Fedora 25 in this article but I will not show you how to install it. The web is full of tutorials explaining how to do that.
  2. Install the newest release of VICE. I have created an RPM package for you that should be very easy to install. You can skip this step if you already have VICE installed.
  3. Download BDCK Commodore 64 floppy disk image. You can skip this step if you already have it.
  4. Start VICE emulator
  5. Tell VICE how to use your analog game pad or joystick. This obviously requires that you have one! You need a controller because BDCK requires it.
  6. Load BDCK under VICE Commodore 64 emulation
  7. Create a BDCK cave
  8. Test the cave
  9. Save the cave

Installing VICE

Go to my Computers and Logic page and download the latest VICE RPM package. Then become superuser (root) and install the RPM using the dnf command given there.

Downloading BDCK

Download Boulder Dash Construction Kit Commodore 64 floppy disk image.

Running and configuring VICE

Here I will assume that you are running VICE 3.1. If you downloaded a newer version, then adjust the path to the x64sc executable accordingly. Open a text terminal in order to access the command shell. Then start VICE with:

/opt/vice3.1/bin/x64sc &

After starting VICE, something like the following should show up inside the terminal window:

Joystick: Linux joystick interface initialization...
Joystick: /dev/input/js0 is Logitech Logitech RumblePad 2 USB
Joystick: Built in driver version: 2.1.0
Joystick: Kernel driver version  : 2.1.0
Joystick: Warning - Cannot open joystick device `/dev/input/js1'.
Joystick: Warning - Cannot open joystick device `/dev/input/js2'.
Joystick: Warning - Cannot open joystick device `/dev/input/js3'.
Joystick: Warning - Cannot open joystick device `/dev/input/js4'.
Joystick: Warning - Cannot open joystick device `/dev/input/js5'.

This means that VICE has recognized Logitech RumblePad 2 USB control pad as joystick 0. You should see something similar identifying your analog control pad or joystick. This is not enough, though. So far VICE only knows that the analog controller is there but it does not know what to do with it!

In order to use BDCK we must tell VICE emulator that this USB controller is supposed to serve as Commodore 64 Joystick #1.


screenshot01

screenshot02

Loading BDCK

The first Commodore 1541 floppy disk drive is called Unit #8 in Commodore 64 terminology. So now we must locate our bdck.d64 floppy disk image and "insert" it inside the virtual floppy drive (or attach it in VICE terminogy). Do the following:

screenshot03

The LOAD command must be given inside the emulated Commodore 64. We will command the emulated Commodore 64 to load Boulder Dash Construction Kit program from the virtual floppy drive #8.

Type LOAD"*",8,1 and press [ENTER].

screenshot04

Wait until you see the following Boulder Dash Construction Kit loading screen. Then press [SPACE] to continue loading.

screenshot05

Press [1] (one) to select Boulder Dash Construction Kit.

screenshot06

Use your USB controller to select CREATE A NEW CAVE and press Fire-button to confirm our selection.

screenshot07

We are now ready to create our first BDCK cave.

Creating a cave

All caves need the entry point and the exit point so we will create them first. Use your USB controller to pick items from the palette on the right. Use fire-button to confirm selection. Place selected items in the cave.

screenshot08
screenshot09

Next we will add a few diamonds and rocks.

screenshot10

Press [V] to define CAVE TIME and DIAMONDS NEEDED.

screenshot11

Here we are facing a small problem, BDCK shows us PRESS [ARROW UP] TO EXIT THIS MENU. However, the [ARROW UP] key does not refer to our PCs "cursor up" key. Instead Commodore 64 computers have a special [ARROW UP] that does not exist on PCs at all. So how do we press a key that does not exist?

Inside VICE, [Alt Gr] + [TILDE] means Commodore 64's [ARROW UP]. Use that combination to exit the menu once you have completed the settings. By the way, we must of course make sure that the value of DIAMONDS NEEDED is less than, or equal to, the number of diamonds that we have added to our first cave! If you make the value bigger, the cave will be impossible to complete.

Testing the cave

We are now ready to test our first cave. Press [T] to play! If you get stuck, press [ESC] to return to the editor.

Saving the cave

Saving the cave requires a bit of effort. Remember that the virtual floppy drive Commodore 1541 now "contains" the bdck.d64 floppy disk image. To store our cave, it is best to switch floppy disks and use a blank floppy for saving.

To create a blank floppy disk image, open a new Linux terminal window to use the command shell. Type:

dd if=/dev/zero of=blank1.d64 bs=1 count=174848

to create a file called blank1.d64. It will be filled with zero bytes. Then type:

/opt/vice3.1/bin/c1541 blank1.d64

to enter VICE floppy disk editor. Inside the editor, type:

format cavedisk,id

Then type:

dir

and finally type:

quit

Everything should look like the following:

screenshot12

We now have blank formatted floppy. Next let's eject (detach in VICE terminology) our bdck.d64 floppy disk image to make room for the blank one.

Reset the virtual floppy disk drive.

Insert the blank floppy disk blank1.d64 into the virtual floppy disk drive.

Inside the emulated Commodore 64, press [M] to enter the BDCK Main Menu.

NOTE:Sometimes BDCK seems to miss keyboard presses. If you press a key and nothing happens, just try again!

screenshot13

Choose SAVE, DISK and enter NAME "CAVE1".

Wait for a while and that's it! If all went well, you will get no message. If you get a BDCK error message such as DRIVE NOT READY, try to reset the drive #8 again.

Conclusion

You should now be able to load BDCK Commodore 64 version using VICE C64 emulation. You know how to create caves and how to save them. What about loading caves? Loading the caves from virtual floppies works the same way as saving. You should be able to do it by yourself.

Here is the Boulder Dash Construction Kit manual for you to download. Enjoy!