Instructions for installing and starting SDML

SDML is implemented in VisualWorks Smalltalk release 5i.2 Non-Commercial. The Centre for Policy  Modelling gratefully acknowledges the support of Cincom Systems in providing us with VisualWorks, and allowing us to distribute the VisualWorks object engines and SDML images based on the standard VisualWorks image for non-commercial purposes.

Note that although SDML is free software distributed on the terms of the GNU General Public License, the underlying VisualWorks is distributed on the terms of Cincom's license agreement, which you must also accept in order to use SDML.

You can use SDML on any of the platforms listed below:

You need at least 32Mb of RAM and around 40MB of disk space.

All of the files you need to install SDML can be downloaded by clicking on links from this web page.

Please let us know you are downloading SDML

We would like to know of anybody who is trying SDML out. Please let us know by subscribing to the SDML-users mailing list or by sending an email message to Steve Wallis (

Using anonymous ftp

We have provided an alternative way of downloading SDML using anonymous ftp. If you have difficulties downloading SDML from this page (perhaps due to how your web browser is configured), then you might want to use anonymous ftp instead. Full instructions are provided in the plain text file here.

Installation program - Windows platforms

If you are using MS Windows 95, 98, 2000 or NT (4.0 or above), then the easiest way to install SDML is to download and run the SDML installation program. This program installs all the files you need to run SDML (including all the tutorial files) and adds items to the start menu and desktop to make it easy to start SDML, read the tutorial, uninstall SDML, etc. It also installs a "Readme" file which contains further instructions (consult it rather than the remainder of this web page).

Downloading VisualWorks and SDML

First, create a directory (folder) in which to install SDML. This directory is known below as the SDML installation directory. Create a sub-directory of the installation directory called "extras" (in lower case if case is significant on your platform). Then: Optionally create another sub-directory of the installation directory called "sheets" (in lower case if case is significant on your platform). If you create this directory, you will be able to place Excel spreadsheets in this directory, saved as ".CSV" (comma separated value) files, so that they can be read into SDML using the "excelTable" primitive.

Starting SDML

In order to start SDML for the first time, it is necessary to extract the VisualWorks Smalltalk object engine from the downloaded file and start it with the SDML image as an argument. Platform-specific instructions to do this are provided below.


  1. Launch WinZip 7.0 (or later), open Options->Configuration->Miscellaneous, and uncheck "TAR file smart CR/LF conversion".
  2. Open the downloaded object engine file in WinZip, and extract it to the SDML installation directory. This creates the necessary subdirectories and copies the files into their proper location.
  3. Use the Windows Explorer to create a file extension association for VisualWorks:
    1. Switch to the installation directory, and double-click on "" (or select it, shift right-click and choose "Open With" from the menu, if ".im" files already have an association).
    2. Click the "Other..." button, then find and select "bin\win\visualnc.exe".
    3. Check the "Always use this file ..." checkbox, and click "OK".
  4. Launch SDML by double-clicking on "".

Unix and Linux

  1. Make the SDML installation directory the current directory.
  2. Expand the downloaded object engine file using these commands:
    1. %gunzip filename_prefix.tar.gz
      %tar -xvf filename_prefix.tar
    This creates the necessary subdirectories and copies the files into their proper location.
  3. Launch SDML using this command:
    1. %exec bin/<plat>/visualnc
      (where <plat> is the directory for your platform)


  1. The object engine file may have been expanded when downloaded. If the "bin:powermac:visualnc" file (the object engine) is not present, open and extract it using StuffIt Expander 5.5 (available from Open Expander's preferences dialog to Cross Platform options, and select "Never" for "Convert Text Files to Macintosh text format". Then for the Destination options, select "Same as original" for "Destination" and "Never" for "Create Surrounding Folder".
  2. Launch SDML by dragging "" and dropping it on the application "visualnc" in the "bin:powermac" folder. [When you have finished the customisation process described below, the new image should have appropriate type and creator codes to enable it to be restarted by double clicking on the icon.]

Customising SDML

If you have installed and started SDML correctly, a window called the "SDML launcher" should appear on the screen. If this does not happen, and you can't solve the problem by consulting the installation instructions, contact Steve Wallis.

You may be prompted for the SDML installation directory and image filename when you start up SDML for the first time. However, you will not be prompted if you have set the current directory to the SDML installation directory (by following the above instructions) and placed the image with its original filename in that directory.

N.B. The current directory is normally used to specify the installation directory, but a full path or relative path (relative to the current directory) may be used instead. The syntax for the path is platform dependent. PCs use the "\" separator whereas Unix platforms use "/". On a Mac, a full path is of the form "Hard Disk Name:Folder Name:...:Folder Name"; if the SDML folder (installation directory) is on the desktop, the hidden folder "Desktop Folder" is used as the first folder name.

You will also be asked to specify the organisation that you work or study for. Type it in and click "OK".

Some other message boxes may also appear, reminding you to customise SDML. If any such boxes appear, click "OK".

You also need to accept Cincom's license agreement for the underlying VisualWorks.

On most systems, the left button on your mouse is used for making selections (e.g. in text, lists or buttons) and the right button (called "the command button" in the tutorial) causes a menu specific to the pane in the window to pop up. If you have a three-button mouse, the middle button may cause a general window menu to pop up (common to all SDML windows). However, on some systems you may need to hold down the "shift" or "control" key while pressing a mouse button.

To finish customising SDML:

Now save the image, so that you will not have to customise this release of SDML again. Do this using the "save image" option from the "File" menu of the SDML launcher. You can either overwrite the existing image or generate a new image file by specifying a different name. Note that the image consists of the entire state of SDML, including all the windows on the screen, and occupies several megabytes of disc space. Also note that SDML automatically creates some additional files associated with the image (such as ".ops" and ".vm" files). Therefore, the easiest way of copying an image is to save it with a different name from within SDML, ensuring that SDML copies and keeps track of all necessary files.

Installing and starting the tutorial

The tutorial starts with a different image, so exit SDML (by choosing "exit SDML" from the "File" menu of the SDML launcher.

You need to fetch some additional files for use with the tutorial - all those here, or in tarred (9.5MB), compressed and tarred (6.0MB) or gzipped and tarred (4.6MB) formats. [If you have PKZIP, you can fetch the image file zipped (4.6MB), but you also need to fetch the other files here.] Place all these files in the SDML installation directory.

One of those additional files is another SDML image called "". Start up this image in the same way as described above, but use this image filename instead of "". Again, you may be asked to specify the SDML installation directory and filename.

Another of the additional files is a "virtual memory file" called "sdmlintr.vm". This file contains some data generated during a simulation run. SDML will look for this file in the installation directory when it starts up - if it cannot find the file, it will warn you that the file is missing and that the results of the simulation will be discarded. If you get this warning, exit SDML and place this file in the installation directory - since the simulation results are needed for the tutorial.

SDML may also suggest that you adjust the memory settings in order to get good performance. The model you will construct in this image (on "day 1" of the tutorial) is very small so you should be able to safely ignore this warning. However, the settings are important for "day 2" of the tutorial, and for any further modelling you do. You will return to the original image, that you should have already customised (as described in the section above on customising SDML) when you reach "day 2".

You are now ready to start the tutorial. You can download the tutorial as a PostScript file or view it in your web browser. Click here.

The SDML-users mailing list

This list ( is intended to facilitate discussion and mutual support for those who use SDML. For example, it can be used for requests for help, hints and suggestions, and general discussion of SDML's features.

The mailing list also enables users to be informed of new releases and fixes and enhancements to the current release as they become available. You are therefore strongly recommended to subscribe to it.

For more information about the mailing list, including how to subscribe to it and browse its archive, click here.

Any problems?

If you have any problems downloading SDML, then please contact Steve Wallis. Also mail him if you think you have found a bug, or if you have any other problem with SDML that you don't want to send to the mailing list.

Good luck!