; SUBROUTINE BCLEAR(A,N) ; ; Set to zero the first N elements of BYTE array A. ; The effect of clearing a LOGICAL array is to set all elements .FALSE.. ; ; SUBROUTINE BSET(A,N,V) ; ; Set the first N entries of BYTE array A to lo byte of V. ; ; MODIFICATIONS RECORD: ; ===================== ; OCT16 EXIT IF NA<=0 ; 26JL84 Add BSET entry. ; Change PSECT to $CODE1. .TITLE BCLEAR .IDENT /26JL84/ .NLIST SYM,TOC .PSECT $CODE1,RW,I,LCL,REL,CON BSET:: MOVB @6(%5),%1 ; Get value V BR CLEARA ; Join common code BCLEAR::CLR %1 ; SET with 0 CLEARA: MOV 2(%5),%0 ; Get address MOV @4(%5),%2 ; Get N BLT EXIT ; Exit if %2=N<=0 CLEARL: MOVB %1,(%0)+ ; SET/CLEAR each byte SOB %2,CLEARL ; %2 of them EXIT: RTS PC ; That's all .END