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)
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
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
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.
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!!
.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
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.
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.
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.
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
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,<ba,bc>
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.
[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.
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.
[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.
* 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.
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
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.
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
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
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.
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
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
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.
[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 <ESCAPE> 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.
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
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
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
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
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.
//
************************************************************
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
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
.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
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
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
.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
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
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
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.
.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
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
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
.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
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
.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
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
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
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
[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 ...?")
---------- 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
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.
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
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
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
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 <filespec>
$ IF $STATUS .NE. 1 THEN WRITE SYS$OUTPUT "<filespec> 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
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.
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
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
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
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.
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
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
[] 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.
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
[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.
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.
/******************************************************************************/
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.
/******************************************************************************/
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)).