C Copyright (c) 1980 The Regents of the University of California.
C %sccs.include.proprietary.f%
C @(#)taptst.f 5.2 (Berkeley) %G%
C Test the tape I/O routines
C ierr = topen (tlu, name, labelled)
C nbytes = tread (tlu, buffer)
C nbytes = twrite (tlu, buffer)
C ierr = tskipf (tlu, nfiles, nrecs)
C ierr = tstate (tlu, fileno, recno, err, eof, eot, tcsr)
integer topen, tclose, twrite, trewin, tskipf, tstate
logical labled, errf, eoff, eotf
integer tlu, file, rec, tcsr
if (outbuf(:5) .eq. '/dev/') devnam = outbuf
if (outbuf(:3) .eq. 'lab') labled = .true.
devnam = '/dev/rnmt0.1600'
write(*,*) 'tstate before open ...'
ierr = tstate(tlu, file, rec, errf, eoff, eotf, tcsr)
write(*,*) 'tstate: file', file, 'rec', rec,
+ 'err', errf, 'eof', eoff, 'eot', eotf
write(*,'("tcsr: ", 8ri6.6)') tcsr
write(*,*) '\ntopen', devnam, ' labelled =', labled
ierr = topen(tlu, devnam, labled)
write(*,*) '\ntwrite 4 records of 256 bytes each ...'
outbuf(j:j) = char(i + 16)
ierr = twrite(tlu, outbuf)
write(*,*) '\nrewinding ...'
ierr = topen(tlu, devnam, labled)
write(*,*) '\ntread and dump ...'
write(*,*) '\nrewinding ...'
ierr = topen(tlu, devnam, labled)
write(*,*) '\ntskip 2 records ...'
write(*,*) '\ntread & dump ...'
write(*,*) '\ntrewind and tskip to EOT ...'
ierr = tskipf(tlu, 100, 0)
write(*,*) '\ntwrite 4 more records of 256 bytes each ...'
outbuf(j:j) = char(i + 32)
ierr = twrite(tlu, outbuf)
write(*,*) '\ntrewind and tskip to 1 file & 3 records ...'
write(*,*) '\ntread & dump ...'
write(*,*) '\ntstate ...'
ierr = tstate(tlu, file, rec, errf, eoff, eotf, tcsr)
write(*,*) 'tstate: file', file, 'rec', rec,
+ 'err', errf, 'eof', eoff, 'eot', eotf
write(*,'("tcsr: ", 8ri6.6)') tcsr
write(*,*) '\ntclose ...'
write(*,*) '\ntstate after tclose ...'
ierr = tstate(tlu, file, rec, errf, eoff, eotf, tcsr)
write(*,*) 'tstate: file', file, 'rec', rec,
+ 'err', errf, 'eof', eoff, 'eot', eotf
write(*,'("tcsr: ", 8ri6.6)') tcsr
C 100 nb = tread(tlu, buffer(:70))
100 nb = tread(tlu, buffer)
ierr = tstate(tlu, file, rec, errf, eoff, eotf, tcsr)
write(*,*) 'scanf: file', file+1, 'record', rec,
ival = and(ichar(buffer(j:j)), 255)
write(*, '(su, 16r, i4.2, $)') ival