This is the Frequently Asked Questions (FAQ) posting for the comp.os.vms and vmsnet.misc newsgroups. (comp.os.vms is bidirectionally-gatewayed to the INFO-VAX mailing list - see below for further details.) It contains answers to frequently asked questions about Digital's OpenVMS operating system and the computer systems on which it runs. This FAQ is archived in the following locations: comp.answers and news.answers newsgroups ftp://ftp.digital.com/pub/DEC/dec-faq ftp://rtfm.mit.edu/ http://www.cis.ohio-state.edu/hypertext/faq/usenet/ The archive name for this FAQ is dec-faq/vms To make suggestions for changes or additions to this Frequently Asked Questions list, send mail to the editor at lionel@quark.enet.dec.com. Answers are especially appreciated. Some general notes: The term "VMS" is synonymous with "OpenVMS". "Alpha" or "AXP" generally refers to any system based on Digital's Alpha AXP processor architecture. OpenVMS manual names mentioned are those as of V6.1 - names may be different in earlier editions of the documentation set. World-Wide Web Universal Resource Locator (URL) notation is used for FTP addresses. Many people have contributed to this list, directly or indirectly. In some cases, an answer has been adapted from one or more postings on the comp.os.vms newsgroup. Our thanks to all of those who post answers. The name (or names) at the end of an entry indicate that the information was taken from postings by those individuals; the text may have been edited for this FAQ. These citations are only given to acknowledge the contribution. Although the editor of this FAQ is an employee of Digital Equipment Corporation, this posting is not an official statement from Digital Equipment Corporation. Alpha AXP, AXP, DEC, OpenVMS, VAX and VMS are trademarks of Digital Equipment Corporation. Other names are properties of their respective owners. Changes since last edition ======================================== AXP2 page size corrected, text expanded. DECW1 comment about DECNET node names added. DECW9 added. FILE3 text on fsync expanded. INTRO5 expanded. PROG2 description of how to tell if you were invoked by a CLI expanded. PROG9 added. SOFT1 expanded UTIL1 added. Introduction ======================================== INTRO1. What is the scope of comp.os.vms? INTRO2. What other newsgroups carry VMS-related information? INTRO3. What is INFO-VAX? INTRO4. How do I subscribe to or unsubscribe from INFO-VAX? INTRO5. How do I submit a question or a response? INTRO6. What is DECUS? General questions about OpenVMS ======================================== VMS1. What is OpenVMS? What is its history? VMS2. What is the difference between VMS and OpenVMS? VMS3. How do I port from VMS to OpenVMS? VMS4. Which is better - OpenVMS or UNIX? Alpha AXP ======================================== AXP1. What do the letters AXP stand for? AXP2. What are the OpenVMS differences between VAX and AXP? AXP3. Are there Alpha AXP systems on the net I can try out? AXP4. How do I join Digital's Independent Software Vendor program? Documentation and other resources ======================================== DOC1. Where can I find online copies of OpenVMS manuals? DOC2. What online information is available from Digital? DOC3. What books and publications are available? System Management ======================================== MGMT1. What is an installed image? MGMT2. Are there any known viruses for OpenVMS? MGMT3. How do I mount an ISO-9660 CD on OpenVMS? MAIL ======================================== MAIL1. How do I send Internet mail? MAIL2. How do I get IN% or MX% added automatically to Internet addresses? MAIL3. How do I automatically append a signature file to my mail messages? MAIL4. Do I have to use VMS MAIL? I like my Unix mailer better. MAIL5. How can I forward my mail? Can I forward it to an Internet address? MAIL6. How can I forward my mail to a list of addresses? MAIL7. MAIL keeps saying I have new messages, but I don't. What do I do? Other Utilities ======================================== UTIL1. How do I play an audio CD on my workstation? DCL and command usage ======================================== DCL1. How do I run a program with arguments? DCL2. How can I redefine control keys in DCL? DCL3. How can I clear the screen in DCL? File System and RMS ======================================== FILE1. How can I undelete a file? FILE2. Why does SHOW QUOTA give a different answer than DIR/SIZE? FILE3. How do I make sure that my data is safely written to disk? Programming ======================================== PROG1. How do I call from ? PROG2. How do I get the arguments from the command line? PROG3. How do I get a formatted error message in a variable? PROG4. How do I link against SYS$SYSTEM:SYS.STB on an AXP system? PROG5. How do I do a SET DEFAULT from inside a program? PROG6. How do I create a shareable image transfer vector on an AXP system? PROG7. How do I turn my Fortran COMMON into a shareable image on AXP? PROG8. How do I convert between IEEE and VAX floating data? PROG9. How do I get the argument count in a Fortran routine? DECwindows ======================================== DECW1. How do I let someone else display something on my workstation? DECW2. How do I create a display on another workstation? DECW3. How can I get the information from SHOW DISPLAY into a symbol? DECW4. How do I get a log of a DECterm session? DECW5. Problem - the DELETE key deletes forward instead of backward! DECW6. Problem - On a DEC2000-300, Motif doesn't start DECW7. Problem - My LK401 keyboard unexpectedly autorepeats DECW8. Problem - My LK411 sends the wrong keycodes or some keys are dead DECW9. How do I set the title on a DECterm window? Software ======================================== SOFT1. Where can I find lots of free software for OpenVMS? ------------------------------------------------------------ INTRO1. What is the scope of comp.os.vms? The comp.os.vms newsgroup is the primary newsgroup for discussion of Digital's OpenVMS operating system and the computer systems on which it runs. Questions about layered products which run on OpenVMS are also welcome, though many of them (in particular, language compilers and database systems) have more specific newsgroups. If a question has some relationship to OpenVMS, it belongs here. ------------------------------------------------------------ INTRO2. What other newsgroups carry VMS-related information? The vmsnet.* hierarchy, run by DECUS, contains several newsgroups of interest, including vmsnet.misc and vmsnet.alpha, the latter being mostly devoted to Alpha AXP topics. There's also vmsnet.sources (and vmsnet.sources.d) to which sources for or pointers to freeware are posted. See the separate "What is VMSNET" monthly posting for further details. The comp.sys.dec newsgroup carries discussions about all Digital systems as well as about Digital itself. ------------------------------------------------------------ INTRO3. What is INFO-VAX? INFO-VAX is a mailing list which is bidirectionally gatewayed to the comp.os.vms newsgroup. This means that postings to comp.os.vms get automatically sent to INFO-VAX subscribers and messages sent to the INFO-VAX list are automatically posted to comp.os.vms. INFO-VAX can be a useful way to participate in the newsgroup if you can't access the group directly through a news reader. An important point to keep in mind is that propagation delays vary, both within the newsgroup and with INFO-VAX mailings. It's possible that postings may not be delivered for several days and some may appear out of order. ------------------------------------------------------------ INTRO4. How do I subscribe to or unsubscribe from INFO-VAX? The address for subscription requests, as well as notes intended for the moderator, is Info-VAX-Request@Mvb.Saic.Com. Subscription requests are handled automatically by a mail server. This mail server ignores the subject line and processes each line of the message as a command. The syntax for subscribing and unsubscribing to this mailing list is as follows: SUBSCRIBE INFO-VAX (ADD is a valid synonym) UNSUBSCRIBE INFO-VAX (REMOVE, SIGNOFF, and SIGN-OFF are valid synonyms) Case is irrelevant and attempts to fetch a copy of the mailing list will be rejected (I consider the information to be confidential). Any message not understood by the mailserver will be forwarded to a human (allegedly) for manual processing. [Mark.Berryman@Mvb.Saic.Com] If you are on Bitnet, send a mail message containing the text "SUBSCRIBE INFO-VAX" to LISTSERV@(nearest listserv system). To unsubscribe, send a message containing the text "SIGNOFF INFO-VAX" to the *SAME* listserv address. If you are on the Internet in the UK, send a message containing the word SUBSCRIBE (or UNSUBSCRIBE) to info-vax-request@ncdlab.ulcc.ac.uk. ------------------------------------------------------------ INTRO5. How do I submit a question or a response? If you are using a news reader, post your question to comp.os.vms. If you want to submit through INFO-VAX, send the message to Info-VAX@mvb.saic.com. Before posting, please use available local resources, such as the manuals, HELP and this FAQ first. Also make a point of reading the release notes for the product you're using, generally placed in SYS$HELP. Often you'll find the answer and will save time and effort for all concerned. When posting, please consider the following suggestions: 1. Include a valid e-mail address in the text of your posting or in a "signature" appended to the end. Reply-to addresses in headers often get garbled. 2. If you are submitting a question, please be as specific as you can. Include relevant information such as processor type, product versions (VMS and layered products that apply) and a short, reproducible example of problems. Say what you've tried so far, so that effort isn't duplicated. Keep in mind that there's not yet a telepathy protocol for the Internet - the more detailed your description, the better people can help you. 3. If responding to a posting, include in your reply only as much of the original posting as is necessary to establish context. As a guideline, consider that if you've included more text than you've added, you've possibly included too much. Never include signatures and other irrelevant material. 4. Be polite. If the question isn't worded the way you think is correct or doesn't include the information you want, try to imagine what the problem might be if viewed from the poster's perspective. Requests for additional information are often better sent through mail rather than posted to the newsgroup. 5. If you have a problem with Digital (or any vendor's) product, use the appropriate support channel. Don't assume that newsgroup postings will get read or responded to by the appropriate developers. ------------------------------------------------------------ INTRO6. What is DECUS? DECUS, the Digital Equipment Computer Users Society, is a World Wide organization of Information Technology professionals interested in the products, services, and technologies of Digital Equipment Corporation and related vendors. Membership in the Chapter is free and provides participants with the means to enhance their professional development, forums for technical training, mechanisms for obtaining up-to-date information, advocacy programs, and opportunities for informal disclosure and interaction with professional colleagues of like interest. For further information, see the separate monthly "What is DECUS" posting, or refer to the DECUS WWW server at http://www.decus.org . ------------------------------------------------------------ VMS1. What is OpenVMS? What is its history? OpenVMS, originally called VMS (Virtual Memory System), was first conceived in 1976 as a new operating system for Digital's new, 32-bit, virtual memory line of computers, eventually named VAX (Virtual Address eXtension). The first VAX model, the 11/780, was code-named "Star", hence the code name for the VMS operating system, "Starlet", a name that remains to this day the name for the system library files (STARLET.OLB, etc.). VMS version X0.5 was the first released to customers, in support of the hardware beta test of the VAX-11/780, in 1977. VAX/VMS Version V1.0 shipped in 1978, along with the first revenue-ship 11/780s. OpenVMS was designed entirely within Digital Equipment Corporation. The principal designers were Dave Cutler and Dick Hustvedt. OpenVMS was conceived as a 32-bit, virtual memory successor to Digital's RSX-11M operating system for the PDP-11. Many of the original designers and programmers of OpenVMS had worked previously on RSX-11M, and many concepts from RSX-11M were carried over to OpenVMS. OpenVMS is a 32-bit, multitasking, multiprocessing virtual memory operating system. Current implementations run on Digital's VAX and Alpha AXP computer systems. [winalski@gemgrp.enet.dec.com] For more details on OpenVMS and its features, read the OpenVMS Software Product Descriptions at: ftp://ftp.digital.com/pub/Digital/info/SPD/25-01-39.txt (OpenVMS VAX) ftp://ftp.digital.com/pub/Digital/info/SPD/41-87-02.txt (OpenVMS AXP) ------------------------------------------------------------ VMS2. What is the difference between VMS and OpenVMS? VMS and OpenVMS are two names for the same operating system. Originally, the operating system was called VAX-11/VMS; it changed to VAX/VMS at around VAX/VMS V2.0. When the VMS operating system was ported to the Alpha AXP platform, it was renamed OpenVMS, for both VAX and AXP, in part to signify the high degree of support for industry standards such as POSIX, which provides many features of UNIX systems. An OpenVMS license allows you to install and run POSIX for OpenVMS at no additional charge; all you need is the media and documentation which can be found on the Consolidated Distribution and On-Line Documentation CD-ROMs. For more information on POSIX for VMS see: ftp://ftp.digital.com/pub/Digital/info/pr-news/92060311FS.txt What became confusing is that the OpenVMS name was introduced first for OpenVMS AXP V1.0 causing the widespread misimpression that OpenVMS was for AXP only, while "regular VMS" was for VAX. In fact, Digital officially changed the name of the VAX operating system as of V5.5, though the name did not start to be actually used in the product until V6.0. The proper names for OpenVMS on the two platforms are "OpenVMS VAX" and "OpenVMS AXP". ------------------------------------------------------------ VMS3. How do I port from VMS to OpenVMS? You already did. Wasn't that easy? (See question VMS2.) ------------------------------------------------------------ VMS4. Which is better - OpenVMS or UNIX? This question comes up periodically, usually asked by new subscribers who are long-time UNIX users. Sometimes, it is ignored totally; other times, it leads to a long series of repetitive messages that convince no one and usually carry little if any new information. Please do everyone a favor and avoid re-starting this perpetual, fruitless debate. [leichter@lrw.com] Seriously, OpenVMS and the better implementations of UNIX are all fine operating systems, each with its strengths and weaknesses. If you're in a position where you need to choose, select the one that best fits your own requirements, considering, for example, whether or not the layered products or specific OS features you want are available. See also question VMS2 for information on POSIX for OpenVMS which provides significant UNIX functionality on OpenVMS. [lionel@quark.enet.dec.com] ------------------------------------------------------------ AXP1. What do the letters AXP stand for? While there are many fanciful "definitions" which have circulated widely, the truth is that AXP is not an abbreviation nor an acronym; the letters do not mean anything. They are just three letters chosen to form a trademark. When it came time to chose a "marketing name" for the Alpha AXP line, Digital was in a quandary. The internal "code name" for the project, Alpha, was widely known and would seem the ideal choice, but it was already in common use by a number of other companies and could not be trademarked. A well-known "name search" firm was hired and was asked to come up with two lists of possible names. The first list was intended to evoke the feeling of "extension to VAX", while the second list was to suggest "not a VAX". Unfortunately, none of the choices offered were any good; for example, "VAX 2000" was found on the first list while the second list contained "MONDO" (later to be used for a kids' soft drink). Shortly before announcement, a decision was made to name the new line ARA, for Advanced RISC Architecture. However, a Digital employee in Israel quickly pointed out that this name, if pronounced in the "obvious" manner, sounded very much like an Arabic word with decidely unfortunate connotations. Eventually, AXP was selected; the architecture would be referred to as "Alpha AXP" whereas products themselves would use just "AXP". Despite all this, everyone went on calling the new line "Alpha". Digital has recognized this by coining a new "AlphaGeneration" trademark to apply to all products (hardware, software and services) related to the Alpha AXP line. ------------------------------------------------------------ AXP2. What are the OpenVMS differences between VAX and AXP? Very few. As of OpenVMS V6.1, the VAX and AXP platforms are very close to "feature parity". Most applications can just be recompiled and run. Some differences to be aware of: - The default double-precision floating type on OpenVMS AXP is VAX G_float, whereas on VAX it is usually D_float. D_float is available on AXP, but D_float values are converted to G_float for computations and then converted back to D_float when stored. Because the G_float type has three fewer fraction bits than D_float, some applications may get different results. IEEE float types are also available on OpenVMS AXP. - Data alignment is extremely important for best performance on AXP. This means that data items should be allocated at addresses which are exact multiples of their sizes. Quadword alignment will offer the best performance, especially for character values and those smaller than 32 bits. Compilers will naturally align variables where they can and will issue warnings if they detect unaligned data items. - DEC C is the only C compiler Digital offers on OpenVMS AXP. It is compatible with DEC C on OpenVMS VAX, but is somewhat different from the older VAX C compiler most people are familiar with. Read up on the /EXTERN_MODEL and /STANDARD qualifiers to avoid the most common problems. - The page size on AXP systems is variable, but is at least 8K bytes. This can have some effect on applications which use the $CRMPSC system service as well as on the display of available memory pages. The page size is available from $GETSYI(SYI$_PAGE_SIZE). There are also a number of manuals which discuss migration to AXP. - "A Comparison of System Management on OpenVMS AXP and OpenVMS VAX" - "Migrating to an OpenVMS AXP System: Planning for Migration" - "Migrating to an OpenVMS AXP System: Porting VAX MACRO Code" - "Migrating to an OpenVMS AXP System: Recompiling and Relinking" These are part of the "AXP Migration Kit" (which is part of the "Programming Kit" - which in turn is part of the "Standard Set" if ordering documentation.) Check out the "Overview of OpenVMS Documentation" book on the Bookreader-based doc set included on the OpenVMS AXP V6.1 distribution CD for part numbers of both assorted "kits" and/or individual manuals. ------------------------------------------------------------ AXP3. Are there Alpha AXP systems on the net I can try out? Yes. Two OpenVMS AXP and two DEC OSF/1 AXP systems are available. Each has a wide variety of layered products installed and they can be used to test or port applications or just to "try it out". The systems are: OpenVMS: axpvms.pa.dec.com axpvms.cc.utexas.edu OSF/1: axposf.pa.dec.com axposf.stanford.edu To apply for a free account, telnet to the system of your choice and log in as axpguest; no password is required. ------------------------------------------------------------ AXP4. How do I join Digital's Independent Software Vendor program? Digital Equipment Corporation is evaluating a new service for members of our Independent Software Vendor Program. This potential new service will provide technical assistance to Independent Software Vendors who are porting their applications to the Alpha AXP platform. For more information, send mail to AXP-developer@digital.com ------------------------------------------------------------ DOC1. Where can I find online copies of OpenVMS manuals? Digital's OpenVMS documentation is copyrighted and is not freely available on the net. Documentation is offered in CD-ROM form through a subscription to the Consolidated On-Line Documentation (ConOLD) product. ConOLD manuals are readable with Bookreader, a viewer that is supplied with DECwindows Motif. VTBOOK, a viewer for Bookreader documents which is usable from character-cell terminals (eg. VTxxx) is available from the WKU VMS Freeware file server - see question SOFT1 for details. ------------------------------------------------------------ DOC2. What online information is available from Digital? On your OpenVMS system, the HELP command can provide a wealth of information, not only on DCL commands but on system services (HELP System_Services) and Run-Time Library routines (HELP RTL_Routines). The introduction displayed when you type the HELP command with no additional keywords provides further pointers. In SYS$COMMON:[SYSHLP.VMSDOC] (OpenVMS V6.0 or later) you'll find the following three files: VMSDOC_GLOSSARY.TXT - Glossary of OpenVMS terminology VMSDOC_OVERVIEW.TXT - Overview of OpenVMS documentation VMSDOC_MASTER_INDEX.TXT - Master index of OpenVMS documentation These files are optionally installed; some system managers may have selected not to install them or to put them in another location. If you cannot locate them, ask your system manager. Product information for just about everything Digital sells is available from Digital's Internet servers. If you're using a World-Wide-Web (WWW) browser, use http://www.digital.com/info.html For anonymous FTP access, log in to ftp.digital.com. Software Product Descriptions, performance data, product infosheets, release notes and much more are available. Digital's Multivendor Customer Services organization also hosts an Internet server. If you have a software support contract you can obtain patches from here - even without a contract you can browse through the "readme" files for correction kits. The WWW URL is http://www.service.digital.com/ For ftp access use ftp://ftp.service.digital.com/ A WWW version of the DECdirect catalog is also available at http://www.service.digital.com/ddi/html/ddhome.html Digital's Electronic Connection, also called "E-store", provides product information, prices and even lets you order online. For free access, TELNET to order.sales.digital.com or connect via modem at 800-234-1998. If you're on TYMNET, connect to ECONN. If you need to get pricing for Digital software licenses for your configuration, this is the place to get them. Information on Digital and on Digital hardware, software, products and services is available through various telephone numbers: 1-800-DIGITAL : voice : DECdirect products, books and services 1-800-PCBYDEC : voice : Digital PC hardware and software 1-800-DECINFO : voice : General Corporate Information 1-603-884-0924 : voice : (alternate number for above) 1-800-234-1998 : modem : The Digital Electronic Connection 1-800-DEC-2717 : voice : The DECchip Hotline 1-508-568-6868 : voice : (alternate number for above) ------------------------------------------------------------ DOC3. What books and publications are available? DEC Professional is alive and well. It's a monthly magazine that help you manage your Digital systems in a multivendor environment. Subscriptions are free to qualified Digital sites. Digital Systems Journal is a bimonthly magazine that contains more in-depth, hands-on, how-to information. Subscriptions are paid. If you're interested in acquiring a subscription to DEC Professional or Digital Systems Journal, contact Omeda Communications: 800-306-6332 708-564-1385 They'll send you everything you need. [morrison@elvis.cardinal.com] ------------------------------------------------------------ MGMT1. What is an installed image? The term "install" has two distinct meanings in OpenVMS. The first relates to "installing a product", which is done with either the SYS$UPDATE:VMSINSTAL.COM command procedure or the POLYCENTER Software Installation (PCSI) utility (PRODUCT command). The second meaning relates to the use of the INSTALL utility, which is what concerns us here. The INSTALL utility is used to identify to OpenVMS a specific copy of an image, either executable or shareable, which is to be given some set of enhanced properties. For example, when you issue the SET PASSWORD command, the image SYS$SYSTEM:SETP0.EXE is run. That image needs to have elevated privileges to perform its function. The other important attribute is /SHARED. This means that shareable parts of the image (typically read-only code and data) are loaded into memory only once and are shared among all users on a system. Executable images can be installed /SHARED as well as shareable library images. (The term "shareable" has dual meanings here, too. See the OpenVMS Programming Concepts Manual for further details.) It's important to note that there is no such thing as "installing a shareable image with privileges". The INSTALL utility will let you do it, but the privileges you specify will be ignored. To have a callable routine run with enhanced privileges that are not available to its caller, you must construct your routines as "user-written system services" and install the shareable image with the /PROTECT qualifier. See the OpenVMS Programming Concepts Manual for more information on user-written system services. Note also that in many cases the need to grant privileges to an image can be replaced with the use of the "Protected Subsystems" feature that grants a rights identifier to an image. See the OpenVMS Guide to System Security for information on Protected Subsystems. ------------------------------------------------------------ MGMT2. Are there any known viruses for OpenVMS? Viruses are very common on PCs because the PC operating systems such as MS-DOS and MacOS do not implement any sort of scheme to protect the operating system or the file system against hostile action by programs. On these operating systems, any running program can subvert the operating system and take over the hardware, at which point it can do anything it wishes, including hiding copies of itself in other programs or in the file system. This is not possible on VMS, Unix, MVS, and Windows NT, for two reasons. First, the operating system runs in a privileged mode in memory that is protected against modification by normal user programs. Any old program cannot take over the hardware as it can on PC operating systems. Secondly, VMS, Unix, MVS, and NT have file systems that can be set up so that non-privileged programs cannot modify system programs and files on disk. Both of these protection schemes mean that traditional PC virus schemes don't work on these OSes. It is possible for VMS, etc., to be infected by viruses, but to do so, the program containing the virus must be run from a user account that has amplified privileges. As long as the system administrator is careful that only trusted applications are run from such accounts (and this is generally the case), there is no danger from viruses. [winalski@gemgrp.enet.dec.com] To protect against viruses and other attempts at system interference or misuse, follow the recommendations in the "OpenVMS Guide to System Security". You may also want to consider optional software products which can monitor your system for intrusion or infection attempts. Digital offers the following products in this area: DECinspect Intrusion Detector POLYCENTER Security Reporting Facility POLYCENTER Security Compliance Manager [Contributions to this list welcomed] ------------------------------------------------------------ MGMT3. How do I mount an ISO-9660 CD on OpenVMS? ISO-9660 support was added in the following releases: OpenVMS VAX V6.0 OpenVMS AXP V1.5 OpenVMS VAX V5.5, use F11CD kit from InfoServer CD, or Consolidated Distribution CD under InfoServer, or Digital Customer Support - CSCPAT #1071012 Here's how to do it: $ MOUNT/MEDIA_FORMAT=CDROM device-name[:] [volume-label] Please refer to the OpenVMS MOUNT Utility Manual, especially the section regarding the MOUNT qualifier /UNDEFINED_FAT. From the OpenVMS release notes: Because ISO-9660 media can be mastered from platforms that do not support semantics of files containing predefined record formats, you may encounter ISO-9660 CD-ROMs with files that contain records for which no record format was specified. An example which works for most CD-ROMs is: $ MOUNT/MEDIA_FORMAT=CDROM/UNDEFINED_FAT=STREAM:2048 DUA0: FREEWARE This /UNDEFINED_FAT qualifier states, "For any file whose file attributes are 'undefined', return file attributes of 'stream', maximum record length 2048". [dunham@star.enet.dec.com] ------------------------------------------------------------ MAIL1. How do I send Internet mail? There is no one answer to this question. Internet mail is built upon the TCP/IP protocols, which are not directly supported by VMS. A number of implementations of TCP/IP for VMS are available, from Digital, from a number of other vendors, and even in a free "support it yourself" form. The MAIL program that comes with VMS does not directly support the mail format used on the Internet, but various programs have been written that use MAIL's "foreign protocol" facility to provide such support. To send mail through a foreign protocol by using an address syntax like IN%"fred@fred-host.flint.com". You *must* include the quotation marks Between them is the address in the format used by mail programs that support the Internet directly. The IN% - short for INternet - names the foreign protocol. On some systems, you use MX% or SMTP% instead. (MX is a widely used, free, mail handler; see question SOFT1. SMTP% is used by Digital's UCX TCP/IP product) Other systems may use some other name. If none of these prefixes work, ask your system manager for assistance. [leichter@lrw.com] ------------------------------------------------------------ MAIL2. How do I get IN% or MX% added automatically to Internet addresses? Get the MAILSHR_PATCH package (there's one each for VAX and AXP) from the WKU FILESERV server (see question SOFT1.) ------------------------------------------------------------ MAIL3. How do I automatically append a signature file to my mail messages? The basic MAIL utility which is shipped with VMS does not have an intrinsic mechanism for adding signature files. If you're using an enhanced mail handling package (e.g PMDF), however, it may have provisions for adding signature files to all messages it handles - check the documentation for details. In addition, it's common practice to use an editor to handle addition of `quotation marks' (e.g. >) and signature files to mail messages and news postings. There are several implementations of this for different editors available on the net; for one example, see the MAIL_EDIT package available at ftp://narnia.memst.edu/mail_edit_v1-4.zip [bailey@genetics.upenn.edu] Define the logical MAIL$EDIT to a COM-file, which looks something like the following: $ IF P1 .NES. "" $ THEN $ COPY 'P1', 'P2' $ ELSE $ COPY 'P2' $ ENDIF $ DEFINE/NOLOG SYS$INPUT SYS$COMMAND $ 'P2' $ EXIT Where is the name of the signature-file (including directory and disk) and is EDIT/EDT or EDIT/TPU (or your favorite editor). [ARNE@ko.hhs.dk] ------------------------------------------------------------ MAIL4. Do I have to use VMS MAIL? I like my Unix mailer better. Several Unix mailers have been ported to VMS, some by the vendors of specific TCP/IP packages, some by users who have made them freely available. See the documentation for your TCP/IP package, and refer to question SOFT1 for information about the availability of the free ports. [leichter@lrw.com] ------------------------------------------------------------ MAIL5. How can I forward my mail? Can I forward it to an Internet address? You can use the SET FORWARD command within MAIL to specify where you want all your mail forwarded to. Use SHOW FORWARD to see your current forwarding. To cancel all forwarding, type SET NOFORWARD. You can forward your mail to an Internet address, but you have to be careful because of the way MAIL handles special characters, such as quotation marks. First, determine the address you would use to send mail to the place you want to forward to - say, IN%"fred@fred-host.flint.com". Take that string and *double all the quotation marks*, producing IN%""fred@fred-host.flint.com"". Finally, wrap quotation marks around the outside and use the the result with SET FORWARD: MAIL>SET FORWARD "IN%""fred@fred-host.flint.com""" If you do SHOW FORWARD, you should now see: Your mail is being forwarded to IN%"fred@fred-host.flint.com". [leichter@lrw.com] ------------------------------------------------------------ MAIL6. How can I forward my mail to a list of addresses? VMS MAIL does not support forwarding a message to more than one address. (Older versions of MAIL allowed you to specify such forwarding, but it never worked correctly.) Many of the TCP/IP mail packages support forwarding to mailing lists, as does the free MX mail handling system and the DELIVER mail "extender". See the documentation of your TCP/IP package and question SOFT1. [leichter@lrw.com] ------------------------------------------------------------ MAIL7. MAIL keeps saying I have new messages, but I don't. What do I do? The count of new mail messages is kept separately from your mail folder in SYS$SYSTEM:VMSMAIL_PROFILE.DATA. It sometimes happens that this count differs from what's in your mail folder. If this happens, go into MAIL and repeat the READ/NEW command until you see no new mail messages. Then enter the command one more time. This will resynchronize the counters. ------------------------------------------------------------ UTIL1. How do I play an audio CD on my workstation? If you've installed the DECwindows examples, you'll find DECW$CDPLAYER.C, .DAT, .EXE, .UIL, and .UID. Copy the .UID and .DAT files to DECW$USER_DEFAULTS: (typically SYS$LOGIN:), define the logical name DECW$CD_PLAYER to be the device name of your CD-ROM drive (eg. DKA400:), give yourself PHY_IO and DIAGNOSE privileges, and run the .EXE. You can also install the image with these privileges. See the source for additional details - note that the comments regarding the need for SYSGEN CONNECT are no longer applicable (at least as of VMS V5.5-2). There's also SYS$EXAMPLES:CDROM_AUDIO.C and .EXE, a non-Motif program. ------------------------------------------------------------ DCL1. How do I run a program with arguments? The RUN command does not accept arguments. To pass arguments to a program, you must use what is called a "foreign command". For example: $ uudecode :== $disk:[dir]uudecode.exe $ uudecode filespec The leading $ in the symbol definition is what makes it a foreign command. If the device and directory is omitted, SYS$SYSTEM: is assumed. For more information on foreign commands, see the OpenVMS User's Manual. See also question PROG2. ------------------------------------------------------------ DCL2. How can I redefine control keys in DCL? The DCL DEFINE/KEY command allows you to define function and keypad keys, but not control keys. Also, keys you define with DEFINE/KEY are not recognized inside applications. Many applications which use the SMG$ routines for input have a similar DEFINE/KEY feature. The terminal driver line-editing control keys, including the use of DEL for delete, are not modifiable. ------------------------------------------------------------ DCL3. How can I clear the screen in DCL? The simplest way is TYPE/PAGE NL: ------------------------------------------------------------ FILE1. How can I undelete a file? OpenVMS doesn't have an "undelete" function. However, if you are quick to write-protect the disk (or if you can guarantee that no new files get created or existing files extended), your data is still on the disk and it may be possible to retrieve it. The FLORIAN tool available from the WKU Fileserver claims to be able to do this (see question SOFT1.) ------------------------------------------------------------ FILE2. Why does SHOW QUOTA give a different answer than DIR/SIZE? DIR/SIZE doesn't take into account the size of file headers which are charged to your quota. Also, unless you use DIR/SIZE:ALL, you'll see only the "used" size of the file, not the allocated size which is what gets charged against your quota. Also, you may have files in other directories. [lionel@quark.enet.dec.com] $ DIR/SIZ=ALL/GRAND [username...] Grand total of D1 directories, F1 files, B1/B2 blocks. $ DIR/SIZ=ALL/GRAND [-]username.DIR Grand total of 1 directory, 1 file, B3/B4 blocks. $ SHOW QUOTA User [username] has B5 blocks used, B6 available, of B7 authorized and permitted overdraft of B8 blocks on disk If the user has no files in other directories and all file-headers are only 1 block, then the following should apply: B5=B2+B4+F1+1 If the diskquota is out of synch, then the system-manager can make a rebuild. [ARNE@ko.hhs.dk] ------------------------------------------------------------ FILE3. How do I make sure that my data is safely written to disk? If your application must absolutely guarantee that data is available, no matter what, there's really no substitute for RMS Journalling. However, you can achieve a good degree of data integrity by issuing a SYS$FLUSH RMS call at appropriate times (if you're using RMS, that is.) If you're using a high-level language's I/O system, check that language's documentation to see if you can access the RMS control blocks for the open file. In C you can use fflush followed by fsync. Note that fsync, which was undocumented for VAX C but is documented for DEC C, takes a file descriptor as an argument, not a *FILE. ------------------------------------------------------------ PROG1. How do I call from ? Most OpenVMS system services and RTL routines pass string arguments by descriptor. Languages which support native string data types create descriptors automatically; those which do not (eg., C) require that you set them up explicitly. [eric@tardis.HQ.ileaf.com] There is a lot of information available on how to call system services and Run-Time Library routines, including examples in numerous languages. The best references are: Your language's User Manual OpenVMS Programming Environment Manual OpenVMS Programming Concepts Manual OpenVMS Programming Interfaces: Calling a System Routine OpenVMS Calling Standard In addition, if you are a subscriber to the Digital Software Information Network (available to those with a software support contract), the DSIN database contains hundreds of worked examples of calling system services and RTL routines, including the one that seems to trip up almost everyone, SMG$CREATE_MENU. [lionel@quark.enet.dec.com] ------------------------------------------------------------ PROG2. How do I get the arguments from the command line? If you're writing a program and want to accept arguments from a foreign command, you can use LIB$GET_FOREIGN to get the command line and parse it yourself, or if you're programming in C, use the normal argc/argv method. To write an application which uses the normal DCL verb/qualifier/parameter syntax for invocation, see the description of the CLI$ routines in the OpenVMS Callable Utility Routines Reference Manual. It is possible to write an application which can be used both ways; if a DCL verb isn't used to invoke the image, the application parses the command line itself. One way to do this is to call CLI$GET_VALUE for a required parameter. If it is not present (or you get an error), call LIB$GET_FOREIGN to get the command line and do the manual parse. See also question DCL1. ------------------------------------------------------------ PROG3. How do I get a formatted error message in a variable? Use the SYS$PUTMSG system service with an action routine that stores the message line(s) in the variable of your choice. Be sure the action routine returns a "false" (low bit clear) function value so that SYS$PUTMSG doesn't then try to display the message (unless you want it to.) See the description of $PUTMSG in the System Services Reference Manual for an example of using an action routine. ------------------------------------------------------------ PROG4. How do I link against SYS$SYSTEM:SYS.STB on an AXP system? LINK/SYSEXE is the OpenVMS AXP equivalent of linking against SYS.STB. ------------------------------------------------------------ PROG5. How do I do a SET DEFAULT from inside a program? The problem is that SYS$SETDDIR only changes the default directory - NOT the default disk. The default disk is determined by the logical SYS$DISK. If you want to change the default disk within a program, then call LIB$SET_LOGICAL to change the logical SYS$DISK. You will need to call both LIB$SET_LOGICAL and SYS$SETDDIR to change both default disk and the default directory! [ARNE@ko.hhs.dk] ------------------------------------------------------------ PROG6. How do I create a shareable image transfer vector on an AXP system? This is something that was greatly simplified for OpenVMS AXP. You don't need to create a separate transfer vector module; just use the SYMBOL_VECTOR statement in a linker options file. For example, if your shareable image has two routines named FOO and BAR, the linker options file should contain the following line: SYMBOL_VECTOR=(FOO=PROCEDURE, BAR=PROCEDURE) The Linker manual has more details on this. ------------------------------------------------------------ PROG7. How do I turn my Fortran COMMON into a shareable image on AXP? You need to add SYMBOL_VECTOR=(=PSECT) to your options file. On OpenVMS VAX all OVR/REL/GBL psects were automatically exported into the shareable image's Global Symbol Table. On OpenVMS AXP you have to tell the linker that you want this done by means of the PSECT keyword in the SYMBOL_VECTOR options file statement. This has several advantages over OpenVMS VAX. First, you don't have to worry about the address of the psect when you try to create a new, upwardly compatible version of the shareable image. Second, you can control which psects, if any, are made visible outside the shareable image. By default, COMMON PSECTs in DEC Fortran for OpenVMS AXP (as well as most other OpenVMS AXP compilers) are NOSHR. On VAX, the default was SHR which required you to change the attribute to NOSHR if you wanted your COMMON to be in a shareable image but not write-shared by all processes on the system. If you do want write-sharing, use: CDEC$ PSECT common-name=SHR in the Fortran source code (the CDEC$ must be begin in column 1) or a linker options file PSECT_ATTR statement to set the COMMON PSECT attribute to SHR. For further information, see the Linker manual. ------------------------------------------------------------ PROG8. How do I convert between IEEE and VAX floating data? In OpenVMS V6.1 there is a routine CVT$CONVERT_FLOAT, documented in the LIB$ Run-Time Library Reference Manual, which can perform conversions between any two of the following floating datatypes: VAX (F,D,G,H), little-endian IEEE (single, double, quad), big-endian IEEE (single, double, quad), CRAY and IBM System\370. DEC Fortran (all platforms) has a feature which will perform automatic conversion of unformatted data during input or output. See the DEC Fortran documentation for information on "non-native data in I/O" and the CONVERT= OPEN statement keyword. ------------------------------------------------------------ PROG9. How do I get the argument count in a Fortran routine? On VAX, many programmers would use a MACRO routine which accessed the AP register of the caller to get the address of the argument list and hence the argument count. This was not guaranteed to work on VAX, but usually did. However, it doesn't work at all on OpenVMS AXP, as there is no AP register. On Alpha systems, you must use a language's built-in function to retrieve the argument count, if any. In Fortran this is IARGCOUNT, which is also available in DEC Fortran on OpenVMS VAX. Note that omitting arguments to Fortran routines is non-standard and is unsupported. It will work in many cases - read the DEC Fortran release notes for additional information. ------------------------------------------------------------ DECW1. How do I let someone else display something on my workstation? On a workstation, you go into "Customize" menu of the session manager utility and select "Security". When the pop-up box appears, you can put node/user/tranport to allow who can launch an application to the display on that workstation. [raspuzzi@mrlat.enet.dec.com] > Yah, but this doesn't seem to work with non-VMS systems. What do I put in > for the transport? I tried "TCPIP" just for kicks, but it didn't work. You need a checklist of sorts: 1) Make sure that you've specified the X-windows "display" correctly on the remote side. For DECNET it's something like NODE::0.0, for TCP/IP it's Node.Domain:0.0, etc. On a unix system, define the DISPLAY environment variable so: # setenv DISPLAY myvax.domain:0.0 2) If you've verified 1) and things still aren't working, make sure the Security settings on the VMS side will allow the connection: Pull down the "Options" menu in the Session Manager, select "Security..." near the bottom. If you don't find your host (and username) listed on the left under "Authorized Users", go to the right side of the menu and fill in the three fields, "Node", "Username", "Transport". Then click on the Add botton, then the Apply and OK buttons to add the new host to the security database. a) There are various transports: LOCAL, DECNET, LAT, TCPIP, etc. Select the one appropriate to the client machine's connection to the VMS machine. b) If the connection is DECNET, do *NOT* add :: to the node name! c) If the connection is TCPIP, "Username" _must_ be an asterisk (*) because the TCP/IP protocol used does not provide the remote username. d) If the connection is TCPIP, it's best to use a full domain name, e.g., Node.Subd.Domain. However, you _may_ have to use the IP address itself, rather than the domain name (EWS requires this). I generally add two entries for each TPCIP host, the first using the domain name, the second the IP address. e) There are a various 3rd party vendors who supply TCP/IP packages for VMS, including but not limited to TGV (Multinet) and Wollongong (Pathway ?). Multinet (and DEC's own UCX) call the transport "TCPIP", Wollongong, at least in some incarnations, uses "WINTCP". You need to use the appropriate vendor's package transport name in the "Transport" field. 3) If things _still_ aren't working, make sure the transport you want has been activated for DECwindows. This is a system manager job, but you can do the ground work yourself before bothering the sysmgr. Do the following: $ DIR SYS$MANAGER:DECW$PRIVATE_SERVER_SETUP.COM If that file exists, then do: $ SEARCH SYS$MANAGER:DECW$PRIVATE_SERVER_SETUP.COM - $_ DECW$SERVER_TRANSPORTS You sould find something like: $ decw$server_transports == "DECNET,LOCAL,LAT,TCPIP" If the transport you want, e.g., TCPIP, isn't listed, have your system manager make the appropriate changes and restart DECwindows. If the file doesn't exist, the sysmgr will have to create it by copying the corresponding .TEMPLATE file to .COM and uncommenting the line that defines decw$server_transports. a) If you're wanting to use TCP/IP to connect, make sure TCP/IP is available on the VMS host. TCP/IP is _not_ native to VMS. You need to be running either Digital's UCX or a 3rd party vendor's TCP/IP product. If you're not, none of the above will help. [Fairfield@Slac.Stanford.Edu] There is a log file created in SYS$MANAGER which tells you which transports are loaded, and also tell you what connect attempts were rejected, including showing what the presented credentials were. This file is SYS$MANAGER:DECW$SERVER_0_ERROR.LOG, although the 0 could be another number if you have multiple servers on the workstation. I have found this file to be very useful for tracking down what needs to be put in the Session Manager Security entries. [rabinowitz@bear.com] ------------------------------------------------------------ DECW2. How do I create a display on another workstation? $ SET DISPLAY /CREATE /TRANSPORT=net_transport /NODE=remote_node for LAT the command might look like this: $ SET DISPLAY /CREATE /TRANSPORT=LAT /NODE=REMOTE_NODE for DECnet: $ SET DISPLAY /CREATE /TRANSPORT=DECNET /NODE=NODE for TCP/IP $ SET DISPLAY /CREATE /TRANSPORT=TCPIP /NODE=128.12.4.122 Note that LAT is typically used for X terminals but can be used from OpenVMS to OpenVMS systems on OpenVMS AXP V6.1 (if you have setup the X server to allow the LAT transport - check the docs). LAT will be supported on OpenVMS VAX as a transport for DECwindows in a future OpenVMS VAX release. [raspuzzi@mrlat.enet.dec.com] ------------------------------------------------------------ DECW3. How can I get the information from SHOW DISPLAY into a symbol? Use the undocumented SHOW DISPLAY/SYMBOL, and then reference the symbols DECW$DISPLAY_NODE, DECW$DISPLAY_SCREEN, DECW$DISPLAY_SERVER and/or DECW$DISPLAY_TRANSPORT. [Fairfield@Slac.Stanford.Edu] ------------------------------------------------------------ DECW4. How do I get a log of a DECterm session? If you are working from a Decterm, you can use the AutoPrint feature. Choose the "Printer..." menu item from the "Options" menu, set the printing destination to the name of the file you want, and set "Auto Print Mode". You are now free to continue. It should be noted that ALL the characters and escape sequences are captured, but if you display the log file on a DECterm you will get EXACTLY what you had. [fenster@star.enet.dec.com] ------------------------------------------------------------ DECW5. Problem - the DELETE key deletes forward instead of backward! This has to do with Motif's virtual bindings. When a Motif application starts up, it looks at the vendor string returned in the display connection information and attempts to match the string to a table of virtual bindings. You can override the default bindings in your decw$xdefaults.dat file. Here is the entry you would make to get the default VMS bindings. *defaultVirtualBindings:\ osfCancel : F11 \n\ osfLeft : Left \n\ osfUp : Up \n\ osfRight : Right \n\ osfDown : Down \n\ osfEndLine :Alt Right \n\ osfBeginLine :Alt Left \n\ osfPageUp : Prior \n\ osfPageDown : Next \n\ osfDelete :Shift Delete \n\ osfUndo :Alt Delete \n\ osfBackSpace : Delete \n\ osfAddMode :Shift F8 \n\ osfHelp : Help \n\ osfMenu : F4 \n\ osfMenuBar : F10 \n\ osfSelect : Select \n\ osfActivate : KP_Enter \n\ osfCopy :Shift DRemove \n\ osfCut : DRemove \n\ osfPaste : Insert To merge: $ xrdb :== $decw$utils:xrdb.exe $ xrdb -nocpp -merge decw$xdefaults.dat [kleinsorge@star.enet.dec.com] ------------------------------------------------------------ DECW6. Problem - On a DEC2000-300, Motif doesn't start Check for a GQ device by doing a SHOW DEVICE G at the DCL prompt. If there is no GQA0 device: a) VMS failed to find the appropriate IRQ information for the Compaq QVision and did not autoconfigure it. Run the correct ECU (for OSF and VMS) and reboot. b) You do not have a Compaq QVision video card. This card should have Compaq printed on it, and identifies itself as a CPQ3011 or a CPQ3111. If it is not one of these 2 devices (as of 7/1/94 and version 6.1) then VMS does not support it. If there is a GQA0 device: a) There may have been a severe error in the DECwindows startup. Type the contents of SYS$MANAGER:DECW$SERVER_0_ERROR.LOG for any information on errors starting the server. b) The sysgen parameter WINDOW_SYSTEM is not set to 1. This is a common way used by system managers to disable server startup. c) You may not have a valid Motif license. To check for the Motif license, type LICENSE LIST DW-MOTIF/FULL and examine the information displayed. Make sure that it is present, valid and active. [kleinsorge@star.enet.dec.com] ------------------------------------------------------------ DECW7. Problem - My LK401 keyboard unexpectedly autorepeats There are several modes of failure: a) Pressing 2 and 3 keys at the same time causes one key to autorepeat when released. Check the hardware revision level printed on the bottom of the keyboard. If the revision level is C01, the keyboard firmware is broken. Call field service to replace the keyboard with any revision level other than C01. b) Pressing certain keys is always broken. Typical sympypoms are: delete always causes a autorepeat, return needs to be pressed twice, etc. This is frequently caused by having keys depressed while the keyboard is being initialized. Pressing ^F2 several times or unplugging and replugging the keyboard frequently fix this problem. There is a patch available to fix this problem [contact the CSC for information - a CSCPAT number will be included here when available. - Ed.] c) A key that was working spontaneously stops working correctly. This may be either (a) or (b) or it may be bad firmware. Ensure that you have the most recent firmware installed on your CPU. An old version of the DEC 3000 firmware had a bug that could cause this symptom. [kleinsorge@star.enet.dec.com] ------------------------------------------------------------ DECW8. Problem - My LK411 sends the wrong keycodes or some keys are dead Check the firmware revision on the keyboard. Hardware revision B01 introduced an incompatability with the device driver which causes the keyboard to not be recognized correctly. There is a patch available to fix this problem: [CSCPAT number TBS - Ed.]. The rev A01 keyboard, and the LK450 should work without problems. [kleinsorge@star.enet.dec.com] ------------------------------------------------------------ DECW9. How do I set the title on a DECterm window? If you are creating a new DECterm window, check HELP CREATE /TERMINAL /WINDOW_ATTRIBUTES. If you want to change the title of an existing window, use the following control sequences, where is the ANSI escape code, value decimal 27, and is what you want to display: To set the DECterm title, send ]21;\ To set the icon label, send ]2L;\ For example, DCL to display "My DECterm" in title bar: $ ESC[0,8]=27 $ WRITE SYS$OUTPUT "``ESC`21;My DECterm``ESC`\" [p_lee@decus.ch] You can also change the title and the icon using the Options-Window... menu. ------------------------------------------------------------ SOFT1. Where can I find lots of free software for OpenVMS? The best starting point for free software for OpenVMS is Hunter Goatley's WKU FILESERV server. If you're using a WWW browser, the URL is: http://www.wku.edu/www_root/fileserv/fileserv.html The FILESERV packages are also available via anonymous FTP from: ftp.wku.edu, under [.VMS.FILESERV]. ftp.spc.edu, under [.MACRO32.SAVESETS] and [.MX]. ftp.vms.stacken.kth.se, under [.WKU.VMS.FILESERV]. ftp.shsu.edu, under pub/vms/mx and pub/vms/utilities. nic.switch.ch, under /mirror/vms/spc. ftp.technion.ac.il, under /pub/unsupported/vms/spc. ftp.riken.go.jp or via e-mail from FILESERV@WKUVX1.WKU.EDU. Send the commands HELP and DIR ALL in the body of a mail message for more information. If you get the packages via WWW or FTP, they're in ZIP format which requires the UNZIP (note: this is not Gnu gunzip!) tool to unpack. You can get this from: ftp://ftp.wku.edu/vms/unzip.exe ! VAX ftp://ftp.wku.edu/vms/unzip.alpha_exe ! AXP or you can request the FILESERV_TOOLS package from the e-mail server. Mosaic 2.1 is available here, but there's also a VMS port of Mosaic 2.4 available at file://ftp.service.digital.com/pub/vms/Mosaic which was built for use with DEC TCP/IP Services for OpenVMS (UCX) V3.0 or V3.1. Some people have reported success using this with "UCX emulation" on other TCP/IP implementations. Another source of free software is the vmsnet.sources newsgroup (and the corresponding vmsnet.sources.d discussion group). See the monthly posting "vmsnet.sources archives" for a list of sites which archive submissions to vmsnet.sources. [lionel@quark.enet.dec.com] A good source of software for DEC boxes (and anything else pretty much) is the DECUS library. online catalogs are available as well as some software via ftp.decus.org; there's a gopher server gopher://gopher.decus.org/ an FTP server: ftp://ftp.decus.org/ and a WWW server: http://www.decus.org/ Phone for orders is 508 841 3502. Lots of good stuff from lots of good folks, and copies on media (tapes, CDs) are cheap. [Everhart@Arisia.gce.com] The sources for ZMODEM from the DECUS CD Rom are at: ftp://ftp.infonet.net/pub/systems/vms/zmodem [kevin@ins.infonet.net] There's also ftp://ftp.cdrom.com/.2/simtel/misc/vaxvms/ZMODEM17.ZIP [csjwp@ttuhsc.edu] The links described below were current at one time; your guess is as good as mine if they're still valid. ;-) MPJZ's Hyper-Software-List for OpenVMS is Martin P.J. Zinser's list of additional software. http://axp616.gsi.de:8080/www/vms/sw.html Chris Higgins's VMS Software List II http://csvax1.ucc.ie/www/vms_sw_list/sw_list.html DECUS SIG Tape collections are available on Mark Berryman's system, ftp://mvb.saic.com David Jones's DECthreads-based HTTP_SERVER World-Wide Web server for VMS. http://kcgl1.eng.ohio-state.edu/www/doc/serverinfo.html [goathunter@WKUVX1.WKU.EDU] Lynx (a character-cell World-Wide-Web reader) is available from ftp://ftp2.cc.ukans.edu/pub/lynx [lionel@quark.enet.dec.com] An archive of DECwindows and Xwindows software can be found at ftp://axp.psl.ku.dk/decwindows [Lejf@axp.psl.ku.dk] ImageMagick is an X11 package for display and interactive manipulation of images. The package includes tools for image conversion, annotation, compositing, animation, and creating montages. ImageMagick can read and write many of the more popular image formats (e.g. JPEG, TIFF, PNM, XPM, Photo CD, etc.). ftp://ftp.x.org/contrib/vms/ImageMagick/ImageMagick-3.3.zip [cristy@dupont.com] BULLETIN, GHOSTSCRIPT, GHOSTVIEW and XV are available from ftp://pfc.mit.edu/ [End of FAQ]