/* acinit.f -- translated by f2c (version 19950602).
   You must link the resulting object file with the libraries:
	-lf2c -lm   (in that order)
*/

#include "Data_f2c.h"

/* Common Block Declarations */

struct {
    integer lec, imp, keyb, mae, jscrn, itblt, ibb;
} mblank__;

#define mblank__1 mblank__

/* Table of constant values */

static integer c____1 = 1;

/* Subroutine */ int macinit_(imode, ival)
integer *imode ; 
integer *ival ;
{
    /* Builtin functions */
    integer s__wsfe(cilist *), do__fio(integer *, char *, ftnlen), e__wsfe(void);

    /* Fortran I/O blocks */
    static cilist io______1 = { 0, 0, 0, "(' --- Debug-mode : ',I10,' ---')", 0 }
	    ;



/* < */
/* **NOTICE */
/*  THIS SOFTWARE IS THE PROPERTY OF CISIGRAPH. */
/*  THIS CODE MUST NOT BE DISTRIBUTED OR COPIED WITHOUT THE PRIOR */
/*  WRITTEN PERMISSION OF CISIGRAPH AND IS ONLY TO BE USED ON THE */
/*  SITE WHERE IT IS INSTALLED BY CISIGRAPH */
/* **NOTICE */

/* ***********************************************************************
 */

/*     FONCTION : */
/*     ---------- */
/*   INITIALISATION DES UNITES DE LECTURE-ECRITURE, ET DE 'IBB' */

/*     MOTS CLES : */
/*     ----------- */
/*   GESTION, CONFIGURATION, UNITES, INITIALISATION */

/*     ARGUMENTS D'ENTREE : */
/*     -------------------- */
/*        IMODE : MODE D'INIT : 0= DEFAUT, IMP VAUDRA 6 ET IBB 0 */
/*                                ET LEC 5 */
/*                              1= FORCE LA VALEUR DE IMP */
/*                              2= FORCE LA VALEUR DE IBB */
/*                              3= FORCE LA VALEUR DE LEC */

/*    ARGUMENT UTILISE QUE LORSQUE IMODE VAUT 1 OU 2 : */
/*       IVAL : VALEUR DE IMP LORSQUE IMODE VAUT 1 */
/*              VALEUR DE IBB LORSQUE IMODE VAUT 2 */
/*              VALEUR DE LEC LORSQUE IMODE VAUT 3 */
/*    IL N'Y A PAS DE CONTROLE SUR LA VALIDITE DE LA VALEUR DE IVAL . */

/*     ARGUMENTS DE SORTIE : */
/*     --------------------- */
/*                NEANT */

/*     COMMONS UTILISES : */
/*     ------------------ */
/*     REFERENCES APPELEES : */
/*     --------------------- */
/*     DESCRIPTION/REMARQUES/LIMITATIONS : */
/*     ----------------------------------- */

/*     IL NE S'AGIT QUE D'INITIALISER LE COMMON BLANK POUR TOUS LES */
/*     MODULES QUI N'ONT A PRIORI PAS BESOIN DE CONNAITRE LES COMMONS */
/*     DE T . */
/*     LORSQU'UNE MODIFICATION DE IBB EST DEMANDEE (IMODE=2) UN MESSAGE */
/*     D'INFORMATION EST EMIS SUR IMP, AVEC LA NOUVELLE VALEUR DE IBB. */

/*       IBB : MODE DEBUG DE STRIM T : REGLES D'UTILISATION : */
/*             0 VERSION SOBRE */
/*             >0 LA VERSION A D'AUTANT PLUS DE COMMENTAIRES */
/*                QUE IBB EST GRAND . */
/*                PAR EXEMPLE AVEC IBB=1 LES ROUTINES APPELEES */
/*                SE SIGNALENT SUR IMP ('ENTREE DANS TOTO', */
/*                ET 'SORTIE DE TOTO'), ET LES ROUTINES RENVOYANT */
/*                UN CODE ERREUR NON NUL LE SIGNALENT EGALEMENT. */
/*            (MAIS CECI N'EST PAS VRAI POUR TOUTES LES ROUTINES DE T) */

/* $    HISTORIQUE DES MODIFICATIONS : */
/*     ------------------------------ */
/*         22-12-89 : DGZ; MODIFICATION EN-TETE */
/*         30-05-88 : PP ; AJOUT DE LEC */
/*         15-03-88 : PP ; ECRITURE VERSION ORIGINALE */
/* > */
/* ***********************************************************************
 */


/* ----------------------------------------------------------------------*
 */

    if (*imode == 0) {
	mblank__1.imp = 6;
	mblank__1.ibb = 0;
	mblank__1.lec = 5;
    } else if (*imode == 1) {
	mblank__1.imp = *ival;
    } else if (*imode == 2) {
	mblank__1.ibb = *ival;
	io______1.ciunit = mblank__1.imp;
	s__wsfe(&io______1);
	do__fio(&c____1, (char *)&mblank__1.ibb, (ftnlen)sizeof(integer));
	e__wsfe();
    } else if (*imode == 3) {
	mblank__1.lec = *ival;
    }

/* ----------------------------------------------------------------------*
 */

    return 0;
} /* macinit__ */

