Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
\documentclass{book}
\begin{document}

\newbox\dynxboxn
\setbox\dynxboxn=\hbox to 0pt{\hskip-3.8333pt\lower2.5pt\hbox{$\otimes$}}
    \ht\dynxboxn=0pt
    \dp\dynxboxn=0pt
\def\dynx{\copy\dynxboxn}
%
\newbox\dynoboxn
\setbox\dynoboxn=\hbox to 0pt{%
  \begin{picture}(0,0)
  \put(0,0){\circle{6}}
  \end{picture}}
\ht\dynoboxn=0pt
\dp\dynoboxn=0pt
\def\dyno{\copy\dynoboxn}
%
% Note: in \dyno I don't know the diameter {6} is a real 6 or if the
% picture mode doesn't have that diameter and reinterprets it as the value
% that gives me the right size...
%
% About the arguments of \line(Dx,Dy){length}: see Kopka/Daly, pp.155-156.
% Dx and Dy must be integers between -4 and 4, with no common divisor.
% "length" is the real length for vertical lines, the projection of the
% length on the horizontal axis for all others.

%*
% # (find-angg ".emacs" "dynkin-diags")
% # (eedynkin-bounded 'once)
% origin 0 0
% dynnode X0 X 0 0  dots ... 15 0   X1 X 30 0
% dyntext b1 {$b_1$} 0 5     bs {$b_s$} 30 5
% dynline X0 dots X1
%*

\begin{picture}(70,30)
\input tmpdynkin.tex
\end{picture}

% Demos:

\indent\raise25pt\hbox{
\begin{picture}(30,50)
\put(0,0){\vector(1,2){10}} \put(10,20){\dyno}
\put(0,0){\vector(2,1){20}} \put(20,10){\dynx}
\put(0,0){\vector(2,-1){20}} \put(20,-10){x}
\put(0,0){\vector(1,-2){10}} \put(10,-20){\makebox(0,0){x}}
\end{picture}
}

\begin{picture}(70,30)
\put(0, 20){\dyno} \put(3,20){\line(1,0){14}} \put(20,20){\dyno}
\put(0, 17){\line(0,-1){14}}
\put(0,  0){\dyno}                            \put(20, 0){\dyno}
  \put(2.5,17.5){\line(1,-1){15}}  % "\"
  \put(2.5,2.5){\line(1,1){15}}  % "/"
\end{picture}

\begin{picture}(70,30)
\put(0, 20){\dynx} \put(3,20){\line(1,0){14}} \put(20,20){\dynx}
\put(0, 17){\line(0,-1){14}}
\put(0,  0){\dynx}                            \put(20, 0){\dynx}
  \put(2.5,17.5){\line(1,-1){15}}  % "\"
  \put(2.5,2.5){\line(1,1){15}}  % "/"
\end{picture}

\begin{picture}(70,30)
\put(0, 20){\dyno} \put(3,20){\line(1,0){14}} \put(20,20){\dynx}
\put(0, 17){\line(0,-1){14}}
\put(0,  0){\dynx}                            \put(20, 0){\dynx}
  \put(2.5,17.5){\line(1,-1){15}}  % "\"
\end{picture}

\begin{picture}(70,30)
\put(0, 20){\dynx} \put(3,20){\line(1,0){14}} \put(20,20){\dyno}
\put(0, 17){\line(0,-1){14}}
\put(0,  0){\dyno}                            \put(20, 0){\dyno}
  \put(2.5,17.5){\line(1,-1){15}}  % "\"
\end{picture}

\begin{picture}(70,30)
\put(20, 20){\dyno} \put(40,20){\dynx}
\put(0,  0){\dynx}  \put(20, 0){\dyno}
  \put( 2.5,2.5){\line(1,1){15}}   % "/"
  \put(22.5,2.5){\line(1,1){15}}   % "/"
\end{picture}

\end{document}