*
* $Id$
*
* $Log$
* Revision 1.1  1996/04/01 15:03:21  mclareni
* Initial revision
*
*
#include "sys/CERNLIB_machine.h"
#include "_gen/pilot.h"
      SUBROUTINE XDISMES(LFN,RC,ROUTINE)
*
***** ROUTINE APPELEE PAR XROUTE OU REQQ LORSQUE IL Y A ERREUR
*     ET QUE L APPEL DE CES ROUTINES S EST FAIT SANS ARGUMENT
*     DE CODE DE RETOUR
*
***** SOUS-PROGRAMME UTILISE PAR ' ROUTINE ' LORS D UNE ERREUR D ACTION
*     SUR LE FICHIER LFN ET LORSQUE AUCUN ARGUMENT DE CODE DE RETOUR
*     NE FIGURE DANS L APPEL DE ' ROUTINE '
*     LE MESSAGE * ERROR ROUTINE NO XXB ON LFN LFN * EST ENVOYE
*     SUR LA DAYFILE ET LE JOB EST AVORTE
*
      IMPLICIT INTEGER(A-Z)
      DIMENSION MESSAGE(8)
#if !defined(CERNLIB_F4)
      DATA MESSAGE(1) /O"55554747474747474755"/
      DATA MESSAGE(2) /O"05222217225500000000"/
      DATA MESSAGE(3) /O"00000055161755545500"/
      DATA MESSAGE(4) /O"00025547474747474747"/
      DATA MESSAGE(5) /O"55555555474747474755"/
      DATA MESSAGE(6) /O"55555517165514061655"/
      DATA MESSAGE(7) /O"54550000000000000055"/
      DATA MESSAGE(8) /O"55555547474747475555"/
      IMASK=.NOT.MASK(57)
      ZON1=SHIFT(((RC.AND.IMASK)+O"33"),54)
#endif
#if defined(CERNLIB_F4)
      DATA MESSAGE(1) /55554747474747474755B/
      DATA MESSAGE(2) /05222217225500000000B/
      DATA MESSAGE(3) /00000055161755545500B/
      DATA MESSAGE(4) /00025547474747474747B/
      DATA MESSAGE(5) /55555555474747474755B/
      DATA MESSAGE(6) /55555517165514061655B/
      DATA MESSAGE(7) /54550000000000000055B/
      DATA MESSAGE(8) /55555547474747475555B/
      IMASK=.NOT.MASK(57)
      ZON1=SHIFT(((RC.AND.IMASK)+33B),54)
#endif
      IMASK=SHIFT(IMASK,3)
      ZON2=SHIFT((RC.AND.IMASK),57)
      IF(ZON2.NE.0) GO TO 5
#if !defined(CERNLIB_F4)
      ZON2=O"55"
      GO TO 6
5     ZON2=ZON2+O"33"
#endif
#if defined(CERNLIB_F4)
      ZON2=55B
      GO TO 6
5     ZON2=ZON2+33B
#endif
6     CALL PFNBB(LFN,LFN)
      CALL PFNBB(ROUTINE,ROUTINE)
      MESSAGE(2)=MESSAGE(2).OR.SHIFT((ROUTINE.AND.MASK(24)),24)
      MESSAGE(3)=MESSAGE(3).OR.(SHIFT(ROUTINE,24).AND.MASK(18)).OR.ZON2
      MESSAGE(4)=MESSAGE(4).OR.ZON1
      MESSAGE(7)=MESSAGE(7).OR.SHIFT((LFN.AND.MASK(42)),48)
      CALL REMARK(MESSAGE)
      CALL SYSTEM(52," ABORT ")
      RETURN
      END
