Updated April 16, 2012
EPROMs other than the 2732 can be used if suitable changes are made to the address lines in the circuit. For larger EPROMs, just ground the higher order address input lines on the EPROM chip, and wire the appropriate chip select pins for outputs enabled and chip selected.
It is also possible to store more than one message in different banks of a larger EPROM, for instance, if a 2764 part were used, the A12 address line could be used to select the upper or lower message.
Note that the photo above shows a slightly different implementation of the circuit. A 5V power supply and a 555 timer sidetone oscillator have been added, the keyer relay has been removed and the EPROM is a 2716 type.
The clock oscilator causes U2, a binary counter, to step through some of an 11 bit binary count. This sequence is used to step through the addresses on EPROM U3. Morse code data is stored in the EPROM d0 bit, it is used to turn on and off Q1 and RL1, the keying relay. At the end of a one-shot message, a single 1 bit arrives on U3 pin d1, causing the run/stop flip-flop to turn off, and resetting the U2 counter to zero. D1, C2 and R4 cause U2 to reset when the power is applied. R5 is used to prevent the U3 d1 line from being shorted to +5v when the stop switch is pressed.
The C source code and Unix Makefile are in the file cw2hex.tar.bz2. A DOS executable version of the code is available as cw2hex.exe. It should be possible to compile cw2hex.c on any machine with a C compiler. The C program source files are available if you want to compile the code yourself.
cw2hex1.2.1.tar.bz2 cw2hex source files for building under Unix/Linux
cw2hex.exe DOS binary of cw2hex
My Smooth Tone Clickless CW Sidetone Generator circuit can be used with this circuit, just connect the collector of Q1 to pin 2 of the sidetone generator's 4N35 opto-isolator LED cathode.