Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/share/man/man4 Add more markup. Edit for clarity.



details:   https://anonhg.NetBSD.org/src/rev/7d6be1682808
branches:  trunk
changeset: 973590:7d6be1682808
user:      uwe <uwe%NetBSD.org@localhost>
date:      Sat Jul 04 23:09:43 2020 +0000

description:
Add more markup.  Edit for clarity.

diffstat:

 share/man/man4/speaker.4 |  220 +++++++++++++++++++++++++++++++---------------
 1 files changed, 147 insertions(+), 73 deletions(-)

diffs (288 lines):

diff -r f28e014e0008 -r 7d6be1682808 share/man/man4/speaker.4
--- a/share/man/man4/speaker.4  Sat Jul 04 22:17:09 2020 +0000
+++ b/share/man/man4/speaker.4  Sat Jul 04 23:09:43 2020 +0000
@@ -1,4 +1,4 @@
-.\" $NetBSD: speaker.4,v 1.24 2020/07/04 19:25:24 uwe Exp $
+.\" $NetBSD: speaker.4,v 1.25 2020/07/04 23:09:43 uwe Exp $
 .\"
 .\" Copyright (c) 2016 Nathanial Sloss <nathanialsloss%yahoo.com.au@localhost>
 .\" All rights reserved.
@@ -62,13 +62,18 @@
 when another process has the device locked will return \-1 with an
 .Er EBUSY
 error indication.
-Writes to the device are interpreted as 'play strings' in a
-simple ASCII melody notation.
+Writes to the device are interpreted as
+.Dq play strings
+in a simple
+.Tn ASCII
+melody notation.
 An
 .Fn ioctl
 for tone generation at arbitrary frequencies is also supported.
 .Pp
-For the pcppi device sound-generation does
+For the
+.Xr pcppi 4
+device sound-generation does
 .Em not
 monopolize the processor; in fact, the driver
 spends most of its time sleeping while the PC hardware is emitting
@@ -89,19 +94,22 @@
 interface are in
 .In dev/spkrio.h .
 .Pp
-The tone_t structure is as follows:
-.Bd -literal
+The
+.Vt tone_t
+structure is as follows:
+.Bd -literal -offset indent
 typedef struct {
        int     frequency;      /* in hertz */
        int     duration;       /* in 1/100ths of a second */
 } tone_t;
 .Ed
+.Pp
 A frequency of zero is interpreted as a rest.
 .Pp
 At present there are four ioctls:
 .Bl -tag -width Dv
 .It Dv SPKRGETVOL
-Returns an integer, which is the current bell volume as a percentage (0-100).
+Returns an integer, which is the current bell volume as a percentage (0\(en100).
 .It Dv SPKRSETVOL
 Accepts an integer, which is the desired volume as a percentage.
 .It Dv SPKRTONE
@@ -111,98 +119,164 @@
 them in continuous sequence; this array must be terminated by a final member
 with a zero duration.
 .El
-.Pp
-The play-string language is modelled on the PLAY statement conventions of
-IBM BASIC 2.0.
-The MB, MF and X primitives of PLAY are not useful in a UNIX
+.\"
+.Ss Play string language
+.\"
+The play string language is modelled on the
+.Ic PLAY
+statement conventions of
+.Tn IBM BASIC No 2.0 .
+The
+.Ic MB ,
+.Ic MF
+and
+.Ic X
+primitives of
+.Ic PLAY
+are not useful in a
+.Tn UNIX
 environment and are omitted.
-The `octave-tracking' feature is also new.
+The
+.Dq octave-tracking
+feature is also new.
 .Pp
-There are 84 accessible notes numbered 1-84 in 7 octaves, each running from
-C to B, numbered 0-6; the scale is equal-tempered A440 and octave 3 starts
+There are 84 accessible notes numbered 1\(en84 in 7 octaves, each running from
+C to B, numbered 0\(en6; the scale is equal-tempered A440 and octave\~3 starts
 with middle C.
 By default, the play function emits half-second notes with the
-last 1/16th second being `rest time'.
+last 1/16th second being
+.Dq rest time .
 .Pp
-Play strings are interpreted left to right as a series of play command groups;
-letter case is ignored.
+Play strings are interpreted left to right as a series of play command groups.
+Letter case is ignored.
+Whitespace is ignored and may be used to separate melody sections.
 Play command groups are as follows:
-.Pp
-CDEFGAB -- letters A through G cause the corresponding note to be played in the
-current octave.
+.Bl -tag -width Ic
+.It Ic C , D , E , F , G , A , B
+Letters
+.Sq Ic A
+through
+.Sq Ic G
+cause the corresponding note to be played in the current octave.
 A note letter may optionally be followed by an
 .Em accidental sign ,
-one of # + or -; the first two of these cause it to be sharped one
+one of
+.Sq Ic \&# ,
+.Sq Ic \&+ ,
+or
+.Sq Ic \&- ;
+the first two of these cause it to be sharped one
 half-tone, the last causes it to be flatted one half-tone.
 It may also be
 followed by a time value number and by sustain dots (see below).
-Time values
-are interpreted as for the L command below;.
-.Pp
-O <n> -- if <n> is numeric, this sets the current octave.
-<n> may also be one
-of 'L' or 'N' to enable or disable octave-tracking (it is disabled by default).
+Time values are interpreted as for the
+.Sq Ic L
+command below;.
+.\"
+.It Ic O Ns Ar n , Ic OL , Ic ON
+If
+.Ar n
+is numeric, this sets the current octave.
+.Sq Ic OL
+enables, and
+.Sq Ic ON
+disables
+.Em octave-tracking
+(it is disabled by default).
 When octave-tracking is on, interpretation of a pair of letter notes will
 change octaves if necessary in order to make the smallest possible jump between
 notes.
-Thus "olbc" will be played as "olb>c", and "olcb" as "olc<b".
-Octave
-locking is disabled for one letter note following by >, < and O[0123456].
-.Pp
-> -- bump the current octave up one.
-.Pp
-< -- drop the current octave down one.
-.Pp
-N <n> -- play note n, n being 1 to 84 or 0 for a rest of current time value.
+Thus
+.Dq Li olbc
+will be played as
+.Dq Li olb>c ,
+and
+.Dq Li olcb
+as
+.Dq Li olc<b .
+Octave tracking is temporarily disabled for one letter note that follows
+.Sq Ic \&> ,
+.Sq Ic \&<
+or
+.Sq Ic O Ns Ar n .
+.\"
+.It Ic \&>
+Bump the current octave up one.
+.\"
+.It Ic \&<
+Drop the current octave down one.
+.\"
+.It Ic N Ns Ar n
+Play note
+.Ar n ,
+.Ar n
+being 1 to 84 or 0 for a rest of current time value.
 May be followed by sustain dots.
-.Pp
-L <n> -- sets the current time value for notes.
-The default is L4, quarter notes.
+.\"
+.It Ic L Ns Ar n
+Sets the current time value for notes.
+The default is
+.Dq Li L4 ,
+quarter notes.
 The lowest possible value is 1; values up to 64 are accepted.
-L1 sets whole notes, L2 sets half notes, L4 sets quarter notes, etc..
-.Pp
-P <n> -- pause (rest), with <n> interpreted as for L.
-May be followed by
-sustain dots.
-May also be written '~'.
-.Pp
-T <n> -- Sets the number of quarter notes per minute; default is 120.
+.Dq Li L1
+sets whole notes,
+.Dq Li L2
+sets half notes,
+.Dq Li L4
+sets quarter notes, etc...
+.\"
+.It Ic P Ns Ar n , Ic \&~ Ns Ar n
+Pause (rest), with
+.Ar n
+interpreted as for
+.Sq Ic L .
+May be followed by sustain dots.
+.\"
+.It Ic T Ns Ar n
+Sets the number of quarter notes per minute; default is 120.
 Musical names for common tempi are:
-.Bl -column Description Prestissimo "Beats per Minute" -offset indent
-.It Ta Sy Tempo Ta Sy "Beats per Minute"
+.Bl -column "very slow" "Larghissimo" "999\(en999" -offset indent
+.It           Ta Sy "Tempo"  Ta Sy "BPM"
 .It very slow Ta Larghissimo Ta ""
-.It           Ta Largo Ta 40-60
-.It           Ta Larghetto Ta 60-66
-.It           Ta Grave Ta ""
-.It           Ta Lento Ta ""
-.It           Ta Adagio Ta 66-76
-.It slow Ta Adagietto Ta ""
-.It      Ta Andante Ta 76-108
-.It medium Ta Andantino Ta ""
-.It        Ta Moderato Ta 108-120
-.It fast Ta Allegretto Ta ""
-.It      Ta Allegro Ta 120-168
-.It      Ta Vivace Ta ""
-.It      Ta Veloce Ta ""
-.It      Ta Presto Ta 168-208
+.It           Ta Largo       Ta 40\(en60
+.It           Ta Larghetto   Ta 60\(en66
+.It           Ta Grave       Ta ""
+.It           Ta Lento       Ta ""
+.It           Ta Adagio      Ta 66\(en76
+.It slow      Ta Adagietto   Ta ""
+.It           Ta Andante     Ta 76\(en108
+.It medium    Ta Andantino   Ta ""
+.It           Ta Moderato    Ta 108\(en120
+.It fast      Ta Allegretto  Ta ""
+.It           Ta Allegro     Ta 120\(en168
+.It           Ta Vivace      Ta ""
+.It           Ta Veloce      Ta ""
+.It           Ta Presto      Ta 168\(en208
 .It very fast Ta Prestissimo Ta ""
 .El
-.Pp
-M[LNS] -- set articulation.
-MN (N for normal) is the default; the last 1/8th of
+.\"
+.It Ic ML , Ic MN , Ic MS
+Set articulation.
+.Sq Ic MN
+(for normal) is the default; the last 1/8th of
 the note's value is rest time.
-You can set ML for legato (no rest space) or
-MS (staccato) 1/4 rest space.
+You can set
+.Sq Ic ML
+for legato (no rest time) or
+.Sq Ic MS
+for staccato (1/4 rest time).
+.El
 .Pp
-Notes (that is, CDEFGAB or N command character groups) may be followed by
-sustain dots.
+Notes, that is,
+.Ic C , D , E , F , G , A , B ,
+or
+.Ic N
+command character groups, may be followed by sustain dots.
 Each dot causes the note's value to be lengthened by one-half
 for each one.
 Thus, a note dotted once is held for 3/2 of its undotted value;
 dotted twice, it is held 9/4, and three times would give 27/8.
-.Pp
-Whitespace in play strings is simply skipped and may be used to separate
-melody sections.
 .Sh FILES
 .Bl -tag -width Pa -compact
 .It Pa /dev/speaker



Home | Main Index | Thread Index | Old Index