Remove obsolete \setindexsubitem macros.
Massive migration to methoddesc and memberdesc.
Logical markup as needed.
A sprinkling of index entries for flavor.
diff --git a/Doc/lib/libal.tex b/Doc/lib/libal.tex
index 1126f83..fb31ffa 100644
--- a/Doc/lib/libal.tex
+++ b/Doc/lib/libal.tex
@@ -1,4 +1,4 @@
-\section{Built-in Module \sectcode{al}}
+\section{Built-in Module \module{al}}
\label{module-al}
\bimodindex{al}
@@ -10,10 +10,11 @@
specific function is available on your platform.
All functions and methods defined in this module are equivalent to
-the C functions with \samp{AL} prefixed to their name.
+the \C{} functions with \samp{AL} prefixed to their name.
-Symbolic constants from the C header file \file{<audio.h>} are defined
-in the standard module \code{AL}, see below.
+Symbolic constants from the \C{} header file \code{<audio.h>} are
+defined in the standard module \module{AL}\refstmodindex{AL}, see
+below.
\strong{Warning:} the current version of the audio library may dump core
when bad argument values are passed rather than returning an error
@@ -25,145 +26,146 @@
The module defines the following functions:
-\setindexsubitem{(in module al)}
\begin{funcdesc}{openport}{name, direction\optional{, config}}
-The name and direction arguments are strings. The optional config
-argument is a configuration object as returned by
-\code{al.newconfig()}. The return value is an \dfn{port object};
-methods of port objects are described below.
+The name and direction arguments are strings. The optional
+\var{config} argument is a configuration object as returned by
+\function{newconfig()}. The return value is an \dfn{audio port
+object}; methods of audio port objects are described below.
\end{funcdesc}
\begin{funcdesc}{newconfig}{}
-The return value is a new \dfn{configuration object}; methods of
-configuration objects are described below.
+The return value is a new \dfn{audio configuration object}; methods of
+audio configuration objects are described below.
\end{funcdesc}
\begin{funcdesc}{queryparams}{device}
The device argument is an integer. The return value is a list of
-integers containing the data returned by ALqueryparams().
+integers containing the data returned by \cfunction{ALqueryparams()}.
\end{funcdesc}
\begin{funcdesc}{getparams}{device, list}
-The device argument is an integer. The list argument is a list such
-as returned by \code{queryparams}; it is modified in place (!).
+The \var{device} argument is an integer. The list argument is a list
+such as returned by \function{queryparams()}; it is modified in place
+(!).
\end{funcdesc}
\begin{funcdesc}{setparams}{device, list}
-The device argument is an integer. The list argument is a list such
-as returned by \code{al.queryparams}.
+The \var{device} argument is an integer. The \var{list} argument is a
+list such as returned by \function{queryparams()}.
\end{funcdesc}
+
\subsection{Configuration Objects}
+\label{al-config-objects}
-Configuration objects (returned by \code{al.newconfig()} have the
+Configuration objects (returned by \function{newconfig()} have the
following methods:
-\setindexsubitem{(audio configuration object method)}
-
-\begin{funcdesc}{getqueuesize}{}
+\begin{methoddesc}[audio configuration]{getqueuesize}{}
Return the queue size.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{setqueuesize}{size}
+\begin{methoddesc}[audio configuration]{setqueuesize}{size}
Set the queue size.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{getwidth}{}
+\begin{methoddesc}[audio configuration]{getwidth}{}
Get the sample width.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{setwidth}{width}
+\begin{methoddesc}[audio configuration]{setwidth}{width}
Set the sample width.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{getchannels}{}
+\begin{methoddesc}[audio configuration]{getchannels}{}
Get the channel count.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{setchannels}{nchannels}
+\begin{methoddesc}[audio configuration]{setchannels}{nchannels}
Set the channel count.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{getsampfmt}{}
+\begin{methoddesc}[audio configuration]{getsampfmt}{}
Get the sample format.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{setsampfmt}{sampfmt}
+\begin{methoddesc}[audio configuration]{setsampfmt}{sampfmt}
Set the sample format.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{getfloatmax}{}
+\begin{methoddesc}[audio configuration]{getfloatmax}{}
Get the maximum value for floating sample formats.
-\end{funcdesc}
+\end{methoddesc}
-\begin{funcdesc}{setfloatmax}{floatmax}
+\begin{methoddesc}[audio configuration]{setfloatmax}{floatmax}
Set the maximum value for floating sample formats.
-\end{funcdesc}
+\end{methoddesc}
+
\subsection{Port Objects}
+\label{al-port-objects}
-Port objects (returned by \code{al.openport()} have the following
+Port objects, as returned by \function{openport()}, have the following
methods:
-\setindexsubitem{(audio port object method)}
-
-\begin{funcdesc}{closeport}{}
+\begin{methoddesc}[audio port]{closeport}{}
Close the port.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getfd}{}
+\begin{methoddesc}[audio port]{getfd}{}
Return the file descriptor as an int.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getfilled}{}
+\begin{methoddesc}[audio port]{getfilled}{}
Return the number of filled samples.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getfillable}{}
+\begin{methoddesc}[audio port]{getfillable}{}
Return the number of fillable samples.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{readsamps}{nsamples}
+\begin{methoddesc}[audio port]{readsamps}{nsamples}
Read a number of samples from the queue, blocking if necessary.
Return the data as a string containing the raw data, (e.g., 2 bytes per
sample in big-endian byte order (high byte, low byte) if you have set
the sample width to 2 bytes).
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{writesamps}{samples}
+\begin{methoddesc}[audio port]{writesamps}{samples}
Write samples into the queue, blocking if necessary. The samples are
-encoded as described for the \code{readsamps} return value.
-\end{funcdesc}
+encoded as described for the \method{readsamps()} return value.
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getfillpoint}{}
+\begin{methoddesc}[audio port]{getfillpoint}{}
Return the `fill point'.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{setfillpoint}{fillpoint}
+\begin{methoddesc}[audio port]{setfillpoint}{fillpoint}
Set the `fill point'.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getconfig}{}
+\begin{methoddesc}[audio port]{getconfig}{}
Return a configuration object containing the current configuration of
the port.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{setconfig}{config}
+\begin{methoddesc}[audio port]{setconfig}{config}
Set the configuration from the argument, a configuration object.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\begin{funcdesc}{getstatus}{list}
+\begin{methoddesc}[audio port]{getstatus}{list}
Get status information on last error.
-\end{funcdesc}
+\end{methoddesc}[audio port]
-\section{Standard Module \sectcode{AL}}
+
+\section{Standard Module \module{AL}}
\nodename{AL (uppercase)}
\stmodindex{AL}
This module defines symbolic constants needed to use the built-in
-module \code{al} (see above); they are equivalent to those defined in
-the C header file \file{<audio.h>} except that the name prefix
+module \module{al} (see above); they are equivalent to those defined
+in the \C{} header file \code{<audio.h>} except that the name prefix
\samp{AL_} is omitted. Read the module source for a complete list of
the defined names. Suggested use: