C
C This file is issued from the MODULEF library, but has been 
C subsequently modified
C
      INTEGER FUNCTION IINFO(MOTCLE)
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C BUT :
C     RETOURNER UNE INFORMATION DE TYPE INTEGER
C     *** VERSION APOLLO ***
C
C PARAMETRE D'ENTREE :
C     MOTCLE  : NATURE DE L'INFORMATION A RETOURNER, EN CLAIR
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C PROGRAMMEUR : PATRICK LAUG, INRIA
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      CHARACTER*(*) MOTCLE
      COMMON /TRAVA1/ PADTR1(29),IMPRE,PADTR2(3)
      COMMON /UNITES/ LECTEU,IMPRIM,INTERA,NFNEWS,NFSAUV
C
C 1. PARTIE PORTABLE
C ------------------
C
C NUMERO D'UNITE DE L'IMPRIMANTE
C CE TEST EST PLACE EN TETE CAR IL EST LE PLUS FREQUEMMENT VRAI
      IF (MOTCLE .EQ. 'I' .OR. MOTCLE .EQ. 'IMPRIMANTE') THEN
         IINFO = IMPRIM
C
C NUMERO D'UNITE DU LECTEUR
      ELSE IF (MOTCLE .EQ. 'L' .OR. MOTCLE .EQ. 'LECTEUR') THEN
         IINFO = LECTEU
C
C INTERACTIVITE
      ELSE IF (MOTCLE .EQ. 'INTERACTIVITE') THEN
         IINFO = INTERA
C
C NOUVELLES
      ELSE IF (MOTCLE .EQ. 'NOUVELLES') THEN
         IINFO = NFNEWS
C
C SAUVEGARDE
      ELSE IF (MOTCLE .EQ. 'SAUVEGARDE') THEN
         IINFO = NFSAUV
C
C BAVARDAGE
      ELSE IF (MOTCLE .EQ. 'BAVARD') THEN
         IINFO = IMPRE
C
C LANGUE : 0 => FRANCAIS, 1=> ENGLISH
      ELSE IF (MOTCLE .EQ. 'LANGUE') THEN
         IINFO = 0
C
C 2. PARTIE NON PORTABLE
C ----------------------
C
C NUMERO D'UNITE DU LECTEUR INITIAL
      ELSE IF (MOTCLE .EQ. 'LECTEUR INITIAL') THEN
         IINFO = 5
C
C NUMERO D'UNITE DE L'IMPRIMANTE INITIALE
      ELSE IF (MOTCLE .EQ. 'IMPRIMANTE INITIALE') THEN
         IINFO = 6
C
C TYPE DES REELS DOUBLE PRECISION : EN GENERAL 5
C                                     SUR CRAY 2
      ELSE IF (MOTCLE .EQ. 'REEL2') THEN
         IINFO = 5
C
C DANS UN ORDRE OPEN POUR DES ENTREES/SORTIES NON FORMATTEES,
C LE MOT-CLE RECL DEFINIT UNE LONGUEUR MESUREE EN UNE UNITE
C QUI DEPEND DU PROCESSEUR (NORME FORTRAN 77, P. 12-20, L. 1 A 16).
C ON RETOURNE ICI LA TAILLE D'UN MOT-MACHINE EXPRIMEE DANS CETTE UNITE.
C SUR MULTICS, L'UNITE EST LE CARACTERE ET 1 MOT = 4 CARACTERES
      ELSE IF (MOTCLE .EQ. 'RECL' .OR. MOTCLE .EQ. 'UNITE RECL') THEN
         IINFO = 4
C
C INTERACTIVITE INITIALE : 0 BATCH,
C                          1 INTERACTIF ALPHANUMERIQUE,
C                          2 INTERACTIF GRAPHIQUE.
C SI CETTE VALEUR EST DIFFICILE A OBTENIR SUR LA MACHINE HOTE,
C METTRE DE PREFERENCE IINFO=2 (ET NON IINFO=0).
      ELSE IF (MOTCLE .EQ. 'INTERACTIVITE INITIALE') THEN
         IINFO = 2
C
C PLUS GRAND ENTIER
      ELSE IF (MOTCLE .EQ. 'GRAND') THEN
         IINFO = 2147483647
C
C ERREUR
      ELSE
         WRITE (IMPRIM,1000)  MOTCLE
         IINFO = 0
      END IF 
C
C1000 FORMAT('IINFO : KEYWORD UNKNOWN : ',A72)                          #GB
 1000 FORMAT('IINFO : MOT-CLE INCONNU : ',A72)                          #F
C
      END
