.TITLE SLPSB .IDENT /10.01A/ ; ; MODIFICATIONS: ; 10.01A -- IN ROUTINE $PADLN...CORRECTLY POINT R0 TO END ; OF LINE (GOVERNED BY $PDLGH) UPON EXITING ; .PSECT .BLK.=. .=.BLK.+260 CALL $PATA ; CALL PATCH A 8$: CMP R1,R2 ; ANY MORE ROOM .=.BLK.+314 BR 8$ ; GO AGAIN .=.BLK.+324 BR 8$ ; GO AGAIN 20$: $LABA: RETURN NOP NOP NOP .PSECT PATCHA $PATA:: MOV $PDLGH,R2 ; GET LENGTH OF MARGIN CMP R1,R2 ; IS LINE POS BEYOND WHAT IS DESIRED? BLE 8$ ; IF LE, NO SO CONTINUE MOV #$LNBUF,R0 ; POINT TO BEGINNING OF BUFFER CLR R1 ; RESET LINE POS TO ZERO 6$: CMPB #11,(R0)+ ; IS CHAR A TAB? BNE 7$ ; IF NE, NO, SO ADJUST LINE POS FOR ; SINGLE CHAR BIS #7,R1 ; ADJUST LINE POS TO JUST BEFORE NEXT ; TAB STOP 7$: INC R1 ; ADJUST LINE POS CMP R1,R2 ; SHOULD WE CONTINUE TO ADJUST LINE ; POS? BNE 6$ ; IF NE, YES TST (SP)+ ; POP RETURN ADDRESS OFF STACK JMP $LABA ; JUMP TO END OF $PADLN ROUTINE 8$: RETURN .END