Not perfect, but usable. How can I change the speed? It is easy. Just edit the source code and re-compile.
parameter DOT_PERIOD = 5000000;
A sidetone oscillator is included.
assign OUT_SOUND = ( OUT_KEY && (sound > SOUND_PERIOD/2) )? 1'b1 : 1'b0;