Free Software for OpenVMS and Windows
Visit again periodically to see what is new, and don’t forget to send me some feedback on the freeware. Latest addition: a Motif logging program for LinkSys Firewall Gateway Routers.
This page contains a collection of Unix and X11 or Motif utilities which I’ve written for or ported to VMS, for both VAX and Alpha. The word porting7 doesn’t necessarily imply that I did much work ! If the code was written in ANSI C, it probably means that I wrote a DESCRIP.MMS (for use with MMK which you can download from ftp.wku.edu ) and added a SETUP.COM to create the foreign command verb. Most of this software should also work under Unix and MS-DOS. New additions for VMS and Windows 2000, XP and 2003 Server are also being added, and soon I will be adding a .Net Frameworks based utility. Please send your comments before you leave.
Each .zip file now has a detached PGP signature file so you can be sure it hasn’t been altered since I put it on the server. You can download my public key here or get it from a key server such as MIT PGP Public Key Server, or the PGP Global Directory . N.B. You don’t actually need PGP to use the software below (except for PGP_FROM_TPU of course) – the signature files are just a way of guaranteeing that my .zip files haven’t been tampered with. Though this software is all free for download and use, it isn’t necessarily public domain, and should not be distributed elsewhere, and certainly not modified or sold, without permission of the author.
You might also like to visit Patrick Moreau’s CENA FTP Mirror site for an excellent collection of X and Motif programs ported to VMS, and the XVMSUTILS package (getopt, getpwuid and other Unix functions). Some excellent OpenVMS utilities can be found on Hunter Goatley’s site, and at the Process Software archives.
To get a free VMS Hobbyist license, along with free Motif, TCP/IP C, C++ and other layered product licenses to let you compile and run these programs, visit the VMS Hobbyist License site.
The critically acclaimed AscToHTM tool, which intelligently converts text documents to HTML,automatically handling bulleted lists, emphasis, tables and code samples, is available for free to VMS users at JafSoft, and there are Windows versions too that are very are reasonably priced. I’m not just saying that because I used to work with Jaf. I’m saying it because he threatened physical violence if I didn’t 😉 Just kidding – it’s a great utility.
LinkSys Router Logging Program (Updated: 10-Aug-2002)
This utility is a Motif/X-Windows application for OpenVMS VAX and Alpha machines which enables them to display and save the logging information broadcast by LinkSys gateway firewall/routers such as the BEFSR41. It displays the inbound and outbound connections being made, or refused, through the firewall, and allows you to do text searches and copy to the clipboard. The window is split into two panes, one for inbound and one for outbound connections. The displayed lists can optionally be filtered by port number and/or IP address, though all information is still captured in the log file. The LINKSYSLOG.HLP file describes the various options available, such as beeping on incoming connections, and changing the log file name.
Download the source code and binaries for VAX VMS 6.2 and Alpha VMS 7.3 in LINKSYSLOG.ZIP (284816 bytes)
Detached LINKSYSLOG.SIG PGP signature file
VMS Performance Meter V2.5 (Updated: 21-Mar-2000)
Originally written for the old VWS window system by Robert Heller, this program was enhanced, converted to Motif and made to work on Alphas by myself, Mark Pizzolato, Joe Kazimierczyk, and Dean Schamberger, yielding the 2.3 VMS Performance Meter. The 2.4 version was modified by me to optionally use a “dynamic” icon display. When the Performance Meter is iconized the state bar graph, showing different coloured bars for User, Supervisor, Executive, Kernel and Interrupt time is displayed in the icon window. When the application is “out on the desktop”, the CPU state, a history graph, and various disk and memory statistics are displayed in addition to the state graph. Certain memory leaks in the old code have been identified and fixed. Clicking on the “top CPU” process toggle button brings up and additional window with more information about that process.
Another new feature is the “tomato of memory”, which appears in the graph window and icon window. It shows a pie chart of free and modified pages against total memory.
Slight changes have been made to window titles, so that system version and memory are shown in the man window title bar, and the icon title has had the machine name moved to the start to make life easier if you SET DISPLAY/NODE=node to one machine from several different nodes. Using the remote display feature of X Windows I have simultaneously monitored 27 different machines from one workstation.
Thanks to Chris Sharman the 2.5 version has had corrections made to the CPU percentage calculations which should ensure that you don’t see anything using more than 100 percent of the CPU.
Full source code is provided. It can be built using MAKE_PERF_METER.COM, and runs on VAX VMS V5.5 -> V7.3, Alpha VMS V6.1 -> V7.3 (not tested on 1.5 but it should work), and is compatible with Motif 1.1 to Motif 1.2-4. Edit the command file
PERF_METER.COM and add
@disk:[dir]PERF_METER.COM to your Applications Menu to run the Performance Meter.
Download the source code in PERF_METER-2-5.ZIP (117005 bytes)
Detached PERF_METER-2-5 PGP signature file
Precompiled binaries (and PGP signatures) for VAX VMS 5.5-2 to 7.3 and Alpha VMS 6.2 to 7.3 can also be found in this browseable directory.
WHOIS (Updated: 31-Mar-2002)
There are two versions of WHOIS here; a Windows NT, 2000, XP, 98 or 95 MFC Intel/Alpha version, (binaries only), and a command line version with source code and “make file” for both Windows NT and OpenVMS VAX or Alpha. The first program is a command line “whois” client, as described in RFC954, written by me to work on VMS and Windows NT to XP. It lets you send a query about an internet domain to a suitable server. At the moment it detects .com, .mil, .uk and various other domains and tries to pick a sensible server, though this list will probably be expanded in future. It also tries to do the lookup again if the first server redirects it to another place for the lookup. If you know the server that you want to use you can force that with a command line switch. Here’s some examples.
$ WHOIS Usage: whois [ -h nic_server ] name_to_find [ > output_file ] For a list of whois servers try: whois -h whois.indiana.edu whois-servers $ WHOIS jafsoft.co.uk Using WHOIS server whois.nic.uk, port 43, to find jafsoft.co.uk Domain Name: jafsoft.co.uk Registrant: Jafsoft Ltd . .
It builds on VAX or Alpha VMS 6.2 to 7.3 with UCX 4.2 or TCPIP 5.1, and Windows NT 4.0, 2000 or XP. Under VMS you can build it using MMS or MMK, or @MAKE if you don’t have those. Set up the foreign command symbol with @SETUP .
For Window set up the C++ environment variables by running the setup batch file, e.g. C:\”Program Files”\”Microsoft Visual Studio”\VC98\bin\vcvars32.bat then use
and copy the executable to a directory in your command PATH. The command is used in exactly the same way on Windows and VMS systems.
Command line WHOIS utility for VAX and Alpha VMS, and Windows XP.
Download the source and binaries in WHOIS.ZIP (70315 bytes)
Detached WhoIs PGP signature file
Here are the binaries for a Windows Visual C++ WHOIS client, also written by me. Just pop them in a subdirectory of your choice and add a shortcut to “whois.exe”. You will need the MFC run-time libraries installed, which you should obtain from a trusted source like http://www.winsite.com/info/pc/win95/misc/mfc42.zip/ (they are free). I have recently added an InstallShield version of the Windows WHOIS client, but you’ll still need to put the MFC42 ddl’s into your system directory by hand.
Download the Intel binaries in WinWHOISI.ZIP (12713 bytes)
Detached WinWHOISI PGP signature file
Or download the Intel InstallShield WhoIsI.zip (565713 bytes)
This is the same program as the above, but InstallShield unpacks and sets everything up for you.
Detached WhoIsI PGP signature file
Download the Alpha binaries in WinWHOISA.ZIP (14514 bytes)
Detached WinWHOISA PGP signature file
Web Count 2.4 (Updated: 31-Mar-2001)
This is a VMS port of Muhammad A Muquit’s popular Web Count 2.4 program. It displays a web page’s hit count in a number of formats, including the “car odometer” style. Time and dates can also be shown. It has been tested on VAX and Alpha VMS 6.2, using the DECthreads OSU HTTP Server Versions 1.9 through 3.9, and now Purveyor too. You will need DEC C to build it, not VAX C. Gnu C should work if you build the counter using Robert Byer’s GCC_MAKE_COUNT.COM then use INSTALL.COM (which normally builds and installs) to just install it. INSTALL.COM now handles MMS better, though some people have reported that MMS can fall over. The counter at the top of this page is produced by Web Count 2.4P. This new version has Purveyor support and full VMS lock manager locking of the counter data files. This was provided by Neil Rieck. For an overall view of what the counter does see
There are some restrictions in the VMS version. For example, I don’t allow any explicit df=datafile. The referring URL is tweaked into a VMS file name by a routine kindly written by my colleague Gonzalo San Martin, and this is used to store the hits on the page. The July 1997 maintenance release puts a “no-cache” fix in COUNT.COM, thanks to Philip Taylor of RHBNC.
I can’t promise any support, but will try to help if you drop me a mail. The file README.VMS included in the distribution explains how to build and install the counter.
Download the source WWWCOUNT2_4P.ZIP (561525 bytes)
Detached WWWCOUNT2_4 PGP signature file
MBOX (Updated: 28-Apr-1997)
This is VMS guru Neill Clift‘s
utility to display information about a mailbox and the messages it contains. It
accepts wildcards, and the /GROUP qualifier makes it easy to limit the view to
mailboxes in a particular UIC group. This version works on VMS version 5.5 to
7.3, VAX and Alpha.
Download the source MBOX.ZIP (23040 bytes)
Detached MBOX PGP signature file
Using PGP from TPU on VMS (Updated: 03-Apr-1997)
This is a TPU macro and a command file I wrote to integrate PGP into VMS mail,
or any application that allows you to use the TPU editor. The macro works with
both the VT terminal TPU editor and the DECwindows Motif EVE editor. The
pgp_from_tpu.txt file contains a command file to set up the PGP command and associated logical names, plus the TPU macro and installation instructions.
See Stale Schumacher’s International PGP Home Page for details on obtaining Pretty Good Privacy. This TPU macro is also available from Stale’s PGP tools & add-ons page.
XBeeb (Updated: 05-MAR-1997)
This is a VMS port of James Fidell’s XBeeb program which emulates a BBC Model B microcomputer. Because of copyright reasons, I can’t make the BBC OS ROM
available here, but if you mail me I will help you take a copy from an old Beeb that you might have access
to. It runs under VMS 6.2 onwards, VAX and Alpha, and compiles with DEC C 5.3 onwards. Make sure you read the README.VMS file, which explains how to build the program, install the Teletext fonts on your workstation, and how to turn off automatic KeyRelease events on VAXstations. A “must have” for BBC micro nostalgia sufferers.
Download the source XBEEB-0_3.ZIP (376821 bytes)
Detached XBEEB-0_3 PGP signature file
Mandelsteg (Updated: 26-FEB-1997)
This is a VMS port of Henry Hastur’s MANDELSTEG and GIFEXTRACT programs
which uses .GIF files of parts of the Mandelbrot set to hide or extract data.
It is used like this:
$ mandelsteg -e mandel.gif < somefile
This will hide the contents of somefile in a 640×480 pixel image in MANDEL.GIF . It works with text files or binaries (but see below for a caveat), but is really “intended” to hide PGP encrypted files – preferably ones that have had their headers stripped with the Stealth program, but I haven’t ported that yet.
To extract the hidden file
$ gifextract mandel.gif > output_file
The output from GIFEXTRACT seems to get padded with blank characters (or random characters if you use the -r option on encoding) and this can give error messages about over long records when you edit the output file. If, as is intended, you put a PGP output file in the .GIF, then it doesn’t really matter because PGP correctly interprets the output. Please let me know if you discover a workaround that doesn’t prevent the utilities working on files produced on other platforms.
One of the pictures on this page has a message hidden in it. No prizes for guessing which one, but do drop me a mail if you successfully decode it.
Download the source MANDSTEG.ZIP (50992 bytes)
Detached MANDSTEG PGP signature file
TGD and GD (Updated: 08-MAY-1997)
TGD, written by Bradley K. Sherman, reads in text files containing commands to write out GIF files. It can be used with plain text files, or in conjunction with Perl or some other scripting language if you want to do clever stuff. This makes it ideal for creating dynamic GIFs for Web Servers such as the OSU DECthreads HTTP Server
This distribution also contains source for Tom Boutell’s GD library, required by
TGD. The May 1997 update of this software comprises a TGD.HLP file kindly provided by Martin P.J. Zinser, and a README.VMS file which I was too lazy to write when I first released the code.
Download the source TGD1_2C.ZIP (247914 bytes)
Detached TGD1_2C PGP signature file
LiteClue 1.3 (Updated: 17-Jan-1997)
This is a VMS port of Gary Aviv’s
LiteClue X Windows “help bubble” program. It Works with Motif and Athena
widgets, popping up a little box of help text if the mouse pointer lingers over
a particular widget for more than specified period.
Gary works for Computer Generation Incorporated (CGI), and US browsers may wish to obtain LiteClue from CGI’s FTP server.
The distribution contains the manual in PostScript, HTML and plain text format. It’s very easy to add a LiteClue to a Widget, and both Motif and Athena example programs are included.
Download the source LiteClue.zip (40614 bytes)
Detached LiteClue PGP signature file
GIFMerge (Updated: 27-Feb-1997)
I’ve updated my port of the excellent GIF Animation tool GIFMerge, written by Rene Mueller, to VMS VAX and Alpha.
Build it with MMK and @SETUP.COM to set up a foreign symbol pointing to the appropriate executable. Wildcard expansion and the Unix > pipe are now all done in the program so you can use it just like the Unix version; “gifmerge -h” tells you how. The -pos arguments for small, incremental GIF merges should now work correctly.
Example: $ @some$disk:[PDS.GIFMERGE]GIFMERGE ! Set up the command $ gifmerge -25 -l0 step%.gif > animated.gif ^ ^ ^ ^ | | | | Centisec delay | | Output file spec | | 0 = Loop forever | | Wildcard input spec
Download the source GIFMERGE.ZIP (11739 bytes)
Detached GIFMERGE PGP signature file
GIFShuf and SNOW (Updated: 23-Dec-1998)
These are VMS ports for VAX and Alpha of Matthew Kwan’s GIFShuffle and SNOW, which are both “steganographical” tools, just for a bit of fun.
SNOW lets you conceal messages in the whitespace of an ASCII text file, optionally using the ICE algorithm for encryption too. GIFShuffle uses cunning colour map ordering to conceal information, and also provides compression and encryption. All Matthews code is copyright free, but I’m sure he’d like an acknowledgement if you use it in your own programs. After unzipping the sources (they unpack into
[.SNOW]) go into each directory and build the program with MMK or MMS, then @SETUP.COM to create a foreign symbol pointing to the appropriate executable. Here are some examples showing how to use the programs.
$ gifshuf -h ! Get help on GIFShuf $ gifshuf -m “Hello World” in.gif out.gif ! Hide message in GIF $ gifshuf gifshuf.gif ! Extract message from GIF $ snow -h ! Get help SNOW $ snow “-C” titanic.txt ! Decode the message in titanic.txt
Download the source GIFShuf.ZIP (132210 bytes)
Detached GIFShuf PGP signature file
Download the source SNOW.ZIP (89546 bytes)
Detached SNOW PGP signature file
That’s All Folks !
More programs will be added as I get time to port them. Please send me your
comments and (printable) suggestions.