The VAX Professional Workstation V4.2 Sept 20, 1985 VPW V4.1 has many new features including; windows with typeahead!, support for the LN03 printer, a real Desk Top Calendar, support for MASS11, MAIL access from all menus, privileged command procedures, an internal VAX problem reporting and tracking procedure, menu bypassing, support for any foreign command from a menu prompt, a rubber-band toolbox menu system, support for VT2xx terminals, and much, much more. Best of all, all the V4.0 induced bugs have been stomped out! Dead! And NEW FOR V4.2, some needed support so that VPW works on clusters has been added (you might also consider this a bug fix). It has been restructured for modularity and maintainability, and made significantly faster. However, because functions are invoked as subroutine command procedures rather than as part of a monolythic command file, each VPW user has more files opend and charged against FILLM. The VAX Professional Workstation is a collection of all kinds of things. Since it has evolved piecemeal I have never tried getting it installed, up and running from scratch. However, I think all required files are here. Setup of the system to use VPW should be straightforward. On [KMSKIT.SYSMGR] are all the files (suitably edited) we use to get our entire system including VPW up and running. Note what goes on in SYSTARTUP.COM, the various files on [.SYSBOOT], and during SYSLOGIN.COM. Expecially note that TERM.COM sets up symbols escential to VPW's operation. During SYSTARTUP.COM the following logicals must be defined; $ASSIGN/SYSTEM SYS$SYSDEVICE:[COMFILE] SYS$COMFILE ! $ASSIGN/SYSTEM SYS$SYSDEVICE:[SYSUTL] SYS$UTILITY ! $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW] SYS$VPWFILES ! For VPW $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW.WP] SYS$VPW_WPFILES! $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW] SYS$SYSVPWFILES! $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW.CAI] SYS$VPWCAI ! $! Set up help library. _x is " ", "_1", "_2" etc. $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW]VPW.HLB HLP$LIBRARY_x The files on directories SYS$COMFILE and SYS$UTILITY must exist. SYS$COMFILE: files correspond to [KMSKIT.VAX.SYSMGR.COMFILE], and SYS$UTILITY: files correspond to [KMSKIT.VAX.SYSUTL]. For the convenience of a potential VPW installer, the command procedure VPWINS.COM is available for tailoring for your site. Please note, that I have never used this procedure per se. and that it must be customized for a given site's needs. Also available as a convenience, is VPWLOGIN.COM which can be used as a template for modifying a system wide SYSLOGIN.COM or invoked on a per user basis. The Document Preparation System can use either the Dennison Spelling package or the VASSAR spelling package. The VASSAR package is now assumed to be the default spelling checker used by VPW because it is better and the Dennison version only works if you have a V4.x compatible version. Which spelling checker you use is settable on a per user basis by defining $ DEFINE/NOLOG Spell_Package "VASSAR" or $ DEFINE/NOLOG Spell_Package "DENNISON" In order for the Dennison spelling checker to work, you need the spelling checker program from the Spring 1983 VAX SIG tape and you also need to talk its author into giving you a patch to let it run under V4.x. Also, the correct logical logical assignment must be set up. The logical name for the spelling checker should be assigned during SYSLOGIN.COM $ASSIGN SYS$SYSDEVICE:[xxx] ENGL$ Users wishing to have a special directory on which their WP files reside may define a special logical WP_DIRECTORY, for example; $ ASSIGN DRA0:[Username.RUNOFF] WP_DIRECTORY The following logicals control the selection and use of the letter quality printer used for the word processing menu. $ DEFINE/NOLOG WP_Printer "LN03" $ DEFINE/NOLOG WP_Printer_Font "ELITE" $ DEFINE/NOLOG WP_Printer_Pitch "12" One letter quality printer is supported from VPW. It may either be a daisy wheel or LN03 printer. If WP_PRINTER is not set to be LN03, then a daisy wheel printer is assumed. If WP_Printer is set to be an LN03, then WP_Printer_Font can be used to select the font. The allowed fonts/pitches are determined by the contents of the system control library SYS$SHARE:SYSDEVCTL.TLB. Currently, control files exist for Elite, Courier, and Default in 10, 12, and 14 pitch as appropriate for the fonts. 12 Pitch Elite is currently the VPW default if one has an LN03 printer. A copy of the SYSDEVCTL.TLB file we use is included on this directory. Place it on SYS$SHARE if you want to use it. Note also a copy (on [.SYSBOOT] and this directory] of our STARTQMG.COM. This is how we configure the LN03. If you want it to use the control library, have proper margins, and use the proper default, you have to set up the print queue correctly. Note that RUNOFF currently does not correctly output text for printing on the LN03 printer. Bolding and underlining get lost. Maybe more stuff but I haven't noticed it yet. Consequently, a special program (LN03) is provided to reformat the RUNOFF created using the /DEVICE=LN01 RUNOFF option into a file for use with the LN03 printer. This is necessary because the only way to Bold/underline on a Laser Printer is to use proper escape sequences. When RUNOFF supports the LN03, this progam will be removed from the KMSKIT distribution. Documentation on using the VAX Professional Workstation can be found in the subdirectory [.MANUAL]. Please note, that the manual for VPW V4.0 is FAR, FAR from complete. A bit more polished than before. I have tried to update its various chapters to reflect the current state of the procedures and images, but I am sure that at this stage there are probably still some inconsistancies. The manual stands at 160 pages or so not counting an index (not yet done) or a Table of Contents. It turned out to be a far bigger job than I had intended. All files on [KMSKIT.VPW] should be placed on their appropriate directories and the logical assignments made. Note that most files reside on SYS$SYSVPWFILES but the CAI files reside on SYS$VPWCAI and most word processing command files (except WP2.COM) reside on SYS$VPW_WPFILES. If this directory were taken to be SYS$SYSVPWFILES:, then [.WP] would be SYS$VPW_WPFILES:, and [.CAI] would be SYS$VPWCAI:. During SYSLOGIN.COM both @SYS$COMFILE:TERM.COM AND @SYS$SYSVPWFILES:SETVPWSYM is executed. Once that is done type VPW and all should go OK. Of course, as things generally go, I am sure there will be a few difficulties, but I am confident that they will be minor and easy to fix. On this directory are a number of useful images. 1. ASK.EXE. This is a new version of the ASK program which appeared on the previous SIG tape. I modified it so escapes sequences from a VT100 keypad could be input and for handling upper/lower case conversion a bit better. This version supports long escape sequences from VT2xx terminals. Should be installed. For this release, ASK has been updated to use the new TRNLNM routines so that the longer device names which clusters have will translate correctly. 2. BROADCAST. Allowes non priviledged users to broadcast (just like RSX) each other messages. Must be installed. Tracks you down where ever you are hiding. Now supports broadcasting to OPA0: and tracking down logical names. 3. CNVDCALXY. This program will convert a DECalc dump file of x-y data into a KMS cannonical X-Y graphics data file. 4. CURVFIT. This program takes a canonical x-y data file and allows one to do simple fits of the data to a linear polynomial or an exponential or power function. 5. FLOLDRINDX and VPWDIRECT. Small mini programs to provide formatted outputs of directories and text libraries for use with the word processing command procedure. 6. LN03. Takes the output of RUNOFF/Device=LN01 and makes it LN03 compatible. This is done so bolding and underlining will work on an LN03 printer. 7. MAILMSG. Sets a VMS symbol showing the number of unread mail messages a user has. Has been updated to use the new mail file. 8. NEWWINDOW. Supports the WINDOW command. "Ask and Ye Shall Receive". Not as good as provided by a real window system, but what the heck, it's easy to remember where one is (the sticky banner on top), and performance is tollerable. Alternately one can define WINDOW to be .lit WINDOW:==SPAWN/NOLOG @SYS$VPWFILES:DCLWINDOW.COM .END LIT In either case DEFINE our LK201 F20 key to give us a new window. 9. NoteBook. Not quite a poor man's DTR, but a fast simple way, of using and maintaing personal data bases. Very versitile and reasonably fast. All kinds of neat uses. This version supports VT2xx terminals and editing our cannonical X-Y data files (like a spread sheet calculator). New way of command line parsing. 10. PRVCOMFIL. Used as part of our implementation of privileged command procedures. 11. REMINDER. Everyone needs this. Works with REMINDUSR.COM to provide a way of leaving oneself (or others) dated reminder messages which get delivered at the specified time.. For it to work correctly, BROADCAST must be installed with the correct privileges. 12. SWAPXY. Takes a cannonical X-Y graphics data file and swaps the X-Y values. 13. TYPEPAGE. This program types out a section of an ASCII text file from one specified line to another. 14. VAXDTC. At last, a real Desk Top Calendar for the VAX (that doesn't cost much)!. The original RSX version was done by Mitch Wyle. It was then modified by Glen Everhart and this time by me. It replaces the DATEBOOK command procedure of the previous version. Minor bug fix this version 15. VPWEDIT. Here it is, EDT with "Windows" and "Clipboards"!!!!! Noteworthy command procedures include 1. VPWV4.COM. The root procedure for the VAX Professional Workstation. The things command procedures can do never ceases to amaze me. Of course whether or not they should be made to do them is another issue..... VPW V4.0, is modular, faster, supports graphic work stations and much more! You realy have to look through the documentation, help libraries and the like to appreciate it. It is very tailorable and site customizable. 2. WP2.COM Given that we do not have a real word processing package on our system, this works verywell. One secretary used it for months (she lost her real word processor to a personell shuffle). Our system has two printers set up, TTA0: (an LA120) and a Diablo 630 letter quality printer (TTA1:) and if your system does not have its printers set up this way I suspect you will have to change WP2.COM about to suit your needs. WP2.COM has been restructured so this should be very easy to accomplish. WP2.COM is a central dispatcher for many other command procedures, one per major function. At the expense of having more open files, this makes it faster than previous versions, and far easier to maintain and improve. 3. DATEBOOK Datebook is no longer supported and has been removed from the distribution. 4. TAPEXFER Here is a procedure with which users with mindless ease can transfer files to (and from) an IBM system which will magically be able to find what files are on the tape and do the appropriate things with the files. At present, the files may be just printed (on the IBM's ever so fast but incredibly dumb printer [no U/L or TABS please]), saved as a unique file or inserted into a partitioned data set (it had better exist first). TAPEXFER uses AVATU from the VAX81B VAX Sig Tape (you can find it on [VAX81B.DFWLUG.AVATU]). All in all, AVATU is the best IBM/VAX transfer utility I have seen. I discovered it after fruitless years trying to get the IBM group to get a utility that would transparently read PIP or COPY ANSI format tapes. For whatever reason (perhaps IBM does not believe in ANSI tapes), the search on the IBM side was fruitless (ran into lots of dead ends and things which almost worked). Then AVATU appeared on the VAX tape and life suddenly became so much simpler. Thanks MOSTEK!! AVATU has had a few mods made to it. Control-Z on any input now cleanly exits. A bug with zero length records was stomped out. Also AVATU now allows logical device names with embedded '$' and '_'. Consequently, AVATU.MAR is included along with AVATU.EXE and AVATU.DOC. Because I started getting calls from users wanting to rebuild AVATU who did not have access to the original distribution, I am enclosing the files required to build it on the [utility.avatu] subdirectory. Now all IBM sites are a bit different and they seem to have a lot of operating systems. We run MVS/TSO. Initially when we wanted to transfer files, the IBM managment always wanted to know the names of each and every file we wanted on their system. Given that we wanted the ability to do wild card transfers, this presented a real pain (guess where?). To solve this problem, this transfer procedure was set up. As the first file on each tape, it includes the JCL necessary for getting all the other files off the tape. The IBM side has a cataloged PROC which always reads off the first file and starts up its JCL (after converting it to fixed length format). To implement this on the IBM end, you probably will need an IBM systems programmer. To help in this process, the JCL files we use are included. A program [.IBM]VBSTOFB (Variable Block Spanned to Fixed Block) is needed to convert the file format supplied by AVATU to something which our IBM likes for certain applications. The Cobol source (yes Cobol!) is provided (VBSTOFB.COB). It is entirely possible, that you will have to change the embedded JCL in TAPEXFER.COM or the JCL files supplied (*.JCL) or VBSTOFB.COB to run on your IBM. In practice, TAPEXFER uses AVATU to produce a tape. We then carry the tape to the IBM operator who then mounts the tape and starts up the PROC called DECRDR for the user. From that point on all should go without additional intervention. Note, however, that if files are being transfered to a PDS on the IBM, it must exist already. Note also, that individual files transfered get a data set name preceeded by a 'DEC.' and that they overwrite any existing data set names with identical names (version numbers, what are they??). Finally, to create a tape on the IBM side which our users can use, we use the IBM utility IEBGENER. 5. VAXPRBLM. Here it is! A internal SPR system. We call them VPRs for VAX Problem Reports. It allows any user to submit a report and any problem manager to log an answer. The problems and their solutions become available for all to see. To implement this required developing privileged command procedures. 6. PRIVCOM. It is rather simple to implement privileged command procedures and PRIVCOM.COM works with PRVCOMFIL.EXE to provide this functionality. This release plugged a slight security hole. PRVCOMFIL.EXE now prohibits passing CLI symbols to the subprocess this prevents the evil-minded user from redefining existing CLI symbols in the command procedure to do nasty things. Note, this requires all privileged command procedures to define all external DCL symbols they will need and not depend on any set up by the user's SYSLOGIN.COM or the SYSLOGIN.COM. 7. Generate UDK load files for your VT2xx terminals. 8. VPWTOOLBX. A rubber band display of utility options. The menu is kept in a text file. The parsing and dispatching is kept in TOOLBX.COM. Can move back and forth in the menu at the flick of a key. Place all your site specific utilities here for easy access. 9. WINDOW. The things one can do with a command procedure never cease to amaze me. Of course that doesn't meed all the things one can do one should do. This one probably falls into the latter catagory, but..., it is ever so useful. It works with VPWEDIT to provide users with a full DCL window which may be accessed from within the EDT editor. With internal typeahead buffering, no less. We realy love it and wouldn't dream of running without it. I hope it is as useful for you. If one of you gets ambitious and converts most of WINDOW.COM to a .EXE, please let me know. Doing such a conversion is on my agenda, but so many other things are happening here right now that I am unsure which month, year, or decade I will get to do so. 10. HRDCPY. This one will read a VT125 or VT24x screen to produce a SIXEL format file. The file is then automatically spooled to a SIXEL printer via the SCREENPRINT command (which is whatever a site wants it to be). We send our output to an LN03 printer. By defining a VT2xx function key, one can push a button and get a hard copy. 11. TEKGRAPH. TEKGRAPH has been modified to support HDCOPY for SIXEL class terminals. 12..... And lots more. Most are used by VPW, however.