RUNINFO$ 4W -- Run Information File Builder
RUNINFO$ is a utility that creates a temporary SDF data file, RUNINFO$., containing a variety of PCT and system information. The file is formatted so that it may be used as an SGS input stream to the SSG processor. Example:
@XQT SYS$*LIB$.RUNINFO$ [OR: @RUNINFO$]
(Since RUNINFO$ was developed, the SSG processor has been enhanced to provide most, though not all, of the same information.)
The information may be directed into an alternate file by @USEing the name RUNINFO$ for it prior to execution: either a temporary file (assigned or unassigned) or a catalogued file (already assigned).
If the RUNINFO$ file is already assigned, a check will be made to ensure that it is either empty or has the same SDF label as RUNINFO$ creates. If it has other contents, RUNINFO$ will not overwrite it.
The RUNINFO$ file contains the following images, where the first word on each card is the SGS label and the remaining items are the fields (separated by spaces) and subfields (separated by commas) of each label:
RUNID RUNID RUNIDA (ORIGINAL & GENERATED) ACCT MYACCNTNO (ACCOUNT NUMBER) USERID MYUSERID (BLANK [''''] IF NOT CONFIGURED) PROJ MYPROJ (PROJECT ID) QUAL QUALIMP QUALDDEF (IMPLIED & DEFAULT QUALIFIER) PRIOR A (PRIORITY OF RUN) SECLEV 23 20 30 (SECURITY LEVEL: CURRENT MIN MAX) SYMINF 66, 57 6 3 6 (TOTAL-LPP,PRINTABLE-LPP TOP BOTTOM DENSITY) RUNTYP DEMAND (RUN TYPE -- BATCH/DEMAND) RUNSRC ''[DIR#]QUAL*FILE.ELT/VER'' ; (BATCH RUN SOURCE IF CP 12.0+ DIR,QUAL,FILE,FCYC ELT,VER,ECYC -- INPUT DEVICE IF DEMAND) BRKPT NO [QUAL*FILE(CYC) IF YES & CP 11.1+] (CURRENTLY BREAKPOINTED?) SITEID TERM11 (SITEID -- NONE IF BATCH) SITE ''USACAA'' (LOCAL INSTALLATION ID FROM SYSGEN) SYSTYP ''2200/500'' (SYSTEM TYPE) EXECLV ''44R3'' ''44R3*LOCLEV'' (EXEC LEVEL [BASIC & LOCAL]) HDWFEAT XMODE$,BMODE$,EIS$,QARCH$ (HARDWARE FEATURES) PROCID 0 5 00000000 (SERIES MODEL FEATURE-BITS[OCTAL:0-23]) PROCBITS 0 1 2 3 (VALID ER ADED$ IP MASK BITS: 1*/N) PS2200 ROS [EXP] (IF ON PS2200; SHOWS MODE & IF EXPRESS) HOSTID A (CURRENT HOST ID IF PRESENT) HOST A SITEID UP (SHARED HOST ID SITE STATUS) SETCW 000000000106 (ENTIRE CONDITION WORD) SETCT 0000 0000 0106 (CONDITION WORD BY THIRDS) SETCS 00 00 00 00 01 06 (CONDITION WORD BY SIXTHS) SETCDG 0 0 0 0 0 0 0 0 0 1 0 6 (CONDITION WORD BY DIGITS) DATE 01,JAN, 31, JANUARY 01,MON,1, MONDAY 96,001,1996 ;
''01 JAN 96'', 01/01/96, 010196, 960101, 19960101, 1996-01-01
(FIELDS: MONTH DAY YEAR WHOLE-DATE)
ALSO: [DATE,1,1,3] = number of days in current month
[DATE,1,2,3] = sequence number of weekday (Monday=1)
[DATE,1,3,2] = Julian date (The 4th field provides 5 ways of picking up the whole date with a single SGS reference. There is a similar field for the time.)
TIME 13 25 10 13:25:10, 13:25,132510,1325 EST [TIME,1,5,1] = Time Zone JKEYS 3 4 7 13 22 36 (Currently set jump switches)
MSFIX 98234 46911,LOC 51323,SHR (FIXED MASS STORAGE AVAILABLE: TOTAL LOCAL SHARED ) MSREM 45345 45345,LOC 0,SHR (SAME FOR REMOVABLE MS) MS FMD 92A0 UP, 164327, 112,L F,92A0 MS FMD SB31 SU, 1274, 112,S R,PACK04
The last two examples show mass storage availability. There will be one such card created in RUNINFO$ for every mass storage unit. The format of the MS card is as follows:
MS MNEMONIC DEVICE-NAME STATUS,TRACKS,PREP-FACTOR,L-OR-S TYPE,PACKID
Where tracks is the number of tracks remaining on the unit; L-OR-S is the local or shared indicator; and TYPE is F (fixed) or R (removable). STATUS is UP, SU, RV, DN, NA, or UD (secondary unit duplex).
RUNINFO$ may be executed with the following options:
C - Read data images even when called as processor with specific items, as in "@RUNINFO$ DATE".
D - Replace any dollar signs in the implied qualifier and/or project id with commas.
H - Replace any hyphens (dashes) in the implied qualifier and/or project id with spaces.
The D, H, P, and Q options facilitate the passing of a variety of information to a runstream merely by varying the project id in the ST keyin. This can create additional fields and subfields on the PROJ and/or QUAL images, which the runstream may then retrieve via @SSG. Example:
ST CANRUN,,TYPE2,,SYM$2-PR2 . Both the runid and project are being used to pass data to the run.
I - List any inserted data images.
L - List the images in the RUNINFO$ file.
M - Create mass storage images (MS). The meaning of this option may be reversed by changing the MOPDEF tag near the beginning of the source. In addition, the entire MS generation code can be proc'd out by setting the tag MSGEN to 0. This capability is provided because the utility MSD can generate mass storage SGSs with more information. See also U.
N - Suppress signon and informational messages.
P - Perform D- or H-option replacement on the project id only.
Q - Perform D- or H-option replacement on the implied qualifier only. (Will perform on both items if P & Q both present or absent.)
R - Reverse the meanings of the D and H options; i.e., replace dollar signs with spaces and/or dashes with commas.
S - Create secured items along with others. Secured items are defined when RUNINFO$ is compiled and may include such items as userid and siteid.
U - Used with M to list only UP or SU drives.
Up to 100 data images may follow the @XQT RUNINFO$ card; they will be inserted into the RUNINFO$ file following the predefined items listed above. In addition, if the first word of a data card matches the first word of a predefined item (label left-justified & space-filled in col. 1-6), the predefined item will be overridden by the data card and will not be generated. This override capability can be used, for instance, to test a run which may be started with different ST keyin formats, as described under the H option. Example:
INFO A,B,C 1,2
When overriding items this way, there are some special cases:
1. Project id/qualifier - If overriding the project id and/or qualifier, the user must ensure that the item is within col. 7-18 If D- or H-option replacement is to be performed correctly.
2. Condition word - To override the condition word, the user need only supply the 'SETCW' card, with the label in col. 1-5 And the entire 12-digit condition word desired in col. 7-18. After this item is checked for errors, the remaining condition word images will be generated.
3. Date/time - To override the current date or time, include a data card with 'DATE' or 'TIME' in col. 1-4 And the desired 6-digit date (MMDDYY) or time (HHMMSS) in col. 7-12. Assuming no errors, the remaining date or time subfields will be generated based on the given item. Year range: 1964-2063.
Col. 7-12 Of the 'DATE' or 'TIME' card may also contain 'RUNID', 'PROJ', or 'QUAL' to direct that the date or time is to come from the runid, project id, or qualifier. The word may optionally be followed by a space and a number denoting which character position of the item to start with, if not 1. Example: 'TIME PROJ 7' means to fetch the time from characters 7-12 of the project id.
When TIME is overridden, the time zone field will be ???.
4. MS - To replace all predefined MS cards with your own, at least one of your cards must have 'MS' in col. 1-2 and blanks in col. 3-6 (see also M option). If, however, you want to add your MS cards to the predefined ones without overriding them, the first field on all of your cards must start before column 7, so that there will not be a first-word match.
RUNINFO$ may be called to list only selected items, by calling it as a processor and listing the items in the operand field (the complete RUNINFO$ file is still created). Example:
Only the first four characters of each item are tested. Thus, selecting SETC will result in the listing of the SETCW, SETCT, SETCS, and SETCDG images.
This type of call may be useful in demand mode. When it is used, RUNINFO$ will not attempt to read any data cards; and so will not expect an @EOF after being called, unless the C option is used.
The call '@RUNINFO$ ALL' may be used to list all the items but bypass the reading of data cards.