\documentclass{article}
\usepackage{gastex}
\begin{document}
% Peterson automaton
\begin{center}
\begin{picture}(85,33)(-20,-28)
\put(-20,-28){\framebox(85,33){}}
\gasset{Nadjust=w,Nadjustdist=2,Nh=6,Nmr=1}
\node[Nmarks=i](A)(0,0){idle}
\node(B)(50,0){wait}
\node(C)(50,-20){wait}
\node[Nmarks=r](D)(0,-20){critical}
\drawedge(A,B){req1:=true}
\drawedge(B,C){turn:=2}
\drawedge[syo=-1,eyo=-1](C,D){turn=1?}
\drawedge[syo=1,eyo=1,ELside=r](C,D){req2=false?}
\drawedge(D,A){req1:=false}
\end{picture}
\end{center}
\end{document}