INSPS.MAC;2=[12,10]INSPS.VGN/AU \ -2,2 .IDENT /4.0XA/ -36 ; JGD 5/7/79 ADD SUPPORT FOR /PRM=TEXT AND ; /PRM="TEXT". USED TO PASS COMMAND ; LINE TO TASK STARTED VIA RUN OR RUN$. ; ; JGD01 5/7/79 CORRECT PROBLEM IF LAST QUOTE IS MISSING ; WITH THE /PRM="TEXT" SWITCH ; ; JGD02 5/16/79 FIX PROBLEM WITH /CKP=NO NOT BEING ENABLED ; ; JKN 10/15/79 CHANGE SO COMMAND LINE W/O PARAMETER TEXT IS ; ONLY 3 CHARS LONG(MAKE EDI HAPPY). % -71,,/; JGD/ ; 20000 ; PRM FLAG -106,,/; JGD/ .WORD 110$ .WORD INSPRM -120,,/; JGD/ 110$: .ASCIZ /PRM/ ; -245,252,/; JGD/ BNE INSYNE ; NO, ILLEGAL UIC CALL $GTNUM ; GET PROGRAMMER CODE MOVB R1,$UIC ; SAVE IT BEQ INSILL ; ZERO IS ILLEGAL, ERROR! CMP R1,#377 ; IS IT LEGAL? BHI INSYNE ; NO CMPB R2,#'] ; END BRACKET? BNE INSILL ; NO, SYNTAX ERROR -/INSCKP:/ -/4000/,.,/; JGD02/ BIS #4001,$FLGS ; SET SLAVE FLAG SEEN(ASSUME=NO) -287,289,/; JGD01/ BEQ 5$ ; YES, SKIP AROUND JMP INSPS2 ; NO, SYNTAX ERROR 5$: TSTB (R0)+ ; SKIP "O" -327,,/; JGD/ ; ; PRM PARAMETER LINE == MCR LINE ; QOTFLG: .WORD 0 ; FLAG TO INDICATE " FOUND -,,/; JKN01/ INSPRM: MOV #PRMBUF+3,R1 ;GET ADR TO PUT TEXT MOVB #40,(R1)+ ; INIT TO BLANK AFTER NAME(CCL) -,,/; JGD/ BIS #20000,$FLGS ;SET SEEN /PRM MOVB (R0)+,R2 ;1ST CHAR? CMPB R2,#'" ;A QUOTE? BNE 1$ ;NO BIC #20000,$FLGS ; YES, SO ASSUME LAST QUOTE NOT FOUND INC QOTFLG ; YES REMEMGER IT MOVB (R0)+,R2 1$: CMPB R2,#CR ;END OF LINE BEQ 2$ ;YES CMPB R2,#ESC ;OR RESCAPE BEQ 2$ ;YES TST QOTFLG ; QUOTED? BEQ 4$ ;NO CMPB #'",R2 ;CLOSE QUOTE BNE 7$ ; NO, SO SKIP OVER BIS #20000,$FLGS ; YES, SO SHOW /PRM SWITCH IS VALID BR 5$ ; AND START EXIT 7$: MOVB R2,(R1)+ ;NO PUSH IN A CHARACTER 6$: MOVB (R0)+,R2 ;AND GET THE NEXT BR 1$ ;ROUND AGAIN 5$: CLR QOTFLG ; FORGET THE "'S BR 6$ ;AND GET MORE TEXT 4$: CMPB #'/,R2 ;OTHER SWITCH BNE 7$ ;NO = GOOD CHAR -,,/; JKN01/ 2$: CMP R1,#PRMBUF+4 ; HAVE WE GOTTEN ANY PARAMETER INFO? BNE 201$ ; IF NE, YES, SKIP DEC R1 ; IF EQ, NO, BACKUP POINTER TO BLANK 201$: MOVB #CR,(R1)+ ;YES = END OF PARAM -,,/; JGD/ BIT #20000,$FLGS ; WAS THE LAST QUOTE FOUND BNE 10$ ; YES, RETURN JMP INSYNE ; NO SYNTAX ERROR 10$: JMP INSKEY ; /