.TITLE PNBUFI ; JEFFREY KODOSKY ARL NOV75 ; ; UTILITY: INSERT CHARACTER IN PNAME BUFFER ; ENTRY: R3:= ASCII CHARACTER ; EXIT: R3 UNCHANGED UNLESS R3 WAS NULL ON ENTRY ; IN WHICH CASE INTERNAL POINTER IS RESET ; AND BUFFER ADDRESS IS RETURNED IN R3 ; ERRORS: R6, PNAME BUFFER OVERFLOW (STRING TOO LONG) ; CALLS: NONE ; R2 PRESERVED .GLOBL PNBUFI,PNBUF,PNBUFL,QR6ERR PNBUFI: MOV CNTR,R0 ;INSERT CHARACTER ADD #PNBUF,R0 MOVB R3,@R0 BEQ PNB02 ;JUMP IF ZERO ENTERED INC CNTR ;BUMP POINTER CMP CNTR,#PNBUFL-1 BLT PNB03 QR6ERR PNB02: MOV #PNBUF,R3 ;RETURN BUFFER ADDRESS CLR CNTR ;RESET POINTER PNB03: JMP @-(R4) CNTR: .WORD 0 .END