16.05.2015 - Added link to CD32 disc image courtesy of Cobe.
10.04.2015 - WHDLoad patch done courtesy of StingRay!
12.02.2015 - Even more fixing, this should fix the remaining problems with launching the game from Workbench. (Fixed stack corruption with the level editor that caused problems with quitting; reworked sample loader routine to work properly.)
11.02.2015 - Uploaded a fixed version for playing from HD in Workbench.
01.02.2015 - Added sections on Controls, the Level editor and Development, plus a clarification about the game being PAL only.
29.01.2015 - Contrary to what I said before, the game DOES run from Workbench! A new build with a Quit feature should be available in a couple of days. I also want to make a proper WHDLoad version of the game, but that will take some time. (Unless someone else wants to make it, sources available on request.)

Solomon's Key 2 / Fire'N Ice for the Amiga

Downloads

About

This game is a remake of the NES game for the Classic Amiga line of computers. It should work on pretty much any PAL Amiga setup.

It will run from floppy or hard drive. The game is in standard AmigaDOS format, so you can simply copy the game directory onto a bootable floppy or your hard drive.
If playing from floppy, make sure it is not write protected to be able to save your game progress!

If using an emulator (e.g. WinUAE), simply select a basic Amiga 500 setup, insert the ADF image into the DF0: drive via the Floppy drives screen and start emulation. You may want to tweak the display options as well.

Gameplay

You are a young wizard named Dana, and your mission is to rid the world of the evil flames. You are equipped with a magic wand, with which you are able to create or destroy blocks of ice. Flames can be extinguished by dropping or sliding ice blocks (or stone blocks, as found on some levels) onto them.

The complete backstory from the NES game's manual can be read in the scrolltext of the intro preceding the game.

During gameplay, if you find yourself stuck you can press UP+FIRE simultaneously (or right shift, or the second fire button if your joystick/joypad has one) to bring up the ingame menu. This menu allows you to restart the current level, return to the level select screen or to quit back to the title screen.

Controls

Use a joystick/joypad or the keyboard to control Dana. To access the ingame menu, press Fire while pushing Up, or use the second fire button.
Keyboard controls are as follows: arrows to move, Right CTRL=fire, Right Shift=fire 2/ingame menu.

Missing from this Amiga conversion

These omissions are not for technical reasons, but out of laziness. :)

Level editor

Use the mouse to paint tiles; left button paints using the tile selected from the tiles list at the bottom, right button clears tiles. The buttons at the top function as follows:
Undo, Revert to last saved, Test Level, Save to Disk, Clear Level, Exit Editor, World/Level Chooser.

The Save button dumps all levels to disk at once; there is no need to save each level separately.

Development

This is my first large project written in assembly, and was mainly written for learning purposes. I started work on the game in March 2014, and more or less finished in January 2015. While I had quite a few frustrations and headaches, it was well worth it as I learned quite a lot while making this!

I wrote this game on a Lenovo T400 laptop in Windows 7 using Notepad++. The game was assembled with vasm. The source code is around 463 KB, which assembles to a 105 KB executable. Further size reduction was obtained by packing the executable using CrunchyDat on the Amiga.

Music was partially made in ProTracker on the Amiga, partially in Schism Tracker on the PC then converted to a Protracker module in OpenMPT. Samples were sampled on the Amiga from the NSF rip of the original NES game's music and sound effects.

Graphics were mostly ripped from the NES game, then touched up in Grafx2 on the PC and converted partially with PicCon on the Amiga and partially with a custom-written program on the PC.

For testing I used my Amiga 1200 with an ACA1220/16 accelerator, 128 MB of Fast RAM, and a 8 GB CompactFlash card as hard drive. Additional testing was done on a Blizzard 1240-equipped Amiga 1200, a plain Amiga 600 and a 1MB Amiga 500.

Credits

    Code:                hukka
    Graphics:            from the original game
    Music:               hukka
    Testing and support: Archyx & wuffe

Contact information

     IRC:      hukkax @ IRCNet, hukka @ Furnet
     Twitter:  @hukkax
     email:    hukkax gmail
     web:      http://hukka.ncn.fi, 
               http://hukka.yiff.fi