FUNCTION CPYRTN LOGICAL*1 CPYRTN C C The following programs are used in the RT-11 User and RT-11 C Programmer self paced instruction courses for RT-11 V4.They are also C similar to programs used in the Programming with RT-11 series for C RT-11 V5.0 or later. The name of the files are as specified in the C self paced course. C C The code is supplied as a service as Digital does not supply these C on diskette. C Any copyright is the property of Digital Equipment Corporartion C C C FILE SBCOPY.FOR C C SINGLE-BUFFERED, SYNCHRONOUS COPY ROUTINE C C FUNCTION RETURNS .TRUE. IF AN ERROR IS ENCOUNTERED, C RETURNS .FALSE. OTHERWISE. C C INTEGER INCHN,OUTCHN COMMON /CHNNLS/INCHN,OUTCHN C INTEGER BUFFER(256) INTEGER BLOCK C C BLOCK = 0 !BLOCK NUMBER IN FILE C C READ/WRITE LOOP. BEGIN BY READING INTO INPUT BUFFER. 20 IERR = IREADW(256,BUFFER,BLOCK,INCHN) IF (IERR.GE.0) GO TO 30 !READ SUCCESSFUL IF (IERR.EQ.(-1)) GO TO 150 !END OF FILE IS NOT SERIOUS GO TO 100 !OTHER ERROR ON READ C WRITE OUT BUFFER JUST READ IN 30 IF (IWRITW(256,BUFFER,BLOCK,OUTCHN).LT.0) 1 GO TO 101 !WRITE ERROR BLOCK = BLOCK+1 !ADVANCE TO NEXT BLOCK GO TO 20 C C ERROR ROUTINES C 100 CALL PRINT('READ ERROR, COPY ABORTED') GO TO 140 101 CALL PRINT('WRITE ERROR, COPY ABORTED') 140 CPYRTN = .TRUE. RETURN C SUCCESSFUL RETURN 150 CPYRTN = .FALSE. RETURN END