Confusion: A MDL interpreter
(or, "How to Fit a Small Program into a Large Machine")
=======================================================

This is Matthew Russotto's MDL interpreter, ported to Microsoft Windows by
David Kinder. Quoting from Matthew's description:

    For those poor souls still stuck in dawn of IF history, I present 
    "Confusion" -- a MDL interpreter which works just well enough to
    play the original Zork all the way through.

Running Confusion
-----------------

Confusion on Windows is a console-mode program: that is, it is run from the
Command Prompt (coloquially sometimes referred to as a DOS window). To use
it, open a new command prompt and navigate to the directory containing the
file MDLI.EXE that came along with this file, then run it. You should see
something like this:

    >mdli
    Welcome to 'Confusion', a MDL interpreter.
    Copyright 2009 Matthew T. Russotto
    This program comes with ABSOLUTELY NO WARRANTY; for details type
    <WARRANTY>.
    This is free software, and you are welcome to distribute under certain
    conditions; type <COPYING> for details


    LISTENING-AT-LEVEL 1 PROCESS 1
    _

The flashing _ is the cursor waiting for input: enter some valid MDL
command, such as the suggested "type <WARRANTY>", then hit enter. Press
CTRL+C to exit the interpreter.

Running MDL Zork
----------------

The main point of Confusion is to play the original MDL version of Zork.
The Zork sources, somewhat modified for the limitations Confusion, are
available at 

    http://www.russotto.net/~mrussotto/confusion/mdlzork.tgz

Unpack this archive, and copy the MDLI.EXE directory to the same place.
Open a Command Prompt and go to this directory. We now need to initialize
the game by running MDLI and entering as the first command

    <FLOAD "run.mud">

This should, after some processing, produce output like this:

    >mdli
    Welcome to 'Confusion', a MDL interpreter.
    Copyright 2009 Matthew T. Russotto
    This program comes with ABSOLUTELY NO WARRANTY; for details type
    <WARRANTY>.
    This is free software, and you are welcome to distribute under certain
    conditions; type <COPYING> for details


    LISTENING-AT-LEVEL 1 PROCESS 1
    <FLOAD "run.mud">
    prim.mud loaded
    defs.mud loaded
    makstr.mud loaded
    tell-repl.mud loaded
    act1.mud loaded
    act2.mud loaded
    act3.mud loaded
    act4.mud loaded
    disp1.mud loaded
    parser.mud loaded
    melee.mud loaded
    rooms.mud loaded
    dung.mud loaded
    impl.mud loaded
    sr.mud loaded
    syntax.mud loaded
    typhak.mud loaded
    util.mud loaded
    This Zork created August 2, 2009.
    West of House
    This is an open field west of a white house, with a boarded front door.
    There is a small mailbox here.
    A rubber mat saying 'Welcome to Zork!' lies by the door.
    "DONE"
    >_

If the above output appears then congratulations, you're running MDL Zork!
This will also have written out a new "MDL\MADADV.SAVE" file, containing an
image of the game. In future you can re-load the initialized game image by
running MDLI with its "-r" option, like so

    >mdli -r MDL\MADADV.SAVE
    Welcome to 'Confusion', a MDL interpreter.
    Copyright 2009 Matthew T. Russotto
    This program comes with ABSOLUTELY NO WARRANTY; for details type
    <WARRANTY>.
    This is free software, and you are welcome to distribute under certain
    conditions; type <COPYING> for details

    This Zork created August 2, 2009.
    West of House
    This is an open field west of a white house, with a boarded front door.
    There is a small mailbox here.
    A rubber mat saying 'Welcome to Zork!' lies by the door.
    >_

Note that the MDL Zork sources come with a "MDL\MADADV.SAVE" file, but this
appears not to work as-is: possibly it was generated by Matthew with an
earlier, incompatible version of the MDLI interpreter.

Patching the Original MDL Zork
------------------------------

As an alternative to the above link, the original, unmodified MDL Zork
sources can be downloaded from here

    http://simh.trailing-edge.com/software.html

These will need to have Matthew's patches applied. These can be downloaded
from the IF-Archive:

    http://www.ifarchive.org/indexes/if-archiveXprogrammingXmdlXinterpretersXconfusion.html

Building Confusion
------------------

For details of how to build Confusion on Windows, see the files in the
"source" directory.

