summaryrefslogtreecommitdiff
path: root/cwsnd.1
diff options
context:
space:
mode:
Diffstat (limited to 'cwsnd.1')
-rw-r--r--cwsnd.1144
1 files changed, 144 insertions, 0 deletions
diff --git a/cwsnd.1 b/cwsnd.1
new file mode 100644
index 0000000..5258931
--- /dev/null
+++ b/cwsnd.1
@@ -0,0 +1,144 @@
+.Dd CWSND 1
+.Os
+.Sh NAME
+.Nm cwsnd
+.Nd cw sounder
+.Sh SYNOPSIS
+.Nm cwsnd
+.Op Fl h
+.Op Fl E
+.Op Fl P
+.Op Fl f Ar effwpm
+.Op Fl s Ar suffix
+.Op Fl t Ar tonefrq
+.Op Fl w Ar wpm
+.Op Ar file
+.Sh DESCRIPTION
+.Nm
+is a CW/Morse code sounder written for OpenBSD using the sndio API.
+The primary use case for this program is for CW ham study purposes,
+although it can be used for computer keying with suitable hardware,
+similar to FLDigi Tx using sound card audio output.
+.Pp
+Input is taken from the standard input by default, unless specified
+in the
+.Ar file
+argument.
+Prosigns are prefixed with the dollar sign ($), for example $AR, $SK.
+.Pp
+The input is translated into code, and then into sinusoidal
+audio-frequency tones outputted by the sound card,
+which can be used as-is for ear training,
+or further modulated by external hardware for transmission.
+The output device can be selected with the
+.Ev AUDIODEVICE
+environment variable (see
+.Xr sndio 7
+for details).
+.Pp
+There are three modes of operation: Default,
+Echo (see the
+.Fl E
+option) and Prompt (see the
+.Fl P
+option).
+In the Default mode, lines of text to be transmitted can be entered
+into the standard input.
+Lines are processed in a line-by-line basis, i.e. nothing gets sent
+unless Enter/Return is inputted.
+There will be no outputs on the standard output,
+except one single newline upon the input EOF.
+.Pp
+If running interactively in a terminal,
+Ctrl+D (end-of-file) ends the session.
+.Pp
+The options are:
+.Bl -tag -width Ds
+.It Fl h
+Show help message.
+.It Fl E
+Starts a session in the Echo mode.
+In this mode, the input will be obtained from the standard input (or
+.Ar file
+if supplied).
+Characters are echoed into the standard output as they are sent.
+Useful for making a transcript of what is actually sent.
+Not recommended for interactive use.
+.It Fl P
+Starts a session in the Prompt mode.
+The user types into an asterisk prompt before sending the entire line
+by inputting Enter/Return.
+The sent characters will be echoed into the standard output,
+and the prompt will appear again after the transmission is finished.
+.It Fl f Ar effwpm
+Sets the Farnsworth speed (effective wpm) to
+.Ar effwpm
+words per minute.
+When not specified,
+.Ar effwpm
+is assumed to be equal to the actual
+.Ar wpm .
+.It Fl s Ar suffix
+To send
+.Ar suffix
+when end-of-file is reached.
+Default empty.
+.It Fl t Ar tonefrq
+Sets the output tone frequency to
+.Ar tonefrq
+cycles per second.
+Defaults to 600 cycles/sec.
+.It Fl w Ar wpm
+Sets the character speed (wpm) to
+.Ar wpm
+words per minute, using the PARIS standard word.
+Defaults to 20 words/min.
+.Sh ENVIRONMENT
+.Bl -tag -width "AUDIODEVICEXXX" -compact
+.It Ev AUDIODEVICE
+Name of audio device to use.
+.Sh EXAMPLES
+Start a Prompt session.
+.Pp
+.Dl "$ cwsnd -P"
+.Dl "* TEST TEST"
+.Dl "TEST TEST"
+.Pp
+Press Ctrl+D to end the session.
+.Pp
+The Default mode works better for real-time conversations
+since it allows the operator to buffer the input
+while transmitting at the same time.
+.Pp
+.Dl "$ cwsnd"
+.Dl "s2yz de s1abc"
+.Dl "gm dr om [ these lines can be typed while ]"
+.Dl "ur rst 5nn 5nn = [ the prev. lines are still sending ]"
+.Dl "op is john john ="
+.Dl "qth andalusia ="
+.Dl "hw?"
+.Dl "s2yz de s1abc"
+.Dl "$kn"
+.Pp
+Sending an automatic report in a text file at 30 words per minute.
+The transmission ends with the specified suffix.
+.Pp
+.Dl "$ cwsnd -w 30 -s '= 73 de s2yz $sk' report.txt"
+.Pp
+Random
+.Xr fortune 1
+cookie with transcript via Echo mode.
+.Pp
+.Dl "$ fortune -s | cwsnd -E"
+.Pp
+Koch--Farnsworth traning practice, 25 wpm code
+spaced out to 15 effective words per minute (requires
+.Xr kochgen 1 )
+.Pp
+.Dl "$ kochgen -n 30 KMRSUAPTLO | cwsnd -w 25 -f 15"
+.Sh SEE ALSO
+.Xr kochgen 1 ,
+.Xr morse 6 ,
+.Xr sndio 7
+.Sh AUTHORS
+.An Samuel Wirajaya