.NLIST TOC ;NO TABLE OF CONTENTS .TITLE IRNSC .SBTTL NUMBER OF SIGNIFICANT CHARACTERS ; ; FUNCTION IRNSC (IVEC, IS, NCH) ; IVEC = INTEGER*2 VECTOR OF ASCII CHARS ; IS = START POS IN IVEC ; NCH = NUMBER OF CHARS TO SEARCH ; BLANK: .ASCII / / .EVEN ; IRNSC:: MOV (R5)+,R1 ;NUMBER OF ARGS(UPDATE R5 PAST) MOV (R5)+,R1 ;ADDR OF IVEC ADD @(R5)+,R1 ;START CHAR IN IVEC DEC R1 ;+1 OFFSET MOV @(R5)+,R0 ;GET NCH ADD R0,R1 ;POSITION OF LAST CHAR TO BACKSCAN ; ; BEGIN LOOP TO BACKSCAN TILL NON-BLANK CHAR FOUND ; LOOP: CMPB -(R1),BLANK ;CHECK IF BLANK BNE DONE SOB R0,LOOP ;DECREMENT NCH, R0 RETURNS FUNCTION RESULT ; DONE: RTS PC ;RETURN TO CALLER .END