RSX SIG Tape Distribution - Spring 1982 This is the RSX/IAS SIG Symposium Tape from the 1982 Spring DECUS meeting in Atlanta. The tape contains material submitted by the user community to the SIG at that meeting. The programs on this tape are from user submissions. The DECUS staff, the RSX/IAS SIG staff, and DEC are all in relative ignorance of the contents of the tapes. No warranty of any kind is implied in the distribution of these tapes. The programs may or may not be well documented, they may or may not work, they may even crash your system. If you have a problem with the contents of the tape, contact the author of the program. Do not contact DECUS, DEC, or the RSX/IAS SIG. The tape contains approximately 52,400 blocks of software in 2771 files. Since this will fit on a single 2400 foot tape in BRU format only at 1600 bpi, it will be distributed as such, as an RK07 image, the smallest DEC disk on which it will fit (and barely that). UIC account [300,1] contains several files of interest. The file RSXS82.DIR contains a directory of the contents of the tape (BRU does not produce nice directories). The file RSXS82TPE.DOC contains an abstract of the contents of the tape by UIC. The file README.ALL contains a concatenated list of all the README files on the collection. The file SUBMIT.DOC contains the guidelines for submissions to the RSX/IAS sig tape collection. This is must reading for everyone who desires to submit a program to the SIG tape. A copy of this letter appears in the file BEGINS82.TXT in the same account. The file UICSETS82.CMD contains the UFD commands to create all the needed UIC's on device XX:. Edit it to match your needs before using BRU to extract the tape contents. Note that a partial extraction can be achieved by only creating the desired UIC's. Also, a word of caution: under at least some circumstances, 11M V4.0 BRU's /UFD switch creates directories even when it doesn't put anything in them). The UIC account [300,2] contains the program that is used to copy this and other tapes, BIGTPC. This is a still newer version of TPC than that on the Fall 81 tape. See the .DOC file also in [300,2] for further information. The source for this version has been supplied courtesy of Glen Everhart, UIC [312,315] this tape. There is also a BIGTPC.EXE in [300,2] for those who would like to use BIGTPC on a VAX (has been tested under VMS 2.5 only). To use TPC with the distribution one needs a disk with at least 55,000 blocks of free space, not necessarily contiguous. To extract BIGTPC from the tape do the following: >UFD SY:[300,2] >BRU /NOINI/DENS:1600 MM:[300,2] SY: To read in a copy of the master tape onto your disk, one enters the following command: RUN [300,2]BIGTPC TPC>DN:RSXF81.BRU=MT:/HD NOTE The /HD switch is for High Density (1600 bpi). See the .DOC file for optional /BL:nnnn and /SA:mmmm switches for better performance in transferring to disk. To make a copy of the tape for someone, one enters the following command line: RUN [300,2]BIGTPC TPC>MT:=DN:RSXF81.BRU/HD Again, don't forget the /HD switch, or you'll be generating an 800 bpi copy, which WON'T FIT. And no, BIGTPC doesn't have the vaguest idea how to do a two-volume copy. If you are a VAX site and cannot use BRU, I have included a copy of BIGTPC.EXE as the next file on the tape, after the BRU container file. You can retrieve it by MOUnting the tape (it's ANSI labelled), then doing: COPY MTA0:BIGTPC.* *.* (There's also a BIGTPC.OBJ in case you need to rebuild it for VMS 3.0). Don't forget to remount the tape /FOReign before running BIGTPC. If you need to use BRU instead of BIGTPC for making copies, please try to keep the VAX-usable files on the tape (BRU won't see them). To do so, MOUnt the distribution tape, use PIP to copy BIGTPC.* onto a disk, and after creating your output tape(s) with BRU, MOUnt them and use PIP to copy the BIGTPC files out. If you don't have 1600 bpi capability yourself, PLEASE try to locate someone in your area who can make the necessary copy(s), at least enough to continue the distribution tree. It will make life very difficult indeed otherwise, particularly trying to preserve the VAX-related stuff at the end. Thus, if you cannot handle 1600 bpi in any fashion, try to arrange with your parent node to bypass you for further tree distribution. I'll be available to help out after my vacation (I return July 18th). If you must make local copies at 800 bpi, you will have to read the tape onto a disk with BRU, and copy out with BRU. I would suggest using the /LEN:2000 switch, so that the output tapes can be copied (very hard to do if your original goes all the way to the EOT marker). A reminder: The SIG is relying on each node to contact the next higher node for necessary tape-transfer arrangements. Since this is a volunteer operation, sincere interest on the part of all participants is very helpful in assuring a timely distribution. Remember, since this is a volunteer operation, DECUS is NOT paying for postage or free copies of magnetic tapes. Make arrangements so that this does not cost anybody a lot of money or magnetic tapes. The Tape Copy tree has been mailed in advance to all nodes with one post card included. This first post card has hopefully been returned, to acknowledge continued willingness and ability to participate. With each master tape I am sending, I have included postcards and copies of these instructions for all lower child nodes. Be sure that you also send on the appropriate cards and documentation for all lower nodes that each of your children will handle. I am trying this approach in the hope that everyone will be reminded to return their second postcard as soon as they have the tape (I still haven't heard from several nodes about the Fall tape, which I shipped in February). The RSX SIG Tape Working Group is continuing to create a document listing the most popular programs from past sig tapes. From this we will be able to create a "Best of the RSX/IAS Sig Tapes" tape, which we can keep updated. The problem is how do we determine the most popular programs. If you have taken a program off the SIG tape and used it, write me (Jim Neeland) a letter and let me know. This be a start anyway. Let me know about things that did not work also. Be sure to tell me which tape and what uic. The following people burned the midnight (4 A.M.) oil to create the Spring 1982 RSX/IAS sig tape: Glen Everhart, Bruce Zielinski, Paul Tompkins, Tony Scandora, the people at our host site (Dataflo Systems), and myself. Jim Neeland RSX-IAS SIG Tape Copy Coordinator Hughes Research Labs 3011 Malibu Canyon Rd. Malibu, California 90265 (213) 456-6411 ext. 333 ********************VD0:[300,120]README.1ST;1******************** ********************VD0:[300,120]README.1ST;1******************** THIS UIC CONTAINS THE WORLD-FAMOUS AND HIGHLY ACCLAIMED VS: DRIVER, CURRENT VERSION 2.04 (30-OCT-81 REVISION), AND ASSOCIATED UTILITIES AND TEST PROGRAMS. THE VS: DRIVER PROVIDES A SYSTEM OF NAMED QUEUES FOR INTER-TASK COMMUNICATIONS, AND CAN BE VIEWED AS AN EXTENSION OF A "VARIABLE SEND-DATA" SERVICE. VS: VERSION 2.04 INCLUDES SUPPORT FOR AST-ON-RECEIVE, SELECTIVE EXAMINE, SELECTIVE MESSAGE DELETE, AND FLUSH QUEUE, WHICH VERSION 1 DID NOT HAVE. IF YOU WANT SUPPORT (BUG FIXES, ETC.) FOR VS:, PLEASE CONTACT ME AT ONE OF THE FOLLOWING ADDRESSES: VIRTUAL ADDRESS (MY EMPLOYER): JOHN OSUDAR SCIENCE APPLICATIONS, INC. 1211 W. 22ND STREET SUITE 901 OAK BROOK, IL 60521 PHYSICAL ADDRESS (WHERE I REALLY WORK): JOHN OSUDAR CHEMICAL ENGINEERING DIVISION BUILDING 205, ROOM A-109 ARGONNE NATIONAL LABORATORY 9700 S. CASS AVENUE ARGONNE, IL 60439 LOGICAL ADDRESS (BUSINESS MAIL TO MY HOME): JOHN OSUDAR P. O. BOX 1451 HOMEWOOD, IL 60430 IF YOU'RE DESPERATE, YOU CAN EVEN CALL ME AT ARGONNE; MY OFFICE PHONE THERE IS (312)972-7294. IF YOU'RE REALLY DESPERATE, AND YOU CAN'T REACH ME AT ARGONNE, YOU CAN TRY CALLING SAI AT (312)655-5960 AND LEAVING A MESSAGE. (DON'T TRY CALLING MY POST OFFICE BOX -- IT DOESN'T HAVE A PHONE!) JOHN OSUDAR (SUPPLYING THE FINEST IN RSX-11M VARIABLE SEND-DATA DRIVERS FOR OVER A HUNDREDTH OF A CENTURY) ********************VD0:[300,120]README.2ND;1******************** ********************VD0:[300,120]README.2ND;1******************** CONTENTS -------- VS: DRIVER AND CONVENIENCE ROUTINES, PLUS DOCUMENTATION BCTVSAST1.MAC AN AST SETUP ROUTINE THAT ALLOWS DYNAMIC SET/CLEAR PER QUEUE IVSAST.MAC AN AST SETUP ROUTINE THAT REQUIRES ALL AST'S BE SET UP AT ONCE VS2EXAM.FTN A TEST PROGRAM VS2SEND.FTN ANOTHER TEST PROGRAM VS2SET.CMD YET ANOTHER TEST PROGRAM VS2STUFF.FTN A SET OF FORTRAN ROUTINES TO MAKE VS: QIO'S EASIER FROM FORTRAN VS2TEST.FTN ONE MORE TEST PROGRAM VSDRV.CMD TKB COMMAND FILE TO BUILD THE VS: DRIVER VSDRV.DOC DOCUMENTATION FOR VS: -- FOR ORDINARY PRINTERS VSDRV.MAC THE DRIVER SOURCE VSDRV2.TEX DOCUMENTATION FOR VS: -- FOR YOU LUCKY PEOPLE WITH TEX! VSDRVGEN.CMD COMMAND FILE TO GENERATE THE VS: DRIVER VSTAB.MAC THE DRIVER DATABASE SOURCE VSUTIL.CMD TKB COMMAND FILE TO GENERATE THE VS: UTILITY PROGRAM VSUTIL.DOC DOCUMENTATION FOR VSUTIL -- FOR ORDINARY PRINTERS VSUTIL.FTN F4P SOURCE FOR THE VS: UTILITY PROGRAM VSUTIL.TEX DOCUMENTATION FOR VS: -- AGAIN, FOR TEXCELLENT QUALITY ONLY VSUTILGEN.CMD COMMAND FILE TO GENERATE THE VS: UTILITY PROGRAM POBPRE.TEX (IF YOU'VE GOT TEX: THIS IS MY VERSION OF BASIC.TEX) GENERAL COMMAND SPOOLER SPWNSPOOL.* TASK THAT ACCEPTS QUEUED COMMANDS AND EXECUTES THEM ON ITS TI: QRT.* TASK THAT QUEUES COMMANDS TO BE EXECUTED BY SPWNSPOOL PLTSPQ.* TASK THAT LISTS THE CURRENT CONTENTS OF THE COMMAND SPOOL QUEUE PLTDELQ.* TASK THAT ALLOWS COMMANDS TO BE DELETED FROM THE COMMAND QUEUE F4P EXECUTION PROFILER PROFIL.MAC SUBROUTINE THAT IS CALLED FROM TASK BEING PROFILED, TO SET UP FOR PROFILING PROFILER.* TASK THAT COLLECTS PROFILE DATA AND PRODUCES REPORT ********************VD0:[300,121]README.1ST;1******************** ********************VD0:[300,121]README.1ST;1******************** THIS UIC CONTAINS A SERIES OF FORTRAN CALLABLE SUBROUTINES DESIGNED TO ALLOW THE USER TO UTILIZE THE INTERNAL CHARACTER- ISTICS OF THE VT-100 FAMILY OF TERMINALS. SINCE THE ORIGINAL PURPOSE OF THIS LIBRARY WAS TO SUPPORT A VT-105 TERMINAL, SOME OF THE ROUTINES ARE SPECIFIC FOR THAT TYPE TERMINAL. THESE ROUTINES WERE WRITTEN FOR RSX-11M (VERS 3.2), AND THE FULL DUPLEX TERMINAL DRIVER. EXTREME CARE SHOULD BE TAKEN TO INSURE THAT THE LOGICAL UNIT TO WHICH THESE ROUTINES ARE TO ACT UPON, IS IN FACT A TERMINAL. UNPREDICTABLE RESULTS WILL OCCUR IF THE OUTPUT IS REDIRECTED TO A DEVICE OTHER THAN A TERMINAL. FOR AN EXPLAINATION OF THIS SEE THE FULL DUPLEX TERMINAL DRIVER SECTION 2.17.3. WRITTEN BY KEN ROLLER RESEARCH COMPUTER SERVICES G.D. SEARLE P.O. BOX 5110 CHICAGO, ILL. 60680 THE FOLLOWING IS A SUMMARY OR THE ROUTINES: BUFFER - SET THE BUFFER SIZE ( 80. OR 132.) TIMOUT - ISSUE A MARK TIME DIRECTIVE ( USED WITHIN THE VTWHO MODULE) VTANS - SET THE TERMINAL TO THE ANSI STD MODE ( NOTE: ALL ROUTINES EXPECT THE TERMINAL TO BE IN THIS MODE) VTATT - ATTACH THE TERMINAL LUN TO THE TASK VTBRT - SET THE BACKGROUND TO BRIGHT VTCLR - CLEAR THE SCREEN OF ALL GRAPHICS AND TEXT (VT-105 SPECIFIC) VTCMV - MOVE THE CURSOR TO THE REQUESTED POSITION VTDRK - SET THE BACKGROUND TO DARK VTDTX - DISPLAY TEST AT REQUESTED POSITION, AND WITH REQUESTED ATRIBUTES VTELN - ERASE ALL OR PART OF A SPECIFIED LINE VTESC - ERASE ALL OR PART OF THE SCREEN VTGOF - RETURN TERMINAL TO TEXT MODE (VT-105 SPECIFIC) VTGON - PUT THE TERMINAL INTO THE GRAPHICS MODE (VT-105 SPECIFIC, AND VT-125 TO VT-105 EMULATION MODE) VTHGT - ERASE A PAIR OF LINES AND SET THEM TO EITHER SINGLE OR DOUBLE HEIGHT VTHME - RETURN THE CURSOR TO THE "HOME" POSITION (UPPER LEFT) VTJMP - SET THE TERMINAL TO THE "JUMP" SCROLL MODE VTLED - CONTROL THE LED DISPLAY ON THE KEYBOARD VTRCR - RESTORE THE CURSOR AND GRAPHIC RENDITION (VT-105 SPECIFIC) VTROL - SET THE SCROLL AREA ON THE TERMINAL VTSCR - SAVE THE CURSOR AND GRAPHIC RENDITION (VT-105 SPECIFIC) VTSGC - ENABLE OR DISABLE THE SPECIAL GRAPHICS CHARACTER SET VTSRL - SET THE TERMINAL TO THE "SMOOTH" SCROLL MODE VTWDT - SET A LINE TO EITHER SINGLE OR DOUBLE WIDTH VTWHO - QUERIES THE TERMINAL AS TO ITS TYPE AND OPTIONS AND RETURNS THE INFO TO CALLING ROUTINE VT52M - SET THE TERMINAL TO THE VT-52 MODE VT080 - SET THE TERMINAL TO 80 COLUMN MODE VT132 - SET THE TERMINAL TO 132 COLUMN MODE (ASSUMES A.V.O.) VTLIB.CMD IS A COMMAND FILE TO COMPILE AND BUILD THE VT LIBRARY. ADDITIONALLY, THERE ARE SEVERAL EXAMPLES OF THE USE OF THESE ROUTINES. PROGRAM TREE WILL PRODUCE A CHRISTMAS TREE AND BLINK THE LIGHTS TO ONE OF THREE STATES. THIS PROGRAM IS BEST RUN FROM A HIGH BAUD RATE TERMINAL. (@ 4800 RUN TIME ~APROX 2 MIN) PROGRAM LED WILL TURN THE LED DISPLAY ON AND OFF WITH SEVERAL PATTERNS PROGRAM CUTE IS CUTE! END OF DOCUMENT ********************VD0:[301,65]README.1ST;2******************** ********************VD0:[301,65]README.1ST;2******************** crossREFerence, automatic overlay and calling TREE software The REF program in conjunction with the TREE program will perform functions such as output cross-reference data, output user and system symbols, output the calling tree structure, and output an automatic overlay description file for your program. The .ODL file will have to be edited to conform to your system configuration with respect to resident libraries and such. The sources are given in OMSI PASCAL version 1 and MACRO-11. All necessary documentation for running the REF program can be found in the REF.CMD file. ********************VD0:[301,66]README.TXT;1******************** ********************VD0:[301,66]README.TXT;1******************** 15-APR-82 RNFIO .MAC 9. 15-APR-82 RNPRE .MAC 5. 15-APR-82 RSTS .MAC 1. 15-APR-82 INDEX .MAC 11. 15-APR-82 PINDX .MAC 9. 15-APR-82 UARITH.MAC 4. 15-APR-82 COMND .MAC 8. 15-APR-82 FMTCM .MAC 26. 15-APR-82 CMTAB .MAC 12. 15-APR-82 START .MAC 10. 15-APR-82 RNORSX.MAC 6. 15-APR-82 RNOASM.CMD 2. 15-APR-82 RSTASM.CMD 1. 15-APR-82 RNOBLD.CTL 4. 15-APR-82 RNOBLD.CMD 2. 15-APR-82 RNOLST.COM 1. 15-APR-82 RSTBLD.CMD 2. 15-APR-82 RNOIAS.CMD 3. 15-APR-82 HYPHEN.MAC 55. 15-APR-82 ERMSG .MAC 11. 15-APR-82 RBLDFC.ODL 2. 15-APR-82 RNO .ODL 1. 15-APR-82 RNOBLD.ODL 2. 15-APR-82 RNOIAS.ODL 1. 15-APR-82 RUNOFF.RNO 128. 15-APR-82 RNOASM.COM 2. 15-APR-82 RNOLNK.COM 1. 15-APR-82 RNCMD .MAC 25. 15-APR-82 RNONON.TEC 1. 15-APR-82 RNODIA.TEC 1. 15-APR-82 RNOAJ .TEC 1. 15-APR-82 SMAC .MLS 6. 15-APR-82 RNRT11.MAC 35. 15-APR-82 RUNOFF.MAC 90. 15-APR-82 RT11 .MAC 1. 15-APR-82 RUNOFF.COM 2. 15-APR-82 TOTAL OF 481. BLOCKS IN 36. FILES ********************VD0:[301,66]README.1ST;1******************** ********************VD0:[301,66]README.1ST;1******************** *********************************************************************** BRADFORD A. LUBELL LOS ANGELES CARDIOVASCULAR RSEARCH LABORATORY UNIVERSITY OF CALIFORNIA, LOS ANGELES A3-381 CENTER FOR THE HEALTH SCIENCES LOS ANGELES, CALIFORNIA 90024 UNITED STATES OF AMERICA NORTH AMERICA SOL III MILKY WAY *********************************************************************** THE FOLLOWING MODULES WILL ALLOW ONE TO BUILD RUNOFF - M2.4 FOR THE OPERATING SYSTEMS: RT-11, RSX-11, RSTS/E, IAS, VMS. THIS IS A MODIFIED VERSION OF RUNOFF - M2.3. FEATURES ADDED WILL ONLY SUPPORT DIABLO (AND DIABLO COMPATIBALE) PRINTERS AND THE ANDERSON-JACOBSON 832 TERMINAL. THESE FEATURES CAN BE SWITCHED OFF AT RUNTIME. THE FEATURES ARE: 1) THE PITCH IS CHANGED INSTEAD OF ADDING SPACES TO FILL-OUTTHE RIGHT MARGIN. 2) CONTROL OVER THE BASE HORIZONTAL PITCH AND THE VERTICAL PITCH 3) SUPERSCRIPTING & SUBSCRIPTING 4) RIBBON COLOR SELECT (DIABLO ONLY) 5) PRINT ENCHANCEMENT MODE (ANDERSON-JACOBSON ONLY) 6) ALTERNATE CHARACTER SET SELECTION VIA SHIFT-IN/SHIFT-OUT CHARACTER TRANSMISSION (ANY TERMINAL) THE ABOVE IS IMPLEMENTED WITH SIMPLE SINGLE CHARACTER CONTROLS. TRY IT. YOU'LL LIKE IT!! *********************************************************************** 15-APR-82 RNFIO .MAC 9. 15-APR-82 RNPRE .MAC 5. 15-APR-82 RSTS .MAC 1. 15-APR-82 INDEX .MAC 11. 15-APR-82 PINDX .MAC 9. 15-APR-82 UARITH.MAC 4. 15-APR-82 COMND .MAC 8. 15-APR-82 FMTCM .MAC 26. 15-APR-82 CMTAB .MAC 12. 15-APR-82 START .MAC 10. 15-APR-82 RNORSX.MAC 6. 15-APR-82 RNOASM.CMD 2. 15-APR-82 RSTASM.CMD 1. 15-APR-82 RNOBLD.CTL 4. 15-APR-82 RNOBLD.CMD 2. 15-APR-82 RNOLST.COM 1. 15-APR-82 RSTBLD.CMD 2. 15-APR-82 RNOIAS.CMD 3. 15-APR-82 HYPHEN.MAC 55. 15-APR-82 ERMSG .MAC 11. 15-APR-82 RBLDFC.ODL 2. 15-APR-82 RNO .ODL 1. 15-APR-82 RNOBLD.ODL 2. 15-APR-82 RNOIAS.ODL 1. 15-APR-82 RUNOFF.RNO 128. 15-APR-82 RNOASM.COM 2. 15-APR-82 RNOLNK.COM 1. 15-APR-82 RNCMD .MAC 25. 15-APR-82 RNONON.TEC 1. 15-APR-82 RNODIA.TEC 1. 15-APR-82 RNOAJ .TEC 1. 15-APR-82 SMAC .MLS 6. 15-APR-82 RNRT11.MAC 35. 15-APR-82 RUNOFF.MAC 90. 15-APR-82 RT11 .MAC 1. 15-APR-82 RUNOFF.COM 2. 15-APR-82 TOTAL OF 481. BLOCKS IN 36. FILES ********************VD0:[307,30]README.FMT;1******************** ********************VD0:[307,30]README.FMT;1******************** .m1 0 .m2 0 .m3 0 .m4 0 .pl 100 .ce 100 Spring 1982 DECUS Distribution Joe Sventek Lawrence Berkeley Laboratory .ce 0 .sp 5 The UIC's and their contents for this distribution are: .sp .in +9 .ti -9 [307,30] TOOLGEN.CMD, the command file for building the LBL Software Tools Virtual Operating System. For more information on the features available in this release, consult the release notes contained in this UIC, RELEASE.DOC. .sp .ti -9 [307,31] Everything you need to build this release of the VOS. .sp .ti -9 [307,32] The source files for the RSX-specific tools and primitives. .sp .ti -9 [307,33] The source files for the portable VOS utilities. .sp .ti -9 [307,34] Source files for the variable-length send/receive driver. In addition, a document describing home directory management for RSX may be found here. .sp .ti -9 .ti -9 [307,35] Archives containing the format input files for the manual entries in sections 2-4 of the manual. .sp .ti -9 [307,36] The initial distribution of the Software Tools Mail System. .in -9 .sp 3 .ce Statistics on this Distribution .sp .nf .po +21 .ti +2 UIC Blocks Files ________ ______ _____ [307,31] 5353 198 [307,32] 742 15 [307,33] 4936 93 [307,34] 178 13 [307,35] 1717 9 [307,36] ???? ??? .fi .po -21 .pl 0 ********************VD0:[307,30]README.1ST;1******************** ********************VD0:[307,30]README.1ST;1******************** Spring 1982 DECUS Distribution Joe Sventek Lawrence Berkeley Laboratory The UIC's and their contents for this distribution are: [307,30] TOOLGEN.CMD, the command file for building the LBL Software Tools Virtual Operating System. For more information on the features available in this release, consult the release notes contained in this UIC, RELEASE.DOC. [307,31] Everything you need to build this release of the VOS. [307,32] The source files for the RSX-specific tools and primitives. [307,33] The source files for the portable VOS utilities. [307,34] Source files for the variable-length send/receive driver. In addition, a document describing home directory management for RSX may be found here. [307,35] Archives containing the format input files for the manual entries in sections 2-4 of the manual. [307,36] The initial distribution of the Software Tools Mail System. Statistics on this Distribution UIC Blocks Files ________ ______ _____ [307,31] 5353 198 [307,32] 742 15 [307,33] 4936 93 [307,34] 178 13 [307,35] 1717 9 [307,36] ???? ??? ********************VD0:[307,50]README.1ST;1******************** ********************VD0:[307,50]README.1ST;1******************** RUNOFF Version M03X by Charles H. Spalding III Unimation Inc. 1202 Charleston Road Mountain View, CA 94043 (415) 965-0557 (8:30-10:00 Pacific time) April 30, 1982 Here is yet another version of RUNOFF! This version is the result of an effort to achieve the ability to produce an extensive customer system manual without having to do any manual editing of the RUNOFF output. Toward that end, several new commands have been added, several existing commands have been enhanced, and many bugs have been fixed. This version is derived from the current "official" DECUS version, M02. There are still several features I plan to include. I also intend to review as many other versions as I can, to see what features should be extracted from them. The ultimate intention is to submit a new version to the DECUS library. (I am open to suggestions as to how to best proceed with the whole issue of RUNOFF support.) There are undoubtedly bugs in this version. I would appreciate it if bugs were reported. There may also be differences of opinion about how certain features should behave. Please report any characteristics which seem undesirable. The preferred method of reporting these things is to send annotated copies of the input and output. Almost all changes to the code have been made with assembly-switch control so that undesired changes can be easily removed. It should be noted, however, that there is a good chance that bugs will appear if current features are disabled. There are many interactions, and they may not be handled correctly in all combinations. Readme-2 One final caveat: this version has been used only under RSX-11M. I have no idea whether it will still run correctly under RSTS or IAS -- presumably it will. The user's manual has been edited extensively to correct errors, add clarity (hopefully), and document changes to the program. (Option "switches" within the RNO file select inclusion or exclusion of directions for working under RSX or RSTS.) The following sections very briefly describe some of the changes made. An annotated list of the files in this submittal is included at the end of this document. Significant feature enhancements in this version include: 1. The task now expands itself when the index/footnote buffer fills. Thus, RNO now does not occupy any more memory than it actually needs. 2. An assortment of functions have been added for making the output alternate left/right for reproduction on both sides of the page. 3. Multiple input files can be specified. 4. Points at which a word can be hyphenated can be explicitly specified (to overrule RUNOFF's error-prone algorithm). 5. The index can include subentries, as well as entries without page references (for headings above subentries). 6. A base left margin can be set from which the text margins are measured. 7. Command syntax is now the same for all commands with similar argument combinations. 8. Sections of the input can be set off with command-line control over whether or not they are to be included in the output. The following list summarizes the new commands which have been added: ALTERNATE - control left/right alternation of the NO ALTERNATE page header, with optional additional offset of odd-numbered pages ALTERNATING TITLE - control mode which places subtitle on NO ALTERNATING TITLE the top line of odd-numbered pages in place of the title Readme-3 AUTOSUBTITLE - controls setting of subtitle by HEADER LEVEL commands ENTRY - records an index entry without a page reference EVEN - used to force output to an even-numbered ODD or odd-numbered page, respectively FLAGS SUBINDEX - control special character (">") for NO FLAGS SUBINDEX indicating index subentries FOOTNOTE LINE - specifies characteristcs of line automatically output above footnote(s) INCLUDE - control processing of optional sections EXCLUDE of the input file OPTION ELSE END OPTION LAYOUT - sets layout of the output on the page, including top margin and base left margin PAGE NAME - sets text string to be used as prefix for page numbers QUOTE CHARACTER - assigns character to be used for the quote character (normally "_") RIGHT JUSTIFY - pushes line of text against right margin The following switches can now be specified on the command line: /AP - append the output to an existing file /BL:n - output n blank lines in chapter header /CH:m:n - limit output to chapters m through n /DO:n - set top margin to n lines /EX:m,n,... - set options to "exclude" /HL:n - set length of page header to n lines /IN:m,n,... - set options to "include" /LE:n - set base left margin to n spaces Readme-4 /LO:n - set page length to n lines /WI:n - set default right margin to n Several of these switches override corresponding commands within the input file. If you have existing RNO files which you would like to use with this new version of RUNOFF, the following changes should yield essentially the same output as from version M02. At the start of the input, add: .LAYOUT 1 .HEADER UPPER,4 .FOOTNOTE LINE .NO FLAGS SUBINDEX Replace ".NUMBER 0" with: .NUMBER 1 After every NUMBER command except NUMBER 0, add: .NUMBER +1 After every END LIST command, add: .BLANK No commands can occur between an INDENT command and the text to be indented. On the command line, use: /BL:11 Files included in this submittal: README.1ST This document CHANGES. Complete list of changes made to RUNOFF FILES. Lists of source files affected by each change RUNOFF.DOC Updated user's manual for RUNOFF RUNOFF.RNO RUNOFF input file for user's manual *.MAC Source code RNO.OLB Object library for configuration documented in RUNOFF.DOC RNOASM.CMD Command file for assembling all modules NEW.CMD Command file for replacing a module in RNO.OLB Readme-5 RNOBLD.CMD Command file for task building RUNOFF RNOBLD.ODL Overlay description for task building RUNOFF Unfortunately I have not been able to prepare a document detailing the steps for task building the program. Presumably recipients of the symposium tape won't need help with that. ********************VD0:[307,101]README.1ST;4******************** ********************VD0:[307,101]README.1ST;4******************** INSTRUCTIONS FOR *STARFLEET* PACKAGE ==================================== The program STARFLEET was written by Trevor Sorensen for use on the RSX-11M(+) Operating System. STARFLEET is a fairly standard Star Trek-type program, although more sophisticated than most. However, one feature that sets it apart from most Star Trek games is the incorporation of a comprehensive Service Record and associated features. Each player is kept on file. A new recruit starts out as a Cadet in Star Fleet Academy (Rank 1) and eventually works his way up to full Admiral (Rank 10). Awards are given along the way for outstanding missions, and if a certain minimum standard is met for a given rank, then the player is promoted to the next rank. There is also a Star Fleet Post Office (SFPO) for mail service between players; the Star Fleet News to keep players abreast of happenings, etc.; and the program allows each player to view his own Service Record, promotion history, etc. These features are described in more detail in STARFLEET.SFA. The program is written in FORTRAN IV-PLUS, and is set up to be installed on UIC [200,200]. If this needs be changed, the following files will have to be edited (search for all 200,200's): MAIN.FTN MESS.FTN NEWG1.FTN SFCMD.FTN NEWG4.FTN NEWG4A.FTN NEWG4B.FTN NEWG4C.FTN HUMOR.FTN FINI.FTN PROM.FTN Use the command file STREK.CMD to compile the source files (STREKP.CMD will compile with listings). Use the following to taskbuild: TKB TKB>@STREK.TKB If players will be running the program from other accounts, the data files will have to have the privilege reset to allow them proper access. The instructions for running the program are contained in STARFLEET.INS and UPDATE.INS. Additional information is in STARFLEET.SFA. The utility program to maintain the data files, etc. is contained in SFCMD.FTN. The program to write the day-message is in MESS.FTN. For both of these programs, the current password is "SFHQ". For running STARFLEET itself, the password for the manager (FLEET ADMIRAL) is "TEST". This can be changed in the subroutine SIR in the file MAIN.FTN. A comprehensive manual exists for setting up and maintaing the STARFLEET program. It is called "STAR FLEET COMMAND OPERATIONS AND MANAGEMENT MANUAL". A copy of it can be obtained from the author by writing to: Dr. Trevor Sorensen McDonnell-Douglas Technical Services Co., 16441 Space Center Blvd. Houston, TX 77058 Tel. (7 13)483-4674 or (713)488-5660 If you have any problems with the program, contact the author. ********************VD0:[307,110]README.1ST;1******************** ********************VD0:[307,110]README.1ST;1******************** THE FOLLOWING ACCOUNT IS FROM THE CALIFORNIA REGIONAL OFFICE OF THE U. S. FOREST SERVICE, INFORMATION SYSTEM MANAGEMENT STAFF. THIS ACCOUNT IS A COMBINATION OF SOME USEFUL RSX11M V3.2 DECUS STUFF (SOME MODIFIED BY US FOR LOCAL USAGE), MOST OF WHICH HAS BEEN TESTED AND/OR RUN UNDER RSX11M V4.0, AND SOME U. S. FOREST SERVICE ROUTINES, ALL TESTED AND RUN UNDER RSX11M V4.0. TO GET MORE INFORMATION ABOUT THIS ACCOUNT, SEE THE FILE: TASKBUILD.DOC BOHDEN CMAYLO U. S. FOREST SERVICE ISM STAFF 630 SANSOME STREET SAN FRANCISCO, CA. 94111 (415) 556 8610 (FTS) ********************VD0:[311,1]README.MAN;1******************** ********************VD0:[311,1]README.MAN;1******************** DN11 Device Driver for RSX-11M Author: B.Hazard Date: Jan. 18, 1981 Revision: Number 1 DN11 DEVICE DRIVER FOR RSX11M, VR 3.1 - VR 3.2 PAGE 2 B. HAZARD GENERAL: The supplied tape for this driver contains the sources and indirect file for assembly prior to inclu- sion into the system. Follow the procedures outlined in the DN.CMD file for inclusion of this driver into your system. The user should first copy the DN-11 indirect file DN.CMD to a priviledged UIC on the system disk. Use the command .... >FLX /RS=(MM:) or (MT:)[311,1]DN.CMD/DO NOTE: Read comments in DN.CMD To execute the DN.CMD file and read the comments type >@DN (carriage return) The DN11 device driver was developed to support auto-call procedures under RSX-11M .The driver is imple- mented as a user written driver,non-loadable.It supports only one physical device,with a maximum of four output ports. The DN11 device must use the standard CSR addresses as recommended by D.E.C.. The four modules are serviced by a common interrupt vector in system floating vector space (starting at 300).You may select the vector to be implemented by changing the interrupt vector field in the Status Control Blocks located in the USRTB.MAC mo- dule supplied in the furnished kit. The DN11 kit includes source files for the driver as you will notice requires the conditional DN$$04 to be satisfied this may be accomplished by using the supplied indirect assembly file. SCOPE: The DN11 driver handler uses standard RSX-11M QIO functions. ATTACHES and DETACHES are not processed by the device driver. QIO$ IO.WLB, lun,ef,pri,iosb,ast, The buffer address (ba) is the address of successive bytes in the requesting task's address space containing the digits that are to be dialed. The digits should be binary in the range of 0-9,but since the DN11 interface will accept only the four least significant bits of the byte, ASCII may also work.Depending on what ACU (801) is DN11 DEVICE DRIVER FOR RSX11M, VR 3.1 - VR 3.2 PAGE 3 B. HAZARD being used, numbers greater than 9 (decimal) may be used as control characters, such as end-of-number or tandem dialing. The byte count (bc) must be the number of digits to be presented to the ACU. It must be valid reguardless of whether an end-of number digit is used. QIO$ IO.KIL,lun,ef,pri,iosb,ast Kill will abort the current operation and clear the specified unit's status. I/O COMPLETION: The DNDRV acts as any RSX-11M device driver as far as queuing and I/O completion. The following is a list of possible I/O completions. IS.SUC (+1) The operation was successful.This indicates that the called party answered, that the answer tone was success- fully detected,and modem coupler cut-through has oc- curred. IE.TMO (-74.) After the last digit was presented to the auto-dialer, no interrupt was received from the in the system unit time-out interval.That particular value is set in the SCB of the system data base for the device and may be set to a minimal value based on what type of telephone lines are being used. IE.CNR (-73.) Data line is currently occupied, either a system error in I/O queuing or the device did not successfully clear after the last operation. IE.NFW (-69.) The ACU has interrupted with Abandon Call and Retry (ACR) set. Either it did not detect answer tone, or the ACU timed out waiting for the answer tone. The time-out period may be strapped in the ACU and should be set sim- ilar to the system data base time-out value. IE.DNR (-3) Indicates a loss of power during dialing sequence or currently. This indicates that only the ACU does not have power, not the entire system. IE.ABO (-15.) The operation was aborted by the QIO IO.KIL operation, or the system just performed a power fail recovery. ********************VD0:[312,12]README.1ST;1******************** ********************VD0:[312,12]README.1ST;1******************** [301,031] CHICAGO 80 OPA - ONLINE POOL ANALYZER - UPDATE FROM 79 FOR RSX-11M 3.2 Base level: Version JN3.26 Date: 13-APR-80 Patch level: None Date: Submitted by: Jim Neeland Hughes Research Labs 3011 Malibu Canyon Rd. Malibu, CA 90265 phone: (213) 456-6411 Description: Displays a visual map of the data structures in pool and their location, thus allowing system programmers/managers to determine why their pool is so fragmented, and hopefully then rectify the situation. This is a snapshot of a running system, not a crash dump tool. For a version supporting crash dumps, see CPA (Crash Pool Analyzer) in [301,33]. System reqts: Approx. 4K for the task when invoked, plus a fraction of a second on the system stack to collect all the data. Documentation: OPA.DOC describes the output format and some uses, and the source is well commented (I hope). Status: A possibly dangerous tool in the hands of fiddlers. This program is on the system stack for most of its code, and in some circumstances that time may have deleterious effects on your system. It has been made rather more rugged than the 3.1 version, in that it will catch its own odd address or memory protect violations and announce them in addition to what- ever information it had up to the point of the trap. This does not GUARANTEE that it could not corrupt the EXEC somehow, but is much less likely to. Desired enhancements: Code to allow command-line specification of a target output file or device. Code to find remaining data structures (described in OPA.DOC). A built-in /HElp switch to remind user of the symbols used for the different data structures. Note that any significant additions, such as FCS/CSI support will make the task significantly larger. At the moment it is felt that the online task should make as few demands on the system as possible, so that it can be used when memory/pool is in short supply. Support: The author welcomes comments & suggestions, but does not want complaints about possible system crashes, although will be interested in fixes to eliminate same. ********************VD0:[312,14]README.TXT;1******************** ********************VD0:[312,14]README.TXT;1******************** A very simple program for undeletion/reincarnation of programs. ********************VD0:[312,15]README.TXT;1******************** ********************VD0:[312,15]README.TXT;1******************** A STAGE2 macroprocessor, complete with its test data, and a copy of SIMCMP used in its implementation. ref: Waite. Implementing software for Non-Numerical Applications. ********************VD0:[312,17]README.TXT;1******************** ********************VD0:[312,17]README.TXT;1******************** [301,031] SAN DIEGO 80 DEVICE DATABASE LISTER Base level: Version JN3.3 Date: 02-NOV-80 Patch level: None Date: Submitted by: Jim Neeland Hughes Research Labs 3011 Malibu Canyon Rd. Malibu, CA 90265 phone: (213) 456-6411 Description: Displays device (driver) database (i.e. DCB, UCB, SCB) addresses, contents, and offset labels. Example: DCB: 077346: 77356 ;U.DCB 077350: 0, 1 ;U.UNIT ...etc... Modified for M+ and symbolic displays of BIT masks, and also to detect ".-2" as a special case. ********************VD0:[312,20]README.TXT;1******************** ********************VD0:[312,20]README.TXT;1******************** This includes corrections to the S81 TH and AT pages, and a quick hack of a page called DA. DA is a page to display the device activity, It runs up to a rate of once every 3 ticks, and displays the list of io packets waiting for, or the packets active on, each major device in the system. Also displayed is the list of tasks currently waiting for the processor. ********************VD0:[312,315]README.1ST;1******************** ********************VD0:[312,315]README.1ST;1******************** Spring 1982 DECUS RSX Group 312 Collection This collection has several sets of entries: [312,11] through [312,20] - Various utilities from Richard Kirkman. Most notable are M+ versions of OPA and the BRUDIR program which gives, in ONE PASS, a very complete directory of a BRU tape. [312,315] - Glenn Everhart's latest stuff, including: * DDT22 - A new release. Fixes some bugs, adds macros so you can automatically execute a set of commands at a breakpoint. The new version also supports the I and D space option of RSX11M+ V2. * DGTUNX - A general tape mover, read/write fixed record length files, and has new ability to read UNIX TAR format tapes. Note: the block factor may have to be changed to 1 for this to work reliably. BIGTPC bouncing an image mode copy off a virtual disk will do it... * BIGTPC - My latest version, has image mode copy support for moving around images of virtual disks. Also can copy disk to disk in container files. Can create pseudo-FLX tapes with disk images with block factors up to 72. [312,330] - A sort package from Glen Hoffing. Looks like the DEC SORT-11 but uses FCS, not RMS. [312,320] is an earlier version. [312,322] - Glenn Everhart's latest VE: driver. This is a rev to VD: that will work on M or M+ (V3.2 or V4 of M, or V1 or V2 of M+) which can be built to allow multiple files or devices or mixtures of them to logically be combined onto a single disk. Current source supports up to 8 files or device areas (by filename or by LBN and length) per virtual disk. The name is changed to VE: to permit it to coexist with the older VD: type disks. This allows you to have NONCONTIGUOUS VIRTUAL DISKS, or to pretend that 5 or 6 of your old RL01's and RK05's are really a big disk. Biggest contiguous space will still be the size of the real largest contiguous space (the driver invents some phony "bad" blocks), but your total volume will be able to be large. [312,327] is an extra copy. [312,331] - A PACMAN by Glen Hoffing. This game works on VT100's and does NOT require advanced video. Looks very like the arcade game PACMAN. Control C erases the screen. (It works OK on VAX too!) Several versions of the source are on the tape; the highest UIC is the latest and presumably best debugged. Earlier versions will allow higher scores supposedly and are supplied for the ego gratification of those who want to amaze their friends by appearing good at the game. Uses the 4,8,6, and 2 keys for controlling PACMAN's direction. The game even includes the fruits. Source is in RATFOR which may make it easy to convert to C. [312,321] and [312,325] are earlier versions. ********************VD0:[312,320]README.1ST;1******************** ********************VD0:[312,320]README.1ST;1******************** THIS UIC CONTAINS SOURCE CODE, OBJECT LIBRARY, AND DOCUMENTATION FOR A REPLACEMENT FOR THE DEC SORT-11 SORT SUBROUTINE INTERFACE TO BE USED BY THE DEC FORTRAN PROGRAMMING COMMUNITY. WHAT THIS SORT IS: 1. A SORT SUBROUTINE INTERFACE SIMILAR TO SORT-11 EXCEPT THAT IT USES FCS RATHER THAN HIGH-OVERHEAD RMS FOR ITS I/O. 2. A GENERAL PURPOSE SORTING TOOL FOR FORTRAN USERS WHO HAVE SMALL TO MEDIUM SCALE SORTING REQUIREMENTS. (UP TO, SAY, 100,000 RECORDS) WHAT THIS SORT IS NOT: 1. A HIGH PERFORMANCE SORTING TOOL. WRITTEN MOSTLY IN FORTRAN (RATFOR) WITH ONE ASSEMBLY SUBROUTINE, IT IS NOT INTENDED TO COMPETE IN PERFORMANCE WITH DEC'S SORT-11. TIMING TESTS HAVE SHOWN IT TO AVERAGE ABOUT FIVE TIMES SLOWER THAN SORT-11, USING AN EQUIVALENT SIZED SORT WORK AREA. WHY USE THIS SORT, THEN? BECAUSE IT USES FORTRAN FCS I/O, RATHER THAN RMS. ITS TOTAL ADDITIONAL BURDEN ON A FORTRAN-BASED TASK ALREADY USING FCS/OTS IS ABOUT 2000 WORDS OF TASK IMAGE SPACE FOR THE CODE, PLUS WHATEVER SIZE WORK AREA IS SPECIFIED. EXPERIENCE WITH DEC'S (RMS) SORT-11 SUBROUTINE INTERFACE SHOWS IT TO BE A WONDERFUL TOOL UNLESS, OF COURSE, YOU HAVE A NEED FOR MORE THAN ABOUT SIX LINES OF APPLICATIONS CODE TO FIT IN YOUR TASK. THIS UIC CONTAINS THE FOLLOWING: SORTS.RAT RATFOR SOURCE FOR THIS SORT COMP.MAC ASSEMBLY SUBROUTINE USED BY THIS SORT SORTS.DOC DOCUMENTATION ON THE USE OF THIS SORT SORTLIB.OLB LIBRARY CONTAINING OBJECT MODULES FOR THIS SORT GLEN HOFFING RCA GOV'T COMMUNICATIONS SYSTEMS MAIL STOP 10-4-6 FRONT AND COOPER STS. CAMDEN, NJ 08102 ********************VD0:[312,321]README.1ST;1******************** ********************VD0:[312,321]README.1ST;1******************** PACMAN FOR THE PDP11 This account has a PACMAN game for VT100 terminals for RSX11M/M-Plus. Use the PACMAN.TKB file to build (edit for M). Runs on VT100, using keypad keys 4,8,6, and 2 for controlling direction of your player (an * at start of game.) Note the super energy spots are marked as "o" on board at start of game. Control C will end play and erase the screen. This is a preliminary version by Glen Hoffing. ********************VD0:[312,322]README.1ST;1******************** ********************VD0:[312,322]README.1ST;1******************** VEDRV (Modified VDDRV) ABSTRACT: The VE: package is an RSX M/M+ Virtual Disk package permitting multiple files or devices (or mixtures) to be associated together as single virtual disks. Currently up to 8 such may be so associated, though more can be added easily by reassembly. The mnemonic was changed to VE: from VD: in order to permit the old virtual disks to coexist with it. They provide greater protection against inadvertent errors, but less capability for free association of devices. DESCRIPTION: This version of VEDRV is a mod from the VDDRV on [307,100] of F81RSX for M or M+. It incorporates changes which will allow it to link multiple files into a single virtual disk. It assumes that the virtual disk is 1 block longer than would be obtained from each file, with the extra block being a pseudo block that will always return an error on access. Thus, if you create a virtual disk and run BAD, those blocks will be marked bad, RSX will never attempt a QIO$ across file boundaries, and the driver is nearly as simple as the original. At present, AVE will allow up to 8 files to be assigned to a virtual disk (change VEPRE to increase). You must define M$VE$$ in VEPRE to enable this stuff. The driver's name was changed to VE: so that the 2 types of virtual disks can coexist in a system. Because there are NUMEROUS ways you can screw up with this driver (for instance, command errors in AVE will zero the disk size, or you can forget the order in which parts of a VE: are assigned), it was thought that you would be best off able to use the old VD: drivers where only single file assigns are needed. It also makes it easier to test VE: if all blocks are on a virtual disk.) Some minor kludges and caveats: 1. AVE will not lock the files any more and DVE won't unlock them. I thought that keeping multiple filename blocks in pool is too costly. Only the first is even kept and it is not really used. 2. Checking is rather minimal and if you don't run BAD first to add bad blocks to a badblock file, you'll screw up. 3. The driver will actually genrate a pair of bad blocks together at boundaries, plus one at the end of the disk. BAD will find these. Up to 8 files or devices may be associated with each VE: unit (as presently done; re-edit VEPRE to alter this if more are needed). If you try to assign more, the AVE program is supposed to tell you. The message is that the VE: unit is already assigned. (This was a 3 hour edit). Further additions include the AVEX program, which is also off an old DECUS tape but modified for this package. It allows you to use all or part of physical disks for virtual ones, by logical block number, so you can make several small disks look like one bigger one. Thus, you can make your 2 RL01's look like an RL02 or some such thing. It is a good idea to use the /INitialize switch on the first AVE to a virtual disk, just in case the old size was not zeroed in the UCB of the thing. DVE will zero the size, but if you ever bypass it, it'll be just too bad. This AVEX is also handy for preventing wild BRUs from clobbering your disk...as was the original. Since this version derives from one that is OK on M or M+, it should be so again. Note the UCB (I think) gets another 4 words in V4 of M or V2 of M+. It should be clear from the manuals where. Make that change before using on V4 or V2 or your system'll crash! Because of the ease with which one can forget the names of files or disks which are assigned, I recommend STRONGLY that you ALWAYS DRIVE AVE or AVEX from COMMAND FILES (i.e., using indirect MCR). This will give you a way to trace what you have. Glenn Everhart Further Note: This package can be built for various systems by the command file VEGEN. It allows VE: to be set up for single file use or the multifile use described above, and configured for the old versions of M or M+ (V3.2 or V1), or for M V4 or M+ V2. The thing is tested in M+ V2 but not in M V4 since I don't have an RSX11M V4 system handy. However, it looks like it'll be OK for M V4. There are some extra versions of AVE, DVE, and AVEX with longer filenames as well as the ones VEGEN uses. They attempt to support the new M+ V2 functionality of external headers by the DEC-suggested code changes. However they are NOT tested; try at your own risk. VEGEN will built the normal ones with no external header; they work but take a bit of pool for the headers. This may not be a problem however, if you use CCL to install-run-remove AVE and DVE rather than leaving them installed permanently. Glenn Everhart ********************VD0:[312,325]README.1ST;1******************** ********************VD0:[312,325]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the popular arcade game, PACMAN. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file PACMAN.DOC. Two versions of the task are provided, PACFSL.TSK for those of you who have a supervisor mode FCS library, and PAC.TSK for everybody else. The supervisor mode library version runs in about 13K words of memory, and the regular version in about 16K words. This program has been run in both a PDP 11/44 and a PDP 11/23 successfully, although it is a bit too slow in the 11/23. (The PAC.TSK version has also been run successfully in compatibility mode on a VAX 11/750, although brief inspection indicates that the control-C AST and the mark time directive in the main program loop do not seem to work. Neither of these problems seriously affects the useability of the program.) Task build command files are provided for both versions: (PACFSL.TKB and PAC.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (PACMAN.BLD) The attempt has been made to give this game as much of the "feel" of PACMAN as possible. Your comments, suggestions, complaints, praise, etc. would be appreciated, in particular whether the game is too hard or easy. Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[312,327]README.1ST;1******************** ********************VD0:[312,327]README.1ST;1******************** VEDRV (Modified VDDRV) ABSTRACT: The VE: package is an RSX M/M+ Virtual Disk package permitting multiple files or devices (or mixtures) to be associated together as single virtual disks. Currently up to 8 such may be so associated, though more can be added easily by reassembly. The mnemonic was changed to VE: from VD: in order to permit the old virtual disks to coexist with it. They provide greater protection against inadvertent errors, but less capability for free association of devices. DESCRIPTION: This version of VEDRV is a mod from the VDDRV on [307,100] of F81RSX for M or M+. It incorporates changes which will allow it to link multiple files into a single virtual disk. It assumes that the virtual disk is 1 block longer than would be obtained from each file, with the extra block being a pseudo block that will always return an error on access. Thus, if you create a virtual disk and run BAD, those blocks will be marked bad, RSX will never attempt a QIO$ across file boundaries, and the driver is nearly as simple as the original. At present, AVE will allow up to 8 files to be assigned to a virtual disk (change VEPRE to increase). You must define M$VE$$ in VEPRE to enable this stuff. The driver's name was changed to VE: so that the 2 types of virtual disks can coexist in a system. Because there are NUMEROUS ways you can screw up with this driver (for instance, command errors in AVE will zero the disk size, or you can forget the order in which parts of a VE: are assigned), it was thought that you would be best off able to use the old VD: drivers where only single file assigns are needed. It also makes it easier to test VE: if all blocks are on a virtual disk.) Some minor kludges and caveats: 1. AVE will not lock the files any more and DVE won't unlock them. I thought that keeping multiple filename blocks in pool is too costly. Only the first is even kept and it is not really used. 2. Checking is rather minimal and if you don't run BAD first to add bad blocks to a badblock file, you'll screw up. 3. The driver will actually genrate a pair of bad blocks together at boundaries, plus one at the end of the disk. BAD will find these. Up to 8 files or devices may be associated with each VE: unit (as presently done; re-edit VEPRE to alter this if more are needed). If you try to assign more, the AVE program is supposed to tell you. The message is that the VE: unit is already assigned. (This was a 3 hour edit). Further additions include the AVEX program, which is also off an old DECUS tape but modified for this package. It allows you to use all or part of physical disks for virtual ones, by logical block number, so you can make several small disks look like one bigger one. Thus, you can make your 2 RL01's look like an RL02 or some such thing. It is a good idea to use the /INitialize switch on the first AVE to a virtual disk, just in case the old size was not zeroed in the UCB of the thing. DVE will zero the size, but if you ever bypass it, it'll be just too bad. This AVEX is also handy for preventing wild BRUs from clobbering your disk...as was the original. Since this version derives from one that is OK on M or M+, it should be so again. Note the UCB (I think) gets another 4 words in V4 of M or V2 of M+. It should be clear from the manuals where. Make that change before using on V4 or V2 or your system'll crash! Because of the ease with which one can forget the names of files or disks which are assigned, I recommend STRONGLY that you ALWAYS DRIVE AVE or AVEX from COMMAND FILES (i.e., using indirect MCR). This will give you a way to trace what you have. Glenn Everhart ********************VD0:[312,330]README.1ST;1******************** ********************VD0:[312,330]README.1ST;1******************** THIS UIC CONTAINS SOURCE CODE, OBJECT LIBRARY, AND DOCUMENTATION FOR A REPLACEMENT FOR THE DEC SORT-11 SORT SUBROUTINE INTERFACE TO BE USED BY THE DEC FORTRAN PROGRAMMING COMMUNITY. WHAT THIS SORT IS: 1. A SORT SUBROUTINE INTERFACE SIMILAR TO SORT-11 EXCEPT THAT IT USES FCS RATHER THAN HIGH-OVERHEAD RMS FOR ITS I/O. 2. A GENERAL PURPOSE SORTING TOOL FOR FORTRAN USERS WHO HAVE SMALL TO MEDIUM SCALE SORTING REQUIREMENTS. (UP TO, SAY, 100,000 RECORDS) WHAT THIS SORT IS NOT: 1. A HIGH PERFORMANCE SORTING TOOL. WRITTEN MOSTLY IN FORTRAN (RATFOR) WITH ONE ASSEMBLY SUBROUTINE, IT IS NOT INTENDED TO COMPETE IN PERFORMANCE WITH DEC'S SORT-11. TIMING TESTS HAVE SHOWN IT TO AVERAGE ABOUT FIVE TIMES SLOWER THAN SORT-11, USING AN EQUIVALENT SIZED SORT WORK AREA. WHY USE THIS SORT, THEN? BECAUSE IT USES FORTRAN FCS I/O, RATHER THAN RMS. ITS TOTAL ADDITIONAL BURDEN ON A FORTRAN-BASED TASK ALREADY USING FCS/OTS IS ABOUT 2000 WORDS OF TASK IMAGE SPACE FOR THE CODE, PLUS WHATEVER SIZE WORK AREA IS SPECIFIED. EXPERIENCE WITH DEC'S (RMS) SORT-11 SUBROUTINE INTERFACE SHOWS IT TO BE A WONDERFUL TOOL UNLESS, OF COURSE, YOU HAVE A NEED FOR MORE THAN ABOUT SIX LINES OF APPLICATIONS CODE TO FIT IN YOUR TASK. THIS UIC CONTAINS THE FOLLOWING: SORTS.RAT RATFOR SOURCE FOR THIS SORT COMP.MAC ASSEMBLY SUBROUTINE USED BY THIS SORT SORTS.DOC DOCUMENTATION ON THE USE OF THIS SORT SORTLIB.OLB LIBRARY CONTAINING OBJECT MODULES FOR THIS SORT GLEN HOFFING RCA GOV'T COMMUNICATIONS SYSTEMS MAIL STOP 10-4-6 FRONT AND COOPER STS. CAMDEN, NJ 08102 ********************VD0:[312,331]README.1ST;1******************** ********************VD0:[312,331]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the popular arcade game, PACMAN. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file PACMAN.DOC. Two versions of the task are provided, PACFSL.TSK for those of you who have a supervisor mode FCS library, and PAC.TSK for everybody else. The supervisor mode library version runs in about 13K words of memory, and the regular version in about 16K words. This program has been run in both a PDP 11/44 and a PDP 11/23 successfully, although it is a bit too slow in the 11/23. (The PAC.TSK version has also been run successfully in compatibility mode on a VAX 11/750, although brief inspection indicates that the control-C AST and the mark time directive in the main program loop do not seem to work. Neither of these problems seriously affects the useability of the program.) Task build command files are provided for both versions: (PACFSL.TKB and PAC.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (PACMAN.BLD) The attempt has been made to give this game as much of the "feel" of PACMAN as possible. Your comments, suggestions, complaints, praise, etc. would be appreciated, in particular whether the game is too hard or easy. Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[312,332]README.DOC;1******************** ********************VD0:[312,332]README.DOC;1******************** This is an improved version of SRD, dated 3-DEC-1980. From: Phil Stephensen-Payne, c/o Systime Ltd., Concourse Computer Centre, 432 Dewsbury Road, LEEDS LS11 7DF, England. This version is intended to combine all the versions of SRD I know of (Ray van Tassle's, Bob Turkelson's and my own) into one (easily tailorable) unit, which can then hopefully be used as a base for future modifications. The changes from 'standard SRD' fall into three categories, as follows:- 1. Those made by:- Ray Van Tassle Motorola 1301 E. Algonquin Rd. Room 4135 Schaumburg, Ill. It has been sporadically updated over the last year and a half, so long that I forgot what it's original base was. I think it was the version distributed with our IAS V 2.0 system. The original SRD had a massive number of bugs, the worst one was probably that it would loose files on a Write-back (but mostly only on very large directories) !!!!!!! This version has had all the bugs I could find fixed, plus a lot of enhancements. Some of the key things are: Write-back works properly, and it also re-tries if it gets an I/O error on the write. It will dynamically expand it's core buffer (via EXTSK$ directive) if the directory won't fit. If the entire directory won't fit, it will do it in chunks, each of which is sorted properly; along with a warning message. A trailer line for each directory is given, showing the number of files in the UFD, and the number of files selected. If a switch that causes the file header to be read is specified (/MI, /FU, or a date switch), the number of blocks used/allocated is also given. A "nolist" switch is added, so you can get the above trailer info, without getting a list of the individual files (very handy for scanning an entire disk). The user write-up has been re-written. On date select, the "before" and "after" dates can now both be specified. The format of the output has been slightly modified so that a simple TECO macro can make a PIP command file to copy (or whatever) the selected files. Two macros to do just that are also on this tape, in my UFD for TECO macros. To use them, do: SRD XXX.CMD=???? TEC XXX.CMD *EISTRIP$$ *EIGET$$ * (any other edit you may want to do) *EX$$ 2. Those made by: BOB TURKELSON NASA/GODDARD SPACE FLIGHT CENTER CODE 934 GREENBELT, MARYLAND 20771 (301) 344-8864 Dave Parker, Henry Tumblin Duke University Medical Center Box 3181 Durham, NC 27710 (919) 684-6804 Support for /CO/LO/MU switches (to select contiguous, locked, or multi-header files). Support selection of files created between two dates when both /BE and /AF are used in the same command line. Yes/No/Quit/Go responses for selective delete (obtained from another version of SRD). Support /OV:[n] switch to select obsolete versions of files, which are those files which would be deleted if the /PU:[n] switch were used, and those which would not be selected if the /SV:[n] switch were specified. This provides a convenient method for users to see their obsolete files, and for system managers to determine which users are not regularly purging their files. Fixes for a few bugs (including the one reported in the October 1979 Multi-Tasker). Remove the requirement that a period must be included in the /SE: switch file specification, even if the file searched for has the null type. If the conditional symbol WILD$ is defined in SRDPRE.MAC, treat the file specification string given in the command line as if it has wild card matching after the name and type fields given, unless /DE, /SD, or /PU is specified (but never if the file specification appears in an /SE: or /SD: switch). A previous version of SRD treated any file specification in this manner, even if it appeared in the /SE: switch. Thus there was no method of obtaining only *.CM files, if any *.CMD files existed, or only TALL.* files if any TALLER.* files existed. The version from the New Orleans tape corrected this problem. However, to list all files beginning with OMSI, one must specify >SRD /SE:OMSI* rather than simply >SRD OMSI . In order to make SRD easier to use in our most common situation, without removing its new capability, we chose to make this modification. If any files are to be deleted, we always require the stricter syntax, to help insure that no file is deleted just because its name may be similar to those being deleted. Support for the /ID switch to identify which version of SRD is being used. Current version is V5.0. Support for the /BF switch which displays how much buffer space is available for use by SRD to read in the directory file. The code for reading the directory file into memory has been modified to read in as much of the directory as possible into memory, compress the directory, then if there is still more to read, attempt to continue reading it in. This seems to work on directories which are large but not logically dense. The dynamic checkpoint allocation does not seem to be working properly and SRD should not be built with this feature until it is resolved. 3. Those made by me:- Phil Stephensen-Payne, c/o Systime Ltd., Concourse Computer Centre, 432 Dewsbury Road, LEEDS LS11 7DF, England. a. Modify SRD.CMD (as developed in 2) to contain all the code for building SRD, thus removing SRDASM.CMD. b. Set up initial values of switch masks from Task Builder GBLDEF statements (and add code to SRD.CMD to set them up), thus allowing users to configure various aspects of SRD defaults (e.g. inclusion/exclusion of [0,0]) as they wish. c. Replace the conditionalised code under WILD$ (from 2) with a pair of switches /WI and /WD. If /WI is set (by specification or task builder parameter) then FRED implies FRED* (and so on). In addition the switch /WD indicates whether such wild-carding is valid for delete operations. Note that if /WI is not specified then FRED will still imply FRED.*, but FRED. will look only for files with a null extension. d. /BF switch (in 2) renamed to /SI (size) to avoid conflict with date switches. e. /DA, /AF and /BE modified to handle inclusion of time and/or date. f. Date handling extended to cover:- /AE = After or on a given date/time. /AF = After (but not on) a given date/time. /BE = Before or on a given date/time. /BF = Before (but not on) a given date/time. /DA = On a given date/time. g. Added /HE to provide help. h. Added /AT to determine whether or not output device should be attached if a terminal. i. Added /M2 to allow a different flavour of 'Middle-Sized Listing' (as developed in 1). If /M2 is not set (by specification or TKB) then the format is as defined by Ray van Tassle viz:- Filename Creation Date/Time Revision Date/Time If it is set, the format is one I prefer, viz:- Filename Filesize CLM flags File ID Creation Date/Time j. Added a /00 switch to specify whether [0,0] should be included in [*,*] searches. k. Added a /SY switch to specify whether system accounts ([0,*] to [10,*]) should be included in [*,*] searches. l. Modified output so that if /RD (Revision Date selection) is specified with a date selection or /MI/M2 the date output is the revision Date instead of the Creation Date. m. Combined the methods of 1 and 2 for coping with big directories, so that now SRD will read the directory a bit at a time (if necessary), compressing as we go (as in 2) and if there is still insufficient room, will do it in chunks (as in 1). As far as I can tell the method works, but I have been unable to test it properly as I cannot now create a directory too big for it to handle (I gave up after about 1600 files - if you have more than that in one directory you've probably got problems anyway!). n. Updated the version to 6.0. For full details on this version of SRD consult SRD.DOC. ********************VD0:[312,332]README.1ST;1******************** ********************VD0:[312,332]README.1ST;1******************** [352,1]README.1ST - LOS ANGELES FALL 81 - FILES SUBMITTED BY: Bob Turkelson NASA/Goddard Space Flight Center Code 935 Greenbelt, MD 20771 (301) 344-5003 This UIC contains correction files for SRD V6.0, which was submitted to the Spring 1981 Miami RSX SIG tape, in [373,4]. The modifications I made are: o Corrected the problem with SRD.CMD which caused the generation of incorrect initialization defaults when the feature was used. o Changed SRD.CMD so that a different SRD.ODL file is generated when SRD is built with FCSRES. o Corrected a but which prevented /WB/-LI from working properly (the directory was not sorted before the write-back). o Changed SRD so that when the /SE switch is specified, /WI and /WD are ignored; that is, there is no implicit wild-carding whenever the /SE switch is used. o Added the /ZE switch to list zero used block files. o Added code so that if the file attributes area of the header contains a value of 0 for the number of blocks allocated, SRD will calculate the number of allocated blocks from the retrieval pointers. The SLP *.COR files assume the Version 6.0 *.MAC files are in the current UIC, and that they have file version number 1. The correction files create *.MAC;2. Procedure: SLP @SRD.COR ! Corrects all necessary files @SRD ! Asks configuration questions and builds SRD I plan to make additional modifications before the next SIG tape. I will keep Version 6.0 *.MAC files as the base, and add on to these correction files. I would appreciate hearing from those who have made changes or plan to make changes to this version, so we can continue to improve this useful utility. [352,1]README.1ST - END ********************VD0:[312,336]README.1ST;1******************** ********************VD0:[312,336]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the popular arcade game, MISSILE COMMANDER. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file MISSIL.DOC. Two versions of the task are provided, MSLFSL.TSK for those of you who have a supervisor mode FCS library, and MSL.TSK for everybody else. The supervisor mode library version runs in about 13K words of memory, and the regular version in about 16K words. Task build command files are provided for both versions: (MSLFSL.TKB and MSL.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (MISSIL.BLD) Enjoy!! Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[312,337]README.1ST;1******************** ********************VD0:[312,337]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the popular arcade game, CENTIPEDE. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file CNTPED.DOC Two versions of the task are provided, CENFSL.TSK for those of you who have a supervisor mode FCS library, and CEN.TSK for everybody else. The supervisor mode library version runs in about 12K words of memory, and the regular version in about 15K words. Task build command files are provided for both versions: (CENFSL.TKB and CEN.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (CNTPED.BLD) Enjoy!! Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[312,340]README.1ST;1******************** ********************VD0:[312,340]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the popular arcade game, CENTIPEDE. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file CNTPED.DOC Two versions of the task are provided, CENFSL.TSK for those of you who have a supervisor mode FCS library, and CEN.TSK for everybody else. The supervisor mode library version runs in about 12K words of memory, and the regular version in about 15K words. Task build command files are provided for both versions: (CENFSL.TKB and CEN.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (CNTPED.BLD) Enjoy!! Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[312,342]README.1ST;1******************** ********************VD0:[312,342]README.1ST;1******************** This UIC contains the source, object modules, and task images for a game similar to the (once) popular arcade game, BRKOUT. To play you need: 1 PDP-11 (or VAX-see below) computer running RSX-11M or RSX-11M+ 1 VT100 terminal at 9600 baud (Advanced Video Option NOT required) A brief set of playing instructions are present in the file BRKOUT.DOC Two versions of the task are provided, BKOFSL.TSK for those of you who have a supervisor mode FCS library, and BKO.TSK for everybody else. The supervisor mode library version runs in about 10K words of memory, and the regular version in about 13K words. Task build command files are provided for both versions: (BKOFSL.TKB and BKO.TKB) The source code is written mostly in RATFOR, with some assembly language. A command file to assemble and compile the source is provided (BRKOUT.BLD) Enjoy!! Glen Hoffing RCA Gov't Communications Systems Front and Cooper Sts. 10-4-6 Camden, NJ 08102 ********************VD0:[315,200]README.1ST;1******************** ********************VD0:[315,200]README.1ST;1******************** Program name: IBM Submitter: PW ROWLAND, CELANESE CORP., CHARLOTTE, NC, 704-554-2100 Function: Create, Read and Write IBM 3740 format compatable diskettes. Language: FORTRAN V2.5 (should also be compatable with FOR PLUS or 77). Operating System: RSX-11M, non-priviledged (should run on M+, IAS - uses QIO's and RT with modifications). Hardware Required: RX01 (RX02's not tested). Description: This program will allow the user to create, read and/or write IBM Basic Exchange diskettes. The user can: - initialize diskettes. - transfer Files 11 files to Data Sets. - transfer Data Sets to a Files 11 files. - perform ASCII/EBCDIC or EBCDIC/ASCII code conversions. - list Data Set Labels (directories). - delete Labels. A internal help function is included. An IBM Basic Exchange diskette is single sided with 77 tracks and 26 sectors per track. Each sector is 128 bytes long. This has the same diskette requirements as the RX01. A maximum of 19 labels (files) may be contained on one diskette. CAUTION: IBM often puts only one record in each sector. A Files 11 file most likely will string records together in a sector. This program does not reblock (or deblock) records. Instructions: Extract IBMBLD from the IBM.ULB; LBR IBMBLD.CMD=IBM.ULB/EX:IBMBLD Execute the command file; @IBMBLD. // ********************VD0:[326,1]README.1ST;1******************** ********************VD0:[326,1]README.1ST;1******************** The North Texas Local Users Group The files contained in [326,*] were submitted to the North Texas Local Users Group Library. The submissions: [326,112] - SPELL A spelling checker from Jeff Hamilton of E-Systems, Greenville Division. For more Information see the README.1ST [326,113] Programs from Kevin Klughart of MOSTEK Corporation's Computer Aids to Design Department. For More Information see the README.1ST If you need help in reaching the authors, please contact: John Jenkinson MOSTEK Corporation 1215 West Crosby Road MS 32 Carrollton, Texas 75006 ********************VD0:[326,112]README.1ST;1******************** ********************VD0:[326,112]README.1ST;1******************** ************************************************************ S P E L L I N G C H E C K E R This system of two programs and associated data base comprise a MCR callable spelling checker data base. The idea was mine but I got considerable help from Marge Knox and Phil Cannon. For use see either SPELL.RNO or SPELL.DOC which has been run through TECO. As always it can be used by anyone in DECUS (or otherwise) for what ever purpose, but I accept no liability for any bugs or problems with its use. I would like to hear about any bugs (and fixes?). Jeff Hamilton E-Systems Inc. P. O. Box 1056 CBN 28 Greenville, Texas 75401 (214)454-4175 ********************VD0:[326,113]README.1ST;1******************** ********************VD0:[326,113]README.1ST;1******************** Mostek RSX DECUS Submission Computer Aids to Design Department Spring 1982 After gaining so much from past DECUS tapes, I figured that it was high time that I get it together and contribute my fair share. All of the following utilities run under a RSX V3.2 (e) system with a 128k PDP-11/34/60 as the CPU. VAX programs submitted will run under VMS 2.4 and later releases with PHASE III (VAX V2.0) DECNET. If you have any problems or questions, please feel free to give me a call or drop me a line: Kevin Klughart Mostek Corporation 1215 West Crosby Road Carrollton, Texas 76006 Mail Station 600 (214) 323-8813 Mostek CAD RSX DECUS Submission Program Abstracts CLK - An extremely simple switch register time-of-day clock which displays hours, minutes, and seconds in octal on the console switch register. This task runs on a PDP-11/60 with a 4k IOPAGE device register partition. This program is dedicated to the system hackers who either can't read a standard clock or are too poor to buy a watch. JOB - This utility spawns a copy of the indirect on a specified terminal with a file of a specified name. This may be useful in non-mup systems in which you may wish to initiate captive indirect command procedures on remote terminals within the system STARTUP.CMD startup command procedure. @SRD - This indirect command procedure is used to sort an entire disk volume directory structure. Used from a privileged terminal, it can sort and compress a disk directory without user intervention. Note: check to insure that you version of SRD generates directory listings which correspond to the format required by this command procedure before using it! RJEMSG - This network server task is designed to receive SDAT$ data packets and transmit them to remote VAX users who are currently linked via the EXtended Remote Batch (XRB) facility. In this fashion, remote VAX users may transmit or receive command lines to properly designed RSX tasks. This network server is very useful in situations in which the application task is already written and is quite large already (no room left for network code), or too firmly entrenched for revision (as are most application programs). In any case, this piece of code should prove valuable to anyone attempting to use DECNET task-to-task communication in macro for the first time. I have found very few examples of this type of code to use as guides for user applications such as this. This piece of code was originally designed for use as a remote VAX DECNET interface to the DEC RSX RJE/HASP subsystem. XRB - This is the VAX partner to RJEMSG. This piece of VAX FORTRAN establishes a logical link between the VAX process and the remote RJEMSG task and allows the user to send/receive messages to the remote network server. This code segment will need the character string and RMS utilities from the STRING.FOR and RMS.MAR files to link properly. This code is submitted to aid as a guide in designing the remote user interface and is not intended as a fully functional user interface. Mostek CAD RSX DECUS Submission Program Abstracts RMS - Support routines for XRB.FOR STRING - Support routines for XRB.FOR TNM - A simple utility designed to enable anyone to change a task's name from one RAD50 character string to another RAD50 character string. This is a modification of two similar utilities found on the Fall 81 RSX DECUS tape. This utility changes specific task names as opposed to changing ALL task names associated with a particular terminal. TRD - A magnetic Tape ReaD utility which reads ascii/ binary mag tape data and appends it with ascii/ binary disk files to produce EBCDIC disk files suitable for binary transmission over an RJE/HASP communications link. This utility somewhat specialized in nature, but illustrates use of the CSI$ and Gxxxx macros, which may be of use to novice users needing an example of their use. in its simplist form, this program can be used to convert ascii to EBCDIC and/or EBCDIC to ascii disk files. This utility features overlapped mag tape I/O. TWT - This is the counterpart to TRD, a Tape WriTe utility. As binary punch files return from a remote host and are stored on disk, this utility may be invoked to take the 80-byte binary punch records and format them to mag tape. Information regarding tape blocking and conversion formats is contained in control records within the binary punch data file (these conversion formats conform to RADIAN UNITECH conversion protocol, but can be easily modified for any other specific user format). This utility may be of use to users who are generating disk-to-tape copy programs which require some (or no) disk data conversion/reduction. This utility features overlapped mag tape I/O. End of Program Abstracts ********************VD0:[330,1]README.RNO;1******************** ********************VD0:[330,1]README.RNO;1******************** .PAGE SIZE 60,75 .header mixed .LM +5 .RM 75 .HY .skip 20 .center LIST File Listing Utility .center ========================= .skip 4 .autoparagraph LIST is like the TYPE and Unix GREP commands only better. LIST's simplest use is to display lines from a file at the terminal a screen at a time. It has sophisticated string searching and can write out portions of files to other files. File names to be listed may have wild card characters in them, making it easy to do such chores as looking through a group of files for a particular string or variable. Finally, LIST can be positioned randomly in a file using line (record) numbers, and can list VAX RMS indexed files by key number and do key searches. LIST is very fast, as it uses a macro interface to the file system to read and write files; in addition it buffers the disk address of lines in the file to simulate random access on the file. Version 3 of LIST has some notable improvements over the last release. The search routines have been recoded in macro for speed, and some nice command line switches have been added, including several for specifying key number and key searches when listing VAX RMS indexed and relative files. Also, a comprehensive help file is included for VAX VMS. LIST is available for VAX VMS systems and RSX/IAS systems. The VAX VMS version runs in native mode. There is a help file, LIST.HLP, for VAX VMS, and a comprehensive user manual, LIST.DOC, is included in both distributions. The VAX help file should be placed in your system help library. The VAX VMS version also includes a command file, MAKELIST.COM, which uses LIST to rewrite a carriagecontrol NONE file as a carriagecontrol LIST file, and a command file, SEARCH.COM, which uses LIST to search through files for a given string. On RSX/IAS systems, SRD is used to select wild card file names. The routine which gets file names from SRD is called FNDFIL.FTN; if for some reason SRD doesn't work with LIST (if your SRD has a different output file format from our SRD, for instance) then modify this file. If you would rather use PIP than SRD, there is a file called PIPFIL.RAT (and also PIPFIL.FTN) which contains the FNDFIL subroutine, but for PIP. LIST is written almost entirely in Ratfiv; on RSX/IAS systems, the .FTN files are included, however the Ratfiv compiler is also included on this tape, and is very simple to build. On VAX VMS systems, LIST's .EXE file is included, as is the Ratfiv source and the Ratfiv compiler. .skip 1 To build LIST for VAX VMS, say .skip 1 @BUILD .SKIP 1 ^T\\O BUILD ^^LIST\\ FOR ^^IAS\\, SAY .SKIP 1 ^^@IASBUILD\\ .SKIP 1 ^T\\O BUILD ^^LIST\\ FOR ^^RSX-11M\\, SAY .SKIP 1 ^^@RSXBUILD\\ .SKIP 1 ^TO BUILD ^^LIST\\ FOR ^^IAS\\ MULTI-USER SYSTEMS USE ^^IASBUILD.CMD\\, BUT SUBSTITUTE THE OBJECT CODE PRODUCED BY ^^RUNSYMU.FTN\\ FOR THAT PRODUCED BY ^^RUNSYSIAS.MAC\\ IN THE FILE ^^IASTKB.CMD\\. .SKIP 1 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^P. ^WOOD, ^JR. ^COMPUTER ^CENTER ^INTSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,1]README.1ST;1******************** ********************VD0:[330,1]README.1ST;1******************** LIST File Listing Utility ========================= LIST is like the TYPE and Unix GREP commands only better. LIST's simplest use is to display lines from a file at the terminal a screen at a time. It has sophisticated string searching and can write out portions of files to other files. File names to be listed may have wild card characters in them, making it easy to do such chores as looking through a group of files for a particular string or variable. Finally, LIST can be positioned randomly in a file using line (record) numbers, and can list VAX RMS indexed files by key number and do key searches. LIST is very fast, as it uses a macro interface to the file sys- tem to read and write files; in addition it buffers the disk address of lines in the file to simulate random access on the file. Version 3 of LIST has some notable improvements over the last re- lease. The search routines have been recoded in macro for speed, and some nice command line switches have been added, including several for specifying key number and key searches when listing VAX RMS indexed and relative files. Also, a comprehensive help file is included for VAX VMS. LIST is available for VAX VMS systems and RSX/IAS systems. The VAX VMS version runs in native mode. There is a help file, LIST.HLP, for VAX VMS, and a comprehensive user manual, LIST.DOC, is included in both distributions. The VAX help file should be placed in your system help library. The VAX VMS version also includes a command file, MAK- ELIST.COM, which uses LIST to rewrite a carriagecontrol NONE file as a carriagecontrol LIST file, and a command file, SEARCH.COM, which uses LIST to search through files for a given string. On RSX/IAS systems, SRD is used to select wild card file names. The routine which gets file names from SRD is called FNDFIL.FTN; if for some reason SRD doesn't work with LIST (if your SRD has a differ- ent output file format from our SRD, for instance) then modify this file. If you would rather use PIP than SRD, there is a file called PIPFIL.RAT (and also PIPFIL.FTN) which contains the FNDFIL subroutine, but for PIP. LIST is written almost entirely in Ratfiv; on RSX/IAS systems, the .FTN files are included, however the Ratfiv compiler is also in- cluded on this tape, and is very simple to build. On VAX VMS systems, LIST's .EXE file is included, as is the Ratfiv source and the Ratfiv compiler. To build LIST for VAX VMS, say @BUILD Page 2 To build LIST for IAS, say @IASBUILD To build LIST for RSX-11M, say @RSXBUILD To build LIST for IAS multi-user systems use IASBUILD.CMD, but substi- tute the object code produced by RUNSYMU.FTN for that produced by RUN- SYSIAS.MAC in the file IASTKB.CMD. Send comments, problems, etc. to: William P. Wood, Jr. Computer Center Intstitute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 (215) 728 2760 ********************VD0:[330,2]README.1ST;1******************** ********************VD0:[330,2]README.1ST;1******************** F D T ===== This UIC contains the ICR FORTRAN IV Plus Symbolic debugger. It is designed for IAS, but will also work under RSX-11M if you uncomment the line ";RSX11M=0", which defines RSX11M, in FDT.MAC. Please read FDTEXP.DOC for more information. If you have problems, corrections or comments please contact: Robert K. Stodola Computer Center The Institute for Cancer Research 7701 Burholme Ave. Philadelphia, PA 19111 215 728-2760 ********************VD0:[330,4]README.RNO;1******************** ********************VD0:[330,4]README.RNO;1******************** .PAGE SIZE 60,75 .header mixed .LM +5 .RM 75 .HY .skip 20 .center SRD command line generator .center ========================== .skip 4 .autoparagraph SRDCMD generates command lines which contain file names selected by SRD (or PIP - see below). For example, the following SRDCMD command generates command lines to copy all files created today to UIC [6,120]; the command lines are written to the file T.CMD: .skip 1 SRDCMD> *.*/DA COPY 'N'E [6,120]*.* >T .skip 1 The string 'N'E specifies that the name and extension of each file name be expanded at that point in the command line. Version, UIC, and device information can also be placed anywhere in the command line. For further information, see SRDCMD.DOC. The routine which gets file names from SRD is called FNDFIL.FTN; if for some reason SRDCMD doesn't work correctly (if your SRD has a different output file format from our SRD, for instance) then modify this file. Another alternative is to build the version of SRD included on this tape, which is an enhanced and debugged version. If you would rather use PIP than SRD, there is a file called PIPFIL.RAT (and also PIPFIL.FTN) which contains the FNDFIL subroutine, but for PIP. SRDCMD is written almost entirely in Ratfiv; the .FTN files are included, however the Ratfiv compiler is also included on this tape, and should be very simple to build. (See README.1ST on the Ratfiv compiler directory.) .SKIP 1 ^T\\O BUILD ^^SRDCMD\\ FOR ^^IAS\\, SAY .SKIP 1 ^^@IASBUILD\\ .SKIP 1 ^T\\O BUILD ^^SRDCMD\\ FOR ^^RSX-11M\\, SAY .SKIP 1 ^^@RSXBUILD\\ .SKIP 1 ^TO BUILD ^^SRDCMD\\ FOR ^^IAS\\ MULTI-USER SYSTEMS, USE ^^IASBUILD.CMD\\, BUT SUBSTITUTE THE OBJECT CODE PRODUCED BY ^^RUNSYMU.FTN\\ FOR THAT PRODUCED BY ^^RUNSYSIAS.MAC\\ IN THE FILE ^^IAS.TKB\\. .SKIP 1 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^WOOD ^COMPUTER ^CENTER ^INTSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,4]README.1ST;1******************** ********************VD0:[330,4]README.1ST;1******************** SRD command line generator ========================== SRDCMD generates command lines which contain file names selected by SRD (or PIP - see below). For example, the following SRDCMD com- mand generates command lines to copy all files created today to UIC [6,120]; the command lines are written to the file T.CMD: SRDCMD> *.*/DA COPY 'N'E [6,120]*.* >T The string 'N'E specifies that the name and extension of each file name be expanded at that point in the command line. Version, UIC, and device information can also be placed anywhere in the command line. For further information, see SRDCMD.DOC. The routine which gets file names from SRD is called FNDFIL.FTN; if for some reason SRDCMD doesn't work correctly (if your SRD has a different output file format from our SRD, for instance) then modify this file. Another alternative is to build the version of SRD includ- ed on this tape, which is an enhanced and debugged version. If you would rather use PIP than SRD, there is a file called PIPFIL.RAT (and also PIPFIL.FTN) which contains the FNDFIL subroutine, but for PIP. SRDCMD is written almost entirely in Ratfiv; the .FTN files are included, however the Ratfiv compiler is also included on this tape, and should be very simple to build. (See README.1ST on the Ratfiv compiler directory.) To build SRDCMD for IAS, say @IASBUILD To build SRDCMD for RSX-11M, say @RSXBUILD To build SRDCMD for IAS multi-user systems, use IASBUILD.CMD, but sub- stitute the object code produced by RUNSYMU.FTN for that produced by RUNSYSIAS.MAC in the file IAS.TKB. Send comments, problems, etc. to: William Wood Computer Center Intstitute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 (215) 728 2760 ********************VD0:[330,6]README.1ST;1******************** ********************VD0:[330,6]README.1ST;1******************** TAPE instructions. ------------------ Tape is designed to run under version 3.00 of IAS on a PDP-11/70. On an IAS system it may be linked using the command file EXPORT.CMD. This program has not been tested on an RSX-11M system, but should require little or no modification. The command file RSXBLD.CMD may build TAPE correctly under RSX-11M, but this also has not been tested. Note that the build files assume that the FORTRAN-IV Plus library is in the system library. Begin by copying all files to the system disk. NOTE: QIOSYS.FTN MUST BE PUT ON [1,1] AND ALL OTHER FILES ON [22,11] TO COMPILE CORRECTLY. One known bug exists: the number of lines read or written is an integer*2 variable, so it will report the incorrect number of lines if the file is larger than 32767 lines. The file should be read/written correctly, however. If you have problems, corrections or comments please contact: Robert K. Stodola Computer Center The Institute for Cancer Research 7701 Burholme Ave. Philadelphia, PA 19111 215 728-2760 ********************VD0:[330,10]README.RNO;1******************** ********************VD0:[330,10]README.RNO;1******************** .AUTOPARAGRAPH .CENTER BURSTF .skip 1 BURSTF bursts the subroutines, functions, programs, and block datas in a FORTRAN source file into their own individual files. .SKIP 1 \\ ^TO BUILD ^BURSTF, DO .SKIP 1 ^^@BUILD\\ .SKIP 1 ^DOCUMENTATION IS IN THE FILE ^^BURSTF.DOC\\. .SKIP 2 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^P. ^WOOD, ^JR. ^INSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,10]README.1ST;1******************** ********************VD0:[330,10]README.1ST;1******************** BURSTF BURSTF bursts the subroutines, functions, programs, and block datas in a FORTRAN source file into their own individual files. To build Burstf, do @BUILD Documentation is in the file BURSTF.DOC. Send comments, problems, etc. to: William P. Wood, Jr. Institute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 (215) 728 2760 ********************VD0:[330,11]README.1ST;1******************** ********************VD0:[330,11]README.1ST;1******************** RESEQUENCE ========== This program resequences statement numbers in FORTRAN IV-PLUS programs. See RESEQ.DOC for more detail. ********************VD0:[330,12]README.1ST;1******************** ********************VD0:[330,12]README.1ST;1******************** TRU === TRU truncates files. Though PIP will also truncate files, PIP will change the revision date on all files specified, even if they did not require truncation. This will cause an incremental backup program (such as BRU) to needlessly backup files which have not been changed. TRU first ascertains whether or not a file requires truncation before invoking PIP to actually do the truncation. NOTE: THIS PROGRAM REQUIRES THAT A SCRATCH DIRECTORY LB:[12,1] BE AVAILABLE TO ALL USERS. This program runs under IAS v3.0. To use under RSX-11M, replace the object runsys.obj with the object produced by runsysrsx.ftn. To use under multi-user IAS systems, replace the object runsys.obj with the object produced by runsymu.ftn. ********************VD0:[330,13]README.RNO;1******************** ********************VD0:[330,13]README.RNO;1******************** .AUTOPARAGRAPH .CENTER XEQ .CENTER === .skip 2 XEQ is like the RUN command, except that it will search one or more directories to find the program you wish to run, and then chain to that program. You may tell XEQ which directories to search; once you have done so, you need not do it ever again unless you wish to change the search directories. For example, if LB:[100,100] was in my search path, I would only have to type: .SKIP 1 .indent +10 XEQ PROGRAM .SKIP 1 to run LB:[100,100]PROGRAM, even if my default directory was not LB:[100,100]. XEQ is also able to pass a command line to the program it invokes. This feature is very useful for users who don't have the privilege to install tasks, as it allows them to pass command lines to their programs from the terminal, or, most importantly, when the program is executing in a command file. Also, pool space is saved by XEQing programs rather than installing them. Uninstalled programs can be stored on a common task UIC and XEQ'ed when needed provided the UIC is in your search path. XEQ's list of search directories is maintained for each user in an installed global common area, XEQCOM. Currently there is room for up to 256 users and 380 search directories in XEQCOM, which is about 8K words long. The common area may be enlarged or decreased by modifying the symbolic parameters in XEQCOM.COM. XEQ needs to be able to find out who is running XEQ to look up the correct search path. A program, WHOIST, is included on this directory which is mapped to IASCOM. WHOIST waits in a swapable stop state until it gets a request for a user's name from XEQ through the WHOZON subroutine. The three parts of XEQ (XEQ itself, XEQCOM global common, and .WHO.) may all be built by saying @BUILD. You will probably want to move XEQ and WHOIST to your system task directory and XEQCOM to your shared library directory after building them. A test program, ECHO, is built by the BUILD file to test XEQ. ECHO echoes command lines. In order to receive a command line from XEQ, a program such as ECHO must be linked with a routine, RECCML, which is included on this directory. RECCML's calling sequence is like the calling sequence for GETMCR. However ECHO illustrates the use of a more general routine, GCMD, which attempts to get a command line first from MCR using GETMCR, then, failing that, from XEQ using RECCML, and failing that, from the terminal, using a user-specified prompt. Thus programs which use GCMD can get their command lines from MCR if they are installed, as well as from XEQ or the terminal. You should look at ECHO.RAT if you want to use GCMD. GCMD is located in the support library, and it's source is in GETARG.RAT. The file XEQ.HLP is a user help file which should go in your system help file. It explains how to tell XEQ your search path. One command is not described in XEQ.HLP; this is the /PEEK command, which causes XEQ to print the name of each user, his/her search path, and the index of that user in XEQCOM. The output from /PEEK may be redirected to a file if FILE is specified after /PEEK, for instance: .skip 1 .indent +10 XEQ/PEEK PATH.LST .skip 1 XEQ is IAS specific. .SKIP 4 \\ ^TO BUILD ^X^E^Q, DO .SKIP 1 ^^@BUILD\\ .SKIP 2 ^^Documentation is in the file "XEQ.HLP". Note that users of XEQ must have the privilege to chain to another task. \\ .SKIP 2 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^WOOD ^INSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,13]README.1ST;1******************** ********************VD0:[330,13]README.1ST;1******************** XEQ === XEQ is like the RUN command, except that it will search one or more directories to find the program you wish to run, and then chain to that program. You may tell XEQ which directories to search; once you have done so, you need not do it ever again unless you wish to change the search directories. For example, if LB:[100,100] was in my search path, I would only have to type: XEQ PROGRAM to run LB:[100,100]PROGRAM, even if my default directory was not LB:[100,100]. XEQ is also able to pass a command line to the program it invokes. This feature is very useful for users who don't have the privilege to install tasks, as it allows them to pass command lines to their programs from the terminal, or, most importantly, when the program is executing in a command file. Also, pool space is saved by XEQing programs rather than installing them. Uninstalled programs can be stored on a common task UIC and XEQ'ed when needed provided the UIC is in your search path. XEQ's list of search directories is maintained for each user in an installed global common area, XEQCOM. Currently there is room for up to 256 users and 380 search directories in XEQCOM, which is about 8K words long. The common area may be enlarged or decreased by modifying the symbolic parameters in XEQCOM.COM. XEQ needs to be able to find out who is running XEQ to look up the correct search path. A program, WHOIST, is included on this directory which is mapped to IASCOM. WHOIST waits in a swapable stop state until it gets a request for a user's name from XEQ through the WHOZON subroutine. The three parts of XEQ (XEQ itself, XEQCOM global common, and .WHO.) may all be built by saying @BUILD. You will probably want to move XEQ and WHOIST to your system task directory and XEQCOM to your shared library directory after building them. A test program, ECHO, is built by the BUILD file to test XEQ. ECHO echoes command lines. In order to receive a command line from XEQ, a program such as ECHO must be linked with a routine, RECCML, which is included on this directory. RECCML's calling sequence is like the calling sequence for GETMCR. However ECHO illustrates the use of a more general Page 2 routine, GCMD, which attempts to get a command line first from MCR using GETMCR, then, failing that, from XEQ using RECCML, and failing that, from the terminal, using a user-specified prompt. Thus programs which use GCMD can get their command lines from MCR if they are installed, as well as from XEQ or the terminal. You should look at ECHO.RAT if you want to use GCMD. GCMD is located in the support library, and it's source is in GETARG.RAT. The file XEQ.HLP is a user help file which should go in your system help file. It explains how to tell XEQ your search path. One command is not described in XEQ.HLP; this is the /PEEK command, which causes XEQ to print the name of each user, his/her search path, and the index of that user in XEQCOM. The output from /PEEK may be redirected to a file if FILE is specified after /PEEK, for instance: XEQ/PEEK PATH.LST XEQ is IAS specific. To build XEQ, do @BUILD Documentation is in the file "XEQ.HLP". Note that users of XEQ must have the privilege to chain to another task. Send comments, problems, etc. to: William Wood Institute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 (215) 728 2760 ********************VD0:[330,14]README.1ST;1******************** ********************VD0:[330,14]README.1ST;1******************** This UIC has three programs for IAS. The GAMe command allows a common interface to games. Used in conjuction with the SCHEDULE program, it also allows the system manager to restrict game playing to specified hours. See GAME.DOC for more information. RUNNL is a program which will spawn a task on the privileged TI of device NL0. In order to use, you must have included this device in your SYSGEN command file, though it need not have any device handler associated with it. RUNNL handles all task scheduling requests sequentially, and will not schedule a second task until the first has exitted. Where possible, therefore, tasks which may take more than several seconds should be started by spawning ...RUN with a command line to run the desired task. See RUNNL.DOC for more information. The program SCHEDULE allows a system manager to schedule tasks to be run at specified times and days. For example, you may schedule a timesharing parameter be changed each weekday at 08:00, and again at 18:00 on weekdays, or that a file be printed each saturday at 20:00, etc. See SCHEDULE.DOC for more information. TO BUILD PROGRAMS: @BUILD WHEN BRINGING UP SYSTEM, SET DEFAULT TO THIS UIC AND EXECUTE: @SUP ********************VD0:[330,15]README.RNO;1******************** ********************VD0:[330,15]README.RNO;1******************** .AUTOPARAGRAPH .NHY \\ .CENTER ^RATFIV ^VERSION 2.1 .SKIP 1 ^RATFIV IS A STRUCTURED ^FORTRAN PREPROCESSOR PROVIDING ^^SWITCH, IF - ELSE, WHILE, FOR, DO, REPEAT - UNTIL, STRING,\\ AND ^^BREAK\\ AND ^^NEXT\\ CONSTRUCTS. ^ALSO SUPPORTED ARE ^^INCLUDE\\ FILES, ^^DEFINE\\ FOR SYMBOLIC CONSTANTS AND MACROS WITH ARGUMENTS, CONDITIONAL COMPILATION, FORMATS IN READ, WRITE, ENCODE, AND DECODE STATEMENTS, USE OF _>, _<, ETC. INSTEAD OF _._G_T_., _._L_T_., ETC, AND THE ^^RETURN VALUE\\ CONSTRUCT IN FUNCTIONS. ^RATFIV WAS DEVELOPED FROM THE ^RATFOR COMPILER DISTRIBUTED BY ^LAWRENCE ^BERKLEY ^LABS; VERSIONS ARE AVAILABLE FOR ^^VAX VMS and RSX/IAS systems.\\ ^THE MAJOR ENHANCEMENTS IN ^RATFIV ARE: .LIST .LE;^ABILITY TO SPECIFY A FORMAT STATEMENT INSIDE ^^READ, WRITE, ENCODE,\\ AND ^^DECODE\\ STATEMENTS; .LE;^CONSISTENT LINE CONTINUATION USING THE UNDERLINE CHARACTER; .LE;^PRODUCTION OF PROPERLY INDENTED UPPER CASE ^FORTRAN CODE WITH COMMENTS PASSED THROUGH; .LE;^OPTIONAL OUTPUT OF ^FORTRAN 77 CODE WITH THE /^F77 SWITCH (however this switch produces valid code for ^V^A^X ^Fortran 77 only); .LE;^ADDITION OF A ^^/SYMBOLS\\ SWITCH TO THE COMMAND LINE TO OPTIONALLY READ THE ^^SYMBOLS\\ FILE; .LE;^OUTPUT OF QUOTED STRINGS OR OPTIONALLY HOLLERITH STRINGS (QUOTED STRING OUTPUT ALLOWS ^RATFIV TO BE USED WITH ^^DEC\\ ^FORTRAN ^^OPEN\\ STATEMENTS, the ^fortran 77 ^^CHARACTER\\ data type, etc.); .LE;^EVALUATED AND UNEVALUATED ARGUMENTS IN MACROS; .LE;^CORRECT LINE NUMBER REPORTING; .LE;^EXIT WITH ERROR STATUS IF AN ERROR OCCURS DURING COMPILATION; .LE;^USE OF CHARACTER CONSTANTS IN CASE LABELS; .LE;^NUMEROUS BUG FIXES; .LE;^COMPREHENSIVE DOCUMENTATION; .LE;^RATFIV KEYWORDS NEED NOT APPEAR AT THE BEGINNING OF A SOURCE LINE IN ORDER TO BE RECOGNIZED. .END LIST ^THIS VERSION OF ^RATFIV MAY BE USED IF YOU WANT TO COMPILE THE ^RATFIV SOURCE TO THE OTHER PROGRAMS WRITTEN IN ^RATFIV ON THIS TAPE. ^^ Version 2 of Ratfiv has a few enhancements, bug fixes, and changes since Version 1. The enhancements are: .list .le;The documentation has been revised, particularly the section on defining macros; .le;Hollerith strings may be optionally outputted instead of quoted strings; .le;The initialization and increment parts of FOR loops may have more than one statement in them; .le;Macro definitions may have commas in them; .le;Arguments to the __len and __include macros may have commas in them; .le;The special macro arguments _$_& and _%_& are replaced by ALL the arguments passed to the macro; .le;Octal constants may be inserted in STRING variables; .le;The number of special escaped characters in the STRING statement has been increased and these characters may also be used with the CASE statement; .le;Quoted strings are consistent in that double and single quoted strings may both have double or single quotes in them, even in the STRING and CASE statements; .le;Macros may be defined which emulate the __ifdef, __ifndef, __enddef, and __elsedef macros (see the file RATFOR.SYM for an example of this); .le;Some unused CONTINUE statements in the Fortran output have been eliminated. .end list .skip 2 A few changes were made that could cause incompatibility with Version 1. I am sorry for these changes, but they were necessary for my peace of mind. I expect this version to be pretty stable. The changes are: .list .le;The dot (.) character is not allowed in macro names anymore. This change was made because it could cause problems when a macro name appeared next to a valid dot character, as in "if (status.eq.EOF)". .le;The BREAK statement may not be used to break from a SWITCH statement anymore. This change was made for compatibility with Ratfor preprocessors and to make BREAK consistent with the NEXT statement. It was a bad idea in the first place to have BREAK break from a SWITCH statement. .le;Brackets ([]) have no special meaning within macro definitions anymore. The use of brackets in macros was too obscure to justify them. In any case there was little need for them. .le;The NEWLINE character was changed from carriage-return to line feed for compatibility with Ratfor preprocessors. .end list .skip 2 Some of the bug fixes are (there weren't too many bugs): .list .le;include statements insert their input into the input stream correctly when they appear in a macro; .le;Error line number reporting is REALLY correct this time; .le;Literal Fortran code is allowed in macros. .end list .skip 2 The file "RATFOR.SYM" contains some macro definitions which, if placed at the front of the Software Tools "SYMBOLS." file, make Ratfiv largely compatible with the latest (Spring 1981 VAX sig tape) version of Software Tools Ratfor available from Joe Sventek. I have compiled about 15 thousand lines of his code with Ratfiv; the only problem was that some variables named "string" ("string" is a Ratfiv keyword) had to be renamed. Software Tools Ratfor code should be compiled with Ratfiv's "/SYMBOLS" switch, and with Ratfiv's "/HOLLERITH" switch for compatibility on the VAX. This is the only place where the "/HOLLERITH" switch has been needed so far. Note that shortening of long names is not available in Ratfiv; I have not checked whether long names are used in the RSX/IAS version of the Software Tools. Also, the "$(" and "$)" brackets for use with macros are not available in Ratfiv; there seems to be little use for them in Ratfiv. .skip 2 Version 2.1 notes: A help file is included for the VAX VMS distribution (RATFIV.HLP); place it in your system help file. A slight modification has been made to the processing of character strings in the "string" and "case" statements. When expanding strings with the escaped characters "@e" or "@n" in them, Ratfiv now attempts to use the currently defined meanings of EOS and NEWLINE, respectively, whereas in Version 2.0 it used the values which were defined when the compiler was built (these values are 0 and 10 on DEC systems). If EOS and/or NEWLINE is not defined when processing a string or case label, then the default values of 0 and 10 are used, as before. Similarly, when "EOS" and/or "character" is defined, Ratfiv uses these values for the terminating character of a string and the string data type, respectively, otherwise it uses the default values (0 and BYTE), as before. These changes are documented in the section on strings in RATFIV.DOC. .skip 2 I expect that Ratfiv will be fairly stable from now on, although it's possible I will add enhancements. I am interested in hearing about and fixing bugs, however. \\ .skip 4 ^TO BUILD ^RATFIV, DO .SKIP 1 ^^@BUILD\\ .SKIP 1 ^DOCUMENTATION IS IN THE FILE ^^RATFIV.DOC\\. .SKIP 1 ^^ Before building Ratfiv on IAS systems, change the first line in RATFIV.TKB from .skip 1 .indent +5 RATFIV/FP= .skip 1 to .skip 1 .indent +5 RATFIV/FP/RW= .skip 1 This builds Ratfiv without any read-only sections. The "@BUILD" file builds Ratfiv and also Macro, which is just the macro preprocessor portion of Ratfiv. Input passes through the macro processor unchanged except that macros are expanded. There is no documentation for Macro, however the form of the command line is like Ratfiv's and the macros are the same, except that "define" isn't available; use "__macro" instead. Also, the dot (.) character is legal in macro names. There is a system-wide file called "SYMBOLS." which can be read by specifying "/SYMBOLS" on the Ratfiv command line (see the section, "USING RATFIV" in "RATFIV.DOC"). The default location of this file may be changed by changing the define for "USER$BIN" in the "SYMBOLS." file and rebuilding the compiler from scratch. Most people won't need this file, however, so you can just leave it on the directory where Ratfiv is located, since Ratfiv first checks the default directory for the "SYMBOLS." file before looking for the system-wide file. \\ .SKIP 2 ^IF YOU ARE USING THE ^^FOR\\ COMPILER INSTEAD OF ^^F4P\\ ON A ^^PDP11\\, BE SURE TO COMPILE THE ^FORTRAN SOURCES WITH THE ^^-SN\\ SWITCH. ^IGNORE THE ERRORS IN ^^IO.FTN\\; THEY ARE IN MODULES WHICH AREN'T USED BY ^RATFIV. ^YOU WILL ALSO HAVE TO CHANGE THE ^^RATFIV.TKB\\ FILE AS FOLLOWS: .LIST .LE;^DELETE THE ^^MAXBUF\\=512 OPTION. .LE;^CHANGE ^^ACTFIL=8\\ TO ^^ACTFIL\\=7 .LE;^CHANGE ^^UNITS=10\\ TO ^^UNITS=9\\ .END LIST ^THESE CHANGES REDUCE THE NUMBER OF FILE INCLUSION LEVELS ALLOWED BY ^RATFIV BY ONE, BUT THE TASK WOULD BE TOO LARGE OTHERWISE. ^IF THE TASK IS STILL TOO LARGE, YOU CAN REDUCE ^^ACTFIL\\ TO 6 AND ^^UNITS\\ TO 8, BUT DON'T REDUCE THEM ANY MORE AS THEN YOU WILL NOT BE ABLE TO INCLUDE ANY FILES. ^AFTER REDUCING THE NUMBER OF FILE INCLUSION LEVELS, THEN AFTER SUCCESSFULLY BUILDING ^RATFIV you should CHANGE THE DEFINE FOR ^^NFILES\\ IN THE FILE "^^MACSYM.\\" TO REFLECT THE CHANGES (I.E SUBTRACT 1 OR 2 FROM THE DEFINED VALUE OF ^^NFILES\\), and then rebuild the compiler from scratch. .SKIP 2 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^P. ^WOOD, ^JR. ^INSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,15]README.1ST;1******************** ********************VD0:[330,15]README.1ST;1******************** Ratfiv Version 2.1 Ratfiv is a structured Fortran preprocessor providing SWITCH, IF - ELSE, WHILE, FOR, DO, REPEAT - UNTIL, STRING, and BREAK and NEXT constructs. Also supported are INCLUDE files, DEFINE for symbolic constants and macros with arguments, conditional compilation, formats in read, write, encode, and decode statements, use of >, <, etc. instead of .GT., .LT., etc, and the RETURN VALUE construct in functions. Ratfiv was developed from the Ratfor compiler distributed by Lawrence Berkley Labs; versions are available for VAX VMS and RSX/IAS systems. The major enhancements in Ratfiv are: 1. Ability to specify a format statement inside READ, WRITE, ENCODE, and DECODE statements; 2. Consistent line continuation using the underline character; 3. Production of properly indented upper case Fortran code with comments passed through; 4. Optional output of Fortran 77 code with the /F77 switch (however this switch produces valid code for VAX Fortran 77 only); 5. Addition of a /SYMBOLS switch to the command line to optionally read the SYMBOLS file; 6. Output of quoted strings or optionally hollerith strings (quoted string output allows Ratfiv to be used with DEC Fortran OPEN statements, the Fortran 77 CHARACTER data type, etc.); 7. Evaluated and unevaluated arguments in macros; 8. Correct line number reporting; 9. Exit with error status if an error occurs during compilation; 10. Use of character constants in case labels; 11. Numerous bug fixes; 12. Comprehensive documentation; 13. Ratfiv keywords need not appear at the beginning of a source line in order to be recognized. Page 2 This version of Ratfiv may be used if you want to compile the Ratfiv source to the other programs written in Ratfiv on this tape. Version 2 of Ratfiv has a few enhancements, bug fixes, and changes since Version 1. The enhancements are: 1. The documentation has been revised, particularly the section on defining macros; 2. Hollerith strings may be optionally outputted instead of quoted strings; 3. The initialization and increment parts of FOR loops may have more than one statement in them; 4. Macro definitions may have commas in them; 5. Arguments to the _len and _include macros may have commas in them; 6. The special macro arguments $& and %& are replaced by ALL the arguments passed to the macro; 7. Octal constants may be inserted in STRING variables; 8. The number of special escaped characters in the STRING statement has been increased and these characters may also be used with the CASE statement; 9. Quoted strings are consistent in that double and single quoted strings may both have double or single quotes in them, even in the STRING and CASE statements; 10. Macros may be defined which emulate the _ifdef, _ifndef, _enddef, and _elsedef macros (see the file RATFOR.SYM for an example of this); 11. Some unused CONTINUE statements in the Fortran output have been eliminated. A few changes were made that could cause incompatibility with Version 1. I am sorry for these changes, but they were necessary for my peace of mind. I expect this version to be pretty stable. The changes are: 1. The dot (.) character is not allowed in macro names anymore. This change was made because it could Page 3 cause problems when a macro name appeared next to a valid dot character, as in "if (status.eq.EOF)". 2. The BREAK statement may not be used to break from a SWITCH statement anymore. This change was made for compatibility with Ratfor preprocessors and to make BREAK consistent with the NEXT statement. It was a bad idea in the first place to have BREAK break from a SWITCH statement. 3. Brackets ([]) have no special meaning within macro definitions anymore. The use of brackets in macros was too obscure to justify them. In any case there was little need for them. 4. The NEWLINE character was changed from carriage-return to line feed for compatibility with Ratfor preprocessors. Some of the bug fixes are (there weren't too many bugs): 1. include statements insert their input into the input stream correctly when they appear in a macro; 2. Error line number reporting is REALLY correct this time; 3. Literal Fortran code is allowed in macros. The file "RATFOR.SYM" contains some macro definitions which, if placed at the front of the Software Tools "SYMBOLS." file, make Ratfiv largely compatible with the latest (Spring 1981 VAX sig tape) version of Software Tools Ratfor available from Joe Sventek. I have compiled about 15 thousand lines of his code with Ratfiv; the only problem was that some variables named "string" ("string" is a Ratfiv keyword) had to be renamed. Software Tools Ratfor code should be compiled with Ratfiv's "/SYMBOLS" switch, and with Ratfiv's "/HOLLERITH" switch for compatibility on the VAX. This is the only place where the "/HOLLERITH" switch has been needed so far. Note that shortening of long names is not available in Ratfiv; I have not checked whether long names are used in the RSX/IAS version of the Software Tools. Also, the "$(" and "$)" brackets for use with macros are not available in Ratfiv; there seems to be little use for them in Ratfiv. Page 4 Version 2.1 notes: A help file is included for the VAX VMS distribution (RATFIV.HLP); place it in your system help file. A slight modification has been made to the processing of character strings in the "string" and "case" statements. When expanding strings with the escaped characters "@e" or "@n" in them, Ratfiv now attempts to use the currently defined meanings of EOS and NEWLINE, respectively, whereas in Version 2.0 it used the values which were defined when the compiler was built (these values are 0 and 10 on DEC systems). If EOS and/or NEWLINE is not defined when processing a string or case label, then the default values of 0 and 10 are used, as before. Similarly, when "EOS" and/or "character" is defined, Ratfiv uses these values for the terminating character of a string and the string data type, respectively, otherwise it uses the default values (0 and BYTE), as before. These changes are documented in the section on strings in RATFIV.DOC. I expect that Ratfiv will be fairly stable from now on, although it's possible I will add enhancements. I am interested in hearing about and fixing bugs, however. To build Ratfiv, do @BUILD Documentation is in the file RATFIV.DOC. Before building Ratfiv on IAS systems, change the first line in RATFIV.TKB from RATFIV/FP= to RATFIV/FP/RW= This builds Ratfiv without any read-only sections. Page 5 The "@BUILD" file builds Ratfiv and also Macro, which is just the macro preprocessor portion of Ratfiv. Input passes through the macro processor unchanged except that macros are expanded. There is no documentation for Macro, however the form of the command line is like Ratfiv's and the macros are the same, except that "define" isn't available; use "_macro" instead. Also, the dot (.) character is legal in macro names. There is a system-wide file called "SYMBOLS." which can be read by specifying "/SYMBOLS" on the Ratfiv command line (see the section, "USING RATFIV" in "RATFIV.DOC"). The default location of this file may be changed by changing the define for "USER$BIN" in the "SYMBOLS." file and rebuilding the compiler from scratch. Most people won't need this file, however, so you can just leave it on the directory where Ratfiv is located, since Ratfiv first checks the default directory for the "SYMBOLS." file before looking for the system-wide file. If you are using the FOR compiler instead of F4P on a PDP11, be sure to compile the Fortran sources with the -SN switch. Ignore the errors in IO.FTN; they are in modules which aren't used by Ratfiv. You will also have to change the RATFIV.TKB file as follows: 1. Delete the MAXBUF=512 option. 2. Change ACTFIL=8 to ACTFIL=7 3. Change UNITS=10 to UNITS=9 These changes reduce the number of file inclusion levels allowed by Ratfiv by one, but the task would be too large otherwise. If the task is still too large, you can reduce ACTFIL to 6 and UNITS to 8, but don't reduce them any more as then you will not be able to include any files. After reducing the number of file inclusion levels, then after successfully building Ratfiv you should change the define for NFILES in the file "MACSYM." to reflect the changes (i.e subtract 1 or 2 from the defined value of NFILES), and then rebuild the compiler from scratch. Send comments, problems, etc. to: William P. Wood, Jr. Institute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 Page 6 (215) 728 2760 ********************VD0:[330,16]README.RNO;1******************** ********************VD0:[330,16]README.RNO;1******************** .AUTOPARAGRAPH .NHY .PERIOD .PAGE SIZE 60,65 ^^MULTI-TREK\\ IS A GAME SIMILAR TO TRADITIONAL ^STAR-^TREK GAMES EXCEPT THAT IT INVOLVES SEVERAL PLAYERS (CURRENTLY UP TO 8), WHO PLAY AGAINST EACH OTHER IN REAL TIME RATHER THAN AGAINST IMAGINARY ^KLINGONS, ^ROMULANS OR WHATEVER. ^THE ^^MULTI-TREK\\ UNIVERSE CONSISTS OF A 100 BY 100 MATRIX, OF WHICH AN APPROXIMATE 20 BY 20 MATRIX OF EACH PLAYER'S IMMEDIATE AREA IS DISPLAYED AND CONTINUOUSLY UPDATED AT THEIR TERMINAL. ^^MULTI-TREK\\ WAS ORIGINALLY SUBMITTED TO THE ^NEW ^ORLEANS ^^RSX/IAS\\ SIG TAPE, THEN TO THE 1979 ^SAN ^DIEGO ^^RSX/IAS\\ SIG TAPE WITH THE ADDITION OF ROBOT SHIPS. ^SINCE THEN IT HAS BEEN RECODED IN ^^RATFIV\\ AND HAS SIGNIFICANT ENHANCEMENTS AND IMPROVEMENTS, MOST NOTABLY THE ADDITION OF ENERGY NETS, AN IMPROVED SCREEN DISPLAY, MUCH BETTER INPUT-OUTPUT (ANY TERMINAL WITH CLEAR SCREEN AND CURSOR POSITIONING MAY BE USED AT SPEEDS FROM 1200 BAUD ON UP), USE OF DEFAULT SHIP AND DIRECTION WITH MOST COMMANDS ("^L" SETS THE DEFAULT DIRECTION), MORE COMPETITIVE SCORING, SMARTER ROBOT SHIPS, AND FEWER BUGS. ^THIS VERSION WAS SUBMITTED TO THE ^SPRING 1981 ^^VAX and RSX/IAS tapes\\, AND IS BEING RESUBMITTED TO THE ^FALL 1981 TAPES WITH SOME SLIGHT IMPROVEMENTS. ^COMPLETE INSTRUCTIONS FOR STARTING AND PLAYING ^^MULTI-TREK\\ ARE IN THE FILE ^^MTREK.DOC\\. ^THE GAME CONSISTS OF A DRIVER TASK (^^MTREKD)\\, A PLAYER TASK (^^MTREK\\) FOR EACH TERMINAL, AND A SHARED GLOBAL COMMON AREA FOR INTER-TASK COMMUNICATION. ^THIS VERSION RUNS ON ^^VAX VMS\\, HOWEVER, IT SHOULD RUN UNDER ANY SYSTEM WITH SHARED GLOBAL AREAS AND RUDIMENTARY TASK SWITCHING OR TIME-SHARING. ^REAL-TIME SYSTEMS WITHOUT TIME-SHARING MAY HAVE TO PLAY WITH PRIORITIES TO INSURE THAT THE DRIVER TASK GETS SUFFICIENT ^^CPU\\ TIME AND THAT ALL PLAYERS GET AN EQUAL AMOUNT OF TIME. ^^MULTI-TREK\\ WAS WRITTEN WITH A STRUCTURED ^FORTRAN CALLED ^^RATFIV\\. ^THE ^^IAS\\ VERSION CONTAINS ALL OF THE ^FORTRAN PRODUCED BY ^^RATFIV\\, AS WELL AS THE ^^RATFIV\\ SOURCE (FILE TYPE ^^.RAT\\). ^THE ^^VAX VMS\\ VERSION DOES NOT INCLUDE THE ^^.FOR\\ FILES, HOWEVER THE ^^RATFIV\\ COMPILER IS INCLUDED ON BOTH DISTRIBUTION TAPES. ^^MTREK\\ WILL WORK PROPERLY WITH ANY TERMINAL WITH CLEAR SCREEN AND CURSOR POSITIONING. ^THE SOURCE CODE IS SET UP TO DRIVE ^^ADM3-A\\'S OR ^^VT100\\'S. ^IF YOU ARE USING DIFFERENT TERMINALS, YOU SHOULD MODIFY THE FILE "^^TERMINAL.RAT\\" (YOU COULD MODIFY "^^TERMINAL.FTN\\") TO DRIVE YOUR TERMINAL. ^MODIFICATION SHOULD BE STRAIGHT-FORWARD AS THE CODE IS COMMENTED ON WHERE TO CHANGE IT. .SKIP 1 ^TO BUILD ^^MTREK\\, DO .SKIP 1 ^^@BUILD\\ ^^ .skip 1 The VAX VMS version places the common area, LEDFOR, on SYS$SHARE and installs it /WRITE/SHARE. It also puts MTREK.EXE, the player task, and MTREKD.EXE, the universe manager task, on SYS$SYSTEM, and installs MTREK.EXE with DETACH and ACNT privileges, so that anyone can start up MTREKD as a detached process (only one copy of MTREKD runs at a time, however). After building MTREK, first run MTREKINI. Then, on VAX VMS systems, say MCR MTREK and you are off and running. On IAS systems, the universe manager MTREKD must be started by hand before MTREK is run. You can run MTREKD on a dedicated terminal or install it and run it /REAL. \\ .SKIP 1 ^SEND COMMENTS, PROBLEMS, ETC. TO: .SKIP 1 .LM +7 .NOFILL ^WILLIAM ^WOOD ^COMPUTER ^CENTER ^INTSTITUTE ^FOR ^CANCER ^RESEARCH 7701 ^BURHOLME ^AVE. ^PHILADELPHIA, ^P^A. 19111 (215) 728 2760 ********************VD0:[330,16]README.1ST;1******************** ********************VD0:[330,16]README.1ST;1******************** MULTI-TREK is a game similar to traditional Star-Trek games except that it involves several players (currently up to 8), who play against each other in real time rather than against imaginary Klingons, Romulans or whatever. The MULTI-TREK universe consists of a 100 by 100 matrix, of which an approximate 20 by 20 matrix of each player's immediate area is displayed and continuously updated at their terminal. MULTI-TREK was originally submitted to the New Orleans RSX/IAS sig tape, then to the 1979 San Diego RSX/IAS sig tape with the addition of robot ships. Since then it has been recoded in RATFIV and has significant enhancements and improvements, most notably the addition of energy nets, an improved screen display, much better input-output (any terminal with clear screen and cursor positioning may be used at speeds from 1200 baud on up), use of default ship and direction with most commands ("L" sets the default direction), more competitive scoring, smarter robot ships, and fewer bugs. This version was submitted to the Spring 1981 VAX and RSX/IAS tapes, and is being resubmitted to the Fall 1981 tapes with some slight improvements. Complete instructions for starting and playing MULTI-TREK are in the file MTREK.DOC. The game consists of a driver task (MTREKD), a player task (MTREK) for each terminal, and a shared global common area for inter-task communication. This version runs on VAX VMS, however, it should run under any system with shared global areas and rudimentary task switching or time-sharing. Real-time systems without time-sharing may have to play with priorities to insure that the driver task gets sufficient CPU time and that all players get an equal amount of time. MULTI-TREK was written with a structured Fortran called RATFIV. The IAS version contains all of the Fortran produced by RATFIV, as well as the RATFIV source (file type .RAT). The VAX VMS version does not include the .FOR files, however the RATFIV compiler is included on both distribution tapes. MTREK will work properly with any terminal with clear screen and cursor positioning. The source code is set up to drive ADM3-A's or VT100's. If you are using different terminals, you should modify the file "TERMINAL.RAT" (you could modify "TERMINAL.FTN") to drive your terminal. Modification should be straight-forward as the code is commented on where to change it. To build MTREK, do @BUILD The VAX VMS version places the common area, LEDFOR, on SYS$SHARE and installs it /WRITE/SHARE. It also puts MTREK.EXE, the player task, and MTREKD.EXE, the universe manager task, on SYS$SYSTEM, and installs MTREK.EXE with DETACH and ACNT privileges, so that anyone can start up MTREKD as a detached process (only one copy of MTREKD runs at a time, however). Page 2 After building MTREK, first run MTREKINI. Then, on VAX VMS systems, say MCR MTREK and you are off and running. On IAS systems, the universe manager MTREKD must be started by hand before MTREK is run. You can run MTREKD on a dedicated terminal or install it and run it /REAL. Send comments, problems, etc. to: William Wood Computer Center Intstitute For Cancer Research 7701 Burholme Ave. Philadelphia, PA. 19111 (215) 728 2760 ********************VD0:[330,17]README.1ST;1******************** ********************VD0:[330,17]README.1ST;1******************** T H E B E S T O F I C R = = = = = = = = = = = = Bob Stodola Bill Cael Bill Wood This tape contains release 3 of "The Best of ICR", a selection of useful programs from the Institute For Cancer Research. The tape is in DOS format. Each UIC contains a README.1ST file; you can copy these files to disk by saying, MCR FLX SY:=MM0:[*,*]README.1ST/DO Almost all of the programs have been revised in one way or another since the last release to fix bugs or add capability. Following are some random notes: 1. Many of the programs use a macro interface to the FCS file sys- tem. If your installation uses the RMS file system by default, you will have to link these programs with the FCS library. 2. The version of this tape which was distributed on the Fall 1981 RSX/IAS sig tape had a bug which caused LIST, SRDCMD, BURSTF, and RATFIV not to come up properly on RSX systems, ie. these programs attempted to open "TO:", which is not a legal device on RSX systems. This bug has been fixed, and LIST and RATFIV have been updated considerably. 3. The bug in the RSX subtasking subroutine, RUNSYSRSX, which was distributed on the Spring 1981 RSX/IAS sig tape has been fixed. This means that programs that do subtasking such as CPL, SRDCMD, and TRU should work now on RSX systems. 4. Most of the programs may be linked with a resident library to make the tasks smaller. 5. When building the programs, be sure to read each one into its own UIC to avoid file name conflicts (for instance RATFIV's IO.RAT is different than LIST's IO.RAT). 6. When building FDT on RSX systems, be sure to uncomment the line in FDT.MAC which defines RSX11M. 7. On IAS, programs which do subtasking (TRU, CPL, SRDCMD, and LIST when using SRD to select files) require subtasking privi- leges, and XEQ requires the chain privilege. 8. CPL will run on RSX or IAS systems, contrary to rumors that it is an IAS only program. 9. SRD has been substantially debugged since the last release and Page 2 has none of the horrible SRD bugs that some SRDs have, as men- tioned on SIG tapes and at the Fall 1981 DECUS convention. On one RSX system, SRD had to be compiled with BIGMAC, as regular MAC failed. 10. BURSTF now handles files with characters in columns 73-80. 11. LIST and CPL are two great programs. At first glance, they don't seem to do anything very spectacular, but they are two of the most frequently used pieces of software at our installa- tion. Try them! A short description of each program on the tape follows: [330,1]: LIST - LIST is like the TYPE and GREP commands only better. LIST's simplest use is to display lines from a file a screen at a time, however it has sophisticated string search- ing, can be positioned randomly in the file, and can write por- tions of the file to other files. In addition, LIST can use SRD to select multiple files, making it easy to do such chores as searching through a group of files for a particular string or variable. RSX or IAS. [330,2]: FDT - Number one on the RSX and IAS menus was a Fortan symbolic debugger. Here it is! RSX or IAS. [330,3]: CPL - CPL compiles modules in any language if the source has been changed since the last compilation. It handles multi-pass compilers, including RATFIV, Swedish and NBS Pascal, and Whitesmith's C, as well as single-pass compilers such as F4P, BASIC+2, and MACRO. A must for software developers. RSX or IAS. [330,4]: SRDCMD - SRDCMD is a flexible command line generator which spawns SRD to select files, then writes command lines con- structed from specified text and the device, uic, name, exten- sion, and version fields of the selected file names. RSX or IAS. [330,5]: SRD - An enhanced version of SRD including more powerfull file string matching, selection by file revision date, and sto- rage allocation summary. RSX or IAS. [330,6]: TAPE - TAPE reads and writes tapes in a variety of for- mats, including blocked ASCII, blocked EBCDIC, and DEC-10 copy format. RSX or IAS. [330,10]: BURSTF - BURSTF bursts Fortran subroutines, functions, main programs, and block datas from a file and writes them to individual files. RSX or IAS. [330,11]: RESEQ - RESEQ resequences the statement labels in a For- Page 3 tran program. RSX or IAS. [330,12]: TRU - TRU truncates files, but does not access the file if it doesn't need truncation. This is a must when using BRU for incremental backup, as BRU would copy all files which had been truncated with PIP, even if the file hadn't needed trunca- tion. RSX or IAS. [330,13]: XEQ - XEQ runs programs. It maintains a global common area which contains, for each user, a list of directories to search when XEQ trys to run a program. Never again will you have to type XX0:[100,222] when running XX0:[100,222]FOO! In addition, XEQ can pass a command line to the program it in- vokes, whether or not the program is installed. IAS only. [330,14]: SCHEDULE - SCHEDULE will invoke MCR command lines at scheduled times during the week. The list of commands and times is maintained in a file. IAS but easily modified for RSX. [330,14]: GAME - GAME uses SCHEDULE to restrict game playing to specified times. IAS and RSX (see SCHEDULE). [330,14]: RUNNL - RUNNL is a companion program to SCHEDULE and GAME. It will run a task on the pseudo device NL. IAS only. [330,15]: RATFIV Version 2 - an enhanced and debugged version of the Software Tools Group's Ratfor compiler, Ratfiv features op- tional Fortran 77 output, the SWITCH and STRING statements, a powerful macro processor with macro argument capability, condi- tional compilation, output of string literals as quoted strings (necessary for OPEN statements, etc.) or optionally as holler- ith strings, and specification of FORMATs within READ, WRITE, ENCODE, and DECODE statements. RSX or IAS. [330,16] (IAS): MTREK - The best Star Trek ever, this is a multi-terminal real-time all out war game, replete with torpe- does, tractor beams, anti-matter, etc. This program was origi- nally written at Boeing; we have enhanced and debugged it. Terminals with clear screen and cursor positioning are all that's required. IAS or VAX, but you could modify it for RSX. We would like to hear of any problems or comments you have. Robert K. Stodola, Bill Cael, and William P. Wood, Jr. Computer Center The Institute for Cancer Research 7701 Burholme Ave. Phila., Pa. 19111 (215) 728 2760 ********************VD0:[332,100]README.1ST;1******************** ********************VD0:[332,100]README.1ST;1******************** [332,100] README.1ST THIS ACCOUNT CONTAINS SUBMISSIONS FROM: BILL BURTON TEXAS RESEARCH INSTITUTE FOR MENTAL SCIENCES 1300 MOURSUND HOUSTON, TEXAS 77030 (713)-797-1976 EXT 501 THE SUBMISSION CONSISTS OF: 1. THE FINAL VERSION OF TWO PROGRAMS FOR DOING PARTIAL RESTORES OF DISKS FROM DSC TAPES. THESE PROGRAMS FIRST APPEARED ON THE SPRING 1981 RSX TAPE. FILES: DSCTAP.TXT DSC TAPE FORMAT DESCRIPTION DSCDIR.* PROGRAM TO GET DIRECTORY OF DSC TAPE DSCCPY.* PROGRAM TO RESTORE A SUBSET OF A DSC TAPE TO DISK. DSCFTN.FTN FORTRAN SUBROUTINES FOR ABOVE. DSCMAC.MAC MACRO SUBROUTINES FOR ABOVE. 2. REPRINT AND PATCH FILES FROM THE MARCH, 1982 ISSUE OF THE UNSUPPORTED (RETIRED) VERSIONS OF RSX WORKING GROUP THESE FILES PATCH THE FLX UTILITY DISTRIBUTED WITH RSX-11M VERSIONS 3.0 AND 3.1 TO ALLOW 9-CHARACTER FILE NAME CATALOGS AND SEARCHING. FILES: FLX.TXT REPRINT OF THE MULTI-TASKER ARTICLE LIPRC2.M30 PATCH FILES FOR VERSION 3.0 MTFLCK.M30 SETOUT.M30 LIPRC2.M31 PATCH FILES FOR VERSION 3.1 MTFLCK.M31 SETODT.M31 ********************VD0:[332,110]README.1ST;1******************** ********************VD0:[332,110]README.1ST;1******************** [200,200] TAB: A low-overhead data management system. This account contains files for building a small-scale, low-overhead data maintenance system. Submitted by: R. N. Stillwell Institute for Lipid Research Baylor College of Medicine Houston, Texas 77030 (who would be glad to receive comments, suggestions, bug fixes, etc., but who promises no support whatever). Literature reference: R. N. Stillwell. A low-overhead laboratory data management system for the PDP11. Comput. Biomed. Res., 15, 29-38(1982). Abstract: These programs provide a small, relatively unsophisticated data base management system for the PDP11 in which the user can easily de- fine and manipulate his own data tables without requiring the assis- tance of a programmer. Data tables are expected to be fairly small (a few thousand records at most), and organized simply as arrays of rows and columns. A table will contain all the information required for a given project; for example, plasma drug levels for a group of pati- ents. Each row of the table constitutes a record, and is referred to by its row number. Each column in the table represents a data field relating to the sample; for example, the patient name, hospital number, nortriptyline level, imipramine level, etc. One of the tasks, an interpreter, provides a means of writing specialized applications. Facilities provided by this system are: 1. To define a table, or modify the format of an existing table. 2. To edit a table, correcting data and entering new data. 3. To list an entire table or selected parts of a table. 4. To generate a printable report file including standard text, values from one or more tables, and user-entered or computed values; to update tables, invoke subsidiary tasks, and perform general arithmetic and character-string operations. 5. To extract a subtable consisting of a set of contiguous rows from a table. 6. To merge two tables having the same number of columns and the same lengths of each column. 7. To convert a table to a sequential file for transfer to a different system, and to restore the table from the sequential file. Distribution: All source files required to build the tables programs are provided; languages used are Macro and Flecs. An object library and command files to build the Flecs preprocessor are also provided. Both IAS and RSX-11M versions are provided. Files in this account are: README.1ST This file. INSTALL.DOC Installation documentation. Print this file next. USERGUIDE.RNO User manual for these programs. *.BIS Batch files for IAS installation and testing. *.CMD IAS command files. *.RSX RSX-11M command files. *.TKB RSX-11M taskbuilder indirect files. FIXLIB.TEC TECO macro to edit files for name of resident library. *.FLX Flecs source files. *.MAC MACRO source files. *.MAS Master table listing files for testing. RPTTAB.ODL Overlay descriptor file for RPTTAB (IAS). RPTTAB.ODM ditto for RSX-11M. FLECS.OLB Flecs object library. *.RPI Test files for RPTTAB. Acknowledgements: NIH Grants GM-13901 and GM-26611 for support. Terry Bayer for the Flecs language and preprocessor. Mark Lewis for the IAS timesharing interface and the DCL interface to Flecs. Phil Cannon for the Fortran interface to FCS. My colleagues for suggestions and stimulation ("When will I be able to ...?") ********************VD0:[333,1]README.1ST;4******************** ********************VD0:[333,1]README.1ST;4******************** ******************** Readme.1st ******************** ---------- Submission from Washington DC LUG ---------- Prepared by Don Rubin Systems Engineering Technology Inc. 10676 High Beam Court Columbia, MD 21044 The following is a description of our submission to the Spring 82 Symposium EDTINI .EDT;4 !our initialization file, with some good key definitions EXE .CMD;7 !a command file to F77 compile and build programs IBMFIL .CMD;1 !a command file used to compile and build programs !with input from the keyboard or a file LIFE .BAS;10 !the game of life modified for VT100 terminals README .1ST;1 !this file TIMLOG .ACC;34 !these programs are used with the KMS TIMLOG .CMD;6 !accounting system to implement chargeback TIMLOG .DEF;6 !accounting on an 11M system. Please refer to TIMLOG .FTN;101 !ACC.RNO before fooling with these TIMRPT .FTN;12 ACC .RNO;10 !docmentation on implementation of the KMS accounting QS .RNO;5 !system at a large 11/70 site QS .* !these programs are used to fool with the files !generated by the KMS accounting system, refer !to QS.RNO WHEN .CMD;3 !this is a modified version of WHEN off an old SIG tape WHEN .MAC;2 !it supports commands in the form: WHEN .TKB;4 !WHE TKB PIP /li|BRO TI:all done|BYE WHEN .VGN;1 GOTCHA .RNO;3 !some notes to remind myself about "got ya's" in RSX NOTE .RNO;4 !template of a note NOTE* .RNO;1 !various system notes, some interesting others not SIN .RNO;3 !template of a system interest note SIN* .RNO;1 !various system notes, some interesting others not SYSGEN .DOC;11 !documentation on how to perform a sysgen SYSGEN .RNO;25 SYSGEN1 .RNO;2 ********************VD0:[333,100]README.1ST;1******************** ********************VD0:[333,100]README.1ST;1******************** SUBMISSION FROM "THE RECORD", 150 River Street, Hackensack, NJ 07602. THE RECORD is New Jersey's largest evening newspaper. CONTACT: Allen A. Watson Manager, Systems Technology (201) 646-4111 This UIC contains one super program, a few useful or interesting command files and TECO macros, and a couple of simple programs in Pascal (Swedish compiler from DECUS) and "C" (also from DECUS). DSUTIL: Data Set Utility which allows a priveleged user to dynamically examine data from devices or files on a block-by-block basis. DSUTIL allows the user with a VT100 to display the data in various formats: octal word, octal byte, hexadecimal word, RADIX 50, ASCII, or EBCDIC. Logical or virtual blocks can be accessed randomly or sequentially. Access can be by device and block number or by file name. DSUTIL also displays UFD's. Display mode can be changed from one to another without re-reading the block. Included is the macro source files, a TKB file, and a .DOC file further describing the use of the program. WHATS: macro program that, when RUN, clears a VT100 screen and then displays the octal value of any key you strike, including control sequences. Use CNTL/Z to exit. TABLEGEN.TEC and MACTOCCL.TEC: These TECO macros may be used in conjunction with Jim Downward's CCL to convert a .CCL file to MACRO-11 format for inclusion in the CCL task, or, in reverse, to convert the MACRO-11 form of the table back to CCL form. See TABLEGEN.DOC. REMINDER SYSTEM: Three indirect command files -- ENTER.CMD, REMIND.CMD, and WEEK.CMD -- are used to create reminders. ENTER enters a reminder into the list; REMIND will type out the reminders for any day of the week. WEEK lists the reminders for an entire week, starting from today. You must have the TYPE utility from the SIG tapes, which accepts wildcard file names, for this to work properly. Or, I believe, RSX-11M Version 4.0 and RSX-11M PLUS Version 2.0, PIP will also allow wildcards. We're still on RSX-11M V3.2. The command files also use a small program called PREDAY.C which calculates the date a given number of days before or after today. This is used only to give a default date of tomorrow for ENTER; comments in ENTER tell how to function without it. The source for PREDAY is included for those who have C. OPLOG: A CCL command or indirect command file (see comments in OPERLOG.CCL) that allow users to quickly make an entry in a system OPERLOG file regarding problems, etc., on the system. Uses EDT V2 and an EDT startup file, OPLOG.EDT. MISCELLANEOUS: CHECK.PAS balances a checkbook. WHATDOW.C types out on TI: what day of the week it is. TASKS.CMD lists active tasks by terminal number. ********************VD0:[334,1]README.1ST;2******************** ********************VD0:[334,1]README.1ST;2******************** Wycliffe Bible Translators Spring 1982 RSX SIG submission. This UIC contains several submissions: 1. SPEED Ever since we lost the lights on our 11/70 (Due to the RDC panel, we have needed a means of telling "how fast" the computer was running. SPEED gives this capability by plotting on a CRT a graph showing the CPU idle time each second. To prepare and run SPEED type: >@SPEED >INS SPEED >RUN SPEED A graph will be displayed on your terminal. Type almost any key to stop it (a few control keys won't work). NOTE!! There is a constant in the program with a label of WAITER. As distributed, this constant is correct for our 11/70. The constant is used as a delay factor and should be adjusted so that if SPEED is the only program on the system, it will print a full 80 characters. If it prints too much, you will see an exclaimation (!) in the last column. 2. SORT.CMD This command file will generate a sort specification file for use with SORT-11. The specification file is generated based on your answers to questions. The terminology used is consistent with the SORT-11 manual. There is extensive help available for any question by pressing the ESC key. Considerable error checking is also done to make sure that any specification file is syntactically correct. An abbreviated dialogue is also available that will make a lot of assumptions for you so you don't have to answer questions dealing with a lot of SORT-11's obscure features. 3. VT100 manipulation command files. This is a group of command file that will manipulate the options on your VT100 when you can't remember which bit of which word to change and you can't find your VT100 Programmer's Reference Manual. The command files are: VT100.CMD Changes VT100 from VT52 emulation back to a real VT100 VT52.CMD Changed VT100 to VT52 emulation mode. JUMP.CMD Changes VT100 to jump (fast) scroll mode. SMOOTH.CMD Changes VT100 to smooth (slow) scroll mode. 132.CMD Changes VT100 to 132 column format. 80.CMD Changes VT100 back to 80 column format. RESET.CMD Sets the VT100 back to the power on switch settings. I can be contacted regarding any of these programs at: Roger Jenkins Wycliffe Bible Translators Huntington Beach, CA 92647 (714) 536-9346 ********************VD0:[335,1]README.TXT;1******************** ********************VD0:[335,1]README.TXT;1******************** To: DECUS User Date: 07-May-82 From: James E. Dunn Simmonds Precison Products, Inc. Instrument Systems Division Panton Road Vergennes, VT 05491 (802) 877-2911 At LOGIN the VTX task should be run via the LOGIN.CMD file in each UIC. The VTX task will then initialize the attributes, both software and hardware, for the terminal being used. This is done so that a casual user will not be disturbed by any user who might have left the CRT or driver in a non-standard mode. For the user who wants special attributes set at LOGIN, a file VTX.INI may be created that will convey the necessary information. See the following example. 1 1 SET SMOOTH SCROLL SET IF 1, RESET IF 0 2 1 SET AUTO REPEAT 3 0 SET REVERSE SCREEN 4 1 SET WRAPAROUND 5 0 SET AUTO LINEFEED 6 0 SET INTERLACE 7 0 SET 132 COLUMN MODE 8 1 SET VT100 MODE The first column is a required index for the item of interest and should be in column 1. The second column is used to specify whether the attribute should be set(1) or reset(0). The second column should be separated from the first by one space. The comments that follow are not required but may be placed in the file so long as they are separated from the second column by either a space or a tab. The attributes called for in the example above are the default values used if the VTX.INI file does not exist and should be the desired attributes for most users. To build the VTX task invoke the command file VTX.CMD. The full set of files: VTX.CMD Command file to Compile and Assemble VTX.TKB Command file to Taskbuild VTX.INI Sample initialization data file VTX.FTN Main program segment VT5X.MAC VT52 and VT55 initialization subroutine VT1XX.MAC VT100 initialization subroutine TRMTYP.MAC Terminal type determination subroutine After the task is built, install it. The taskname after installation is ...VTX ********************VD0:[344,1]README.1ST;30******************** ********************VD0:[344,1]README.1ST;30******************** K M S K I T R E A D M E . 1 S T V 4 . 0 The following UIC's are part of the KMSKIT RSX11M V4.0 Enhancements Package. [344,1] Documentation files. All FCSRES features supported in previous releases are now supported by DEC with the PLAS ANSI FCSRES. KMS no longer supports the command and ODL files for the 4K non-ANSI, non-PLAS FCSRES. [344,2] HELP files specific to using this kit. [344,3] Command files (.COM) and what not which has been useful to us in migrating from RSX to VMS. Note, that we have command files which do identical things on both our systems. Note, also the super-dooper SPR generator for VMS, and the MEMO and word processing files. [344,5] Useful command files. MEMO is used for automatic memo generation and filing. WP converts a VT100 to a menue driven word processing terminal. BUILD is an indirect command file which is used in dynamically creating procedure files for PIN. These files use BLD.CMD and OPT.CMD when they run to do the taskbuilding. COMPILE and LINK are also supplied as examples of using indirect command files to provide a CCL command. SPR.CMD - The RSX group likes this one. It will produce legible, machine generated SPR addendums. SPR administration will now accept these if you send in a preprinted form with your name attached and 6 or so copies of the addendum. In addition it will keep a file of all SPR's sent which you can use to keep track of where they are in the system. [344,40] Terminal and disk accounting, privlege allocation, modifications to HELLO, HELP and BYE, account utilities and report programs. Mark Johnson's MAIL Utility for V4.0. Run privlege checking and searching both LIBUIC, NETUIC and SYSUIC on a RUN $ command. SET /LIBUIC for RSX11M (just like M-Plus). Enhancements to ...AT. to implement the /-LI switch. [344,43] Utilities. An enhanced version of RMC which uses the RPOI$ (Chain) directive if available so RMC can exit at once before command completes and still have exit status passed on. This version of RMC was written to use the new F77 compiler. [344,44] Here is a version of the old RMDEMO which runs on VT100's which are in ANSI mode. This version is almost half as small as the new version and supports reploting and easy exit. In addition, if KMS Accounting is present and active, it provides a dynamic display of the percent of total system utilization. This version (less my mods) was distributed with the field test kit of RSX11M V3.2 and is distributed here courtesy of the the RSX group. It runs only on a RSX11M V4.0 system. [344,45] PDQ -- Program Development Queues. PDQ is a multi- queue command file despooler (using QMG...). Submit a command file for execution. When a program development queue becomes free, the command file executes at your TI: Also included is a Procedure Interpreter (PIN) for use with BATCH. PIN is used as a replacement for ...AT. by PDQ When built with FCSRES, PIN is 4 times smaller than ...AT. The previously released version of BATCH can be obtained from previous SIG tapes. It still should work but is not now in active use on our system. We use PDQ. However, include is an updated VTDRV. The update only is for its data bas so it can work on a multi-CLI system. [344,61] CCL V8.0. Alternate CLI support. Uses the RPOI$ directive. Need I say more? Almost too useful to be free. [344,65] A complete SYSTEM ACCOUNTING package for RSX11M. While oriented towards providing performance measurement, it provides the basis for implementing a versitile and reasonable charge-back accounting system. Some reports are provided which will do this. Please read SYSLOG.DOC. [344,66] This UIC contains programs and command files to aid in measuring system performance. LOAD.CMD will measure system performance for from 1 to 'n' concurrent program development sessions. To fully utilize its features it is best to have implemented KMS accounting, but some rough benchmarks can be done with a vanilla flavor RSX11M V4.0 system. For systems with KMS Accounting, program SNPSHT will produce a snapshot of the system performance statistics which are collected by SYSLOG. SNPSHT produces a command file for setting global parameters(.SETN $PARM val) so that a controling command file can use the values. Also a program (DSKMON) is provided to measure the load on one's system disk (how much time it spends busy). To create the kit documentation, SET /UIC=[344,1] and type @CREATEDOC.CMD. A version of RNO is on [344,1] which will be used if you do not have RNO installed on your system. Please, create and read the documentation before leaping in and trying to use the kit! A discription of all the modifications and enhancements and most of the utilities is in KMSKIT.DOC. The command file [344,40]KMSGEN.CMD will provide all required information (or most of it)for building the KMS Enhancements and a number of the other programs. Read KMSKIT.DOC before trying to include the executive data base changes. To use this kit, transfer the files to their respective UIC's. The user with an RK05 system (like I used to) is going to have a bit (a lot) of trouble since there are a lot of files. If the HELP and documentation files are all transfered to a seperate disk, then a RK05 can be constructed containing just the kit sources, command files, SLP files, and DEC virgin distribution source files and .OLB files. (with room left over for taskbuilding). However it will be tight. Read all the documentation over twice. Set /UIC=[344,40] and type @KMSGEN/-MC and run through a KMSGEN asking for a long dialog. Place the required DEC sources in the correct places, KMSGEN will try and do all the SLP patches both to MCR sources, the EXEC modules and the SYSGEN command files. If KMSGEN sucessfully SLPs the MCR, EXEC and SYSGEN command files, stop, place the OLB's and sources on your SYSGEN disks and do a SYSGEN if you are incorporating data structures (accounting) requiring a SYSGEN. Once the SYSGEN is done use KMSGEN again to create all needed files. It is very important that any user implementing these enhancements to register its use with me. If any bugs are found that are of consequence I am prone to mail out bug fixes to the current distribution list. Also direct feedback to me is important for deciding if features/programs are to be enhanced, maintained and supported from one RSX11M release to the next. These programs have been extensively tested for the case where all KMS options are selected and where most DEC sysgen options are selected. KMSGEN and the command files to implement KMSKIT for the general user have had almost no testing since I do all patches one at a time checking results as I go. The first user to try KMSKIT found a bunch of bugs in the command files. These I tried to fix. But, as we all know, bugs are hard to completely stamp out. Be warned, be careful, and be alert. Since, I know the SLP patches once incorporated work, I am sure they can be incorporated with a bit of perseverence. I appologize in advance for any potential inconvenience, but current government regulations (let alone my family) preclude me spending in excess of 24 hours daily at work. I simply do not have time to do all that I have to do as well as all that I would like to do. Other options/configurations of this KIT are possible, but until I start getting feeback from other users who have configured their option selection option selection differently, I will not know if I got all the conditional code correct. Good Luck, James G. Downward KMS Fusion, Inc. 3941 Research Park Dr. Ann Arbor, Mich. 48104 (313)-769-8500 05-May-1982 ********************VD0:[344,3]README.1ST;4******************** ********************VD0:[344,3]README.1ST;4******************** RSX to VAX/VMS Enclosed are some command files we have developed to ease our migration to VMS. To make life simpler, we migrated command files which were frequently used on our system to VMS. Also there is a program TESTFILE.EXE which can be used the same way .TESTFILE can be used on RSX. IF $STATUS is not = 1, the file does not exist. Set up TESTFILE as a foreign command. Then $ TESTFILE $ IF $STATUS .NE. 1 THEN WRITE SYS$OUTPUT " does not exist" Using this makes command file writing much simpler. A program like TESTFILE is trivial to write using VAX Fortran's INQUIRE statement. Enclosed also is the start, very tentative to be sure, of a subroutine library to help us convert our RSX Fortran tasks to run under VMS without coding changes. At present, CALL GETMCR and CALL WAIT are correctly supported, CALL SPAWN and CALL RECIEV are cummied out for the present to let us build and test several of our tasks. One Macro-32 subroutine is provided to allow for the quadword multiply required for setting up the VMS time to wait on. One Macro-32 subroutine is provided to replace the RSX GETADR routine, and one is provided so that a Fortran program can find out how many arguments were passed to it. Finally, enclosed is a start at some routines to do BLOCK I/O from Fortran. The idea was gotten from an article in the Page Swapper. I interfaced the idea to the VAX Fortran USEROPEN statement. The subroutines are not yet complete since I have not been able to find the RMS routine which is equivalent to $FCHNL for F77/FCS under RSX, ie I have no way of finding the RAB address after I exit the USEROPEN routine given just the input LUN. Hence, calls are provided for storing and reinserting a previously stored RAB address. I SPRed my need for additional information, so I suspect that eventually, I will get the information from the VMS Fortran group. Until then, I am supplying them, since it took me a bit of work to get it to work with USEROPEN. One additional warning. My logic on CREATE/OPEN is still screwed up. If I open a file as READONLY and the file does not exist, it gets created. I have not yet been able to figure out how to tell from within the context of the USEROPEN routine whether or not the file is is readonly and not to be created, etc. Someday... Till then, however, I hope it saves someone some time. It is remarkable how few examples of using USEROPEN there. 120000 blocks of programs on an RM03 of various VAX Sig tapes and not a single user open, or a single use of either RMS BLOCK I/O to a disk or QIO's to a disk for faster yet I/O. Just wait till all you RSX types out there start trying to do your VMS thing RSX style!! Jim Downward "Still RSX at Heart" 03-May-1982 ********************VD0:[344,40]README.1ST;2******************** ********************VD0:[344,40]README.1ST;2******************** This UIC contains the command files KMSGEN, MCRSLP, and EXECSLP which should do the job of applying the KMSKIT enhancements to the user's system. I must point out, however, that I have never tried applying KMSGEN from start to finish. Our mode of operation is that I have applied each SLP file by hand, assembled it, checked for errors and inserted it into the appropriate .OLB. In operation, I always apply the SYSGEN command file patches, and do a SYSGEN after answering the appropriate questions. If the various KMS enhancements are desired, the conditionally assembled HELLO, BYE, SET routines, and INSHD modules will be reassembled each SYSGEN. Hopefully, MCRSLP.CMD will correctly assemble and insert the other modules. However, I am sure bugs will crop up. As a general rule of thumb. Each and every SLP file is there for a reason. Use it, assemble the resultant file, and insert it into its respective object module library. Remember that the RSXMC.MAC symbols must be correct to support the options you want. ********************VD0:[344,61]README.1ST;7******************** ********************VD0:[344,61]README.1ST;7******************** CCL V8.0 This version of CCL is a composit of the work of Angle Li at the University of Miami, Paul Sorenson at Michigan State University, and Jim Downward at KMS Fusion. Angle Li edited the code to remove all the funny F4P lables and to comment the code. Paul Sorenson then provided a substanitial rewrite to CCL to provide significantly more flexible command string parsing. V8.0 of CCL will use the RPOI$ directive to chain command lines to tasks. In doing so the OCB's will be relinked and CCL will exit at once since it is not needed to hang around in core to pass back OCB information. This makes it possible to have CCL commands within a command file started by a CCL command. Also CCL was upgraded so that it can be an Alternate CLI for RSX11M V4.0. If it is used as an alternate CLI, it will receive the command line prior to MCR. This means that any MCR command (even for installed tasks) can be trapped and reparsed. Moreover, even with an unmodified MCR, illegal characters can be used as commands. The same CCL task image can be installed both as the catchall task (...CA.) and as an alternate CLI. If it is to work as a catchall task it must be installed with the name ...CA. User's desiring to use the Alternate CLI features should create a LB1:[1,5]SYSCLI.CCL file to avoid nasty error messages. Note that both the names for the system and the user CCL files are modified for if CCL is a CLI. The names are LB1:[1,5]SYSCLI.CCL and SY:[UIC]USERCLI.CCL. To simplify use of CCL for user's (like myself) who often assign a local LB:(to do a sysgen). The location of SYSCCL.CCL has been moved to LB1: (unless symbol $LB0 is defined in PRECCL.MAC). To use CCL, please do a global assign of LB1: to a physical disk either in VMR or in STARTUP.CMD. As was previously mentioned, this version of CCL has been extensively rewritten to provide a more flexible command format. The major changes that must be kept in mind for this newest version are, 1) All conditional assembly directives are now in PRECCL.MAC for easier access (see comments for their affects). They are $LB0,,$DCL, and $TABLE. 2) An internal table lookup has been added to offer a compromise between DCL and the .CCL files. (see comments in CCL.MAC) 3) Several new parameters have been defined -- %A%, %B%, %C% and %0% %A% is set the the entire character string past the command. %B% is set to character string up to first space %C% is defined as everything not in %B% (excluding delimiter) %0% is set to values of any leading switches (e.g. BRU/REW/VER, %0%=/REW/VER) 4) Two options have been added for command building. If a parameter is null, it may be replaced by a string starting with the key character "\" and extending to the % delimiter, also, a parameter may be tested by %2?S1\S2% which will insert string "S1" if parameter 2 is defined, otherwise string "S2" will be inserted (either S1 or S2 may be null). 5) A command line may extend to the next line by including the "+" character as the last character in the line. 6) USERCCL.CCL is opened on the user's logon UIC rather than the current default UIC. 7) If CCL can not find a command, it will try sending off its command to another catchall ...CA2. 8) %R is a special character signifying that CCL is to ring the terminal BELL when it exits. A previous version used %B for this. Sorry for the incompatability. 9) %D is added to aid in debugging CCL command lines. When it is encountered, the command up to that point is displayed in expanded format at the user's terminal rather than being sent to MCR. 9) %P is added to signify that an action line is to be printed out on TI:. This makes it very easy to create CCL commands which send escape sequences to control terminal characteristics. 10) %Q is added to signify that CCL should exit without sending on the command to MCR if a required input field is defaulted with a null (ie %1\%) and the input parameter is also a null. This prevents various PIP like commands from occuring with no files specified which often results in defaulting to the entire directory. 11) Two possible TABLE macro files are offered. TABLE.BIG has all kinds of CCL commands and results in a significantly larger CCL. TABLE.KMS includes those commands which used to be processed by the internal DCL code. The size of CCL using the internal table file is comprable to the previous versions using hard coded command. TABLEGEN.CMD allows the user to create an internal CCL file. 12) CCLGEN allows the user to select amoung a variety of options. If the user desires to use an internal table file, CCLGEN will allow the user to link to TABLEGEN.CMD to create an internal table from a standard CCL file. One can use either USERCCL.CCL or SYSCCL.CCL, for example, as a source file. 13) CCL now checks to see if the keyword typed in is longer than the maximum specified in the file (previously was ignored). This means that commands FOO and FOOY can be different and distinct. 14) Documentation and HELP files have been updated to reflect the many, many new features. 15) CCL now uses RPOI$ to chain the command to MCR if either a %$ is found, or if the action line is the last or only action line. The Command is chained off, and CCL immediately exits. This is only for the commands handled via the table file or the external file. The hardwired commands still use SPAWN. If RPOI$ fails CCL trys to use the SPAWN directive. Note that this makes it possible to have CCL commands within command files started by CCL commands. CCL is no mostly recursive although it is still not possible to have a CCL command itself be a CCL command. 16) Support for Dan Steinberg's patch for DRSPW (passing/relinking OCB's on special SPAWN directive) is withdrawn. RPOI$ can be used without patching the standard RSX11M system. 17) Support for CCL as an alternate CLI. KNOWN BUGS and RESTRICTIONS 1) If you specify the following in a command definition file $4411XSET *command_text CCL will come back and tell you that there is a read error on LB1:[1,5]SYSCCL.CCL. If you try $4411XSET ?0Switches *set %0%%1%P% you will also get a read error message on LB1:[1,5]SYSCCL.CCL if you type XSET /UIC=[xxx]. Values are stuffed into the %0 parameter until a space is found. Hence the whole line goes into %0. Now this screws up the checking for whether or not enough parameters were entered. %0 is not at this time counted as one of the characters, so CCL gets confused. The %0 parameter should be used with care until someone has a chance to come up with a versitile fix which doesn't screw up something else. II don't have time to fix this bug for this release, but I would welcome any help that any of you users would like to give. Active contributers to CCL now include Mr. Angel Li RSMAS/MPO University of Miami 4600 Rickenbacker Cswy. Miami, Fl. 33149 (305)-350-7491 Paul Sorenson Dept. of Physiology Mich. State Univ. E. Lansing, MI 48824 (517)-355-5125 And myself, James G. Downward KMS Fusion, Inc PO Box 1567 Ann Arbor, Mi 48106 (313)-769-8500 ********************VD0:[350,10]README.1ST;1******************** ********************VD0:[350,10]README.1ST;1******************** This distribution kit contains the RSX-11M/M-Plus user monitor files. Please note that this version of the monitor was written for RSX-11M V3.2 and RSX-11M-Plus V1.0; no guarantee is made that it will run under RSX-11M V4.0 or RSX-11M-Plus V2.0. To build the user monitor, it is necessary to copy the distribution files into a chosen UIC and invoke the build command file, USERGEN. The command file is reasonably intelligent, UIC-independent, and should be able to build a task with no intervention. If this is not the case, it may be necessary to run the command file with the /-MC switch and build the task manually from the produced build command files. Anyone with suggestions on how to beat the problem with logouts of terminals logged in to remote systems should contact the author, as this is an extremely irritating problem. Bruce R. Mitchell 3M Engineering Systems and Technology Building 518-1 3M Center St. Paul, Minnesota 55144 ********************VD0:[350,11]README.TXT;1******************** ********************VD0:[350,11]README.TXT;1******************** OMSI Pascal interface to RMS-11(K) for the PDP-11 Users This account contains all the necessary files, documentation and example programs for interface to RMS-11(K) from OMSI Pascal Version 1 or 2. Since PRM was developed on the (more advanced) RSX system, the installation will be much easier for you RSX users. PRM has never been tested on RSTS/E but using the RSX Run-Time-System, there shouldn't be any problems. ALL USERS: o Get a hardcopy of the PrmPas.Doc file for reference. o Transfer files to your system and build the PrmPas library. o Compile and build the example programs to check your installation. IF RSX-11M/M+: o Use PrmXfr.Cmd to transfer all necessary files to your system. o Use the PrmPasLib.Cmd file to build the PRM library. IF RSTS: o Modify the contents of the PrmXfr.Cmd file to RSTS transfer file commands. o Modify the PrmPasLib.Cmd file to build a library on RSTS. PRM has been working for us at 3M Engineering System & Technology Labs and has saved us a lot of development time. We plan on switching to VAX Pascal when the new version supporting RMS-32 Indexed files is released. It seems that OMSI doesn't feel that there is any need to interface to RMS from Pascal based on the number of requests from their customers. OMSI also seems to be dragging their heels on development of a VAX native mode compiler. Hopefully VAX Pascal will fulfill our needs. Good Luck with PRM. - Ken Tibesar - 3M Engineering ********************VD0:[350,20]README.1ST;1******************** ********************VD0:[350,20]README.1ST;1******************** FFDISK is a formatter for DSD 440 floppies and will format virgin disks. Just run FFDISK (...FFD) and answer the questions. Error codes refer to those defined in the DSD 440 manual. The files included on this tape are: README.1ST -- this file FFDISK.MAC -- the source file FFDGEN.CMD -- builds and executes the MACRO and TASKBUILD command files NOTE: This formatter has hard-coded addresses for our system. FFDISK is scheduled for later renovation but, at this point, you'll have to modify it to suit your configuration. ********************VD0:[350,30]README.1ST;1******************** ********************VD0:[350,30]README.1ST;1******************** WEIDNER COMMUNICATIONS, INC 1673 WEST 820 NORTH PROVO,UTAH 84601 (801)-375-9910 THE FOLLOWING ROUTINES ARE PROVIDED ON AN AS-IS BASIS. WEIDNER ASSUMES NO RESPONSIBILITY FOR ANY PROBLEMS WHICH MIGHT OCCUR AS A RESULT OF THEIR USE. THESE ROUTINES ARE ALL FORTRAN-CALLABLE BIT HANDLING ROUTINES: BIT.MAC ALLOWS FORTRAN ACCESS TO BIT ARRAYS BYTE HANDLING ROUTINES: BYTENE.MAC COMPARISON FOR EQ OR NE OF BYTE ARRAYS BYTGLE.MAC COMPARISON FOR GT OR LE OF BYTE ARRAYS BYTLEN.MAC RETURNS NUMBER OF NON-ZERO/NON-BLANK BYTES IN A BYTE ARRAY BYTLGE.MAC COMPARISON FOR LT OR GE OF BYTE ARRAYS BYTMOV.MAC MOVES ONE BYTE ARRAY TO ANOTHER BYTREV.MAC REVERSES ORDER OF A BYTE ARRAY BYTSET.MAC SETS A BYTE ARRAY TO A SPECIFIED CONSTANT MISCELLANEOUS ROUTINES: CASE.MAC FORTRAN COMPUTED SUBROUTINE CALL CASES.MAC FORTRAN CASE STATEMENT ********************VD0:[350,40]README.1ST;1******************** ********************VD0:[350,40]README.1ST;1******************** README.1ST Current set comprises few items, prepared as subscriptions to The Multitasker, or as an entry to Decus Symposium tape. Topics are: NPRVINS.DOC > SPEAK - OUT < Description of a way to implement safe INStall/REMove for non-privileged users of larger RSX11M system. POOL.DOC > HINTS AND THINGS < Example of usefull enhancement of the well-known POOL monitor task. SHUFFLER.DOC > MAKE IT YOURSELVES < How to significantly increase throughput of an overloaded RSX11M system. SHUFL.COR SLP file for SHUFFLER included. CATCHALL.DOC > MAKE IT YOURSELVES < Super-version of CATCH-ALL system. No modification to standard executive, but works the same way if patch to DRSPW realized. Many other enhancements. All necessary files included. Ing.Martin Brunecky Drobneho 28a 60000 BRNO Czechoslovakia ********************VD0:[350,50]README.TXT;1******************** ********************VD0:[350,50]README.TXT;1******************** [] ATLANTA SPRING 82 OPA - ONLINE POOL ANALYZER FOR M PLUS V 1 WITH ACTIVE TASK POOL USAGE REPORT Base level: Version KB1.0 Date: 10-MAY-82 Patch level: None Date: Submitted by: Kitty Bethe Bankers Trust Company COD - 37th floor 130 Liberty St. NYC 10006 Description: OPA displays a visual map of the data structures in pool and their location, thus allowing system programmers/managers to determine why their pool is so fragmented, and hopefully then rectify the situation. This is a snapshot of a running system, not a crash dump tool. This version of Jim Neeland's OPA has been extensively modified to run under M Plus version 1. It also outputs a brief report giving a count of various types of data structures and total bytes used in pool on a per task basis before outputting the OPA map. This is useful for finding excessive pool usage in application programs (e.g. they don't cancel marktimes or keep reattaching to things they already are mapped to). This program can be run via the LOG facility to create copies of its output on disk. Documentation: OPA.DOC describes the output format and some uses, and the source is well commented (I hope). Status: A possibly dangerous tool in the hands of fiddlers. This program is on the system stack for most of its code, and in some circumstances that time may have deleterious effects on your system. It has been made rather more rugged than the 3.1 version, in that it will catch its own odd address or memory protect violations and display the PC of the last such occurrance, and, thanks to Dan Steinberg, will continue with the analysis. This does not GUARANTEE that it could not corrupt Pool somehow, but is much less likely to. Desired Enhancements: Although we all hope there will be less need for this program with Mplus version 2, it certainly will not pick up the window block information from external task headers, it may still work for everything else though. Fancier command line processing to allow any combination of the 3 parts of its output, perhaps with default set at task build time. Decnet data structures picked up (this would include mapping into XMDRV to pick up its I/O packets). More accurate pickup of loaded user driver data structures. Support: The author welcomes comments & suggestions, but does not want complaints about possible system crashes, although will be interested in fixes to eliminate same. ********************VD0:[350,300]README.1ST;1******************** ********************VD0:[350,300]README.1ST;1******************** [350,300] INSPS.SLP [350,300] DIR [350,300] HP67 This UFD contains three submissions from the Southest Minnesota LUG. o INSPS.SLP is an untested (!!) SLP correction file for RSX V4 INStall task, and implements the INS syntax '/TASK=...xxx /CMD="xxx command line"' in a single switch, /RTC. The new switch syntax is: '/RTC="xxx command line"', and saves 13 bytes for passing MCR command lines via CCL or whatever. o DIR was originally a modified SRD V5.0 implemented to use a more "DCL" style command syntax. It has been enhanced over 2 years and includes several options not (to my knowledge) supported by SRD: 1) handles PURGE operations, 2) may select null length and locked files, 3) may reset file creation/revision dates, 4) may set, delete, and list files based on an EXPIRATION date (taking advantage of unimplemented exp. date section of FILES-11 file header). DIR.RNO contains a RUNOFF compatible documentation set. o HP67 is a Hewlett-Packard programmable calculator emulator which currently runs under RSX-11M and RT-11. It is written entirely in FORTRAN; includes 256 double precision "registers" and 1000 program steps. HP67.DOC contains a full description, COMMAN.DOC contains a list of valid instructions. I would appreciate being informed of any problems/bugs/suggestions encountered in using INSPS.SLP and DIR: Paul Sorenson Pulmonary Research S3, Mayo Clinic Rochester, MN 55904 (507)-284-8395 ********************VD0:[352,2]README.1ST;1******************** ********************VD0:[352,2]README.1ST;1******************** [352,2]README.1ST - ATLANTA SPRING 82 - FILES SUBMITTED BY: Bob Turkelson NASA/Goddard Space Flight Center Code 935 Greenbelt, MD 20771 (301) 344-5003 This UIC contains files for the TALK program, version V05.11. TALK is a terminal emulation program which enables a user on an RSX-11M V3.2 system with the full duplex terminal driver to communicate with a remote host computer over a single line interface (such as a DLV11 or DL11). The program begins in terminal mode, and has the capability of bi-directional file transfers. See the documentation and program source for details. NOTES.DOC also contains instructions for building TALK. Kindly advise me of any changes you make to the program. NOTES.DOC TALK instructions and notes TALKSYS.MAC TALK prefix file for local and host system parameters. *.MAC TALK source files. TALK.CMD Command file to assemble and build TALK. TALK.DOC TALK documentation. TALK.RNO Runoff input file for TALK documentation. [352,2]README.1ST - END ********************VD0:[370,1]README.TXT;1******************** ********************VD0:[370,1]README.TXT;1******************** TAPE COPY SUBMISSION FOR THE 1982 SPRING DECUS U.S. SYMPOSIUM ATLANTA, GEORGIA MAY 10-14, 1982 FROM THE CITY OF GAINESVILLE, FLORIDA INFORMATION SYSTEMS DIVISION P/O BOX 490 GAINESVILLE, FLORIDA 32602 (904) 374-2020 (MARK WESTON) WE OFFER THE FOLLOWING MISC. SUBMISSIONS: TALK - A INTER-TERMINAL FULL DUPLEX (REAL TIME) COMMUNICATION TOOL PATTERNED AFTER THE CDC PLATO TERM-TALK FEATURE. FILES: TALK.MAC, TALK.OBJ SIGN - A SIGN GENERATOR FOR BULLETIN BOARDS. FILES: SIGN.FTN, SIGN.OBJ, CHARSET.DAT PINK - A PINK PANTHER POSTER (BY J. NOEL CARBONI), THIS POSTER MAY ONLY BE REPRODUCED USING A PINK RIBBON. FILES: PANTHER.LST WOOPS - OUR ATTEMPT AT WORD PROCESSING USING EDT AND RNO (SIMILAR TO WPS-11, IN THAT IT FAILED). FILES: WP.CMD, WP.DOC ********************VD0:[370,150]README.1ST;1******************** ********************VD0:[370,150]README.1ST;1******************** ************************************************************************* * * * HEX - Microprocessor hex file management utility * * * * Kevin Angley * * Telex Terminal Communications * * 3301 Terminal Drive * * Raleigh, North Carolina 27604 * * (919) 834-5251 * * * ************************************************************************* This is an update to the HEX utility that appeared on the Spring 1981 Miami RSX tape under [370,150] and also appeared as 11-480 in the DECUS library. New features include some cosmetic changes, offsetting reads and writes, and the ability to create "even" and "odd" proms for 8-bit proms on a 16-bit data bus. The HEX utility runs under the RSX11M operating system. Its purpose is to manipulate INTEL ASCII Hex-formatted files that are produced by many cross assemblers (or linkers) for microprocessors (8080, Z80, 8085, 68000, etc.). Operations that can be performed on a hex file with HEX include: FILL - fill address range with a value. READ - read in a hex file. COMPARE - compare specified addresses to another hex file. COMPLEMENT - complement logically (1's complement) COPY - copy values from one area to another. CRC - compute the standard bisync cyclic redundancy check on a range. DISPLAY - display portions of the file to the screen or to a listing file. EDIT - examine and optionally replace values in the file. MOVE - move values from one area to another. NEGATE - complement arithmetically (2's complement) SEARCH - scan the file for a particular byte or word value. SUM - compute 16-bit byte-wise sum-check (as with DATA I/O prom burner). TRANSFER - manipulate the transfer address. WRITE - write out locations to create new hex files. The file HEX.TSK is ready to run (without FCSRES). To build the non-FCSRES version, TKB @HEXBLD. To build the FCSRES version, TKB @HEXFCSBLD. If you need to assemble a module, type @MAC and respond with the module name that you wish to assemble. HELPHEX.HLP is a help session on HEX and all subcommands. An actual user's manual can be obtained by sending about a dollar for postage to me at the above address. HEX can be easily modified to handle other formats (TEKHEX, MOTOROLA, etc.) by changing the modules READ and WRITE. Source module READTCI is an example of how read could be modified to input a different format. I would VERY much like to hear from you if you find this useful, find a bug, have modified it for other formats, added whistles and bells, etc. ************************************************************************* ********************VD0:[374,1]README.1ST;1******************** ********************VD0:[374,1]README.1ST;1******************** /******************************************************************************/ TAPE COPY PEOPLE: DO NOT DELETE .TSK, .OBJ, .OLB FILES !!!! /******************************************************************************/ Spring, 1982 RSX SIG Tape Submission UIC [374,1] (Goes together with [374,2]) >>> DECUS C SUPPORTS FLOATING POINT AND INLINE EIS <<< Submitted by: Robert B. Denny Creative System Designs Pasadena, CA. At long last, here is a PRELIMINARY binary kit for Decus C which supports floats and doubles. You need FPU hardware, or an emulator. The compiler also emits inline EIS. Many, many bug fixes to the compiler, a complete overhaul of some of it, restructuring of the library, more tools, etc. This kit is the result of a last minute merge (late Tuesday nite, May 4), and may have a few glitches, but nothing serious. Thanks to Martin Minow (DEC) for doing 80% of ALL work on Decus C, ('nuff said!), Cliff Geschke at Unimation Robotics, who did the massive overhaul and testing of the compiler and Scott Roth, also at Unimation, who did the library mods for floating point, the C trig routines, and other goodies. To set things up on your system, and optionally create the documentation, invoke SETUP.CMD after reading it. ************* * N O T E * ************* The finally released complete kit will be available from the DECUS library soon. PLEASE, if you want a copy of the kit, sources and all, order it from the DECUS library. I have gone nuts over the last year and a half answering calls on problems due to corrupted or partial kits. THE LIBRARY CAN'T CONTINUE TO EXIST IF YOU DON'T ORDER PROGRAMS THROUGH IT. /******************************************************************************/ ********************VD0:[374,2]README.;1******************** ********************VD0:[374,2]README.;1******************** /******************************************************************************/ Spring, 1982 RSX SIG Tape Submission UIC [374,2] (Goes together with [374,1]. See [374,1]README.1ST) By: Bob Denny Creative System Designs SOFTWARE TOOLS This UIC contains source for a number of programs that are generally useful. There's a lot more C stuff on the full Kit, this is a sampler (the most immediately useful). Invoke MTOOL.CMD to build the whole lot. It's a fine test of the compiler, assembler and library. The XRF program is a reasonable example for learning the fine points of C. It is the first program I (RBD) wrote in C, so don't laugh too hard. All tools contain embedded command file generator macros and documentation. See the documentation on BUILD and GETRNO. After building the tools, try invoking MGTDOC.CMD in this UIC. The programs are: comm Compare the contents of two files, indicating what is common to both files, and what is different. comm ? gives help. diff Differential file comparison program, as described in Bell Labs C.S. technical report 41. echo Echo arguments -- used mostly to debug the compiler and run-time system. grep "Global Regular Expression Pattern" -- search files for lines which satisfy an argument pattern. grep ? gives help. kwik Kwik index program. Link with sorts.c. l List on a screen terminal (you hit return every 23 lines). mc A multi-column print utility. mp A full macro processor for C source files, written by R.W. Harper of Rensalear Institute of Technology and originally distributed on a Unix SIG tape. It has been modified to interface with the Decus compiler; it generates the predefined #define's and otherwise interfaces just fine now. It supports the full functionality as described in Kernighan and Ritchie. nm Print "namelist" -- prints global symbols for an object module. Lots of options described in the source code, but nowhere else. Does global cross ref's faster then TKB. od Octal dump of a file -- Options described in the source code only. As the RSX library doesn't mangle file attributes, some of the features don't work. od dumps records on RSX, blocks on RT11 pr Print with line numbers. sortc Sort a file. Help in sort.rno/sort.doc sorts Sort library routines. Help in the source code. Used by kwik. t File type (on a video screen) utility. Run T and see. Works well on a network virtual terminal. Handles random RMS file formats. today Print today's date in readable English. Uses the following subroutines: (check this out!! (RBD)) datetx Convert date to English moontx Convert phase of the moon to English nbrtxt Convert an integer to English timetx Convert time of day to English Very good program, if I do say so myself(MM). uniq Print unique lines from a file, uniq ? gives help. wc Word/line/byte counter xrf Cross reference listing for C programs. An excellent tutorial introduction to the C language (if I do say so myself (RBD)). /******************************************************************************/ /******************************************************************************/