SWLPC
~~~~~
This is Shattered World's Game Driver.
The code that forms this driver is derived from a number of
sources especially from Lars Pensj| who initially devised LPC (the
first version of the interpreted language herein). A large amount of
the code has been written or rewritten by Mike McGaughey and Geoff Wong.
The C code that forms the Shattered World "game driver" (all
the code except that in the "M" sub-directory) shall be
copyrighted under the GNU Public License; refer to the file
"Copying" distributed with this code in this directory.
Compiling isn't as straightforward as it should be.
You need to edit gd_config.h to contain the correct
options you wish to compile for.
Notes on the Makefile
~~~~~~~~~~~~~~~~~~~~~
You must use GNU make.
You must make the GC malloc library first if you use
it (by default in the Makefile). GC is in the directory "GC"!
The Makefile dependency checking is somewhat broken
at the moment.
Notes on the Organisation
~~~~~~~~~~~~~~~~~~~~~~~~~
The virtual machine which executes the compiled bytecodes
is in the "lpvm" subdirectory. I've been trying to totally
isolate this from the runtime system. It's not quite there yet.
Garbage collection is partly reference counted and partly
reliant on "GC" (Boehm's garbage collector). It's found
in the "GC" subdirectory.
A secondary testing malloc package is in the "leak" subdirectory.
The compiler and runtime systems are still tied together
in the "lpc" directory. Eventually it is intended
that these will be split (as I intend to have all
runtime support in LPC rather than in C).
The "M" directory is a micro-mudlib enabling you to get started.
Geoff Wong