      subroutine ecrichar(namel,a,l)
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!     - 1er appel  ecrichar(namel,' ',-n)
!       namel : character ou seront stockee toutes les ecritures
!               les unes derriere les autres (doit etre assez long)
!       n : longueur max des lignes ecrites
!     - appels pour chaque allongement 
!       ecrichar(namel,'Chaine_a_ecrire',k). k: nb positif quelconque
!     - dernier appel : ecriture de la fin de la ligne
!       ecrichar(namel,' ',0)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!       
      save ideb,ifin,ii,long
      character(*) a,namel
      logical yw
      yw=.false.
      !print*,'ecrichar len',len(namel)
      if(l<0) then
         ifin=-1
         ii=1
         long=-l
         namel=' '
      else if(l==0) then
         if(yw)print*,'FIN',ii,ifin
         if(len_trim(namel(ii:ifin))/=0) write(6,'(a)') namel(ii:ifin)
      else
         lt=len_trim(a)
         !print*,'ecrichar ideb,ifin,lt,long',ideb,ifin,lt,long,ii
         if(ifin+lt+1>long+ii) then
            if(yw)print*,'ECRI',ii,ifin
            write(6,'(a)') namel(ii:ifin)
            ii=ifin+2
         endif
         ideb=ifin+2
         ifin=ideb+lt-1
         namel(ideb:ifin)=a
      endif
      return
      end
