\documentclass{minimal} \pagestyle{empty} \usepackage{pstricks} \usepackage{pst-node} \begin{document} \begin{psmatrix}[mnode=oval, colsep=2cm, rowsep=2cm] [mnode=R,name=res]{sys\_res\_n} & [name=idle]{\shortstack{\textbf{idle}\\bs:=0;\\take:=0;\\do\_it:=0;}} & [name=take]{\shortstack{\textbf{\"ubernehmen}\\take:=1;\\char:=$b_0$;}} \\ %% [name=doit]{\shortstack{\textbf{enter}\\do\_it:=1;}} & & [name=mod]{\shortstack{\textbf{mod}\\$b_0$:=data;}} \\ %% & [name=read]{\shortstack{\textbf{read}\\$b_0$:=data;}} & [name=bs]{\shortstack{\textbf{l\"oschen}\\backspace:=1;\\take:=1;}} \\ \end{psmatrix} \psset{arrows=->, shortput=nab} \ncline[linestyle=dotted]{res}{idle} \ncarc[arcangle=25]{idle}{read}\ncput*[npos=.43]{new\_data$\uparrow$} \ncarc[arcangle=25]{read}{idle}\ncput*[npos=.43]{ung\"ultiges byte} \ncarc[arcangle=-25]{read}{bs}\ncput*[npos=.50]{$b_0 = 0x0e$} \ncarc[arcangle=25]{read}{doit}\ncput*[npos=.50]{$b_0 = 0x1c$} \ncarc[arcangle=0]{read}{mod}\ncput*[npos=.40]{$b_0 = 0xe0$} \ncarc[arcangle=-40]{mod}{take}\ncput*[npos=.40]{g\"ultiges zeichen} \ncarc[arcangle=-25]{mod}{idle}\ncput*[npos=.53]{ung\"ultiges byte} \ncarc[arcangle=0]{bs}{idle} \ncarc[arcangle=25]{doit}{idle}\ncput*[npos=.50]{finished\_result$\uparrow$} \ncarc[arcangle=-25]{take}{idle} \end{document}