* * $Id: ioredn16.F,v 1.1.1.1 1996/03/08 15:21:58 mclareni Exp $ * * $Log: ioredn16.F,v $ * Revision 1.1.1.1 1996/03/08 15:21:58 mclareni * Epio * * #include "epio/pilot.h" #if defined(CERNLIB_ND100B16) SUBROUTINE IOREAD(LUNIT,IARR,NBYTE,IRET) C **************************************** C-- 82-04-19 MODIFY JOP C-- GENERALISE TO MT+DISK: REPLACE MAGTPZ BY MAGTP C READ RECORD FROM FILE C LUNIT = LOGICAL DEVICE NUMBER C IARR = BUFFER ARRAY C NBYTE : ON INPUT, MAX. NO OF BYTES TO READ (ALWAYS EVEN !!) C ON RETURN: NO. OF BYTES ACTUALLY READ C IRET = RETURN STATUS INTEGER*2 LUNIT,IARR(2),NBYTE,IRET,ZERO INTEGER*4 NOBYT DATA ZERO/0/ C-- NO.BYTES / MACHINE WORD NBW=2 C-- MAX NO OF WORDS TO READ NWMAX=NBYTE/NBW MFUNC=0B C-- IERR = FILE SYSTEM ERROR = ERRCODE IERR=MAGTP(MFUNC,IARR,LUNIT,NWMAX,NWRD) C-- ' NO SUCH PAGE' = EOF 82/06/04 JOP IF(IERR.EQ.18)IERR=3 NBYTE=NBW*NWRD IRET=IERR IF(IRET.EQ.ZERO) GOTO 77777 IRET=IORCNV(IRET) 77777 RETURN END #endif