.TITLE LOGIN - PROCESS INPUT TYPE BUFFER .IDENT /01.00/ .LIST MEB ; ; AUTHOR: H. L. COLEMAN ; MILLIKEN AND COMPANY ; P. O. BOX 1926 ; MAIL STOP M-103 ; SPARTANBURG, S. C. 29304 ; (803)573-2556 ; ; VERSION: 01.00 ; ; DATE: 30-MAR-78 ; ; MODIFICATIONS: ; ; FUNCTION: COPY DATA FROMM INPUT TYPE LOG BUFFER TO THE LOG FILE ; OUTPUT BUFFER. ; ; INPUT: ; ; R1 = A(LOG BUFFER + 3) ; R4 = COUNT REMAINING IN OUTPUT BUFFER ; R5 = A(POSITION IN OUTPUT BUFFER) ; ; OUTPUT: ; ; DATA COPIED TO OUTPUT BUFFER ; .PAGE $LOGIN::MOVB (R1)+,FNBYT ;SAVE TERMINATION CHARACTER MOVB (R1)+,R3 ;R3 = DATA LENGTH BIC #177400,R3 ;CLEAR HIGH BYTE BEQ 1100$ ;IF EQ, NO DATA TO COPY 1000$: MOVB (R1)+,R0 ;R0 = DATA BYTE CALL $LOGPB ;PUT CHATACTER IN OUTPUT BUFFER SOB R3,1000$ ;LOOP UNTIL DONE 1100$: MOVB FNBYT,R0 ;R0 = TERMINATION BYTE TST R0 ;I/O ERROR CODE ? BPL 1200$ ;IF PL, NO - ITS A CHAR MOV #32,R0 ;ASSUME IT WAS A CTRL/Z CMPB FNBYT,#366 ;WAS IT ? BEQ 1200$ ;IF EQ, YES MOV #'?,R0 ;MAKE IT A "?" 1200$: CALL $LOGPB ;PUT TERMINATION BYTE IN OUTPUT BUFFER RETURN ;RETURN TO CALLER .END