Sword of Sodan

I like that game or the demo of it 😉 It proves that fast animations on the IIgs were possible using different techniques, some of them being explained and used by Lucas Scharenbroich for his Generic Tile Engine.

Sword of Sodan on the IIgs has been programmed by Scott Patterson and Tim Johnson from Visionware, Inc. and the original Amiga program has been programmed by Soren “Sodan” Gronbech and Torben Larsen. On the IIgs, Sword of Sodan has been released as a 3-level demo only, some say a playable version exists, we don’t know and instead of waiting for the game to be finished, why not disassemble it and see whether the program was close to completion or not.

The 3-level version I have worked with contains main program data (sprites of hero, some basic sounds), all tables (files to load, sounds to play), a few texts (level texts but main texts were missing) and the data for the three levels of the demo. Oh, by the way, let me say that it is not a demo in the SoS sense but the replay mode. Why? The game contains two flags: demo and replay. Demo is the same as with Rastan or Lode Runner. Replay “replays” your moves which have been previously recorded

My program updates

  • The game is now hard-drive installable
  • The packed images have been replaced with uncompressed screens
  • Some sprite creations (see introCLOUD)
  • The SODAN and SODAN0 files have been merged into one big file

My data updates

  • All the texts have been added (see DATA.TEXT), some have been corrected (“ORDER YOUR COPY NOW” instead of “*** REPLAY ***”)
  • One sound has been added (“Select hero or heroine”)
  • Several pictures have been added (I know, I have no talent 😉

My programming updates

  • Comments, comments and naming of routines
  • Several routines have been reactivated (the intro and level ones)
  • Somes others have been corrected due to bugs

The unfinished routines:

  • The introSINUS routine does not work at all
  • The introSCORE routine does not work at all
  • The joystick handles left and right movements only
  • The sprite generator routine has a bug when a sprite has to be generated at the end of a bank (see introCLOUD)
  • The replay recording routine is not (but the replay routine is)
  • Some other bugs (e.g. fade routines)

What is missing?

  • An understanding of the main game loop
  • A graphist 😉
  • Spare time

Some sources:

  • Site of Sodan, the programmer: sodan.dk
  • Longplay of the Amiga version of SoS on youtube.com: longplay