Lines Matching +full:command +full:- +full:sequencer
5 /*-
6 * SPDX-License-Identifier: BSD-2-Clause
8 * Copyright by Hannu Savolainen 1993 / 4Front Technologies 1993-2006
55 * snd-sdk-doc-0.1.ps.gz (gzipped postscript). It contains
122 * number of bytes for a write operation to be non-blocking.
146 * format. We extend it by using bit 31 (RO) to indicate full-duplex
153 * o 8 bits for 8-bit formats, mu-law and A-law,
154 * o 16 bits for the 16-bit formats, and
155 * o 32 bits for the 24/32-bit formats.
160 #define AFMT_MU_LAW 0x00000001 /* Logarithmic mu-law */
161 #define AFMT_A_LAW 0x00000002 /* Logarithmic A-law */
162 #define AFMT_IMA_ADPCM 0x00000004 /* A 4:1 compressed format where 16-bit
165 #define AFMT_U8 0x00000008 /* Unsigned 8-bit */
166 #define AFMT_S16_LE 0x00000010 /* Little endian signed 16-bit */
167 #define AFMT_S16_BE 0x00000020 /* Big endian signed 16-bit */
168 #define AFMT_S8 0x00000040 /* Signed 8-bit */
169 #define AFMT_U16_LE 0x00000080 /* Little endian unsigned 16-bit */
170 #define AFMT_U16_BE 0x00000100 /* Big endian unsigned 16-bit */
175 * 32-bit formats below used for 24-bit audio data where the data is stored
179 #define AFMT_S32_LE 0x00001000 /* Little endian signed 32-bit */
180 #define AFMT_S32_BE 0x00002000 /* Big endian signed 32-bit */
181 #define AFMT_U32_LE 0x00004000 /* Little endian unsigned 32-bit */
182 #define AFMT_U32_BE 0x00008000 /* Big endian unsigned 32-bit */
183 #define AFMT_S24_LE 0x00010000 /* Little endian signed 24-bit */
184 #define AFMT_S24_BE 0x00020000 /* Big endian signed 24-bit */
185 #define AFMT_U24_LE 0x00040000 /* Little endian unsigned 24-bit */
186 #define AFMT_U24_BE 0x00080000 /* Big endian unsigned 24-bit */
187 #define AFMT_F32_LE 0x10000000 /* Little endian 32-bit floating point */
188 #define AFMT_F32_BE 0x20000000 /* Big endian 32-bit floating point */
305 u_long rate_min, rate_max; /* min-max sampling rate */
319 * IOCTL Commands for /dev/sequencer
374 * Sample loading mechanism for internal synthesizers (/dev/sequencer)
395 #define WAVE_UNSIGNED 0x02 /* bit 1 = Signed - Unsigned data. */
396 #define WAVE_LOOPING 0x04 /* bit 2 = looping enabled-1. */
400 #define WAVE_ENVELOPES 0x40 /* bit 6 = Enable envelopes - 1 */
431 int panning; /* -128=left, 127=right */
472 * Patch management interface (/dev/sequencer, /dev/patmgr#)
487 * the application using /dev/sequencer and the patch manager daemon
492 * ioctl available through /dev/sequencer also. Avoid using it since it's
493 * extremely hardware dependent. In addition access through /dev/sequencer
500 #define PM_K_EVENT 1 /* Event from the /dev/sequencer driver */
505 int command; member
512 #define PMTYPE_FM4 2 /* Mixed 4 or 2 op FM (OPL-3) */
547 * /dev/sequencer is opened or closed. A record with key == PM_K_EVENT is
548 * returned. The command field contains the event type:
550 #define PM_E_OPENED 1 /* /dev/sequencer opened */
551 #define PM_E_CLOSED 2 /* /dev/sequencer closed */
556 * /dev/sequencer input events.
558 * The data written to the /dev/sequencer is a stream of events. Events
613 /* undefined 0x0c - 0x0f */
618 /* undefined 0x14 - 0x1f */
638 /* undefined 0x46 - 0x4f */
644 /* undefined 0x54 - 0x5a */
657 /* undefined 0x66 - 0x78 */
658 /* reserved 0x79 - 0x7f */
699 * it to the /dev/sequencer. Don't write other data together with
720 short device; /* Synth# (0-4) */
728 int device; /* 0-N. INITIALIZE BEFORE CALLING */
761 int device; /* 0-N. INITIALIZE BEFORE CALLING */
967 int command; /* Set to 0 if not used */ member
979 int command; /* Used internally. Set to 0 */ member
1055 * Some on/off settings (SOUND_SPECIAL_MIN - SOUND_SPECIAL_MAX)
1205 * Level 2 event types for /dev/sequencer
1273 * /dev/sequencer interface
1283 * SEQ_DEFINEBUF (2048); -- Defines a buffer for 2048 bytes
1285 * int seqfd; -- The file descriptor for /dev/sequencer.
1291 * if (write (seqfd, _seqbuf, _seqbufptr) == -1)
1293 * perror ("write /dev/sequencer");
1294 * exit (-1);
1314 * This variation of the sequencer macros is used just to format one event
1331 (SEQ_DUMPBUF(), _pm_info.command = _PM_LOAD_PATCH, \
1336 (SEQ_DUMPBUF(), _pm_info.command = _PM_LOAD_PATCH, \
1400 * and the last byte (buf[len-1] of the last fragment must be 0xf7. No byte
1511 if (write(seqfd, (char*)(patchx), len)==-1) \
1512 perror("Write patch: /dev/sequencer"); \
1550 * XXX OSSv4 defines -- some bits taken straight out of the new
1767 int filler[172]; /* For future expansion (set to -1) */
1790 # define MIXT_MONODB 15 /* Mono atten. slider (0 to -144) */
1791 # define MIXT_STEREODB 16 /* Stereo atten. slider (dual 0 to -144) */
1811 int parent; /* Entry# of parent (group) node (-1 if root) */
1820 /* (-1 means not indicated) */
1886 char cmd[64]; /* Command using the device (if known) */
1893 int flags; /* For internal use only - no practical
1907 int latency; /* In usecs, -1=unknown */
1933 * most preferred one. -2 or less means that this device cannot be used
1948 char cmd[64]; /* Command using the device (if known) */
1966 int flags; /* For internal use only - no practical meaning */
1970 int latency; /* In usecs, -1=unknown */