Spider, Games, Solitaire Installation To rebuild spider from the sources just execute @make.com. This will check for the availability of MMS/MMK and use either one of these or perform a pure DCL build. The build process depends on a correct installation of the Xaw library, as well as definitions(see below) for the associated shareable images and include files. In case you haven't upgraded to OpenVMS 7.x yet also the Xvmsutils are needed. The installation procedure will check for the libraries if necessary and issue appropriate messages before attempting to build spider. During the build no further input is required. Setup During runtime you should have a logical named SPIDER_DIR defined, which points to the directory where you keep the documentation for Spider (doc.* files of the distribution). These are needed by the help system of Spider. Hints The random algorithm to select the cards is seeded with the process id, i.e. if you invoke Spider twice from the same session you'll get the same sequence of games. To avoid this you might want to spawn a new process to run Spider in. The command I usually use for this is spawn/nowait/notify/input=nl:/output=sys$scratch:do.log (and since I'm lazy I do have a symbol named DO to avoid typing this long command over and over again). Installation of Xaw3d/Xmu Shareable Images The result of the built are two shareable images, one for Xaw3d and one for Xmu. Although one can give a full path for a shareable image at link time, OpenVMS does expect to find the file in sys$share at runtime. OTOH for various reasons one might not want/be able to place the files in this location. To solve this problem just define a logical with the same name as the shareable image and point with this to the location of the image in the filesystem, e.g. on my system I have: $ sh log xmulibshr "XMULIBSHR" = "PUBBIN:XMULIBSHR" (LNM$PROCESS_TABLE) $ sh log xaw3dlibshr "XAW3DLIBSHR" = "PUBBIN:XAW3DLIBSHR" (LNM$PROCESS_TABLE) Header files Source files ported from a Unix system often contain include statements like this #include , which reflects the organization of these files on this OS, i.e. the header files for Xmu/Xaw(3d)/... are located in a sub-directory of the one containing the X11 header files. To be able to work with syntax like this on an OpenVMS system one has to tweak the usual definition of the logical X11 a bit ;-). One thing is that one has to make X11 a rooted logical, so that a path like x11:[xmu] (which is what the above translates to on OpenVMS) makes sense. The second is that once again one might want to separate the header files delivered by Digital from the ones coming with this package. To do this create a toplevel directory as the home for non-DEC header files and add to this subdirectories named xmu and xaw. Copy the header-files from the distribution to these new directories. As an example the definition on my system looks like this: $ sh log x11 "X11" = "X11ADD" (LNM$PROCESS_TABLE) = "X11ADD:[XPM.LIB]" = "DECW$INCLUDE" = "PUBBIN" 1 "X11ADD" = "DKA300:[PUBLIC.XTOOLS.LIBS.]" (LNM$PROCESS_TABLE) 1 "DECW$INCLUDE" = "SYS$SYSROOT:[DECW$INCLUDE]" (DECW$LOGICAL_NAMES) = "SYS$SYSROOT:[DECW$INCLUDE.EXTENSIONS]" 1 "PUBBIN" = "PUBLIC$ROOT:[AEXE]" (LNM$PROCESS_TABLE) "X11" = "DECW$INCLUDE" (DECW$LOGICAL_NAMES) 1 "DECW$INCLUDE" = "SYS$SYSROOT:[DECW$INCLUDE]" (DECW$LOGICAL_NAMES) = "SYS$SYSROOT:[DECW$INCLUDE.EXTENSIONS]" x11add Rooted logicals have to be first in the list (in this case x11add), also note that a rooted logical may not contain another rooted logical in its definition. x11add:[xpm.lib] Location of the X Pixmap Library header files. On Unix they are stored directly in the X11 directory. decw$include Also get the standard header files ;-) pubbin Actually not the location of header files, but rather the place where I keep my libraries. In some circumstances usefull for linking purposes. The latest version of the OpenVMS port of Spider should always be accessible via http://zinser.no-ip.info/vms/sw/spider.htmlx