AT. -- INDIRECT FILE PROCESSOR The indirect command file processor provides BATCH-like capabilities for controling taskbuilds and routine processes. It is sufficiently complex that is is practically a program language. Any MCR command appearing in the command file will be executed if the terminal's privilege allows it to do so. Directives (commands to ...AT.) can be used to control the logic flow of MCR commands, input data from the user's terminal, and create files for future use. A command file is started by @filename.ext/sw where .cmd is the default extension and a number of switches may be used. Specific HELP on the use of AT. may be obtained with the keywords. DIRECTIVES SPECIAL STRING-SYMBOLS LABEL STRING-EXPRESSIONS NUMERIC-EXPRESSIONS SUBSTITUTION PARAMETER-PASSING SWITCHES SPECIAL LOGICAL-SYMBOLS SYMBOLS SPECIAL NUMERIC-SYMBOLS 2 DIRECTIVES .label Define a label. .ASK Ask operator a YES/NO question. .ASKN Ask operator for numeric value. .ASKS Ask operator for string value. .BEGIN Marks the beginning of a Begin-End block. .CHAIN filename Close current file, and start executing new one. .CLOSE Close an open output file. .DATA Send a single line of data to a secondary output file. .DEC Decrement numeric symbol by 1. .DELAY Delay execution for specified time. .DISABLE Disable substitution, data, global symbols, lowercase, escape recognition or echo control. .ENABLE Enable substitution, data, global symbols, lowercase, escape recognition or echo control. .END Mark the end of a Begin-End block. .ERASE Erase LOCAL or GLOBAL symbols. .EXIT [status] Exit from level of indirect file and set status. .GOSUB Goto a subroutine. .GOTO Goto the specified label. .IF Determine if symbol, or string expression meets one of several possible conditions. .IFACT/.IFNACT Determine if task is active or not active. .IFDF/.IFNDF Determine if a symbol is/is not defined. .IFINS/.IFNINS Determine if a task is installed. .IFLOA/.IFNLOA Determine if a driver is loaded. .IFT/.IFF Determine if a logical symbol is True or False. .INC Increment a numeric symbol. .ONERR Branch to a label if error detected. .OPEN #n FILESPEC Open a file for write output. .OPENA #n FILESPEC Open a file for write APPEND output. .OPENR #n FILESPEC Open a file for reading. .PARSE Parse a string variable. .PAUSE Pause for operator action. .READ #n stringvar Read one ASCII line into the string variable. .RETURN Return from subroutine. .SETT/.SETF Set logical symbol True/False. .SETN Set value of numeric symbol. .SETS Set value of string symbol. .STOP [status] Exit from ...AT. and optionally set status. .TEST string sym Test length and character type of string symbol. .TESTFILE filespec Test a file for existence. .WAIT Wait for specified task to exit. .XQT Start a task but do not wait for it to complete. 2 LABEL Any statement in an indirect command file, may have a label. This label is used as a reference point to branch back to or to jump to (.GOTO, .ONERROR, .GOSUB). A label may contain only alphanumeric characters and a $. Labels may be from 1-6 characters long and are followed by a colon, :, and must be preceded by a period (.). Labels may be declared as direct access labels by placing them on lines by themselves. This enables very fast jumps to a label for frequently used labels. Only 20 such labels are maintained by AT. at any given time. 2 NUMERIC-EXPRESSIONS Numeric symbols or constants may be combined with other symbols or constants by logical and arithmetic operators to form a numeric experssion. Arithmetic operators are used to add (+), subtract (-), multiply (*), and divide (/). Logical operators are the inclusive OR (!), and logical AND (&). No embedded blanks or tabs are permitted between operators. Expressions are evaluated from left to right unless parentheses are used to form subexpressions that are evaluated first. An expression type is octal only if all operands are octal. Numeric expressions are permitted as second operands in numeric .IF and .SETN directives, and as range and default arguments in .ASKN and .ASKS directives. They are also permitted to represent exit status in the directives .EXIT and .STOP. 2 PARAMETER-PASSING Parameters may be passed to an indirect command file by appending a space to the file specification, followed by the space-delimited parameters: >@file arg1 arg2 arg3 ... argn The entire command line, less the initial "@" will appear in "COMMAN" The first eight parameters will appear in P1, P2, ... , P8 The file specification will appear in P0 The number of parameters passed (including the file spec) will appear in Any trailing information in the command line beyond the eight parameters will appear in P9 For information on performing alternative command parses as well as additional parses on the arguments, see the .PARSE statement. This feature is currently not supported by DEC and is not documented in the 'MCR Operations' Manual. 2 SPECIAL 3 LOGICAL-SYMBOLS True if the last query was answered with a single escape. True if answer to last numeric query was defaulted. True if last string entered via .ASKS or tested with .TEST contains only alphanumeric characters. True if last string entered via .ASKS or tested with .TEST contains only RADIX-50 characters (alphanumeric characters plus . and $). True if system is mapped. True if the last .READ directive encountered the End Of File. 3 NUMERIC-SYMBOLS Memory size in K words. Assigned the value of 0,1,2, or 4 depending on the exit status from the last MCR command executed or from the last .WAIT tsknam directive where 'tsknam' was activated by the .XQT directive. This special numeric symbol is modified at the completion of a synchronous MCR command or at the completion of a .WAIT directive. The .EXIT statement can also modify . The value is returned from the task that has completed, if the task exits with status. Otherwise the value is returned from MCR. The values 0,1,2 and 4 indicate 0 Warning 1 Success 2 Error 4 Severe error Unit number of system device (SY:). Length of string entered via .ASKS, or tested with .TEST. Contains the last FCS error code resulting from a .TESTFILE, .OPEN, .OPENA, .OPENR, .READ or .DATA directive. Assigned the number, in octal, of free bytes in the internal symbol table of AT. Operating system type. RSX-11M = 1 RSX-11M-PLUS = 6 3 STRING-SYMBOLS Device mnemonic of system device(SY:) in format DD. Current UIC in format [ggg,mmm]. System SYSIC in format [ggg,mmm]. System LIBUIC in format [ggg,mmm]. The date in form DD-MMM-YY.