freebsd-dev/games/bcd/bcd.6
Joerg Wunsch 0206896d32 Add an eleventh-hour gimick... But since it's only in `games' and
Jordan OK'ed it, i think it's a nice one for those who need it.  I
once mentioned in Usenet that i've hacked morse(6) so it can control
an external device like a tone generator or even a ham radio
transceiver, so you could actually use that `game' for really
transmitting morse code through the air.  A couple of people then
bugged be to send them my hack (which it was by that time).

So i've now finally found some hours to clean it up (like freaking out
with the transmitter no longer keyed in case someone ^c's out of the
program...), and to write the man page addition.

While i was at it, i also cleaned up some minor nits in Lyndon's
/dev/speaker code, mainly #ifdef related stuff like handling getopt()
if SPEAKER is not defined etc.

enjoy & 73

Approved by:	jkh, the restless...
2000-02-27 01:21:28 +00:00

182 lines
4.9 KiB
Groff

.\" Copyright (c) 1988, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the University of
.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)bcd.6 8.1 (Berkeley) 5/31/93
.\" $FreeBSD$
.\"
.Dd May 31, 1993
.Dt "BCD" 6
.Os
.Sh NAME
.Nm bcd ,
.Nm ppt ,
.Nm morse
.Nd "reformat input as punch cards, paper tape or morse code"
.Sh SYNOPSIS
.Nm bcd
.Op Ar string ...
.Nm ppt
.Op Ar string ...
.Nm morse
.Op Fl p
.Op Fl d Ar device
.Op Fl e
.Op Fl w Ar speed
.Op Fl f Ar frequency
.Op Fl s
.Op Ar string ...
.Sh DESCRIPTION
The commands
.Nm bcd ,
.Nm ppt
and
.Nm morse
read the given input and reformat it in the form of punched cards,
paper tape or morse code respectively.
Acceptable input are command line arguments or the standard input.
.Pp
Available options for program
.Nm morse :
.Bl -tag -width flag
.It Fl s
The
.Fl s
option produces dots and dashes rather than words.
.It Fl p
Send morse the real way. This only works if your system has
.Xr speaker 4
support.
.It Fl w Ar speed
Set the sending speed in words per minute. If not specified the default
speed of 20 WPM is used.
.It Fl f Ar frequency
Set the sidetone frequency to something other than the default 600 Hz.
.It Fl d Ar device
Similar to
.Fl p ,
but use the RTS line of
.Ar device
.Pq which must by a tty device
in order to emit the morse code.
.It Fl e
echo each character before it is sent, used together with either
.Fl p
or
.Fl d .
.El
.Pp
The
.Fl w
and
.Fl f
flags only work in conjunction with either the
.Fl p
or the
.Fl d
flag.
.Pp
Not all prosigns have corresponding characters. Use
.Ql #
for
.Em AS ,
.Ql @
for
.Em SK ,
.Ql *
for
.Em VE
and
.Ql %
for
.Em BK .
The more common prosigns are
.Ql =
for
.Em BT ,
.Ql (
for
.Em KN
and
.Ql +
for
.Em AR .
.Pp
Using flag
.Fl d Ar device
it is possible to key an external device, like a sidetone generator with
a headset for training purposes, or even your ham radio transceiver. For
the latter, simply connect an NPN transistor to the serial port
.Ar device ,
emitter connected to ground, base connected through a resistor
(few kiloohms) to RTS, collector to the key line of your transceiver
(assuming the transceiver has a positive key supply voltage and is keyed
by grounding the key input line). A capacitor (some nanofarads) between
base and ground is advisable to keep stray RF away, and to supress the
minor glitch that is generated during program startup.
.Sh FILES
.Bl -tag -width /dev/speaker -compact
.It Pa /dev/speaker
speaker device file
.El
.Sh ENVIRONMENT
.Bl -tag -width LC_CTYPE
.Pp
For
.Nm morse
only:
.It Ev LC_CTYPE
.It Ev LC_ALL
.It Ev LANG
If one of these variables (in this priority) is set to a locale ending in
.Ql KOI8-R ,
characters with the high-order bit set are being interpreted as
Cyrillic characters. In all other cases, they are being interpreted
as belonging to the
.Ql ISO_8859-1
character set.
.Sh SEE ALSO
.Xr speaker 4
.Sh HISTORY
Sound support for
.Nm morse
added by Lyndon Nerenberg (VE7TCP/VE6BBM) <lyndon@orthanc.com>.
.Pp
Ability to key an external device added by
.ie t J\(:org Wunsch
.el Joerg Wunsch
(DL8DTL).
.Sh BUGS
Does only understand a few European characters (namely German and
French), but neither Asian ones, or the continental landline code.
.Pp
Sends a bit slower than it should due to system overhead. Some people
would call this a feature.