HELLO.MAC;2=HELLO.OLD;1/AU:72/-BF \ -2,2 .IDENT /1.24N/ -95 ; ; JGD10 THE MATCHALL LEVEL IDENTIFIER IS ADDED. ; IF A '#' IS IN COLUMN 1 OF THE HELP FILE, ALL KEYWORD PHRASES ; ARE RETURNED AS A MATCH. THIS FACILITATES USING THE LAST ; HELP RECORD IN A SPECIALIZED HELP FILE , AS AN INDEX TO ; REMIND THE USER AS TO WHAT KEYWORDS ARE AVAILABLE. ; ; NAPC REMOVE ALL HELLO SUPPORT IF NON-MULTI-USER SYSTEM ; ALLOW EMBEDDED CARRIAGE CONTROL (FROM RUNOFF) % -115,,/;NAPC/ .IF DF M$$MUP .IFF .NLIST CND .IFT -140,140,/;NAPC/ .IFTF MS1: .ASCII % % .IFT .ASCII % RSX-11M BL% -149,,/;NAPC/ .IFTF -185,,/;NAPC/ .IFT -187,,/;NAPC/ .IFTF -188,,/;NAPC/ .IFT -191,,/;NAPC/ .IFTF -196,,/;NAPC/ .IFT -197,,/;NAPC/ .IFTF -208,,/;NAPC/ .IFT -214,,/;NAPC/ .IFTF -217,,/;NAPC/ .IFT -233,,/;NAPC/ .IFTF -240,,/;NAPC/ .IFT -248,,/;NAPC/ .IFTF -254,,/;NAPC/ .IFT -270,,/;NAPC/ .IFTF -271,,/;NAPC/ .IFT -284,,/;NAPC/ .IFTF -286,,/;NAPC/ .IFT -287,,/;NAPC/ .IFTF -288,,/;NAPC/ .IFT -292,,/;NAPC/ .IFTF -296,,/;NAPC/ .IFT -302,,/;NAPC/ .IFTF -,,/;JGD10/ MTCHAL: .WORD 0 ;IF =1, MATCHES ALL KEYWORDS,ALL LEVELS ENDFLG: .WORD 0 ;IF =0 MAKE ONE VALIENT TRY TO FIND MTCHAL ;SEARCHING TO END OF FILE, =1, PRINT UNKNOWN ;QUALIFIER MESSAGE(NO MTCHAL AT END OF FILE) -314,,/;NAPC/ .IFT -320,,/;NAPC/ .IFTF -326,,/;NAPC/ .IFT -332,,/;NAPC/ .IFTF -336,336,/;NAPC/ RATBUF: .BLKB 14. .IFT .BLKB 21. -339,,/;NAPC/ .IFTF -389,,/;NAPC/ .IFT -425,,/;NAPC/ .IFF MOV #BUF+3,R4 ;POINT AT SPACE AFTER "HEL" CMPB #'P,(R4) ;SKIP "P" IF "HELP" WAS ENTERED BNE 4025$ INC R4 4025$: MOV #HLPDSP,R1 .IFTF -427,,/;NAPC/ .IFT -878,,/;NAPC/ .IFTF -881,,/;NAPC/ .IFT -890,,/;NAPC/ .IFTF -892,,/;NAPC/ .IFT -896,,/;NAPC/ .IFTF -908,,/;NAPC/ .IFT -917,,/;NAPC/ .IFTF -939,,/;NAPC/ .IFT -1096,,/;NAPC/ .IFTF -1119,,/;NAPC/ .IFT -1454,,/;NAPC/ .IFTF -1626,,/;NAPC/ MOVB #40,ODPB+Q.IOPL+4 ;RESET CARR. CONT. -1647,1647,/;JGD10/ BCC 45$ ;MAYBE, LET'S COMPARE STRINGS TST ENDFLG ;ONLY LOOK FOR MTCHAL ONE TIME BGT 90$ ;WE'VE BEEN THIS WAY BEFORE, TELL USER NO MATCH INC ENDFLG ;IF EQ 0 WE'LL TRY JUST ONCE TO FIND MTCHAL MOV #10.,DEPTH ;ABSOLUTELY NOT, SO CHECK IF MTCHAL AT END BR 40$ ;GO GET NEXT RECORD, SEE IF FIND MTCHAL 45$: ;REF LABEL -1667,1667,/;JGD10/ BCS 55$ ;NO, KEYWORD IS NOT AMBIGUOUS TST MTCHAL ;IS IT AMBIGUOUS BUT NOT MTCHAL? BEQ 100$ ;IF EQ 0, JUST AMBIGUOUS 55$: ;REF LABEL -1705,1705,/;NAPC/ -1720,1720,/;NAPC/ BCC 20$ ; IF EVERYTHING WENT OKAY, SEE IF -1758,,/;JGD10/ TST MTCHAL ;IS IT THE ULTIMATE MATCH? BGT 20$ ;IF GT 0, YES -1796,1796,/;JGD10/ COMPAR: ;REF LABEL TST MTCHAL ;IS IT THE ULTIMATE MATCH? BEQ 25$ ;IF EQ 0, NO, CONTINUE INC INDFLG ;ASSUME INDIRECT FILE BR 70$ ;AND EXIT 25$: MOV R4,-(SP) ;SAVE R4 -1828,1829,/;JGD10/ 70$: RETURN ; -1943,1943,/;JGD10/ ISREC: ;REF LABEL CMPB (R0),#'# ;IS IT A MTCHAL BNE 10$ ;IF NE, NO INC MTCHAL ;SHOW A MATCH BR 20$ ;AND EXIT 10$: ;REF LABEL CMPB (R0),#'1 ;IS THE FIRST CHARACTER A DIGIT? -1971,1971,/;NAPC/ BNE 7$ ;YES JMP 90$ ;NO, RETURN WITH C=0 7$: -2033,,/;NAPC/ MOVB #40,ODPB+Q.IOPL+4 ;LF/CR CARR. CONT. BITB #FD.CR,F.RATT(R0) ;SHOULD WE USE IT? BNE 85$ ;IF NE, YES CLRB ODPB+Q.IOPL+4 ;NO, USE EMBEDDED CARR. CONT. 85$: CLR MTCHAL ;RESET MTCHAL -2120,,/;NAPC/ .IFT -2257,,/;NAPC/ .ENDC /