A conversion of the Boulder Dash games (1, 2, and 3, as well as Boulder Dash 1 and 2 Classic Collections converted from ZX Spectrum) has just been released for the Enterprise here (Hungarian). It was converted from the Amstrad CPC version, but the package also includes loading screens, graphics, and levels from C64 and Spectrum. This program is compatible with, and runs at a playable speed on the EP64, but also supports "turbo" machines running at 6 or 7.12 MHz.
An updated version is now available
here.
NOTE: in this version, the bd2cc_a2.lvl level set does not work correctly, the rooms where the player starting position or the exit is in the bottom row will not create a player character or exit. This is caused by an update that made the program emulate the behavior of the C64 version of Boulder Dash 2 more accurately; however, this "classic collection" was made for the Spectrum, where the game is apparently implemented in a slightly different way. The problem can be fixed easily by copying bd2cc_a2.lvl from the
previous version, since the older file does not activate the "C64 compatible" mode. The other bd2cc level sets do not seem to have this problem.
Here are two Lua scripts that can be used in the ep128emu debugger:
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]
The first one displays all maps in the bd1cc and bd2cc collections: just load and run the game (in EP128 mode), and then load the script, set the directory where the bd1cc_*.lvl and bd2cc_*.lvl files are found at the beginning of the script (e.g. levelFileDir = "C:\\bouldash\\"), and then run the script. It can be controlled with the internal joystick, A-Z, 1-9, and function keys.
The second script allows for creating new levels, although it is very simple and limited (there can be only one map in the .lvl file, and some features of the game are not supported). It should be used while the game is running, at the menu / title screen. By default, it creates the new level in memory (it can be played immediately as cave A), but by setting an output file name, an .lvl file can also be written instead; however, the output file needs to be compressed first (with dtf -cr -lz2) to be usable.
P.S.: there is an updated version available at the
downloads, that fixes the problem described above, and there are a few other changes as well. It also includes the bdlvdisp.lua and bdlvl.lua scripts, and the complete source code.