      subroutine csu3_start(a1su3,a2su3,n18,nmat,nd,nsc,istart)
C Bernd Berg Mar  2008. Start for checkerboard U1 simulation.
c istart=0 -- all phases are zero -> "matrices" on links =1
c istart=1 -- all phases are PI/2 -> "matrices" on links =i
c istart=2 -- all phases are chosen randomly
      include '../../Libs/Fortran/implicit.sta'
      include '../../Libs/Fortran/constants.par'
      dimension a1su3(n18,nmat,nd),a2su3(n18,nmat,nd)
      ltest=.true.
      ltest=.false.
      if(ltest) print*,"csu3_start: istart =",istart
      if(ltest) stop "cvsu3_start: ltest."
C
      if(istart.eq.1) then    ! Ordered start 1.
        do is=1,nsc
          do id=1,nd
            call su3init1(a1su3(1,is,id))
            call su3init1(a2su3(1,is,id))
          enddo
        enddo
      elseif(istart.eq.2) then ! Disordered start.
        do is=1,nsc
          do id=1,nd
            do isu3=1,n18
              a1su3(isu3,is,id)=two*rmafun()-one
              a2su3(isu3,is,id)=two*rmafun()-one
            enddo
            call su3reunit(a1su3(1,is,id))
            call su3reunit(a2su3(1,is,id))
          enddo
        enddo
      else
        print*,"csu3_start: istart =",istart," not allowed."
        stop "csu3_start: error."
      endif
C
      return
      end