.TITLE INDCMD - INDIRECT FILE PROCESSOR COMMAND PROCESSOR .IDENT /03JAN8/ ;MPK004 ; ;**-1 ; ; COPYRIGHT 1975, DIGITAL EQUIPMENT CORP., MAYNARD, MASS. ; ; THIS SOFTWARE IS FURNISHED TO PURCHASER UNDER A LICENSE FOR USE ; ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED (WITH INCLUSION ; OF DEC'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH SYSTEM, EXCEPT ; AS MAY OTHERWISE BE PROVIDED IN WRITING BY DEC. ; ; THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL ; EQUIPMENT CORPORATION. ; ; DEC ASUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY ; OF ITS SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC. ; ;VERSION: 03JAN8 ;MPK004 ; BY: H.LEV ;**-1 ; DATE: 6/16/75 BREAK THIS MODULE OFF FROM INDRCT ; ;HJL007 ; HJL007 4/9/76 ADD OPEN, CLOSE, DATA, ENABLE AND DISABLE ;HJL007 ; ;HJL007 ; HJL024 2/15/76 ADD STRING SUBSTITUTION ;HJL007 ; ;HJL007 ; JMM031 6/11/76 INCLUDE RSX-11D CONDITIONAL CODE ;JMM031 ; ;JMM031 ; ;JMM031 ; RSK001 01-DEC-76 R. KITTELL, LASL MP-3 -- ADDED PURE PSECT ; RSK002 07-MAR-77 R. KITTELL, LASL MP-3 -- INCLUDED BELL ; CHARACTER IN QUESTION PROMPTS. ; MPK001 18-JUL-77 M. KELLOGG, MP-1 - CHANGE CLR IN $DATER ; TO CLRB ; MPK002 29-DEC-77 GET RID OF '...AT. DELAYING' AND ; '...AT. CONTINUING' MESSAGES IN .WAIT ; UNLESS TRACE IS ON. ; MPK003 30-DEC-77 ADD GLOBAL SYMBOL CAPABILITY FROM 11M ; RELEASE VERSION ; MPK004 3-JAN-78 TAKE OUT DEFS OF LIFLG BITS, SINCE THEY ; ARE NOW GLOBALED IN INDRCT.MAC ; ; THIS PROGRAM PROVIDES A MEANS OF GIVING MCR COMMANDS FROM ;**-1 ; A FILE. ; ; ; MACRO LIBRARY CALLS ; .MCALL GCMLD$ GCMLD$ DEF$L .MCALL DIR$,RETURN,WTSE$S .MCALL SPND$S,CSI$1,CSI$2,CLOSE$,OFNB$W,PUT$ ;HJL007 ;**-1 ; ; EQUATED SYMBOLS ; CR = 15 ; CARRIAGE RETURN ESC = 33 ; ESCAPE LUN1 = 1 ; "TI" LUN LUN2 = 2 ; FILE LUN EFN1 = 1 ; EVENT FLAG TO WAIT ON SYMSIZ = 6. ; SYMBOL SIZE IN CHARACTERS STRLEN = 16. ; MAX STRING LENGTH ;HJL024 ; ;HJL024 ; SYMBOL TYPE ;HJL024 ; ;HJL024 TF = 1 ; LOGICAL ;HJL024 NUM = 2 ; NUMERIC ;HJL024 STR = 3 ; STRING ;HJL024 ; ; BIT DEFINITIONS FOR LIFLG ; ; THESE ARE NOW ALL DEFINED GLOBALLY IN THE INDRCT MODULE ;MPK004 ; ; BIT DEFINTITIONS FOR $LOGFL ; LGCL = 1 ; LOGICAL FUNCTION IN PROGRESS AND = 2 ; FUNCTION IS AND 1=YES GO = 4 ; ALLOW COMMAND TO EXECUTE 1=YES IFTST = 10 ; IF SEEN PREVIOUS TO CURRENT COMMAND 1=YES ; ; LOCAL DATA ; ANS: .BLKB STRLEN+1 ; ANSWER BUFFER , ROOM FOR MAX STRING ;HJL024 .EVEN .PSECT PURE,RO,I,GBL,CON YESNO: .ASCIZ %? [Y/N]:%<7> ; QUESTION SUFFIX ;**RSK002 STNG: .ASCIZ % [S]: %<7> ; STRING QUESTION SUFFIX ;RSK002 NMBR: .ASCIZ % [N]: %<7> ; NUMBER QUESTION PREFIX ;RSK002 ;HJL024 ENATXT: .ASCIZ /SUBSTITUTION/ ; ;HJL024 .ASCIZ /DATA/ ; ;HJL024 .ASCIZ /GLOBAL/ ;MPK003 .BYTE 0 ; ;HJL024 .EVEN ;HJL024 .PSECT ENAADD: .WORD DEFSUB ; DEFAULT TO SUBSTITUTION ;HJL024 .WORD DEFDAT ; DEFAULT TO DATA ;HJL024 .WORD DEFGLS ; GLOBAL SYMBOLS ;MPK003 ; BRANCH TABLE FOR IF TEST FOR LOGICAL AND NUMERICS ;HJL024 ; ;HJL024 .PSECT PURE SNGTST: BEQ 20$ ; IF EQ ;HJL024 BR 10$ ; ;HJL024 BNE 20$ ; IF NE ;HJL024 BR 10$ ; ;HJL024 BHIS 20$ ; IF GE ;HJL024 BR 10$ ; ;HJL024 BHI 20$ ; IF GT ;HJL024 BR 10$ ; ;HJL024 BLOS 20$ ; IF LE ;HJL024 BR 10$ ; ;HJL024 BLO 20$ ; ;HJL024 10$: JMP FALSE ; TEST IS FALSE ;HJL024 20$: JMP TRUE ; TEST IS TRUE ;HJL024 ;HJL024 ; ;HJL024 ; IF COMMAND CONDITIONALS ;HJL024 ; ;HJL024 CNDNL: .ASCIZ /EQ/ ; ;HJL024 .ASCIZ /=/ ; ;HJL024 .ASCIZ /NE/ ; ;HJL024 .ASCIZ /<>/ ; ;HJL024 .ASCIZ /GE/ ; ;HJL024 .ASCIZ />=/ ; ;HJL024 .ASCIZ /GT/ ; ;HJL024 .ASCIZ />/ ; ;HJL024 .ASCIZ /LE/ ; ;HJL024 .ASCIZ /<=/ ; ;HJL024 .ASCIZ /LT/ ; ;HJL024 .ASCIZ /,(R1)+ ; YES, PUT IN TRAILING BRACKET 20$: CLRB (R1) ; SET END OF MESSAGE INC $CMDFL ; CALL @(SP)+ ; GO TO ROUTINE ;HJL024 COMERR: JMP $INXIT ; ;**-1 .END