/
umud/DOC/
umud/DOC/examples/
umud/DOC/internals/
umud/DOC/wizard/
umud/MISC/
umud/MISC/dbchk/
umud/RWHO/rwhod/
Files in the VMS port kit:

vms.readme	-- this file
net_vms.c	-- player-type net layer for MultiNet
xmit_vms.c	-- server-to-server net layer for MultiNet

makemud.vms	-- DCL script to build everything
[.rwho]makerwho.vms	-- DCL script to build the RWHO library
[.db]makedb.vms	-- DCL script to build the DB library and vms_load
[.cmd]makecmd.vms	-- DCL script to build the command library

[.db]vms_dbm.c	-- dbm emulator for VMS (using RMS indexed files)
[.db]vms_dbm.h	-- header file for above
[.db]vms_load.c	-- DB loader for conversion of flat OIF to dbm format

	-- Use the files net_vms.c and xmit_vms.c to provide networking
services. These will work only with the MultiNet networking software, and may
need the #include directives tweaked around a little. Where people put the
header files is not entirely standard. Likewise, of course, the tweaked
variations on this theme should be used below.

	-- DB layer is provided by [.db]vms_dbm.c and [.db]vms_dbm.h. The
The hashed dir and gdbm layers are NOT supported, only dbm, and that is
emulated well enough for this application only. Also, vms_load.c replaces
loaddb.c & expr.c, while dumpdb.c is not provided at this time (use _mudconfig
backup from inside your server to do a dump, if you like). NOTE: vms_load is
equivalent to, but not a clone of, loaddb. The parameters are *different*.
To wit, the flags are:
	-i <input oif file>
	-o <output database name>
	-v (optional: sets verbose mode)
	-Ci (optional: indicates that input file is compressed)
	-Co (optional: generates a compressed output file)

	The output DB name should NOT have a file name extension. I.E.
'mymud' is fine, 'mymud.db' is NOT, the '.db' bit is wrong.

	-- startup and config files -- use VMS style paths therein.

config.h issues
---------------
	- set up the config.h file as indicated therein for VMS, and put in a
#define VMS for luck, if it's not there.
	- Turn off ALL database options of any kind (even the ones that
'can all be on') except those pertaining to dbm. You want dbm, not OLDDBM.
	- You may use RWHO if you like. If you are not using it, you will
want to alter makemud.vms to not build that library, and not link the
server to it.
	- You don't want DAEMON or SETSID.
	- You do want the index() defined to strchr(), random() to rand()
and srandom to srand(). Include math.h., and string.h.
	- Crank MAXOID down to 28 (reasons buried in the DB layer).

-----------------------

The following stuff should all be done by setting up the right defines
in config.h:

	2) [.umud]cmd.c and [.umud]mud.c seem to include <sys/param.h>, and
nothing gets upset if you don't include it. Beats me why the Unix version
wants it.

	3) [.umud]misc.c demands that you include <time.h>. I am not clear on
why the Unix version does not.

	5) dbmchunk.c needs a totally new set of includes, as it does unix
style I/O and the usage of NONSYSTYPES_H etc is not consistent herein. To be
exact:

#include        <stdio.h>
#include        <types.h>
#include        <file.h>
#include        <unixio.h>
#include        "vms_dbm.h"

	instead of:

#include        <stdio.h>
#include        <sys/param.h>
#include        <sys/types.h>
#include        <sys/stat.h>
#include        <sys/file.h>
etc.. do not include dbm.h or any of its friends either.

	6) RWHO gear. Works fine, though the includes in clilib.c need to be
changed around a bunch. In particular, after all the usual includes that VMS has
(ctype, stdio, etc..) stop including Unix goo and include:

#include        "multinet_root:[multinet.include.sys]types.h"
#include        "multinet_root:[multinet.include.sys]socket.h"
#include        "multinet_root:[multinet.include.netinet]in.h"
#include        "multinet_root:[multinet.include]netdb.h"

	roughly, instead of the equivalent Unix files.
	In updat.c include types.h instead of sys/types.h. If NONSYSTYPES_H was
set up right, you would not have to do this.