A CPM Morse Code Tutor Program

seperator bar

seperator bar

Project Description

This CPM program generates several formats of morse code suitable for learning to copy morse code. The first method was copied from the teach.asm program found on various cpm software archives. It starts with a few characters and operates like a typing tutor. It sends a character and you have to enter it on a keyboard. As you get better at recognizing characters it adds more characters to the dictionary.

The second form sends random 5 letter code groups... this is hard core, but the characters are spaced out with a double character space.

The third form sends random words from a list of 500 common english words. I use this to try and teach myself to copy code in my head.

The code as written sends characters at 25WPM. This is quite fast, but you really do need to teach your brain to hear the "sound" of a character, not focus on the dots and dashes. The speed can be changed in the source code, but you may run into some software timing loop issues depending on the speed you select and your processor speed. The code was set up and tested on a 4MHz Z80.

System Requirements

A CPM Z80 system with an 8080 or Z80 processor.
The code is written in 8080 assembler.
Some form of speaker or piezo element to hook up to an I/O bit (I used the serial port RTS line). You can customize the bit used by editing the source code (see code around line 509 and 523). The line is toggled at a 1KHz rate when sending CW characters.

Source Code

Source Code - CWTUTOR.ASM(73Kb)
seperator bar