LMMS
Loading...
Searching...
No Matches
soundcard.h File Reference
#include <sys/types.h>
#include <machine/endian.h>
#include <sys/ioccom.h>

Go to the source code of this file.

Classes

struct  snd_size
struct  _snd_chan_param
struct  _snd_mix_param
struct  _snd_sync_parm
struct  _snd_capabilities
struct  seq_event_rec
struct  patch_info
struct  sysex_info
struct  patmgr_info
struct  sbi_instrument
struct  synth_info
struct  sound_timer_info
struct  midi_info
struct  mpu_command_rec
struct  audio_buf_info
struct  count_info
struct  buffmem_desc
struct  copr_buffer
struct  copr_debug_buf
struct  copr_msg
struct  mixer_info
struct  audio_errinfo
struct  oss_syncgroup
struct  oss_count_t
struct  oss_sysinfo
 Argument for SNDCTL_SYSINFO ioctl. More...
struct  oss_mixext
struct  oss_mixext_root
struct  oss_mixer_value
struct  oss_mixer_enuminfo
struct  oss_audioinfo
 Argument for SNDCTL_AUDIOINFO ioctl. More...
struct  oss_mixerinfo
struct  oss_midi_info
struct  oss_card_info

Macros

#define SOUND_VERSION   301
#define VOXWARE   /* does this have any use ? */
#define SNDCARD_ADLIB   1
#define SNDCARD_SB   2
#define SNDCARD_PAS   3
#define SNDCARD_GUS   4
#define SNDCARD_MPU401   5
#define SNDCARD_SB16   6
#define SNDCARD_SB16MIDI   7
#define SNDCARD_UART6850   8
#define SNDCARD_GUS16   9
#define SNDCARD_MSS   10
#define SNDCARD_PSS   11
#define SNDCARD_SSCAPE   12
#define SNDCARD_PSS_MPU   13
#define SNDCARD_PSS_MSS   14
#define SNDCARD_SSCAPE_MSS   15
#define SNDCARD_TRXPRO   16
#define SNDCARD_TRXPRO_SB   17
#define SNDCARD_TRXPRO_MPU   18
#define SNDCARD_MAD16   19
#define SNDCARD_MAD16_MPU   20
#define SNDCARD_CS4232   21
#define SNDCARD_CS4232_MPU   22
#define SNDCARD_MAUI   23
#define SNDCARD_PSEUDO_MSS   24
#define SNDCARD_AWE32   25
#define SNDCARD_NSS   26
#define SNDCARD_UART16550   27
#define SNDCARD_OPL   28
#define AIONWRITE   _IOR('A', 10, int) /* get # bytes to write */
#define AIOGSIZE   _IOR('A', 11, struct snd_size)/* read current blocksize */
#define AIOSSIZE   _IOWR('A', 11, struct snd_size) /* sets blocksize */
#define AFMT_QUERY   0x00000000 /* Return current format */
#define AFMT_MU_LAW   0x00000001 /* Logarithmic mu-law */
#define AFMT_A_LAW   0x00000002 /* Logarithmic A-law */
#define AFMT_IMA_ADPCM
#define AFMT_U8   0x00000008 /* Unsigned 8-bit */
#define AFMT_S16_LE   0x00000010 /* Little endian signed 16-bit */
#define AFMT_S16_BE   0x00000020 /* Big endian signed 16-bit */
#define AFMT_S8   0x00000040 /* Signed 8-bit */
#define AFMT_U16_LE   0x00000080 /* Little endian unsigned 16-bit */
#define AFMT_U16_BE   0x00000100 /* Big endian unsigned 16-bit */
#define AFMT_MPEG   0x00000200 /* MPEG MP2/MP3 audio */
#define AFMT_AC3   0x00000400 /* Dolby Digital AC3 */
#define AFMT_S16_NE   AFMT_S16_LE /* native endian signed 16 */
#define AFMT_S32_LE   0x00001000 /* Little endian signed 32-bit */
#define AFMT_S32_BE   0x00002000 /* Big endian signed 32-bit */
#define AFMT_U32_LE   0x00004000 /* Little endian unsigned 32-bit */
#define AFMT_U32_BE   0x00008000 /* Big endian unsigned 32-bit */
#define AFMT_S24_LE   0x00010000 /* Little endian signed 24-bit */
#define AFMT_S24_BE   0x00020000 /* Big endian signed 24-bit */
#define AFMT_U24_LE   0x00040000 /* Little endian unsigned 24-bit */
#define AFMT_U24_BE   0x00080000 /* Big endian unsigned 24-bit */
#define AFMT_STEREO   0x10000000 /* can do/want stereo */
#define AFMT_WEIRD   0x20000000 /* weird hardware... */
#define AFMT_FULLDUPLEX   0x80000000 /* can do full duplex */
#define AIOGFMT   _IOR('f', 12, snd_chan_param) /* get format */
#define AIOSFMT   _IOWR('f', 12, snd_chan_param) /* sets format */
#define AIOGMIX   _IOWR('A', 13, snd_mix_param) /* return mixer status */
#define AIOSMIX   _IOWR('A', 14, snd_mix_param) /* sets mixer status */
#define AIOSYNC_PLAY   0x1 /* play chan */
#define AIOSYNC_CAPTURE   0x2 /* capture chan */
#define AIOSTOP   _IOWR ('A', 15, int)
#define AIOSYNC_SIGNAL   0x100
#define AIOSYNC_SELECT   0x200
#define AIOSYNC_READY   0x400
#define AIOSYNC_FREE   0x800
#define AIOSYNC   _IOWR ('A', 15, snd_sync_parm) /* misc. synchronization */
#define AIOGCAP   _IOWR('A', 15, snd_capabilities) /* get capabilities */
#define SNDCTL_SEQ_RESET   _IO ('Q', 0)
#define SNDCTL_SEQ_SYNC   _IO ('Q', 1)
#define SNDCTL_SYNTH_INFO   _IOWR('Q', 2, struct synth_info)
#define SNDCTL_SEQ_CTRLRATE   _IOWR('Q', 3, int) /* Set/get timer res.(hz) */
#define SNDCTL_SEQ_GETOUTCOUNT   _IOR ('Q', 4, int)
#define SNDCTL_SEQ_GETINCOUNT   _IOR ('Q', 5, int)
#define SNDCTL_SEQ_PERCMODE   _IOW ('Q', 6, int)
#define SNDCTL_FM_LOAD_INSTR   _IOW ('Q', 7, struct sbi_instrument) /* Valid for FM only */
#define SNDCTL_SEQ_TESTMIDI   _IOW ('Q', 8, int)
#define SNDCTL_SEQ_RESETSAMPLES   _IOW ('Q', 9, int)
#define SNDCTL_SEQ_NRSYNTHS   _IOR ('Q',10, int)
#define SNDCTL_SEQ_NRMIDIS   _IOR ('Q',11, int)
#define SNDCTL_MIDI_INFO   _IOWR('Q',12, struct midi_info)
#define SNDCTL_SEQ_THRESHOLD   _IOW ('Q',13, int)
#define SNDCTL_SEQ_TRESHOLD   SNDCTL_SEQ_THRESHOLD /* there was once a typo */
#define SNDCTL_SYNTH_MEMAVL   _IOWR('Q',14, int) /* in=dev#, out=memsize */
#define SNDCTL_FM_4OP_ENABLE   _IOW ('Q',15, int) /* in=dev# */
#define SNDCTL_PMGR_ACCESS   _IOWR('Q',16, struct patmgr_info)
#define SNDCTL_SEQ_PANIC   _IO ('Q',17)
#define SNDCTL_SEQ_OUTOFBAND   _IOW ('Q',18, struct seq_event_rec)
#define SNDCTL_SEQ_GETTIME   _IOR ('Q',19, int)
#define SNDCTL_TMR_TIMEBASE   _IOWR('T', 1, int)
#define SNDCTL_TMR_START   _IO ('T', 2)
#define SNDCTL_TMR_STOP   _IO ('T', 3)
#define SNDCTL_TMR_CONTINUE   _IO ('T', 4)
#define SNDCTL_TMR_TEMPO   _IOWR('T', 5, int)
#define SNDCTL_TMR_SOURCE   _IOWR('T', 6, int)
#define TMR_INTERNAL   0x00000001
#define TMR_EXTERNAL   0x00000002
#define TMR_MODE_MIDI   0x00000010
#define TMR_MODE_FSK   0x00000020
#define TMR_MODE_CLS   0x00000040
#define TMR_MODE_SMPTE   0x00000080
#define SNDCTL_TMR_METRONOME   _IOW ('T', 7, int)
#define SNDCTL_TMR_SELECT   _IOW ('T', 8, int)
#define _PATCHKEY(id)
#define GUS_PATCH   _PATCHKEY(0x04)
#define OBSOLETE_GUS_PATCH   _PATCHKEY(0x02)
#define WAVE_16_BITS   0x01 /* bit 0 = 8 or 16 bit wave data. */
#define WAVE_UNSIGNED   0x02 /* bit 1 = Signed - Unsigned data. */
#define WAVE_LOOPING   0x04 /* bit 2 = looping enabled-1. */
#define WAVE_BIDIR_LOOP   0x08 /* bit 3 = Set is bidirectional looping. */
#define WAVE_LOOP_BACK   0x10 /* bit 4 = Set is looping backward. */
#define WAVE_SUSTAIN_ON   0x20 /* bit 5 = Turn sustaining on. (Env. pts. 3)*/
#define WAVE_ENVELOPES   0x40 /* bit 6 = Enable envelopes - 1 */
#define WAVE_VIBRATO   0x00010000 /* The vibrato info is valid */
#define WAVE_TREMOLO   0x00020000 /* The tremolo info is valid */
#define WAVE_SCALE   0x00040000 /* The scaling info is valid */
#define SYSEX_PATCH   _PATCHKEY(0x05)
#define MAUI_PATCH   _PATCHKEY(0x06)
#define PS_NO_PATCHES   0 /* No patch support on device */
#define PS_MGR_NOT_OK   1 /* Plain patch support (no mgr) */
#define PS_MGR_OK   2 /* Patch manager supported */
#define PS_MANAGED   3 /* Patch manager running */
#define SNDCTL_PMGR_IFACE   _IOWR('P', 1, struct patmgr_info)
#define PM_K_EVENT   1 /* Event from the /dev/sequencer driver */
#define PM_K_COMMAND   2 /* Request from an application */
#define PM_K_RESPONSE   3 /* From patmgr to application */
#define PM_ERROR   4 /* Error returned by the patmgr */
#define PM_GET_DEVTYPE   1 /* Returns type of the patch mgr interface of dev */
#define PMTYPE_FM2   1 /* 2 OP fm */
#define PMTYPE_FM4   2 /* Mixed 4 or 2 op FM (OPL-3) */
#define PMTYPE_WAVE   3 /* Wave table synthesizer (GUS) */
#define PM_GET_NRPGM   2 /* Returns max # of midi programs in parm1 */
#define PM_GET_PGMMAP   3 /* Returns map of loaded midi programs in data8 */
#define PM_GET_PGM_PATCHES   4 /* Return list of patches of a program (parm1) */
#define PM_GET_PATCH   5 /* Return patch header of patch parm1 */
#define PM_SET_PATCH   6 /* Set patch header of patch parm1 */
#define PM_READ_PATCH   7 /* Read patch (wave) data */
#define PM_WRITE_PATCH   8 /* Write patch (wave) data */
#define _PM_LOAD_PATCH   0x100
#define PM_E_OPENED   1 /* /dev/sequencer opened */
#define PM_E_CLOSED   2 /* /dev/sequencer closed */
#define PM_E_PATCH_RESET   3 /* SNDCTL_RESETSAMPLES called */
#define PM_E_PATCH_LOADED   4 /* A patch has been loaded by appl */
#define SEQ_NOTEOFF   0
#define SEQ_FMNOTEOFF   SEQ_NOTEOFF /* Just old name */
#define SEQ_NOTEON   1
#define SEQ_FMNOTEON   SEQ_NOTEON
#define SEQ_WAIT   TMR_WAIT_ABS
#define SEQ_PGMCHANGE   3
#define SEQ_FMPGMCHANGE   SEQ_PGMCHANGE
#define SEQ_SYNCTIMER   TMR_START
#define SEQ_MIDIPUTC   5
#define SEQ_DRUMON   6 /*** OBSOLETE ***/
#define SEQ_DRUMOFF   7 /*** OBSOLETE ***/
#define SEQ_ECHO   TMR_ECHO /* For synching programs with output */
#define SEQ_AFTERTOUCH   9
#define SEQ_CONTROLLER   10
#define CTL_BANK_SELECT   0x00
#define CTL_MODWHEEL   0x01
#define CTL_BREATH   0x02
#define CTL_FOOT   0x04
#define CTL_PORTAMENTO_TIME   0x05
#define CTL_DATA_ENTRY   0x06
#define CTL_MAIN_VOLUME   0x07
#define CTL_BALANCE   0x08
#define CTL_PAN   0x0a
#define CTL_EXPRESSION   0x0b
#define CTL_GENERAL_PURPOSE1   0x10
#define CTL_GENERAL_PURPOSE2   0x11
#define CTL_GENERAL_PURPOSE3   0x12
#define CTL_GENERAL_PURPOSE4   0x13
#define CTL_DAMPER_PEDAL   0x40
#define CTL_SUSTAIN   CTL_DAMPER_PEDAL /* Alias */
#define CTL_HOLD   CTL_DAMPER_PEDAL /* Alias */
#define CTL_PORTAMENTO   0x41
#define CTL_SOSTENUTO   0x42
#define CTL_SOFT_PEDAL   0x43
#define CTL_HOLD2   0x45
#define CTL_GENERAL_PURPOSE5   0x50
#define CTL_GENERAL_PURPOSE6   0x51
#define CTL_GENERAL_PURPOSE7   0x52
#define CTL_GENERAL_PURPOSE8   0x53
#define CTL_EXT_EFF_DEPTH   0x5b
#define CTL_TREMOLO_DEPTH   0x5c
#define CTL_CHORUS_DEPTH   0x5d
#define CTL_DETUNE_DEPTH   0x5e
#define CTL_CELESTE_DEPTH   CTL_DETUNE_DEPTH /* Alias for the above one */
#define CTL_PHASER_DEPTH   0x5f
#define CTL_DATA_INCREMENT   0x60
#define CTL_DATA_DECREMENT   0x61
#define CTL_NONREG_PARM_NUM_LSB   0x62
#define CTL_NONREG_PARM_NUM_MSB   0x63
#define CTL_REGIST_PARM_NUM_LSB   0x64
#define CTL_REGIST_PARM_NUM_MSB   0x65
#define CTRL_PITCH_BENDER   255
#define CTRL_PITCH_BENDER_RANGE   254
#define CTRL_EXPRESSION   253 /* Obsolete */
#define CTRL_MAIN_VOLUME   252 /* Obsolete */
#define SEQ_BALANCE   11
#define SEQ_VOLMODE   12
#define VOL_METHOD_ADAGIO   1
#define VOL_METHOD_LINEAR   2
#define SEQ_FULLSIZE   0xfd /* Long events */
#define SEQ_PRIVATE   0xfe /* Low level HW dependent events (8 bytes) */
#define SEQ_EXTENDED   0xff /* Extended events (8 bytes) OBSOLETE */
#define FM_PATCH   _PATCHKEY(0x01)
#define OPL3_PATCH   _PATCHKEY(0x03)
#define SYNTH_TYPE_FM   0
#define SYNTH_TYPE_SAMPLE   1
#define SYNTH_TYPE_MIDI   2 /* Midi interface */
#define FM_TYPE_ADLIB   0x00
#define FM_TYPE_OPL3   0x01
#define MIDI_TYPE_MPU401   0x401
#define SAMPLE_TYPE_BASIC   0x10
#define SAMPLE_TYPE_GUS   SAMPLE_TYPE_BASIC
#define SAMPLE_TYPE_AWE32   0x20
#define SYNTH_CAP_PERCMODE   0x00000001 /* No longer used */
#define SYNTH_CAP_OPL3   0x00000002 /* Set if OPL3 supported */
#define SYNTH_CAP_INPUT   0x00000004 /* Input (MIDI) device */
#define SNDCTL_MIDI_PRETIME   _IOWR('m', 0, int)
#define SNDCTL_MIDI_MPUMODE   _IOWR('m', 1, int)
#define SNDCTL_MIDI_MPUCMD   _IOWR('m', 2, mpu_command_rec)
#define MIOSPASSTHRU   _IOWR('m', 3, int)
#define MIOGPASSTHRU   _IOWR('m', 4, int)
#define SNDCTL_DSP_RESET   _IO ('P', 0)
#define SNDCTL_DSP_SYNC   _IO ('P', 1)
#define SNDCTL_DSP_SPEED   _IOWR('P', 2, int)
#define SNDCTL_DSP_STEREO   _IOWR('P', 3, int)
#define SNDCTL_DSP_GETBLKSIZE   _IOR('P', 4, int)
#define SNDCTL_DSP_SETBLKSIZE   _IOW('P', 4, int)
#define SNDCTL_DSP_SETFMT   _IOWR('P',5, int) /* Selects ONE fmt*/
#define SOUND_PCM_WRITE_CHANNELS   _IOWR('P', 6, int)
#define SNDCTL_DSP_CHANNELS   SOUND_PCM_WRITE_CHANNELS
#define SOUND_PCM_WRITE_FILTER   _IOWR('P', 7, int)
#define SNDCTL_DSP_POST   _IO ('P', 8)
#define SNDCTL_DSP_SUBDIVIDE   _IOWR('P', 9, int)
#define SNDCTL_DSP_SETFRAGMENT   _IOWR('P',10, int)
#define SNDCTL_DSP_GETFMTS   _IOR ('P',11, int) /* Returns a mask */
#define SNDCTL_DSP_GETOSPACE   _IOR ('P',12, audio_buf_info)
#define SNDCTL_DSP_GETISPACE   _IOR ('P',13, audio_buf_info)
#define SNDCTL_DSP_NONBLOCK   _IO ('P',14)
#define SNDCTL_DSP_GETCAPS   _IOR ('P',15, int)
#define DSP_CAP_REVISION   0x000000ff /* revision level (0 to 255) */
#define DSP_CAP_DUPLEX   0x00000100 /* Full duplex record/playback */
#define DSP_CAP_REALTIME   0x00000200 /* Real time capability */
#define DSP_CAP_BATCH   0x00000400
#define DSP_CAP_COPROC   0x00000800
#define DSP_CAP_TRIGGER   0x00001000 /* Supports SETTRIGGER */
#define DSP_CAP_MMAP   0x00002000 /* Supports mmap() */
#define SNDCTL_DSP_GETTRIGGER   _IOR ('P',16, int)
#define SNDCTL_DSP_SETTRIGGER   _IOW ('P',16, int)
#define PCM_ENABLE_INPUT   0x00000001
#define PCM_ENABLE_OUTPUT   0x00000002
#define SNDCTL_DSP_GETIPTR   _IOR ('P',17, count_info)
#define SNDCTL_DSP_GETOPTR   _IOR ('P',18, count_info)
#define SNDCTL_DSP_MAPINBUF   _IOR ('P', 19, buffmem_desc)
#define SNDCTL_DSP_MAPOUTBUF   _IOR ('P', 20, buffmem_desc)
#define SNDCTL_DSP_SETSYNCRO   _IO ('P', 21)
#define SNDCTL_DSP_SETDUPLEX   _IO ('P', 22)
#define SNDCTL_DSP_GETODELAY   _IOR ('P', 23, int)
#define SOUND_PCM_READ_RATE   _IOR ('P', 2, int)
#define SOUND_PCM_READ_CHANNELS   _IOR ('P', 6, int)
#define SOUND_PCM_READ_BITS   _IOR ('P', 5, int)
#define SOUND_PCM_READ_FILTER   _IOR ('P', 7, int)
#define CPF_NONE   0x0000
#define CPF_FIRST   0x0001 /* First block */
#define CPF_LAST   0x0002 /* Last block */
#define SNDCTL_COPR_RESET   _IO ('C', 0)
#define SNDCTL_COPR_LOAD   _IOWR('C', 1, copr_buffer)
#define SNDCTL_COPR_RDATA   _IOWR('C', 2, copr_debug_buf)
#define SNDCTL_COPR_RCODE   _IOWR('C', 3, copr_debug_buf)
#define SNDCTL_COPR_WDATA   _IOW ('C', 4, copr_debug_buf)
#define SNDCTL_COPR_WCODE   _IOW ('C', 5, copr_debug_buf)
#define SNDCTL_COPR_RUN   _IOWR('C', 6, copr_debug_buf)
#define SNDCTL_COPR_HALT   _IOWR('C', 7, copr_debug_buf)
#define SNDCTL_COPR_SENDMSG   _IOW ('C', 8, copr_msg)
#define SNDCTL_COPR_RCVMSG   _IOR ('C', 9, copr_msg)
#define SOUND_MIXER_NRDEVICES   25
#define SOUND_MIXER_VOLUME   0 /* Master output level */
#define SOUND_MIXER_BASS   1 /* Treble level of all output channels */
#define SOUND_MIXER_TREBLE   2 /* Bass level of all output channels */
#define SOUND_MIXER_SYNTH   3 /* Volume of synthesier input */
#define SOUND_MIXER_PCM   4 /* Output level for the audio device */
#define SOUND_MIXER_SPEAKER
#define SOUND_MIXER_LINE   6 /* Volume level for the line in jack */
#define SOUND_MIXER_MIC
#define SOUND_MIXER_CD
#define SOUND_MIXER_IMIX
#define SOUND_MIXER_ALTPCM
#define SOUND_MIXER_RECLEV   11 /* Global recording level */
#define SOUND_MIXER_IGAIN   12 /* Input gain */
#define SOUND_MIXER_OGAIN   13 /* Output gain */
#define SOUND_MIXER_LINE1   14 /* Input source 1 (aux1) */
#define SOUND_MIXER_LINE2   15 /* Input source 2 (aux2) */
#define SOUND_MIXER_LINE3   16 /* Input source 3 (line) */
#define SOUND_MIXER_DIGITAL1   17 /* Digital (input) 1 */
#define SOUND_MIXER_DIGITAL2   18 /* Digital (input) 2 */
#define SOUND_MIXER_DIGITAL3   19 /* Digital (input) 3 */
#define SOUND_MIXER_PHONEIN   20 /* Phone input */
#define SOUND_MIXER_PHONEOUT   21 /* Phone output */
#define SOUND_MIXER_VIDEO   22 /* Video/TV (audio) in */
#define SOUND_MIXER_RADIO   23 /* Radio in */
#define SOUND_MIXER_MONITOR   24 /* Monitor (usually mic) volume */
#define SOUND_ONOFF_MIN   28
#define SOUND_ONOFF_MAX   30
#define SOUND_MIXER_MUTE   28 /* 0 or 1 */
#define SOUND_MIXER_ENHANCE   29 /* Enhanced stereo (0, 40, 60 or 80) */
#define SOUND_MIXER_LOUD   30 /* 0 or 1 */
#define SOUND_MIXER_NONE   31
#define SOUND_DEVICE_LABELS
#define SOUND_DEVICE_NAMES
#define SOUND_MIXER_RECSRC   0xff /* 1 bit per recording source */
#define SOUND_MIXER_DEVMASK   0xfe /* 1 bit per supported device */
#define SOUND_MIXER_RECMASK   0xfd /* 1 bit per supp. recording source */
#define SOUND_MIXER_CAPS   0xfc
#define SOUND_CAP_EXCL_INPUT   0x00000001 /* Only 1 rec. src at a time */
#define SOUND_MIXER_STEREODEVS   0xfb /* Mixer channels supporting stereo */
#define SOUND_MASK_VOLUME   (1 << SOUND_MIXER_VOLUME)
#define SOUND_MASK_BASS   (1 << SOUND_MIXER_BASS)
#define SOUND_MASK_TREBLE   (1 << SOUND_MIXER_TREBLE)
#define SOUND_MASK_SYNTH   (1 << SOUND_MIXER_SYNTH)
#define SOUND_MASK_PCM   (1 << SOUND_MIXER_PCM)
#define SOUND_MASK_SPEAKER   (1 << SOUND_MIXER_SPEAKER)
#define SOUND_MASK_LINE   (1 << SOUND_MIXER_LINE)
#define SOUND_MASK_MIC   (1 << SOUND_MIXER_MIC)
#define SOUND_MASK_CD   (1 << SOUND_MIXER_CD)
#define SOUND_MASK_IMIX   (1 << SOUND_MIXER_IMIX)
#define SOUND_MASK_ALTPCM   (1 << SOUND_MIXER_ALTPCM)
#define SOUND_MASK_RECLEV   (1 << SOUND_MIXER_RECLEV)
#define SOUND_MASK_IGAIN   (1 << SOUND_MIXER_IGAIN)
#define SOUND_MASK_OGAIN   (1 << SOUND_MIXER_OGAIN)
#define SOUND_MASK_LINE1   (1 << SOUND_MIXER_LINE1)
#define SOUND_MASK_LINE2   (1 << SOUND_MIXER_LINE2)
#define SOUND_MASK_LINE3   (1 << SOUND_MIXER_LINE3)
#define SOUND_MASK_DIGITAL1   (1 << SOUND_MIXER_DIGITAL1)
#define SOUND_MASK_DIGITAL2   (1 << SOUND_MIXER_DIGITAL2)
#define SOUND_MASK_DIGITAL3   (1 << SOUND_MIXER_DIGITAL3)
#define SOUND_MASK_PHONEIN   (1 << SOUND_MIXER_PHONEIN)
#define SOUND_MASK_PHONEOUT   (1 << SOUND_MIXER_PHONEOUT)
#define SOUND_MASK_RADIO   (1 << SOUND_MIXER_RADIO)
#define SOUND_MASK_VIDEO   (1 << SOUND_MIXER_VIDEO)
#define SOUND_MASK_MONITOR   (1 << SOUND_MIXER_MONITOR)
#define SOUND_MASK_MUTE   (1 << SOUND_MIXER_MUTE)
#define SOUND_MASK_ENHANCE   (1 << SOUND_MIXER_ENHANCE)
#define SOUND_MASK_LOUD   (1 << SOUND_MIXER_LOUD)
#define MIXER_READ(dev)
#define SOUND_MIXER_READ_VOLUME   MIXER_READ(SOUND_MIXER_VOLUME)
#define SOUND_MIXER_READ_BASS   MIXER_READ(SOUND_MIXER_BASS)
#define SOUND_MIXER_READ_TREBLE   MIXER_READ(SOUND_MIXER_TREBLE)
#define SOUND_MIXER_READ_SYNTH   MIXER_READ(SOUND_MIXER_SYNTH)
#define SOUND_MIXER_READ_PCM   MIXER_READ(SOUND_MIXER_PCM)
#define SOUND_MIXER_READ_SPEAKER   MIXER_READ(SOUND_MIXER_SPEAKER)
#define SOUND_MIXER_READ_LINE   MIXER_READ(SOUND_MIXER_LINE)
#define SOUND_MIXER_READ_MIC   MIXER_READ(SOUND_MIXER_MIC)
#define SOUND_MIXER_READ_CD   MIXER_READ(SOUND_MIXER_CD)
#define SOUND_MIXER_READ_IMIX   MIXER_READ(SOUND_MIXER_IMIX)
#define SOUND_MIXER_READ_ALTPCM   MIXER_READ(SOUND_MIXER_ALTPCM)
#define SOUND_MIXER_READ_RECLEV   MIXER_READ(SOUND_MIXER_RECLEV)
#define SOUND_MIXER_READ_IGAIN   MIXER_READ(SOUND_MIXER_IGAIN)
#define SOUND_MIXER_READ_OGAIN   MIXER_READ(SOUND_MIXER_OGAIN)
#define SOUND_MIXER_READ_LINE1   MIXER_READ(SOUND_MIXER_LINE1)
#define SOUND_MIXER_READ_LINE2   MIXER_READ(SOUND_MIXER_LINE2)
#define SOUND_MIXER_READ_LINE3   MIXER_READ(SOUND_MIXER_LINE3)
#define SOUND_MIXER_READ_DIGITAL1   MIXER_READ(SOUND_MIXER_DIGITAL1)
#define SOUND_MIXER_READ_DIGITAL2   MIXER_READ(SOUND_MIXER_DIGITAL2)
#define SOUND_MIXER_READ_DIGITAL3   MIXER_READ(SOUND_MIXER_DIGITAL3)
#define SOUND_MIXER_READ_PHONEIN   MIXER_READ(SOUND_MIXER_PHONEIN)
#define SOUND_MIXER_READ_PHONEOUT   MIXER_READ(SOUND_MIXER_PHONEOUT)
#define SOUND_MIXER_READ_RADIO   MIXER_READ(SOUND_MIXER_RADIO)
#define SOUND_MIXER_READ_VIDEO   MIXER_READ(SOUND_MIXER_VIDEO)
#define SOUND_MIXER_READ_MONITOR   MIXER_READ(SOUND_MIXER_MONITOR)
#define SOUND_MIXER_READ_MUTE   MIXER_READ(SOUND_MIXER_MUTE)
#define SOUND_MIXER_READ_ENHANCE   MIXER_READ(SOUND_MIXER_ENHANCE)
#define SOUND_MIXER_READ_LOUD   MIXER_READ(SOUND_MIXER_LOUD)
#define SOUND_MIXER_READ_RECSRC   MIXER_READ(SOUND_MIXER_RECSRC)
#define SOUND_MIXER_READ_DEVMASK   MIXER_READ(SOUND_MIXER_DEVMASK)
#define SOUND_MIXER_READ_RECMASK   MIXER_READ(SOUND_MIXER_RECMASK)
#define SOUND_MIXER_READ_STEREODEVS   MIXER_READ(SOUND_MIXER_STEREODEVS)
#define SOUND_MIXER_READ_CAPS   MIXER_READ(SOUND_MIXER_CAPS)
#define MIXER_WRITE(dev)
#define SOUND_MIXER_WRITE_VOLUME   MIXER_WRITE(SOUND_MIXER_VOLUME)
#define SOUND_MIXER_WRITE_BASS   MIXER_WRITE(SOUND_MIXER_BASS)
#define SOUND_MIXER_WRITE_TREBLE   MIXER_WRITE(SOUND_MIXER_TREBLE)
#define SOUND_MIXER_WRITE_SYNTH   MIXER_WRITE(SOUND_MIXER_SYNTH)
#define SOUND_MIXER_WRITE_PCM   MIXER_WRITE(SOUND_MIXER_PCM)
#define SOUND_MIXER_WRITE_SPEAKER   MIXER_WRITE(SOUND_MIXER_SPEAKER)
#define SOUND_MIXER_WRITE_LINE   MIXER_WRITE(SOUND_MIXER_LINE)
#define SOUND_MIXER_WRITE_MIC   MIXER_WRITE(SOUND_MIXER_MIC)
#define SOUND_MIXER_WRITE_CD   MIXER_WRITE(SOUND_MIXER_CD)
#define SOUND_MIXER_WRITE_IMIX   MIXER_WRITE(SOUND_MIXER_IMIX)
#define SOUND_MIXER_WRITE_ALTPCM   MIXER_WRITE(SOUND_MIXER_ALTPCM)
#define SOUND_MIXER_WRITE_RECLEV   MIXER_WRITE(SOUND_MIXER_RECLEV)
#define SOUND_MIXER_WRITE_IGAIN   MIXER_WRITE(SOUND_MIXER_IGAIN)
#define SOUND_MIXER_WRITE_OGAIN   MIXER_WRITE(SOUND_MIXER_OGAIN)
#define SOUND_MIXER_WRITE_LINE1   MIXER_WRITE(SOUND_MIXER_LINE1)
#define SOUND_MIXER_WRITE_LINE2   MIXER_WRITE(SOUND_MIXER_LINE2)
#define SOUND_MIXER_WRITE_LINE3   MIXER_WRITE(SOUND_MIXER_LINE3)
#define SOUND_MIXER_WRITE_DIGITAL1   MIXER_WRITE(SOUND_MIXER_DIGITAL1)
#define SOUND_MIXER_WRITE_DIGITAL2   MIXER_WRITE(SOUND_MIXER_DIGITAL2)
#define SOUND_MIXER_WRITE_DIGITAL3   MIXER_WRITE(SOUND_MIXER_DIGITAL3)
#define SOUND_MIXER_WRITE_PHONEIN   MIXER_WRITE(SOUND_MIXER_PHONEIN)
#define SOUND_MIXER_WRITE_PHONEOUT   MIXER_WRITE(SOUND_MIXER_PHONEOUT)
#define SOUND_MIXER_WRITE_RADIO   MIXER_WRITE(SOUND_MIXER_RADIO)
#define SOUND_MIXER_WRITE_VIDEO   MIXER_WRITE(SOUND_MIXER_VIDEO)
#define SOUND_MIXER_WRITE_MONITOR   MIXER_WRITE(SOUND_MIXER_MONITOR)
#define SOUND_MIXER_WRITE_MUTE   MIXER_WRITE(SOUND_MIXER_MUTE)
#define SOUND_MIXER_WRITE_ENHANCE   MIXER_WRITE(SOUND_MIXER_ENHANCE)
#define SOUND_MIXER_WRITE_LOUD   MIXER_WRITE(SOUND_MIXER_LOUD)
#define SOUND_MIXER_WRITE_RECSRC   MIXER_WRITE(SOUND_MIXER_RECSRC)
#define SOUND_MIXER_INFO   _IOR('M', 101, mixer_info)
#define LEFT_CHN   0
#define RIGHT_CHN   1
#define EV_SEQ_LOCAL   0x80
#define EV_TIMING   0x81
#define EV_CHN_COMMON   0x92
#define EV_CHN_VOICE   0x93
#define EV_SYSEX   0x94
#define MIDI_NOTEOFF   0x80
#define MIDI_NOTEON   0x90
#define MIDI_KEY_PRESSURE   0xA0
#define MIDI_CTL_CHANGE   0xB0
#define MIDI_PGM_CHANGE   0xC0
#define MIDI_CHN_PRESSURE   0xD0
#define MIDI_PITCH_BEND   0xE0
#define MIDI_SYSTEM_PREFIX   0xF0
#define TMR_WAIT_REL   1 /* Time relative to the prev time */
#define TMR_WAIT_ABS   2 /* Absolute time since TMR_START */
#define TMR_STOP   3
#define TMR_START   4
#define TMR_CONTINUE   5
#define TMR_TEMPO   6
#define TMR_ECHO   8
#define TMR_CLOCK   9 /* MIDI clock */
#define TMR_SPP   10 /* Song position pointer */
#define TMR_TIMESIG   11 /* Time signature */
#define LOCL_STARTAUDIO   1
#define SEQ_DEFINEBUF(len)
#define SEQ_USE_EXTBUF()
#define SEQ_DECLAREBUF()
#define SEQ_PM_DEFINES   struct patmgr_info _pm_info
#define _SEQ_NEEDBUF(len)
#define _SEQ_ADVBUF(len)
#define SEQ_DUMPBUF   seqbuf_dump
#define PM_LOAD_PATCH(dev, bank, pgm)
#define PM_LOAD_PATCHES(dev, bank, pgm)
#define SEQ_VOLUME_MODE(dev, mode)
#define _CHN_VOICE(dev, event, chn, note, parm)
#define SEQ_START_NOTE(dev, chn, note, vol)
#define SEQ_STOP_NOTE(dev, chn, note, vol)
#define SEQ_KEY_PRESSURE(dev, chn, note, pressure)
#define _CHN_COMMON(dev, event, chn, p1, p2, w14)
#define SEQ_SYSEX(dev, buf, len)
#define SEQ_CHN_PRESSURE(dev, chn, pressure)
#define SEQ_SET_PATCH(dev, chn, patch)
#define SEQ_CONTROL(dev, chn, controller, value)
#define SEQ_BENDER(dev, chn, value)
#define SEQ_V2_X_CONTROL(dev, voice, controller, value)
#define SEQ_PITCHBEND(dev, voice, value)
#define SEQ_BENDER_RANGE(dev, voice, value)
#define SEQ_EXPRESSION(dev, voice, value)
#define SEQ_MAIN_VOLUME(dev, voice, value)
#define SEQ_PANNING(dev, voice, pos)
#define _TIMER_EVENT(ev, parm)
#define SEQ_START_TIMER()
#define SEQ_STOP_TIMER()
#define SEQ_CONTINUE_TIMER()
#define SEQ_WAIT_TIME(ticks)
#define SEQ_DELTA_TIME(ticks)
#define SEQ_ECHO_BACK(key)
#define SEQ_SET_TEMPO(value)
#define SEQ_SONGPOS(pos)
#define SEQ_TIME_SIGNATURE(sig)
#define _LOCAL_EVENT(ev, parm)
#define SEQ_PLAYAUDIO(devmask)
#define SEQ_MIDIOUT(device, byte)
#define SEQ_WRPATCH(patchx, len)
#define SEQ_WRPATCH2(patchx, len)
#define SNDCTL_DSP_SAMPLESIZE   SNDCTL_DSP_SETFMT
#define SOUND_PCM_WRITE_BITS   SNDCTL_DSP_SETFMT
#define SOUND_PCM_SETFMT   SNDCTL_DSP_SETFMT
#define SOUND_PCM_WRITE_RATE   SNDCTL_DSP_SPEED
#define SOUND_PCM_POST   SNDCTL_DSP_POST
#define SOUND_PCM_RESET   SNDCTL_DSP_RESET
#define SOUND_PCM_SYNC   SNDCTL_DSP_SYNC
#define SOUND_PCM_SUBDIVIDE   SNDCTL_DSP_SUBDIVIDE
#define SOUND_PCM_SETFRAGMENT   SNDCTL_DSP_SETFRAGMENT
#define SOUND_PCM_GETFMTS   SNDCTL_DSP_GETFMTS
#define SOUND_PCM_GETOSPACE   SNDCTL_DSP_GETOSPACE
#define SOUND_PCM_GETISPACE   SNDCTL_DSP_GETISPACE
#define SOUND_PCM_NONBLOCK   SNDCTL_DSP_NONBLOCK
#define SOUND_PCM_GETCAPS   SNDCTL_DSP_GETCAPS
#define SOUND_PCM_GETTRIGGER   SNDCTL_DSP_GETTRIGGER
#define SOUND_PCM_SETTRIGGER   SNDCTL_DSP_SETTRIGGER
#define SOUND_PCM_SETSYNCRO   SNDCTL_DSP_SETSYNCRO
#define SOUND_PCM_GETIPTR   SNDCTL_DSP_GETIPTR
#define SOUND_PCM_GETOPTR   SNDCTL_DSP_GETOPTR
#define SOUND_PCM_MAPINBUF   SNDCTL_DSP_MAPINBUF
#define SOUND_PCM_MAPOUTBUF   SNDCTL_DSP_MAPOUTBUF
#define SOUND_VERSION   0x040000
#define OSS_LONGNAME_SIZE   64
#define OSS_LABEL_SIZE   16
#define OSS_DEVNODE_SIZE   32
#define SNDCTL_DSP_GETPLAYVOL   _IOR ('P', 24, int)
#define SNDCTL_DSP_SETPLAYVOL   _IOWR('P', 24, int)
#define SNDCTL_DSP_GETERROR   _IOR ('P', 25, audio_errinfo)
#define SNDCTL_DSP_SYNCGROUP   _IOWR('P', 28, oss_syncgroup)
#define SNDCTL_DSP_SYNCSTART   _IOW ('P', 29, int)
#define SNDCTL_DSP_COOKEDMODE   _IOW ('P', 30, int)
#define SNDCTL_DSP_SILENCE   _IO ('P', 31)
#define SNDCTL_DSP_SKIP   _IO ('P', 32)
#define SNDCTL_DSP_HALT_INPUT   _IO ('P', 33)
#define SNDCTL_DSP_RESET_INPUT   SNDCTL_DSP_HALT_INPUT /* Old name */
#define SNDCTL_DSP_HALT_OUTPUT   _IO ('P', 34)
#define SNDCTL_DSP_RESET_OUTPUT   SNDCTL_DSP_HALT_OUTPUT /* Old name */
#define SNDCTL_DSP_LOW_WATER   _IOW ('P', 34, int)
#define SNDCTL_DSP_CURRENT_IPTR   _IOR ('P', 35, oss_count_t)
#define SNDCTL_DSP_CURRENT_OPTR   _IOR ('P', 36, oss_count_t)
#define SNDCTL_DSP_GET_RECSRC_NAMES   _IOR ('P', 37, oss_mixer_enuminfo)
#define SNDCTL_DSP_GET_RECSRC   _IOR ('P', 38, int)
#define SNDCTL_DSP_SET_RECSRC   _IOWR('P', 38, int)
#define SNDCTL_DSP_GET_PLAYTGT_NAMES   _IOR ('P', 39, oss_mixer_enuminfo)
#define SNDCTL_DSP_GET_PLAYTGT   _IOR ('P', 40, int)
#define SNDCTL_DSP_SET_PLAYTGT   _IOWR('P', 40, int)
#define SNDCTL_DSP_GETRECVOL   _IOR ('P', 41, int)
#define SNDCTL_DSP_SETRECVOL   _IOWR('P', 41, int)
#define SNDCTL_DSP_GET_CHNORDER   _IOR ('P', 42, unsigned long long)
#define SNDCTL_DSP_SET_CHNORDER   _IOWR('P', 42, unsigned long long)
#define CHID_UNDEF   0
#define CHID_L   1 # define CHID_R 2
#define CHID_C   3
#define CHID_LFE   4
#define CHID_LS   5
#define CHID_RS   6
#define CHID_LR   7
#define CHID_RR   8
#define CHNORDER_UNDEF   0x0000000000000000ULL
#define CHNORDER_NORMAL   0x0000000087654321ULL
#define MAX_PEAK_CHANNELS   128
#define SNDCTL_DSP_GETIPEAKS   _IOR('P', 43, oss_peaks_t)
#define SNDCTL_DSP_GETOPEAKS   _IOR('P', 44, oss_peaks_t)
#define SNDCTL_DSP_POLICY   _IOW('P', 45, int) /* See the manual */
#define OSS_GETVERSION   _IOR ('M', 118, int)
#define MIXT_DEVROOT   0 /* Device root entry */
#define MIXT_GROUP   1 /* Controller group */
#define MIXT_ONOFF   2 /* OFF (0) or ON (1) */
#define MIXT_ENUM   3 /* Enumerated (0 to maxvalue) */
#define MIXT_MONOSLIDER   4 /* Mono slider (0 to 100) */
#define MIXT_STEREOSLIDER   5 /* Stereo slider (dual 0 to 100) */
#define MIXT_MESSAGE   6 /* (Readable) textual message */
#define MIXT_MONOVU   7 /* VU meter value (mono) */
#define MIXT_STEREOVU   8 /* VU meter value (stereo) */
#define MIXT_MONOPEAK   9 /* VU meter peak value (mono) */
#define MIXT_STEREOPEAK   10 /* VU meter peak value (stereo) */
#define MIXT_RADIOGROUP   11 /* Radio button group */
#define MIXT_MARKER   12 /* Separator between normal and extension entries */
#define MIXT_VALUE   13 /* Decimal value entry */
#define MIXT_HEXVALUE   14 /* Hexadecimal value entry */
#define MIXT_MONODB   15 /* Mono atten. slider (0 to -144) */
#define MIXT_STEREODB   16 /* Stereo atten. slider (dual 0 to -144) */
#define MIXT_SLIDER   17 /* Slider (mono) with full integer range */
#define MIXT_3D   18
#define MIXF_READABLE   0x00000001 /* Has readable value */
#define MIXF_WRITEABLE   0x00000002 /* Has writeable value */
#define MIXF_POLL   0x00000004 /* May change itself */
#define MIXF_HZ   0x00000008 /* Herz scale */
#define MIXF_STRING   0x00000010 /* Use dynamic extensions for value */
#define MIXF_DYNAMIC   0x00000010 /* Supports dynamic extensions */
#define MIXF_OKFAIL   0x00000020 /* Interpret value as 1=OK, 0=FAIL */
#define MIXF_FLAT   0x00000040 /* Flat vertical space requirements */
#define MIXF_LEGACY   0x00000080 /* Legacy mixer control group */
#define MIXEXT_SCOPE_MASK   0x0000003f
#define MIXEXT_SCOPE_OTHER   0x00000000
#define MIXEXT_SCOPE_INPUT   0x00000001
#define MIXEXT_SCOPE_OUTPUT   0x00000002
#define MIXEXT_SCOPE_MONITOR   0x00000003
#define MIXEXT_SCOPE_RECSWITCH   0x00000004
#define OSS_ENUM_MAXVALUE   255
#define OPEN_READ   PCM_ENABLE_INPUT
#define OPEN_WRITE   PCM_ENABLE_OUTPUT
#define OPEN_READWRITE   (OPEN_READ|OPEN_WRITE)
#define OSS_MAX_SAMPLE_RATES   20 /* Cannot be changed */
#define MIXER_CAP_VIRTUAL   0x00000001
#define MIDI_CAP_MPU401   0x00000001 /**** OBSOLETE ****/
#define MIDI_CAP_INPUT   0x00000002
#define MIDI_CAP_OUTPUT   0x00000004
#define MIDI_CAP_INOUT   (MIDI_CAP_INPUT|MIDI_CAP_OUTPUT)
#define MIDI_CAP_VIRTUAL   0x00000008 /* Pseudo device */
#define MIDI_CAP_MTCINPUT   0x00000010 /* Supports SNDCTL_MIDI_MTCINPUT */
#define MIDI_CAP_CLIENT   0x00000020 /* Virtual client side device */
#define MIDI_CAP_SERVER   0x00000040 /* Virtual server side device */
#define MIDI_CAP_INTERNAL   0x00000080 /* Internal (synth) device */
#define MIDI_CAP_EXTERNAL   0x00000100 /* external (MIDI port) device */
#define MIDI_CAP_PTOP   0x00000200 /* Point to point link to one device */
#define MIDI_CAP_MTC   0x00000400 /* MTC/SMPTE (control) device */
#define SNDCTL_SYSINFO   _IOR ('X', 1, oss_sysinfo)
#define OSS_SYSINFO   SNDCTL_SYSINFO /* Old name */
#define SNDCTL_MIX_NRMIX   _IOR ('X', 2, int)
#define SNDCTL_MIX_NREXT   _IOWR('X', 3, int)
#define SNDCTL_MIX_EXTINFO   _IOWR('X', 4, oss_mixext)
#define SNDCTL_MIX_READ   _IOWR('X', 5, oss_mixer_value)
#define SNDCTL_MIX_WRITE   _IOWR('X', 6, oss_mixer_value)
#define SNDCTL_AUDIOINFO   _IOWR('X', 7, oss_audioinfo)
#define SNDCTL_MIX_ENUMINFO   _IOWR('X', 8, oss_mixer_enuminfo)
#define SNDCTL_MIDIINFO   _IOWR('X', 9, oss_midi_info)
#define SNDCTL_MIXERINFO   _IOWR('X',10, oss_mixerinfo)
#define SNDCTL_CARDINFO   _IOWR('X',11, oss_card_info)
#define SNDCTL_SETSONG   _IOW ('Y', 2, oss_longname_t)
#define SNDCTL_GETSONG   _IOR ('Y', 2, oss_longname_t)
#define SNDCTL_SETNAME   _IOW ('Y', 3, oss_longname_t)
#define SNDCTL_SETLABEL   _IOW ('Y', 4, oss_label_t)
#define SNDCTL_GETLABEL   _IOR ('Y', 4, oss_label_t)

Typedefs

typedef struct _snd_chan_param snd_chan_param
typedef struct _snd_mix_param snd_mix_param
typedef struct _snd_sync_parm snd_sync_parm
typedef struct _snd_capabilities snd_capabilities
typedef u_char sbi_instr_data[32]
typedef struct audio_buf_info audio_buf_info
typedef struct count_info count_info
typedef struct buffmem_desc buffmem_desc
typedef struct copr_buffer copr_buffer
typedef struct copr_debug_buf copr_debug_buf
typedef struct copr_msg copr_msg
typedef struct mixer_info mixer_info
typedef char oss_longname_t[OSS_LONGNAME_SIZE]
typedef char oss_label_t[OSS_LABEL_SIZE]
typedef char oss_devnode_t[OSS_DEVNODE_SIZE]
typedef struct audio_errinfo audio_errinfo
typedef struct oss_syncgroup oss_syncgroup
typedef unsigned short oss_peaks_t[MAX_PEAK_CHANNELS]
typedef struct oss_sysinfo oss_sysinfo
 Argument for SNDCTL_SYSINFO ioctl.
typedef struct oss_mixext oss_mixext
typedef struct oss_mixext_root oss_mixext_root
typedef struct oss_mixer_value oss_mixer_value
typedef struct oss_mixer_enuminfo oss_mixer_enuminfo
typedef struct oss_audioinfo oss_audioinfo
 Argument for SNDCTL_AUDIOINFO ioctl.
typedef struct oss_mixerinfo oss_mixerinfo
typedef struct oss_midi_info oss_midi_info
typedef struct oss_card_info oss_card_info

Functions

void seqbuf_dump (void)

Macro Definition Documentation

◆ _CHN_COMMON

#define _CHN_COMMON ( dev,
event,
chn,
p1,
p2,
w14 )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr] = EV_CHN_COMMON;\
_seqbuf[_seqbufptr+1] = (dev);\
_seqbuf[_seqbufptr+2] = (event);\
_seqbuf[_seqbufptr+3] = (chn);\
_seqbuf[_seqbufptr+4] = (p1);\
_seqbuf[_seqbufptr+5] = (p2);\
*(short *)&_seqbuf[_seqbufptr+6] = (w14);\
_SEQ_ADVBUF(8);}
#define EV_CHN_COMMON
Definition soundcard.h:1113

◆ _CHN_VOICE

#define _CHN_VOICE ( dev,
event,
chn,
note,
parm )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr] = EV_CHN_VOICE;\
_seqbuf[_seqbufptr+1] = (dev);\
_seqbuf[_seqbufptr+2] = (event);\
_seqbuf[_seqbufptr+3] = (chn);\
_seqbuf[_seqbufptr+4] = (note);\
_seqbuf[_seqbufptr+5] = (parm);\
_seqbuf[_seqbufptr+6] = (0);\
_seqbuf[_seqbufptr+7] = 0;\
_SEQ_ADVBUF(8);}
#define EV_CHN_VOICE
Definition soundcard.h:1114
void DWORD DWORD LPVOID parm
Definition swell-functions.h:807

◆ _LOCAL_EVENT

#define _LOCAL_EVENT ( ev,
parm )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr+0] = EV_SEQ_LOCAL; \
_seqbuf[_seqbufptr+1] = (ev); \
_seqbuf[_seqbufptr+2] = 0;\
_seqbuf[_seqbufptr+3] = 0;\
*(u_int *)&_seqbuf[_seqbufptr+4] = (parm); \
_SEQ_ADVBUF(8); \
}
#define EV_SEQ_LOCAL
Definition soundcard.h:1111

◆ _PATCHKEY

#define _PATCHKEY ( id)
Value:
((id<<8)|0xfd)

◆ _PM_LOAD_PATCH

#define _PM_LOAD_PATCH   0x100

◆ _SEQ_ADVBUF

#define _SEQ_ADVBUF ( len)
Value:
_seqbufptr += len

◆ _SEQ_NEEDBUF

#define _SEQ_NEEDBUF ( len)
Value:
if ((_seqbufptr+(len)) > _seqbuflen) \
seqbuf_dump()

◆ _TIMER_EVENT

#define _TIMER_EVENT ( ev,
parm )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr+0] = EV_TIMING; \
_seqbuf[_seqbufptr+1] = (ev); \
_seqbuf[_seqbufptr+2] = 0;\
_seqbuf[_seqbufptr+3] = 0;\
*(u_int *)&_seqbuf[_seqbufptr+4] = (parm); \
_SEQ_ADVBUF(8); \
}
#define EV_TIMING
Definition soundcard.h:1112

◆ AFMT_A_LAW

#define AFMT_A_LAW   0x00000002 /* Logarithmic A-law */

◆ AFMT_AC3

#define AFMT_AC3   0x00000400 /* Dolby Digital AC3 */

◆ AFMT_FULLDUPLEX

#define AFMT_FULLDUPLEX   0x80000000 /* can do full duplex */

◆ AFMT_IMA_ADPCM

#define AFMT_IMA_ADPCM
Value:
0x00000004 /* A 4:1 compressed format where 16-bit
* squence represented using the
* the average 4 bits per sample */

◆ AFMT_MPEG

#define AFMT_MPEG   0x00000200 /* MPEG MP2/MP3 audio */

◆ AFMT_MU_LAW

#define AFMT_MU_LAW   0x00000001 /* Logarithmic mu-law */

◆ AFMT_QUERY

#define AFMT_QUERY   0x00000000 /* Return current format */

◆ AFMT_S16_BE

#define AFMT_S16_BE   0x00000020 /* Big endian signed 16-bit */

◆ AFMT_S16_LE

#define AFMT_S16_LE   0x00000010 /* Little endian signed 16-bit */

◆ AFMT_S16_NE

#define AFMT_S16_NE   AFMT_S16_LE /* native endian signed 16 */

◆ AFMT_S24_BE

#define AFMT_S24_BE   0x00020000 /* Big endian signed 24-bit */

◆ AFMT_S24_LE

#define AFMT_S24_LE   0x00010000 /* Little endian signed 24-bit */

◆ AFMT_S32_BE

#define AFMT_S32_BE   0x00002000 /* Big endian signed 32-bit */

◆ AFMT_S32_LE

#define AFMT_S32_LE   0x00001000 /* Little endian signed 32-bit */

◆ AFMT_S8

#define AFMT_S8   0x00000040 /* Signed 8-bit */

◆ AFMT_STEREO

#define AFMT_STEREO   0x10000000 /* can do/want stereo */

◆ AFMT_U16_BE

#define AFMT_U16_BE   0x00000100 /* Big endian unsigned 16-bit */

◆ AFMT_U16_LE

#define AFMT_U16_LE   0x00000080 /* Little endian unsigned 16-bit */

◆ AFMT_U24_BE

#define AFMT_U24_BE   0x00080000 /* Big endian unsigned 24-bit */

◆ AFMT_U24_LE

#define AFMT_U24_LE   0x00040000 /* Little endian unsigned 24-bit */

◆ AFMT_U32_BE

#define AFMT_U32_BE   0x00008000 /* Big endian unsigned 32-bit */

◆ AFMT_U32_LE

#define AFMT_U32_LE   0x00004000 /* Little endian unsigned 32-bit */

◆ AFMT_U8

#define AFMT_U8   0x00000008 /* Unsigned 8-bit */

◆ AFMT_WEIRD

#define AFMT_WEIRD   0x20000000 /* weird hardware... */

◆ AIOGCAP

#define AIOGCAP   _IOWR('A', 15, snd_capabilities) /* get capabilities */

◆ AIOGFMT

#define AIOGFMT   _IOR('f', 12, snd_chan_param) /* get format */

◆ AIOGMIX

#define AIOGMIX   _IOWR('A', 13, snd_mix_param) /* return mixer status */

◆ AIOGSIZE

#define AIOGSIZE   _IOR('A', 11, struct snd_size)/* read current blocksize */

◆ AIONWRITE

#define AIONWRITE   _IOR('A', 10, int) /* get # bytes to write */

◆ AIOSFMT

#define AIOSFMT   _IOWR('f', 12, snd_chan_param) /* sets format */

◆ AIOSMIX

#define AIOSMIX   _IOWR('A', 14, snd_mix_param) /* sets mixer status */

◆ AIOSSIZE

#define AIOSSIZE   _IOWR('A', 11, struct snd_size) /* sets blocksize */

◆ AIOSTOP

#define AIOSTOP   _IOWR ('A', 15, int)

◆ AIOSYNC

#define AIOSYNC   _IOWR ('A', 15, snd_sync_parm) /* misc. synchronization */

◆ AIOSYNC_CAPTURE

#define AIOSYNC_CAPTURE   0x2 /* capture chan */

◆ AIOSYNC_FREE

#define AIOSYNC_FREE   0x800

◆ AIOSYNC_PLAY

#define AIOSYNC_PLAY   0x1 /* play chan */

◆ AIOSYNC_READY

#define AIOSYNC_READY   0x400

◆ AIOSYNC_SELECT

#define AIOSYNC_SELECT   0x200

◆ AIOSYNC_SIGNAL

#define AIOSYNC_SIGNAL   0x100

◆ CHID_C

#define CHID_C   3

◆ CHID_L

#define CHID_L   1 # define CHID_R 2

◆ CHID_LFE

#define CHID_LFE   4

◆ CHID_LR

#define CHID_LR   7

◆ CHID_LS

#define CHID_LS   5

◆ CHID_RR

#define CHID_RR   8

◆ CHID_RS

#define CHID_RS   6

◆ CHID_UNDEF

#define CHID_UNDEF   0

◆ CHNORDER_NORMAL

#define CHNORDER_NORMAL   0x0000000087654321ULL

◆ CHNORDER_UNDEF

#define CHNORDER_UNDEF   0x0000000000000000ULL

◆ CPF_FIRST

#define CPF_FIRST   0x0001 /* First block */

◆ CPF_LAST

#define CPF_LAST   0x0002 /* Last block */

◆ CPF_NONE

#define CPF_NONE   0x0000

◆ CTL_BALANCE

#define CTL_BALANCE   0x08

◆ CTL_BANK_SELECT

#define CTL_BANK_SELECT   0x00

◆ CTL_BREATH

#define CTL_BREATH   0x02

◆ CTL_CELESTE_DEPTH

#define CTL_CELESTE_DEPTH   CTL_DETUNE_DEPTH /* Alias for the above one */

◆ CTL_CHORUS_DEPTH

#define CTL_CHORUS_DEPTH   0x5d

◆ CTL_DAMPER_PEDAL

#define CTL_DAMPER_PEDAL   0x40

◆ CTL_DATA_DECREMENT

#define CTL_DATA_DECREMENT   0x61

◆ CTL_DATA_ENTRY

#define CTL_DATA_ENTRY   0x06

◆ CTL_DATA_INCREMENT

#define CTL_DATA_INCREMENT   0x60

◆ CTL_DETUNE_DEPTH

#define CTL_DETUNE_DEPTH   0x5e

◆ CTL_EXPRESSION

#define CTL_EXPRESSION   0x0b

◆ CTL_EXT_EFF_DEPTH

#define CTL_EXT_EFF_DEPTH   0x5b

◆ CTL_FOOT

#define CTL_FOOT   0x04

◆ CTL_GENERAL_PURPOSE1

#define CTL_GENERAL_PURPOSE1   0x10

◆ CTL_GENERAL_PURPOSE2

#define CTL_GENERAL_PURPOSE2   0x11

◆ CTL_GENERAL_PURPOSE3

#define CTL_GENERAL_PURPOSE3   0x12

◆ CTL_GENERAL_PURPOSE4

#define CTL_GENERAL_PURPOSE4   0x13

◆ CTL_GENERAL_PURPOSE5

#define CTL_GENERAL_PURPOSE5   0x50

◆ CTL_GENERAL_PURPOSE6

#define CTL_GENERAL_PURPOSE6   0x51

◆ CTL_GENERAL_PURPOSE7

#define CTL_GENERAL_PURPOSE7   0x52

◆ CTL_GENERAL_PURPOSE8

#define CTL_GENERAL_PURPOSE8   0x53

◆ CTL_HOLD

#define CTL_HOLD   CTL_DAMPER_PEDAL /* Alias */

◆ CTL_HOLD2

#define CTL_HOLD2   0x45

◆ CTL_MAIN_VOLUME

#define CTL_MAIN_VOLUME   0x07

◆ CTL_MODWHEEL

#define CTL_MODWHEEL   0x01

◆ CTL_NONREG_PARM_NUM_LSB

#define CTL_NONREG_PARM_NUM_LSB   0x62

◆ CTL_NONREG_PARM_NUM_MSB

#define CTL_NONREG_PARM_NUM_MSB   0x63

◆ CTL_PAN

#define CTL_PAN   0x0a

◆ CTL_PHASER_DEPTH

#define CTL_PHASER_DEPTH   0x5f

◆ CTL_PORTAMENTO

#define CTL_PORTAMENTO   0x41

◆ CTL_PORTAMENTO_TIME

#define CTL_PORTAMENTO_TIME   0x05

◆ CTL_REGIST_PARM_NUM_LSB

#define CTL_REGIST_PARM_NUM_LSB   0x64

◆ CTL_REGIST_PARM_NUM_MSB

#define CTL_REGIST_PARM_NUM_MSB   0x65

◆ CTL_SOFT_PEDAL

#define CTL_SOFT_PEDAL   0x43

◆ CTL_SOSTENUTO

#define CTL_SOSTENUTO   0x42

◆ CTL_SUSTAIN

#define CTL_SUSTAIN   CTL_DAMPER_PEDAL /* Alias */

◆ CTL_TREMOLO_DEPTH

#define CTL_TREMOLO_DEPTH   0x5c

◆ CTRL_EXPRESSION

#define CTRL_EXPRESSION   253 /* Obsolete */

◆ CTRL_MAIN_VOLUME

#define CTRL_MAIN_VOLUME   252 /* Obsolete */

◆ CTRL_PITCH_BENDER

#define CTRL_PITCH_BENDER   255

◆ CTRL_PITCH_BENDER_RANGE

#define CTRL_PITCH_BENDER_RANGE   254

◆ DSP_CAP_BATCH

#define DSP_CAP_BATCH   0x00000400

◆ DSP_CAP_COPROC

#define DSP_CAP_COPROC   0x00000800

◆ DSP_CAP_DUPLEX

#define DSP_CAP_DUPLEX   0x00000100 /* Full duplex record/playback */

◆ DSP_CAP_MMAP

#define DSP_CAP_MMAP   0x00002000 /* Supports mmap() */

◆ DSP_CAP_REALTIME

#define DSP_CAP_REALTIME   0x00000200 /* Real time capability */

◆ DSP_CAP_REVISION

#define DSP_CAP_REVISION   0x000000ff /* revision level (0 to 255) */

◆ DSP_CAP_TRIGGER

#define DSP_CAP_TRIGGER   0x00001000 /* Supports SETTRIGGER */

◆ EV_CHN_COMMON

#define EV_CHN_COMMON   0x92

◆ EV_CHN_VOICE

#define EV_CHN_VOICE   0x93

◆ EV_SEQ_LOCAL

#define EV_SEQ_LOCAL   0x80

◆ EV_SYSEX

#define EV_SYSEX   0x94

◆ EV_TIMING

#define EV_TIMING   0x81

◆ FM_PATCH

#define FM_PATCH   _PATCHKEY(0x01)

◆ FM_TYPE_ADLIB

#define FM_TYPE_ADLIB   0x00

◆ FM_TYPE_OPL3

#define FM_TYPE_OPL3   0x01

◆ GUS_PATCH

#define GUS_PATCH   _PATCHKEY(0x04)

◆ LEFT_CHN

#define LEFT_CHN   0

◆ LOCL_STARTAUDIO

#define LOCL_STARTAUDIO   1

◆ MAUI_PATCH

#define MAUI_PATCH   _PATCHKEY(0x06)

◆ MAX_PEAK_CHANNELS

#define MAX_PEAK_CHANNELS   128

◆ MIDI_CAP_CLIENT

#define MIDI_CAP_CLIENT   0x00000020 /* Virtual client side device */

◆ MIDI_CAP_EXTERNAL

#define MIDI_CAP_EXTERNAL   0x00000100 /* external (MIDI port) device */

◆ MIDI_CAP_INOUT

#define MIDI_CAP_INOUT   (MIDI_CAP_INPUT|MIDI_CAP_OUTPUT)

◆ MIDI_CAP_INPUT

#define MIDI_CAP_INPUT   0x00000002

◆ MIDI_CAP_INTERNAL

#define MIDI_CAP_INTERNAL   0x00000080 /* Internal (synth) device */

◆ MIDI_CAP_MPU401

#define MIDI_CAP_MPU401   0x00000001 /**** OBSOLETE ****/

◆ MIDI_CAP_MTC

#define MIDI_CAP_MTC   0x00000400 /* MTC/SMPTE (control) device */

◆ MIDI_CAP_MTCINPUT

#define MIDI_CAP_MTCINPUT   0x00000010 /* Supports SNDCTL_MIDI_MTCINPUT */

◆ MIDI_CAP_OUTPUT

#define MIDI_CAP_OUTPUT   0x00000004

◆ MIDI_CAP_PTOP

#define MIDI_CAP_PTOP   0x00000200 /* Point to point link to one device */

◆ MIDI_CAP_SERVER

#define MIDI_CAP_SERVER   0x00000040 /* Virtual server side device */

◆ MIDI_CAP_VIRTUAL

#define MIDI_CAP_VIRTUAL   0x00000008 /* Pseudo device */

◆ MIDI_CHN_PRESSURE

#define MIDI_CHN_PRESSURE   0xD0

◆ MIDI_CTL_CHANGE

#define MIDI_CTL_CHANGE   0xB0

◆ MIDI_KEY_PRESSURE

#define MIDI_KEY_PRESSURE   0xA0

◆ MIDI_NOTEOFF

#define MIDI_NOTEOFF   0x80

◆ MIDI_NOTEON

#define MIDI_NOTEON   0x90

◆ MIDI_PGM_CHANGE

#define MIDI_PGM_CHANGE   0xC0

◆ MIDI_PITCH_BEND

#define MIDI_PITCH_BEND   0xE0

◆ MIDI_SYSTEM_PREFIX

#define MIDI_SYSTEM_PREFIX   0xF0

◆ MIDI_TYPE_MPU401

#define MIDI_TYPE_MPU401   0x401

◆ MIOGPASSTHRU

#define MIOGPASSTHRU   _IOWR('m', 4, int)

◆ MIOSPASSTHRU

#define MIOSPASSTHRU   _IOWR('m', 3, int)

◆ MIXER_CAP_VIRTUAL

#define MIXER_CAP_VIRTUAL   0x00000001

◆ MIXER_READ

#define MIXER_READ ( dev)
Value:
_IOR('M', dev, int)

◆ MIXER_WRITE

#define MIXER_WRITE ( dev)
Value:
_IOWR('M', dev, int)

◆ MIXEXT_SCOPE_INPUT

#define MIXEXT_SCOPE_INPUT   0x00000001

◆ MIXEXT_SCOPE_MASK

#define MIXEXT_SCOPE_MASK   0x0000003f

◆ MIXEXT_SCOPE_MONITOR

#define MIXEXT_SCOPE_MONITOR   0x00000003

◆ MIXEXT_SCOPE_OTHER

#define MIXEXT_SCOPE_OTHER   0x00000000

◆ MIXEXT_SCOPE_OUTPUT

#define MIXEXT_SCOPE_OUTPUT   0x00000002

◆ MIXEXT_SCOPE_RECSWITCH

#define MIXEXT_SCOPE_RECSWITCH   0x00000004

◆ MIXF_DYNAMIC

#define MIXF_DYNAMIC   0x00000010 /* Supports dynamic extensions */

◆ MIXF_FLAT

#define MIXF_FLAT   0x00000040 /* Flat vertical space requirements */

◆ MIXF_HZ

#define MIXF_HZ   0x00000008 /* Herz scale */

◆ MIXF_LEGACY

#define MIXF_LEGACY   0x00000080 /* Legacy mixer control group */

◆ MIXF_OKFAIL

#define MIXF_OKFAIL   0x00000020 /* Interpret value as 1=OK, 0=FAIL */

◆ MIXF_POLL

#define MIXF_POLL   0x00000004 /* May change itself */

◆ MIXF_READABLE

#define MIXF_READABLE   0x00000001 /* Has readable value */

◆ MIXF_STRING

#define MIXF_STRING   0x00000010 /* Use dynamic extensions for value */

◆ MIXF_WRITEABLE

#define MIXF_WRITEABLE   0x00000002 /* Has writeable value */

◆ MIXT_3D

#define MIXT_3D   18

◆ MIXT_DEVROOT

#define MIXT_DEVROOT   0 /* Device root entry */

◆ MIXT_ENUM

#define MIXT_ENUM   3 /* Enumerated (0 to maxvalue) */

◆ MIXT_GROUP

#define MIXT_GROUP   1 /* Controller group */

◆ MIXT_HEXVALUE

#define MIXT_HEXVALUE   14 /* Hexadecimal value entry */

◆ MIXT_MARKER

#define MIXT_MARKER   12 /* Separator between normal and extension entries */

◆ MIXT_MESSAGE

#define MIXT_MESSAGE   6 /* (Readable) textual message */

◆ MIXT_MONODB

#define MIXT_MONODB   15 /* Mono atten. slider (0 to -144) */

◆ MIXT_MONOPEAK

#define MIXT_MONOPEAK   9 /* VU meter peak value (mono) */

◆ MIXT_MONOSLIDER

#define MIXT_MONOSLIDER   4 /* Mono slider (0 to 100) */

◆ MIXT_MONOVU

#define MIXT_MONOVU   7 /* VU meter value (mono) */

◆ MIXT_ONOFF

#define MIXT_ONOFF   2 /* OFF (0) or ON (1) */

◆ MIXT_RADIOGROUP

#define MIXT_RADIOGROUP   11 /* Radio button group */

◆ MIXT_SLIDER

#define MIXT_SLIDER   17 /* Slider (mono) with full integer range */

◆ MIXT_STEREODB

#define MIXT_STEREODB   16 /* Stereo atten. slider (dual 0 to -144) */

◆ MIXT_STEREOPEAK

#define MIXT_STEREOPEAK   10 /* VU meter peak value (stereo) */

◆ MIXT_STEREOSLIDER

#define MIXT_STEREOSLIDER   5 /* Stereo slider (dual 0 to 100) */

◆ MIXT_STEREOVU

#define MIXT_STEREOVU   8 /* VU meter value (stereo) */

◆ MIXT_VALUE

#define MIXT_VALUE   13 /* Decimal value entry */

◆ OBSOLETE_GUS_PATCH

#define OBSOLETE_GUS_PATCH   _PATCHKEY(0x02)

◆ OPEN_READ

#define OPEN_READ   PCM_ENABLE_INPUT

◆ OPEN_READWRITE

#define OPEN_READWRITE   (OPEN_READ|OPEN_WRITE)

◆ OPEN_WRITE

#define OPEN_WRITE   PCM_ENABLE_OUTPUT

◆ OPL3_PATCH

#define OPL3_PATCH   _PATCHKEY(0x03)

◆ OSS_DEVNODE_SIZE

#define OSS_DEVNODE_SIZE   32

◆ OSS_ENUM_MAXVALUE

#define OSS_ENUM_MAXVALUE   255

◆ OSS_GETVERSION

#define OSS_GETVERSION   _IOR ('M', 118, int)

◆ OSS_LABEL_SIZE

#define OSS_LABEL_SIZE   16

◆ OSS_LONGNAME_SIZE

#define OSS_LONGNAME_SIZE   64

◆ OSS_MAX_SAMPLE_RATES

#define OSS_MAX_SAMPLE_RATES   20 /* Cannot be changed */

◆ OSS_SYSINFO

#define OSS_SYSINFO   SNDCTL_SYSINFO /* Old name */

◆ PCM_ENABLE_INPUT

#define PCM_ENABLE_INPUT   0x00000001

◆ PCM_ENABLE_OUTPUT

#define PCM_ENABLE_OUTPUT   0x00000002

◆ PM_E_CLOSED

#define PM_E_CLOSED   2 /* /dev/sequencer closed */

◆ PM_E_OPENED

#define PM_E_OPENED   1 /* /dev/sequencer opened */

◆ PM_E_PATCH_LOADED

#define PM_E_PATCH_LOADED   4 /* A patch has been loaded by appl */

◆ PM_E_PATCH_RESET

#define PM_E_PATCH_RESET   3 /* SNDCTL_RESETSAMPLES called */

◆ PM_ERROR

#define PM_ERROR   4 /* Error returned by the patmgr */

◆ PM_GET_DEVTYPE

#define PM_GET_DEVTYPE   1 /* Returns type of the patch mgr interface of dev */

◆ PM_GET_NRPGM

#define PM_GET_NRPGM   2 /* Returns max # of midi programs in parm1 */

◆ PM_GET_PATCH

#define PM_GET_PATCH   5 /* Return patch header of patch parm1 */

◆ PM_GET_PGM_PATCHES

#define PM_GET_PGM_PATCHES   4 /* Return list of patches of a program (parm1) */

◆ PM_GET_PGMMAP

#define PM_GET_PGMMAP   3 /* Returns map of loaded midi programs in data8 */

◆ PM_K_COMMAND

#define PM_K_COMMAND   2 /* Request from an application */

◆ PM_K_EVENT

#define PM_K_EVENT   1 /* Event from the /dev/sequencer driver */

◆ PM_K_RESPONSE

#define PM_K_RESPONSE   3 /* From patmgr to application */

◆ PM_LOAD_PATCH

#define PM_LOAD_PATCH ( dev,
bank,
pgm )
Value:
(SEQ_DUMPBUF(), _pm_info.command = _PM_LOAD_PATCH, \
_pm_info.device=dev, _pm_info.data.data8[0]=pgm, \
_pm_info.parm1 = bank, _pm_info.parm2 = 1, \
ioctl(seqfd, SNDCTL_PMGR_ACCESS, &_pm_info))
#define SEQ_DUMPBUF
Definition soundcard.h:1200
#define SNDCTL_PMGR_ACCESS
Definition soundcard.h:306
#define _PM_LOAD_PATCH
Definition soundcard.h:493

◆ PM_LOAD_PATCHES

#define PM_LOAD_PATCHES ( dev,
bank,
pgm )
Value:
(SEQ_DUMPBUF(), _pm_info.command = _PM_LOAD_PATCH, \
_pm_info.device=dev, bcopy( pgm, _pm_info.data.data8, 128), \
_pm_info.parm1 = bank, _pm_info.parm2 = 128, \
ioctl(seqfd, SNDCTL_PMGR_ACCESS, &_pm_info))

◆ PM_READ_PATCH

#define PM_READ_PATCH   7 /* Read patch (wave) data */

◆ PM_SET_PATCH

#define PM_SET_PATCH   6 /* Set patch header of patch parm1 */

◆ PM_WRITE_PATCH

#define PM_WRITE_PATCH   8 /* Write patch (wave) data */

◆ PMTYPE_FM2

#define PMTYPE_FM2   1 /* 2 OP fm */

◆ PMTYPE_FM4

#define PMTYPE_FM4   2 /* Mixed 4 or 2 op FM (OPL-3) */

◆ PMTYPE_WAVE

#define PMTYPE_WAVE   3 /* Wave table synthesizer (GUS) */

◆ PS_MANAGED

#define PS_MANAGED   3 /* Patch manager running */

◆ PS_MGR_NOT_OK

#define PS_MGR_NOT_OK   1 /* Plain patch support (no mgr) */

◆ PS_MGR_OK

#define PS_MGR_OK   2 /* Patch manager supported */

◆ PS_NO_PATCHES

#define PS_NO_PATCHES   0 /* No patch support on device */

◆ RIGHT_CHN

#define RIGHT_CHN   1

◆ SAMPLE_TYPE_AWE32

#define SAMPLE_TYPE_AWE32   0x20

◆ SAMPLE_TYPE_BASIC

#define SAMPLE_TYPE_BASIC   0x10

◆ SAMPLE_TYPE_GUS

#define SAMPLE_TYPE_GUS   SAMPLE_TYPE_BASIC

◆ SEQ_AFTERTOUCH

#define SEQ_AFTERTOUCH   9

◆ SEQ_BALANCE

#define SEQ_BALANCE   11

◆ SEQ_BENDER

#define SEQ_BENDER ( dev,
chn,
value )
Value:
static PuglViewHint int value
Definition pugl.h:1708
#define _CHN_COMMON(dev, event, chn, p1, p2, w14)
Definition soundcard.h:1271
#define MIDI_PITCH_BEND
Definition soundcard.h:1136

◆ SEQ_BENDER_RANGE

#define SEQ_BENDER_RANGE ( dev,
voice,
value )
Value:
#define SEQ_V2_X_CONTROL(dev, voice, controller, value)
Definition soundcard.h:1317
#define CTRL_PITCH_BENDER_RANGE
Definition soundcard.h:629

◆ SEQ_CHN_PRESSURE

#define SEQ_CHN_PRESSURE ( dev,
chn,
pressure )
Value:
_CHN_COMMON(dev, MIDI_CHN_PRESSURE, chn, pressure, 0, 0)
#define MIDI_CHN_PRESSURE
Definition soundcard.h:1135

◆ SEQ_CONTINUE_TIMER

#define SEQ_CONTINUE_TIMER ( )
Value:
#define TMR_CONTINUE
Definition soundcard.h:1147
#define _TIMER_EVENT(ev, parm)
Definition soundcard.h:1348

◆ SEQ_CONTROL

#define SEQ_CONTROL ( dev,
chn,
controller,
value )
Value:
Controller controller
Definition main.C:5
#define MIDI_CTL_CHANGE
Definition soundcard.h:1133

◆ SEQ_CONTROLLER

#define SEQ_CONTROLLER   10

◆ SEQ_DECLAREBUF

#define SEQ_DECLAREBUF ( )
Value:
#define SEQ_USE_EXTBUF()
Definition soundcard.h:1191

◆ SEQ_DEFINEBUF

#define SEQ_DEFINEBUF ( len)
Value:
u_char _seqbuf[len]; int _seqbuflen = len;int _seqbufptr = 0

◆ SEQ_DELTA_TIME

#define SEQ_DELTA_TIME ( ticks)
Value:
#define TMR_WAIT_REL
Definition soundcard.h:1143

◆ SEQ_DRUMOFF

#define SEQ_DRUMOFF   7 /*** OBSOLETE ***/

◆ SEQ_DRUMON

#define SEQ_DRUMON   6 /*** OBSOLETE ***/

◆ SEQ_DUMPBUF

#define SEQ_DUMPBUF   seqbuf_dump

◆ SEQ_ECHO

#define SEQ_ECHO   TMR_ECHO /* For synching programs with output */

◆ SEQ_ECHO_BACK

#define SEQ_ECHO_BACK ( key)
Value:
#define TMR_ECHO
Definition soundcard.h:1149
ZCONST char * key
Definition crypt.c:587

◆ SEQ_EXPRESSION

#define SEQ_EXPRESSION ( dev,
voice,
value )
Value:
SEQ_CONTROL(dev, voice, CTL_EXPRESSION, value*128)
#define SEQ_CONTROL(dev, chn, controller, value)
Definition soundcard.h:1310
#define CTL_EXPRESSION
Definition soundcard.h:579

◆ SEQ_EXTENDED

#define SEQ_EXTENDED   0xff /* Extended events (8 bytes) OBSOLETE */

◆ SEQ_FMNOTEOFF

#define SEQ_FMNOTEOFF   SEQ_NOTEOFF /* Just old name */

◆ SEQ_FMNOTEON

#define SEQ_FMNOTEON   SEQ_NOTEON

◆ SEQ_FMPGMCHANGE

#define SEQ_FMPGMCHANGE   SEQ_PGMCHANGE

◆ SEQ_FULLSIZE

#define SEQ_FULLSIZE   0xfd /* Long events */

◆ SEQ_KEY_PRESSURE

#define SEQ_KEY_PRESSURE ( dev,
chn,
note,
pressure )
Value:
_CHN_VOICE(dev, MIDI_KEY_PRESSURE, chn, note, pressure)
#define _CHN_VOICE(dev, event, chn, note, parm)
Definition soundcard.h:1246
#define MIDI_KEY_PRESSURE
Definition soundcard.h:1127

◆ SEQ_MAIN_VOLUME

#define SEQ_MAIN_VOLUME ( dev,
voice,
value )
Value:
SEQ_CONTROL(dev, voice, CTL_MAIN_VOLUME, (value*16383)/100)
#define CTL_MAIN_VOLUME
Definition soundcard.h:575

◆ SEQ_MIDIOUT

#define SEQ_MIDIOUT ( device,
byte )
Value:
{ \
_SEQ_NEEDBUF(4);\
_seqbuf[_seqbufptr] = SEQ_MIDIPUTC;\
_seqbuf[_seqbufptr+1] = (byte);\
_seqbuf[_seqbufptr+2] = (device);\
_seqbuf[_seqbufptr+3] = 0;\
_SEQ_ADVBUF(4);}
#define byte
Definition blargg_source.h:87
#define SEQ_MIDIPUTC
Definition soundcard.h:550

◆ SEQ_MIDIPUTC

#define SEQ_MIDIPUTC   5

◆ SEQ_NOTEOFF

#define SEQ_NOTEOFF   0

◆ SEQ_NOTEON

#define SEQ_NOTEON   1

◆ SEQ_PANNING

#define SEQ_PANNING ( dev,
voice,
pos )
Value:
SEQ_CONTROL(dev, voice, CTL_PAN, (pos+128) / 2)
#define CTL_PAN
Definition soundcard.h:578

◆ SEQ_PGMCHANGE

#define SEQ_PGMCHANGE   3

◆ SEQ_PITCHBEND

#define SEQ_PITCHBEND ( dev,
voice,
value )
Value:
#define CTRL_PITCH_BENDER
Definition soundcard.h:628

◆ SEQ_PLAYAUDIO

#define SEQ_PLAYAUDIO ( devmask)
Value:
#define _LOCAL_EVENT(ev, parm)
Definition soundcard.h:1372
#define LOCL_STARTAUDIO
Definition soundcard.h:1157

◆ SEQ_PM_DEFINES

#define SEQ_PM_DEFINES   struct patmgr_info _pm_info

◆ SEQ_PRIVATE

#define SEQ_PRIVATE   0xfe /* Low level HW dependent events (8 bytes) */

◆ SEQ_SET_PATCH

#define SEQ_SET_PATCH ( dev,
chn,
patch )
Value:
_CHN_COMMON(dev, MIDI_PGM_CHANGE, chn, patch, 0, 0)
#define MIDI_PGM_CHANGE
Definition soundcard.h:1134

◆ SEQ_SET_TEMPO

#define SEQ_SET_TEMPO ( value)
Value:
#define TMR_TEMPO
Definition soundcard.h:1148

◆ SEQ_SONGPOS

#define SEQ_SONGPOS ( pos)
Value:
#define TMR_SPP
Definition soundcard.h:1151

◆ SEQ_START_NOTE

#define SEQ_START_NOTE ( dev,
chn,
note,
vol )
Value:
_CHN_VOICE(dev, MIDI_NOTEON, chn, note, vol)
#define MIDI_NOTEON
Definition soundcard.h:1126

◆ SEQ_START_TIMER

#define SEQ_START_TIMER ( )
Value:
#define TMR_START
Definition soundcard.h:1146

◆ SEQ_STOP_NOTE

#define SEQ_STOP_NOTE ( dev,
chn,
note,
vol )
Value:
_CHN_VOICE(dev, MIDI_NOTEOFF, chn, note, vol)
#define MIDI_NOTEOFF
Definition soundcard.h:1125

◆ SEQ_STOP_TIMER

#define SEQ_STOP_TIMER ( )
Value:
#define TMR_STOP
Definition soundcard.h:1145

◆ SEQ_SYNCTIMER

#define SEQ_SYNCTIMER   TMR_START

◆ SEQ_SYSEX

#define SEQ_SYSEX ( dev,
buf,
len )
Value:
{ \
int i, l=(len); if (l>6)l=6;\
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr] = EV_SYSEX;\
for(i=0;i<l;i++)_seqbuf[_seqbufptr+i+1] = (buf)[i];\
for(i=l;i<6;i++)_seqbuf[_seqbufptr+i+1] = 0xff;\
_SEQ_ADVBUF(8);}
int * l
Definition inflate.c:1579
register unsigned i
Definition inflate.c:1575
#define EV_SYSEX
Definition soundcard.h:1115

◆ SEQ_TIME_SIGNATURE

#define SEQ_TIME_SIGNATURE ( sig)
Value:
#define TMR_TIMESIG
Definition soundcard.h:1152

◆ SEQ_USE_EXTBUF

#define SEQ_USE_EXTBUF ( )
Value:
extern u_char _seqbuf[]; \
extern int _seqbuflen;extern int _seqbufptr

◆ SEQ_V2_X_CONTROL

#define SEQ_V2_X_CONTROL ( dev,
voice,
controller,
value )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr] = SEQ_EXTENDED;\
_seqbuf[_seqbufptr+1] = SEQ_CONTROLLER;\
_seqbuf[_seqbufptr+2] = (dev);\
_seqbuf[_seqbufptr+3] = (voice);\
_seqbuf[_seqbufptr+4] = (controller);\
*(short *)&_seqbuf[_seqbufptr+5] = (value);\
_seqbuf[_seqbufptr+7] = 0;\
_SEQ_ADVBUF(8);}
#define SEQ_EXTENDED
Definition soundcard.h:675
#define SEQ_CONTROLLER
Definition soundcard.h:555

◆ SEQ_VOLMODE

#define SEQ_VOLMODE   12

◆ SEQ_VOLUME_MODE

#define SEQ_VOLUME_MODE ( dev,
mode )
Value:
{ \
_SEQ_NEEDBUF(8);\
_seqbuf[_seqbufptr] = SEQ_EXTENDED;\
_seqbuf[_seqbufptr+1] = SEQ_VOLMODE;\
_seqbuf[_seqbufptr+2] = (dev);\
_seqbuf[_seqbufptr+3] = (mode);\
_seqbuf[_seqbufptr+4] = 0;\
_seqbuf[_seqbufptr+5] = 0;\
_seqbuf[_seqbufptr+6] = 0;\
_seqbuf[_seqbufptr+7] = 0;\
_SEQ_ADVBUF(8);}
png_structrp int mode
Definition png.h:1139
#define SEQ_VOLMODE
Definition soundcard.h:634

◆ SEQ_WAIT

#define SEQ_WAIT   TMR_WAIT_ABS

◆ SEQ_WAIT_TIME

#define SEQ_WAIT_TIME ( ticks)
Value:
#define TMR_WAIT_ABS
Definition soundcard.h:1144

◆ SEQ_WRPATCH

#define SEQ_WRPATCH ( patchx,
len )
Value:
{ \
if (_seqbufptr) seqbuf_dump(); \
if (write(seqfd, (char*)(patchx), len)==-1) \
perror("Write patch: /dev/sequencer"); \
}
void seqbuf_dump(void)

◆ SEQ_WRPATCH2

#define SEQ_WRPATCH2 ( patchx,
len )
Value:
( seqbuf_dump(), write(seqfd, (char*)(patchx), len) )

◆ SNDCARD_ADLIB

#define SNDCARD_ADLIB   1

◆ SNDCARD_AWE32

#define SNDCARD_AWE32   25

◆ SNDCARD_CS4232

#define SNDCARD_CS4232   21

◆ SNDCARD_CS4232_MPU

#define SNDCARD_CS4232_MPU   22

◆ SNDCARD_GUS

#define SNDCARD_GUS   4

◆ SNDCARD_GUS16

#define SNDCARD_GUS16   9

◆ SNDCARD_MAD16

#define SNDCARD_MAD16   19

◆ SNDCARD_MAD16_MPU

#define SNDCARD_MAD16_MPU   20

◆ SNDCARD_MAUI

#define SNDCARD_MAUI   23

◆ SNDCARD_MPU401

#define SNDCARD_MPU401   5

◆ SNDCARD_MSS

#define SNDCARD_MSS   10

◆ SNDCARD_NSS

#define SNDCARD_NSS   26

◆ SNDCARD_OPL

#define SNDCARD_OPL   28

◆ SNDCARD_PAS

#define SNDCARD_PAS   3

◆ SNDCARD_PSEUDO_MSS

#define SNDCARD_PSEUDO_MSS   24

◆ SNDCARD_PSS

#define SNDCARD_PSS   11

◆ SNDCARD_PSS_MPU

#define SNDCARD_PSS_MPU   13

◆ SNDCARD_PSS_MSS

#define SNDCARD_PSS_MSS   14

◆ SNDCARD_SB

#define SNDCARD_SB   2

◆ SNDCARD_SB16

#define SNDCARD_SB16   6

◆ SNDCARD_SB16MIDI

#define SNDCARD_SB16MIDI   7

◆ SNDCARD_SSCAPE

#define SNDCARD_SSCAPE   12

◆ SNDCARD_SSCAPE_MSS

#define SNDCARD_SSCAPE_MSS   15

◆ SNDCARD_TRXPRO

#define SNDCARD_TRXPRO   16

◆ SNDCARD_TRXPRO_MPU

#define SNDCARD_TRXPRO_MPU   18

◆ SNDCARD_TRXPRO_SB

#define SNDCARD_TRXPRO_SB   17

◆ SNDCARD_UART16550

#define SNDCARD_UART16550   27

◆ SNDCARD_UART6850

#define SNDCARD_UART6850   8

◆ SNDCTL_AUDIOINFO

#define SNDCTL_AUDIOINFO   _IOWR('X', 7, oss_audioinfo)

◆ SNDCTL_CARDINFO

#define SNDCTL_CARDINFO   _IOWR('X',11, oss_card_info)

◆ SNDCTL_COPR_HALT

#define SNDCTL_COPR_HALT   _IOWR('C', 7, copr_debug_buf)

◆ SNDCTL_COPR_LOAD

#define SNDCTL_COPR_LOAD   _IOWR('C', 1, copr_buffer)

◆ SNDCTL_COPR_RCODE

#define SNDCTL_COPR_RCODE   _IOWR('C', 3, copr_debug_buf)

◆ SNDCTL_COPR_RCVMSG

#define SNDCTL_COPR_RCVMSG   _IOR ('C', 9, copr_msg)

◆ SNDCTL_COPR_RDATA

#define SNDCTL_COPR_RDATA   _IOWR('C', 2, copr_debug_buf)

◆ SNDCTL_COPR_RESET

#define SNDCTL_COPR_RESET   _IO ('C', 0)

◆ SNDCTL_COPR_RUN

#define SNDCTL_COPR_RUN   _IOWR('C', 6, copr_debug_buf)

◆ SNDCTL_COPR_SENDMSG

#define SNDCTL_COPR_SENDMSG   _IOW ('C', 8, copr_msg)

◆ SNDCTL_COPR_WCODE

#define SNDCTL_COPR_WCODE   _IOW ('C', 5, copr_debug_buf)

◆ SNDCTL_COPR_WDATA

#define SNDCTL_COPR_WDATA   _IOW ('C', 4, copr_debug_buf)

◆ SNDCTL_DSP_CHANNELS

#define SNDCTL_DSP_CHANNELS   SOUND_PCM_WRITE_CHANNELS

◆ SNDCTL_DSP_COOKEDMODE

#define SNDCTL_DSP_COOKEDMODE   _IOW ('P', 30, int)

◆ SNDCTL_DSP_CURRENT_IPTR

#define SNDCTL_DSP_CURRENT_IPTR   _IOR ('P', 35, oss_count_t)

◆ SNDCTL_DSP_CURRENT_OPTR

#define SNDCTL_DSP_CURRENT_OPTR   _IOR ('P', 36, oss_count_t)

◆ SNDCTL_DSP_GET_CHNORDER

#define SNDCTL_DSP_GET_CHNORDER   _IOR ('P', 42, unsigned long long)

◆ SNDCTL_DSP_GET_PLAYTGT

#define SNDCTL_DSP_GET_PLAYTGT   _IOR ('P', 40, int)

◆ SNDCTL_DSP_GET_PLAYTGT_NAMES

#define SNDCTL_DSP_GET_PLAYTGT_NAMES   _IOR ('P', 39, oss_mixer_enuminfo)

◆ SNDCTL_DSP_GET_RECSRC

#define SNDCTL_DSP_GET_RECSRC   _IOR ('P', 38, int)

◆ SNDCTL_DSP_GET_RECSRC_NAMES

#define SNDCTL_DSP_GET_RECSRC_NAMES   _IOR ('P', 37, oss_mixer_enuminfo)

◆ SNDCTL_DSP_GETBLKSIZE

#define SNDCTL_DSP_GETBLKSIZE   _IOR('P', 4, int)

◆ SNDCTL_DSP_GETCAPS

#define SNDCTL_DSP_GETCAPS   _IOR ('P',15, int)

◆ SNDCTL_DSP_GETERROR

#define SNDCTL_DSP_GETERROR   _IOR ('P', 25, audio_errinfo)

◆ SNDCTL_DSP_GETFMTS

#define SNDCTL_DSP_GETFMTS   _IOR ('P',11, int) /* Returns a mask */

◆ SNDCTL_DSP_GETIPEAKS

#define SNDCTL_DSP_GETIPEAKS   _IOR('P', 43, oss_peaks_t)

◆ SNDCTL_DSP_GETIPTR

#define SNDCTL_DSP_GETIPTR   _IOR ('P',17, count_info)

◆ SNDCTL_DSP_GETISPACE

#define SNDCTL_DSP_GETISPACE   _IOR ('P',13, audio_buf_info)

◆ SNDCTL_DSP_GETODELAY

#define SNDCTL_DSP_GETODELAY   _IOR ('P', 23, int)

◆ SNDCTL_DSP_GETOPEAKS

#define SNDCTL_DSP_GETOPEAKS   _IOR('P', 44, oss_peaks_t)

◆ SNDCTL_DSP_GETOPTR

#define SNDCTL_DSP_GETOPTR   _IOR ('P',18, count_info)

◆ SNDCTL_DSP_GETOSPACE

#define SNDCTL_DSP_GETOSPACE   _IOR ('P',12, audio_buf_info)

◆ SNDCTL_DSP_GETPLAYVOL

#define SNDCTL_DSP_GETPLAYVOL   _IOR ('P', 24, int)

◆ SNDCTL_DSP_GETRECVOL

#define SNDCTL_DSP_GETRECVOL   _IOR ('P', 41, int)

◆ SNDCTL_DSP_GETTRIGGER

#define SNDCTL_DSP_GETTRIGGER   _IOR ('P',16, int)

◆ SNDCTL_DSP_HALT_INPUT

#define SNDCTL_DSP_HALT_INPUT   _IO ('P', 33)

◆ SNDCTL_DSP_HALT_OUTPUT

#define SNDCTL_DSP_HALT_OUTPUT   _IO ('P', 34)

◆ SNDCTL_DSP_LOW_WATER

#define SNDCTL_DSP_LOW_WATER   _IOW ('P', 34, int)

◆ SNDCTL_DSP_MAPINBUF

#define SNDCTL_DSP_MAPINBUF   _IOR ('P', 19, buffmem_desc)

◆ SNDCTL_DSP_MAPOUTBUF

#define SNDCTL_DSP_MAPOUTBUF   _IOR ('P', 20, buffmem_desc)

◆ SNDCTL_DSP_NONBLOCK

#define SNDCTL_DSP_NONBLOCK   _IO ('P',14)

◆ SNDCTL_DSP_POLICY

#define SNDCTL_DSP_POLICY   _IOW('P', 45, int) /* See the manual */

◆ SNDCTL_DSP_POST

#define SNDCTL_DSP_POST   _IO ('P', 8)

◆ SNDCTL_DSP_RESET

#define SNDCTL_DSP_RESET   _IO ('P', 0)

◆ SNDCTL_DSP_RESET_INPUT

#define SNDCTL_DSP_RESET_INPUT   SNDCTL_DSP_HALT_INPUT /* Old name */

◆ SNDCTL_DSP_RESET_OUTPUT

#define SNDCTL_DSP_RESET_OUTPUT   SNDCTL_DSP_HALT_OUTPUT /* Old name */

◆ SNDCTL_DSP_SAMPLESIZE

#define SNDCTL_DSP_SAMPLESIZE   SNDCTL_DSP_SETFMT

◆ SNDCTL_DSP_SET_CHNORDER

#define SNDCTL_DSP_SET_CHNORDER   _IOWR('P', 42, unsigned long long)

◆ SNDCTL_DSP_SET_PLAYTGT

#define SNDCTL_DSP_SET_PLAYTGT   _IOWR('P', 40, int)

◆ SNDCTL_DSP_SET_RECSRC

#define SNDCTL_DSP_SET_RECSRC   _IOWR('P', 38, int)

◆ SNDCTL_DSP_SETBLKSIZE

#define SNDCTL_DSP_SETBLKSIZE   _IOW('P', 4, int)

◆ SNDCTL_DSP_SETDUPLEX

#define SNDCTL_DSP_SETDUPLEX   _IO ('P', 22)

◆ SNDCTL_DSP_SETFMT

#define SNDCTL_DSP_SETFMT   _IOWR('P',5, int) /* Selects ONE fmt*/

◆ SNDCTL_DSP_SETFRAGMENT

#define SNDCTL_DSP_SETFRAGMENT   _IOWR('P',10, int)

◆ SNDCTL_DSP_SETPLAYVOL

#define SNDCTL_DSP_SETPLAYVOL   _IOWR('P', 24, int)

◆ SNDCTL_DSP_SETRECVOL

#define SNDCTL_DSP_SETRECVOL   _IOWR('P', 41, int)

◆ SNDCTL_DSP_SETSYNCRO

#define SNDCTL_DSP_SETSYNCRO   _IO ('P', 21)

◆ SNDCTL_DSP_SETTRIGGER

#define SNDCTL_DSP_SETTRIGGER   _IOW ('P',16, int)

◆ SNDCTL_DSP_SILENCE

#define SNDCTL_DSP_SILENCE   _IO ('P', 31)

◆ SNDCTL_DSP_SKIP

#define SNDCTL_DSP_SKIP   _IO ('P', 32)

◆ SNDCTL_DSP_SPEED

#define SNDCTL_DSP_SPEED   _IOWR('P', 2, int)

◆ SNDCTL_DSP_STEREO

#define SNDCTL_DSP_STEREO   _IOWR('P', 3, int)

◆ SNDCTL_DSP_SUBDIVIDE

#define SNDCTL_DSP_SUBDIVIDE   _IOWR('P', 9, int)

◆ SNDCTL_DSP_SYNC

#define SNDCTL_DSP_SYNC   _IO ('P', 1)

◆ SNDCTL_DSP_SYNCGROUP

#define SNDCTL_DSP_SYNCGROUP   _IOWR('P', 28, oss_syncgroup)

◆ SNDCTL_DSP_SYNCSTART

#define SNDCTL_DSP_SYNCSTART   _IOW ('P', 29, int)

◆ SNDCTL_FM_4OP_ENABLE

#define SNDCTL_FM_4OP_ENABLE   _IOW ('Q',15, int) /* in=dev# */

◆ SNDCTL_FM_LOAD_INSTR

#define SNDCTL_FM_LOAD_INSTR   _IOW ('Q', 7, struct sbi_instrument) /* Valid for FM only */

◆ SNDCTL_GETLABEL

#define SNDCTL_GETLABEL   _IOR ('Y', 4, oss_label_t)

◆ SNDCTL_GETSONG

#define SNDCTL_GETSONG   _IOR ('Y', 2, oss_longname_t)

◆ SNDCTL_MIDI_INFO

#define SNDCTL_MIDI_INFO   _IOWR('Q',12, struct midi_info)

◆ SNDCTL_MIDI_MPUCMD

#define SNDCTL_MIDI_MPUCMD   _IOWR('m', 2, mpu_command_rec)

◆ SNDCTL_MIDI_MPUMODE

#define SNDCTL_MIDI_MPUMODE   _IOWR('m', 1, int)

◆ SNDCTL_MIDI_PRETIME

#define SNDCTL_MIDI_PRETIME   _IOWR('m', 0, int)

◆ SNDCTL_MIDIINFO

#define SNDCTL_MIDIINFO   _IOWR('X', 9, oss_midi_info)

◆ SNDCTL_MIX_ENUMINFO

#define SNDCTL_MIX_ENUMINFO   _IOWR('X', 8, oss_mixer_enuminfo)

◆ SNDCTL_MIX_EXTINFO

#define SNDCTL_MIX_EXTINFO   _IOWR('X', 4, oss_mixext)

◆ SNDCTL_MIX_NREXT

#define SNDCTL_MIX_NREXT   _IOWR('X', 3, int)

◆ SNDCTL_MIX_NRMIX

#define SNDCTL_MIX_NRMIX   _IOR ('X', 2, int)

◆ SNDCTL_MIX_READ

#define SNDCTL_MIX_READ   _IOWR('X', 5, oss_mixer_value)

◆ SNDCTL_MIX_WRITE

#define SNDCTL_MIX_WRITE   _IOWR('X', 6, oss_mixer_value)

◆ SNDCTL_MIXERINFO

#define SNDCTL_MIXERINFO   _IOWR('X',10, oss_mixerinfo)

◆ SNDCTL_PMGR_ACCESS

#define SNDCTL_PMGR_ACCESS   _IOWR('Q',16, struct patmgr_info)

◆ SNDCTL_PMGR_IFACE

#define SNDCTL_PMGR_IFACE   _IOWR('P', 1, struct patmgr_info)

◆ SNDCTL_SEQ_CTRLRATE

#define SNDCTL_SEQ_CTRLRATE   _IOWR('Q', 3, int) /* Set/get timer res.(hz) */

◆ SNDCTL_SEQ_GETINCOUNT

#define SNDCTL_SEQ_GETINCOUNT   _IOR ('Q', 5, int)

◆ SNDCTL_SEQ_GETOUTCOUNT

#define SNDCTL_SEQ_GETOUTCOUNT   _IOR ('Q', 4, int)

◆ SNDCTL_SEQ_GETTIME

#define SNDCTL_SEQ_GETTIME   _IOR ('Q',19, int)

◆ SNDCTL_SEQ_NRMIDIS

#define SNDCTL_SEQ_NRMIDIS   _IOR ('Q',11, int)

◆ SNDCTL_SEQ_NRSYNTHS

#define SNDCTL_SEQ_NRSYNTHS   _IOR ('Q',10, int)

◆ SNDCTL_SEQ_OUTOFBAND

#define SNDCTL_SEQ_OUTOFBAND   _IOW ('Q',18, struct seq_event_rec)

◆ SNDCTL_SEQ_PANIC

#define SNDCTL_SEQ_PANIC   _IO ('Q',17)

◆ SNDCTL_SEQ_PERCMODE

#define SNDCTL_SEQ_PERCMODE   _IOW ('Q', 6, int)

◆ SNDCTL_SEQ_RESET

#define SNDCTL_SEQ_RESET   _IO ('Q', 0)

◆ SNDCTL_SEQ_RESETSAMPLES

#define SNDCTL_SEQ_RESETSAMPLES   _IOW ('Q', 9, int)

◆ SNDCTL_SEQ_SYNC

#define SNDCTL_SEQ_SYNC   _IO ('Q', 1)

◆ SNDCTL_SEQ_TESTMIDI

#define SNDCTL_SEQ_TESTMIDI   _IOW ('Q', 8, int)

◆ SNDCTL_SEQ_THRESHOLD

#define SNDCTL_SEQ_THRESHOLD   _IOW ('Q',13, int)

◆ SNDCTL_SEQ_TRESHOLD

#define SNDCTL_SEQ_TRESHOLD   SNDCTL_SEQ_THRESHOLD /* there was once a typo */

◆ SNDCTL_SETLABEL

#define SNDCTL_SETLABEL   _IOW ('Y', 4, oss_label_t)

◆ SNDCTL_SETNAME

#define SNDCTL_SETNAME   _IOW ('Y', 3, oss_longname_t)

◆ SNDCTL_SETSONG

#define SNDCTL_SETSONG   _IOW ('Y', 2, oss_longname_t)

◆ SNDCTL_SYNTH_INFO

#define SNDCTL_SYNTH_INFO   _IOWR('Q', 2, struct synth_info)

◆ SNDCTL_SYNTH_MEMAVL

#define SNDCTL_SYNTH_MEMAVL   _IOWR('Q',14, int) /* in=dev#, out=memsize */

◆ SNDCTL_SYSINFO

#define SNDCTL_SYSINFO   _IOR ('X', 1, oss_sysinfo)

◆ SNDCTL_TMR_CONTINUE

#define SNDCTL_TMR_CONTINUE   _IO ('T', 4)

◆ SNDCTL_TMR_METRONOME

#define SNDCTL_TMR_METRONOME   _IOW ('T', 7, int)

◆ SNDCTL_TMR_SELECT

#define SNDCTL_TMR_SELECT   _IOW ('T', 8, int)

◆ SNDCTL_TMR_SOURCE

#define SNDCTL_TMR_SOURCE   _IOWR('T', 6, int)

◆ SNDCTL_TMR_START

#define SNDCTL_TMR_START   _IO ('T', 2)

◆ SNDCTL_TMR_STOP

#define SNDCTL_TMR_STOP   _IO ('T', 3)

◆ SNDCTL_TMR_TEMPO

#define SNDCTL_TMR_TEMPO   _IOWR('T', 5, int)

◆ SNDCTL_TMR_TIMEBASE

#define SNDCTL_TMR_TIMEBASE   _IOWR('T', 1, int)

◆ SOUND_CAP_EXCL_INPUT

#define SOUND_CAP_EXCL_INPUT   0x00000001 /* Only 1 rec. src at a time */

◆ SOUND_DEVICE_LABELS

#define SOUND_DEVICE_LABELS
Value:
{ \
"Vol ", "Bass ", "Trebl", "Synth", "Pcm ", "Spkr ", "Line ", \
"Mic ", "CD ", "Mix ", "Pcm2 ", "Rec ", "IGain", "OGain", \
"Line1", "Line2", "Line3", "Digital1", "Digital2", "Digital3", \
"PhoneIn", "PhoneOut", "Video", "Radio", "Monitor"}

◆ SOUND_DEVICE_NAMES

#define SOUND_DEVICE_NAMES
Value:
{ \
"vol", "bass", "treble", "synth", "pcm", "speaker", "line", \
"mic", "cd", "mix", "pcm2", "rec", "igain", "ogain", \
"line1", "line2", "line3", "dig1", "dig2", "dig3", \
"phin", "phout", "video", "radio", "monitor"}

◆ SOUND_MASK_ALTPCM

#define SOUND_MASK_ALTPCM   (1 << SOUND_MIXER_ALTPCM)

◆ SOUND_MASK_BASS

#define SOUND_MASK_BASS   (1 << SOUND_MIXER_BASS)

◆ SOUND_MASK_CD

#define SOUND_MASK_CD   (1 << SOUND_MIXER_CD)

◆ SOUND_MASK_DIGITAL1

#define SOUND_MASK_DIGITAL1   (1 << SOUND_MIXER_DIGITAL1)

◆ SOUND_MASK_DIGITAL2

#define SOUND_MASK_DIGITAL2   (1 << SOUND_MIXER_DIGITAL2)

◆ SOUND_MASK_DIGITAL3

#define SOUND_MASK_DIGITAL3   (1 << SOUND_MIXER_DIGITAL3)

◆ SOUND_MASK_ENHANCE

#define SOUND_MASK_ENHANCE   (1 << SOUND_MIXER_ENHANCE)

◆ SOUND_MASK_IGAIN

#define SOUND_MASK_IGAIN   (1 << SOUND_MIXER_IGAIN)

◆ SOUND_MASK_IMIX

#define SOUND_MASK_IMIX   (1 << SOUND_MIXER_IMIX)

◆ SOUND_MASK_LINE

#define SOUND_MASK_LINE   (1 << SOUND_MIXER_LINE)

◆ SOUND_MASK_LINE1

#define SOUND_MASK_LINE1   (1 << SOUND_MIXER_LINE1)

◆ SOUND_MASK_LINE2

#define SOUND_MASK_LINE2   (1 << SOUND_MIXER_LINE2)

◆ SOUND_MASK_LINE3

#define SOUND_MASK_LINE3   (1 << SOUND_MIXER_LINE3)

◆ SOUND_MASK_LOUD

#define SOUND_MASK_LOUD   (1 << SOUND_MIXER_LOUD)

◆ SOUND_MASK_MIC

#define SOUND_MASK_MIC   (1 << SOUND_MIXER_MIC)

◆ SOUND_MASK_MONITOR

#define SOUND_MASK_MONITOR   (1 << SOUND_MIXER_MONITOR)

◆ SOUND_MASK_MUTE

#define SOUND_MASK_MUTE   (1 << SOUND_MIXER_MUTE)

◆ SOUND_MASK_OGAIN

#define SOUND_MASK_OGAIN   (1 << SOUND_MIXER_OGAIN)

◆ SOUND_MASK_PCM

#define SOUND_MASK_PCM   (1 << SOUND_MIXER_PCM)

◆ SOUND_MASK_PHONEIN

#define SOUND_MASK_PHONEIN   (1 << SOUND_MIXER_PHONEIN)

◆ SOUND_MASK_PHONEOUT

#define SOUND_MASK_PHONEOUT   (1 << SOUND_MIXER_PHONEOUT)

◆ SOUND_MASK_RADIO

#define SOUND_MASK_RADIO   (1 << SOUND_MIXER_RADIO)

◆ SOUND_MASK_RECLEV

#define SOUND_MASK_RECLEV   (1 << SOUND_MIXER_RECLEV)

◆ SOUND_MASK_SPEAKER

#define SOUND_MASK_SPEAKER   (1 << SOUND_MIXER_SPEAKER)

◆ SOUND_MASK_SYNTH

#define SOUND_MASK_SYNTH   (1 << SOUND_MIXER_SYNTH)

◆ SOUND_MASK_TREBLE

#define SOUND_MASK_TREBLE   (1 << SOUND_MIXER_TREBLE)

◆ SOUND_MASK_VIDEO

#define SOUND_MASK_VIDEO   (1 << SOUND_MIXER_VIDEO)

◆ SOUND_MASK_VOLUME

#define SOUND_MASK_VOLUME   (1 << SOUND_MIXER_VOLUME)

◆ SOUND_MIXER_ALTPCM

#define SOUND_MIXER_ALTPCM
Value:
10 /* Volume of the alternative codec
* device */

◆ SOUND_MIXER_BASS

#define SOUND_MIXER_BASS   1 /* Treble level of all output channels */

◆ SOUND_MIXER_CAPS

#define SOUND_MIXER_CAPS   0xfc

◆ SOUND_MIXER_CD

#define SOUND_MIXER_CD
Value:
8 /* Volume level for the input signal
* connected to the CD audio input */

◆ SOUND_MIXER_DEVMASK

#define SOUND_MIXER_DEVMASK   0xfe /* 1 bit per supported device */

◆ SOUND_MIXER_DIGITAL1

#define SOUND_MIXER_DIGITAL1   17 /* Digital (input) 1 */

◆ SOUND_MIXER_DIGITAL2

#define SOUND_MIXER_DIGITAL2   18 /* Digital (input) 2 */

◆ SOUND_MIXER_DIGITAL3

#define SOUND_MIXER_DIGITAL3   19 /* Digital (input) 3 */

◆ SOUND_MIXER_ENHANCE

#define SOUND_MIXER_ENHANCE   29 /* Enhanced stereo (0, 40, 60 or 80) */

◆ SOUND_MIXER_IGAIN

#define SOUND_MIXER_IGAIN   12 /* Input gain */

◆ SOUND_MIXER_IMIX

#define SOUND_MIXER_IMIX
Value:
9 /* Recording monitor. It controls the
* output volume of the selected
* recording sources while recording */

◆ SOUND_MIXER_INFO

#define SOUND_MIXER_INFO   _IOR('M', 101, mixer_info)

◆ SOUND_MIXER_LINE

#define SOUND_MIXER_LINE   6 /* Volume level for the line in jack */

◆ SOUND_MIXER_LINE1

#define SOUND_MIXER_LINE1   14 /* Input source 1 (aux1) */

◆ SOUND_MIXER_LINE2

#define SOUND_MIXER_LINE2   15 /* Input source 2 (aux2) */

◆ SOUND_MIXER_LINE3

#define SOUND_MIXER_LINE3   16 /* Input source 3 (line) */

◆ SOUND_MIXER_LOUD

#define SOUND_MIXER_LOUD   30 /* 0 or 1 */

◆ SOUND_MIXER_MIC

#define SOUND_MIXER_MIC
Value:
7 /* Volume for the signal coming from
* the microphone jack */

◆ SOUND_MIXER_MONITOR

#define SOUND_MIXER_MONITOR   24 /* Monitor (usually mic) volume */

◆ SOUND_MIXER_MUTE

#define SOUND_MIXER_MUTE   28 /* 0 or 1 */

◆ SOUND_MIXER_NONE

#define SOUND_MIXER_NONE   31

◆ SOUND_MIXER_NRDEVICES

#define SOUND_MIXER_NRDEVICES   25

◆ SOUND_MIXER_OGAIN

#define SOUND_MIXER_OGAIN   13 /* Output gain */

◆ SOUND_MIXER_PCM

#define SOUND_MIXER_PCM   4 /* Output level for the audio device */

◆ SOUND_MIXER_PHONEIN

#define SOUND_MIXER_PHONEIN   20 /* Phone input */

◆ SOUND_MIXER_PHONEOUT

#define SOUND_MIXER_PHONEOUT   21 /* Phone output */

◆ SOUND_MIXER_RADIO

#define SOUND_MIXER_RADIO   23 /* Radio in */

◆ SOUND_MIXER_READ_ALTPCM

#define SOUND_MIXER_READ_ALTPCM   MIXER_READ(SOUND_MIXER_ALTPCM)

◆ SOUND_MIXER_READ_BASS

#define SOUND_MIXER_READ_BASS   MIXER_READ(SOUND_MIXER_BASS)

◆ SOUND_MIXER_READ_CAPS

#define SOUND_MIXER_READ_CAPS   MIXER_READ(SOUND_MIXER_CAPS)

◆ SOUND_MIXER_READ_CD

#define SOUND_MIXER_READ_CD   MIXER_READ(SOUND_MIXER_CD)

◆ SOUND_MIXER_READ_DEVMASK

#define SOUND_MIXER_READ_DEVMASK   MIXER_READ(SOUND_MIXER_DEVMASK)

◆ SOUND_MIXER_READ_DIGITAL1

#define SOUND_MIXER_READ_DIGITAL1   MIXER_READ(SOUND_MIXER_DIGITAL1)

◆ SOUND_MIXER_READ_DIGITAL2

#define SOUND_MIXER_READ_DIGITAL2   MIXER_READ(SOUND_MIXER_DIGITAL2)

◆ SOUND_MIXER_READ_DIGITAL3

#define SOUND_MIXER_READ_DIGITAL3   MIXER_READ(SOUND_MIXER_DIGITAL3)

◆ SOUND_MIXER_READ_ENHANCE

#define SOUND_MIXER_READ_ENHANCE   MIXER_READ(SOUND_MIXER_ENHANCE)

◆ SOUND_MIXER_READ_IGAIN

#define SOUND_MIXER_READ_IGAIN   MIXER_READ(SOUND_MIXER_IGAIN)

◆ SOUND_MIXER_READ_IMIX

#define SOUND_MIXER_READ_IMIX   MIXER_READ(SOUND_MIXER_IMIX)

◆ SOUND_MIXER_READ_LINE

#define SOUND_MIXER_READ_LINE   MIXER_READ(SOUND_MIXER_LINE)

◆ SOUND_MIXER_READ_LINE1

#define SOUND_MIXER_READ_LINE1   MIXER_READ(SOUND_MIXER_LINE1)

◆ SOUND_MIXER_READ_LINE2

#define SOUND_MIXER_READ_LINE2   MIXER_READ(SOUND_MIXER_LINE2)

◆ SOUND_MIXER_READ_LINE3

#define SOUND_MIXER_READ_LINE3   MIXER_READ(SOUND_MIXER_LINE3)

◆ SOUND_MIXER_READ_LOUD

#define SOUND_MIXER_READ_LOUD   MIXER_READ(SOUND_MIXER_LOUD)

◆ SOUND_MIXER_READ_MIC

#define SOUND_MIXER_READ_MIC   MIXER_READ(SOUND_MIXER_MIC)

◆ SOUND_MIXER_READ_MONITOR

#define SOUND_MIXER_READ_MONITOR   MIXER_READ(SOUND_MIXER_MONITOR)

◆ SOUND_MIXER_READ_MUTE

#define SOUND_MIXER_READ_MUTE   MIXER_READ(SOUND_MIXER_MUTE)

◆ SOUND_MIXER_READ_OGAIN

#define SOUND_MIXER_READ_OGAIN   MIXER_READ(SOUND_MIXER_OGAIN)

◆ SOUND_MIXER_READ_PCM

#define SOUND_MIXER_READ_PCM   MIXER_READ(SOUND_MIXER_PCM)

◆ SOUND_MIXER_READ_PHONEIN

#define SOUND_MIXER_READ_PHONEIN   MIXER_READ(SOUND_MIXER_PHONEIN)

◆ SOUND_MIXER_READ_PHONEOUT

#define SOUND_MIXER_READ_PHONEOUT   MIXER_READ(SOUND_MIXER_PHONEOUT)

◆ SOUND_MIXER_READ_RADIO

#define SOUND_MIXER_READ_RADIO   MIXER_READ(SOUND_MIXER_RADIO)

◆ SOUND_MIXER_READ_RECLEV

#define SOUND_MIXER_READ_RECLEV   MIXER_READ(SOUND_MIXER_RECLEV)

◆ SOUND_MIXER_READ_RECMASK

#define SOUND_MIXER_READ_RECMASK   MIXER_READ(SOUND_MIXER_RECMASK)

◆ SOUND_MIXER_READ_RECSRC

#define SOUND_MIXER_READ_RECSRC   MIXER_READ(SOUND_MIXER_RECSRC)

◆ SOUND_MIXER_READ_SPEAKER

#define SOUND_MIXER_READ_SPEAKER   MIXER_READ(SOUND_MIXER_SPEAKER)

◆ SOUND_MIXER_READ_STEREODEVS

#define SOUND_MIXER_READ_STEREODEVS   MIXER_READ(SOUND_MIXER_STEREODEVS)

◆ SOUND_MIXER_READ_SYNTH

#define SOUND_MIXER_READ_SYNTH   MIXER_READ(SOUND_MIXER_SYNTH)

◆ SOUND_MIXER_READ_TREBLE

#define SOUND_MIXER_READ_TREBLE   MIXER_READ(SOUND_MIXER_TREBLE)

◆ SOUND_MIXER_READ_VIDEO

#define SOUND_MIXER_READ_VIDEO   MIXER_READ(SOUND_MIXER_VIDEO)

◆ SOUND_MIXER_READ_VOLUME

#define SOUND_MIXER_READ_VOLUME   MIXER_READ(SOUND_MIXER_VOLUME)

◆ SOUND_MIXER_RECLEV

#define SOUND_MIXER_RECLEV   11 /* Global recording level */

◆ SOUND_MIXER_RECMASK

#define SOUND_MIXER_RECMASK   0xfd /* 1 bit per supp. recording source */

◆ SOUND_MIXER_RECSRC

#define SOUND_MIXER_RECSRC   0xff /* 1 bit per recording source */

◆ SOUND_MIXER_SPEAKER

#define SOUND_MIXER_SPEAKER
Value:
5 /* Output level for the PC speaker
* signals */

◆ SOUND_MIXER_STEREODEVS

#define SOUND_MIXER_STEREODEVS   0xfb /* Mixer channels supporting stereo */

◆ SOUND_MIXER_SYNTH

#define SOUND_MIXER_SYNTH   3 /* Volume of synthesier input */

◆ SOUND_MIXER_TREBLE

#define SOUND_MIXER_TREBLE   2 /* Bass level of all output channels */

◆ SOUND_MIXER_VIDEO

#define SOUND_MIXER_VIDEO   22 /* Video/TV (audio) in */

◆ SOUND_MIXER_VOLUME

#define SOUND_MIXER_VOLUME   0 /* Master output level */

◆ SOUND_MIXER_WRITE_ALTPCM

#define SOUND_MIXER_WRITE_ALTPCM   MIXER_WRITE(SOUND_MIXER_ALTPCM)

◆ SOUND_MIXER_WRITE_BASS

#define SOUND_MIXER_WRITE_BASS   MIXER_WRITE(SOUND_MIXER_BASS)

◆ SOUND_MIXER_WRITE_CD

#define SOUND_MIXER_WRITE_CD   MIXER_WRITE(SOUND_MIXER_CD)

◆ SOUND_MIXER_WRITE_DIGITAL1

#define SOUND_MIXER_WRITE_DIGITAL1   MIXER_WRITE(SOUND_MIXER_DIGITAL1)

◆ SOUND_MIXER_WRITE_DIGITAL2

#define SOUND_MIXER_WRITE_DIGITAL2   MIXER_WRITE(SOUND_MIXER_DIGITAL2)

◆ SOUND_MIXER_WRITE_DIGITAL3

#define SOUND_MIXER_WRITE_DIGITAL3   MIXER_WRITE(SOUND_MIXER_DIGITAL3)

◆ SOUND_MIXER_WRITE_ENHANCE

#define SOUND_MIXER_WRITE_ENHANCE   MIXER_WRITE(SOUND_MIXER_ENHANCE)

◆ SOUND_MIXER_WRITE_IGAIN

#define SOUND_MIXER_WRITE_IGAIN   MIXER_WRITE(SOUND_MIXER_IGAIN)

◆ SOUND_MIXER_WRITE_IMIX

#define SOUND_MIXER_WRITE_IMIX   MIXER_WRITE(SOUND_MIXER_IMIX)

◆ SOUND_MIXER_WRITE_LINE

#define SOUND_MIXER_WRITE_LINE   MIXER_WRITE(SOUND_MIXER_LINE)

◆ SOUND_MIXER_WRITE_LINE1

#define SOUND_MIXER_WRITE_LINE1   MIXER_WRITE(SOUND_MIXER_LINE1)

◆ SOUND_MIXER_WRITE_LINE2

#define SOUND_MIXER_WRITE_LINE2   MIXER_WRITE(SOUND_MIXER_LINE2)

◆ SOUND_MIXER_WRITE_LINE3

#define SOUND_MIXER_WRITE_LINE3   MIXER_WRITE(SOUND_MIXER_LINE3)

◆ SOUND_MIXER_WRITE_LOUD

#define SOUND_MIXER_WRITE_LOUD   MIXER_WRITE(SOUND_MIXER_LOUD)

◆ SOUND_MIXER_WRITE_MIC

#define SOUND_MIXER_WRITE_MIC   MIXER_WRITE(SOUND_MIXER_MIC)

◆ SOUND_MIXER_WRITE_MONITOR

#define SOUND_MIXER_WRITE_MONITOR   MIXER_WRITE(SOUND_MIXER_MONITOR)

◆ SOUND_MIXER_WRITE_MUTE

#define SOUND_MIXER_WRITE_MUTE   MIXER_WRITE(SOUND_MIXER_MUTE)

◆ SOUND_MIXER_WRITE_OGAIN

#define SOUND_MIXER_WRITE_OGAIN   MIXER_WRITE(SOUND_MIXER_OGAIN)

◆ SOUND_MIXER_WRITE_PCM

#define SOUND_MIXER_WRITE_PCM   MIXER_WRITE(SOUND_MIXER_PCM)

◆ SOUND_MIXER_WRITE_PHONEIN

#define SOUND_MIXER_WRITE_PHONEIN   MIXER_WRITE(SOUND_MIXER_PHONEIN)

◆ SOUND_MIXER_WRITE_PHONEOUT

#define SOUND_MIXER_WRITE_PHONEOUT   MIXER_WRITE(SOUND_MIXER_PHONEOUT)

◆ SOUND_MIXER_WRITE_RADIO

#define SOUND_MIXER_WRITE_RADIO   MIXER_WRITE(SOUND_MIXER_RADIO)

◆ SOUND_MIXER_WRITE_RECLEV

#define SOUND_MIXER_WRITE_RECLEV   MIXER_WRITE(SOUND_MIXER_RECLEV)

◆ SOUND_MIXER_WRITE_RECSRC

#define SOUND_MIXER_WRITE_RECSRC   MIXER_WRITE(SOUND_MIXER_RECSRC)

◆ SOUND_MIXER_WRITE_SPEAKER

#define SOUND_MIXER_WRITE_SPEAKER   MIXER_WRITE(SOUND_MIXER_SPEAKER)

◆ SOUND_MIXER_WRITE_SYNTH

#define SOUND_MIXER_WRITE_SYNTH   MIXER_WRITE(SOUND_MIXER_SYNTH)

◆ SOUND_MIXER_WRITE_TREBLE

#define SOUND_MIXER_WRITE_TREBLE   MIXER_WRITE(SOUND_MIXER_TREBLE)

◆ SOUND_MIXER_WRITE_VIDEO

#define SOUND_MIXER_WRITE_VIDEO   MIXER_WRITE(SOUND_MIXER_VIDEO)

◆ SOUND_MIXER_WRITE_VOLUME

#define SOUND_MIXER_WRITE_VOLUME   MIXER_WRITE(SOUND_MIXER_VOLUME)

◆ SOUND_ONOFF_MAX

#define SOUND_ONOFF_MAX   30

◆ SOUND_ONOFF_MIN

#define SOUND_ONOFF_MIN   28

◆ SOUND_PCM_GETCAPS

#define SOUND_PCM_GETCAPS   SNDCTL_DSP_GETCAPS

◆ SOUND_PCM_GETFMTS

#define SOUND_PCM_GETFMTS   SNDCTL_DSP_GETFMTS

◆ SOUND_PCM_GETIPTR

#define SOUND_PCM_GETIPTR   SNDCTL_DSP_GETIPTR

◆ SOUND_PCM_GETISPACE

#define SOUND_PCM_GETISPACE   SNDCTL_DSP_GETISPACE

◆ SOUND_PCM_GETOPTR

#define SOUND_PCM_GETOPTR   SNDCTL_DSP_GETOPTR

◆ SOUND_PCM_GETOSPACE

#define SOUND_PCM_GETOSPACE   SNDCTL_DSP_GETOSPACE

◆ SOUND_PCM_GETTRIGGER

#define SOUND_PCM_GETTRIGGER   SNDCTL_DSP_GETTRIGGER

◆ SOUND_PCM_MAPINBUF

#define SOUND_PCM_MAPINBUF   SNDCTL_DSP_MAPINBUF

◆ SOUND_PCM_MAPOUTBUF

#define SOUND_PCM_MAPOUTBUF   SNDCTL_DSP_MAPOUTBUF

◆ SOUND_PCM_NONBLOCK

#define SOUND_PCM_NONBLOCK   SNDCTL_DSP_NONBLOCK

◆ SOUND_PCM_POST

#define SOUND_PCM_POST   SNDCTL_DSP_POST

◆ SOUND_PCM_READ_BITS

#define SOUND_PCM_READ_BITS   _IOR ('P', 5, int)

◆ SOUND_PCM_READ_CHANNELS

#define SOUND_PCM_READ_CHANNELS   _IOR ('P', 6, int)

◆ SOUND_PCM_READ_FILTER

#define SOUND_PCM_READ_FILTER   _IOR ('P', 7, int)

◆ SOUND_PCM_READ_RATE

#define SOUND_PCM_READ_RATE   _IOR ('P', 2, int)

◆ SOUND_PCM_RESET

#define SOUND_PCM_RESET   SNDCTL_DSP_RESET

◆ SOUND_PCM_SETFMT

#define SOUND_PCM_SETFMT   SNDCTL_DSP_SETFMT

◆ SOUND_PCM_SETFRAGMENT

#define SOUND_PCM_SETFRAGMENT   SNDCTL_DSP_SETFRAGMENT

◆ SOUND_PCM_SETSYNCRO

#define SOUND_PCM_SETSYNCRO   SNDCTL_DSP_SETSYNCRO

◆ SOUND_PCM_SETTRIGGER

#define SOUND_PCM_SETTRIGGER   SNDCTL_DSP_SETTRIGGER

◆ SOUND_PCM_SUBDIVIDE

#define SOUND_PCM_SUBDIVIDE   SNDCTL_DSP_SUBDIVIDE

◆ SOUND_PCM_SYNC

#define SOUND_PCM_SYNC   SNDCTL_DSP_SYNC

◆ SOUND_PCM_WRITE_BITS

#define SOUND_PCM_WRITE_BITS   SNDCTL_DSP_SETFMT

◆ SOUND_PCM_WRITE_CHANNELS

#define SOUND_PCM_WRITE_CHANNELS   _IOWR('P', 6, int)

◆ SOUND_PCM_WRITE_FILTER

#define SOUND_PCM_WRITE_FILTER   _IOWR('P', 7, int)

◆ SOUND_PCM_WRITE_RATE

#define SOUND_PCM_WRITE_RATE   SNDCTL_DSP_SPEED

◆ SOUND_VERSION [1/2]

#define SOUND_VERSION   0x040000

XXX OSSv4 defines – some bits taken straight out of the new sys/soundcard.h bundled with recent OSS releases.

NB: These macros and structures will be reorganized and inserted in appropriate places throughout this file once the code begins to take shape.

Todo

reorganize layout more like the 4Front version

ask about maintaining __SIOWR vs. _IOWR ioctl cmd defines

Note
The OSSV4_EXPERIMENT macro is meant to wrap new development code in the sound system relevant to adopting 4Front's OSSv4 specification. Users should not enable this! Really!

◆ SOUND_VERSION [2/2]

#define SOUND_VERSION   301

XXX OSSv4 defines – some bits taken straight out of the new sys/soundcard.h bundled with recent OSS releases.

NB: These macros and structures will be reorganized and inserted in appropriate places throughout this file once the code begins to take shape.

Todo

reorganize layout more like the 4Front version

ask about maintaining __SIOWR vs. _IOWR ioctl cmd defines

Note
The OSSV4_EXPERIMENT macro is meant to wrap new development code in the sound system relevant to adopting 4Front's OSSv4 specification. Users should not enable this! Really!

◆ SYNTH_CAP_INPUT

#define SYNTH_CAP_INPUT   0x00000004 /* Input (MIDI) device */

◆ SYNTH_CAP_OPL3

#define SYNTH_CAP_OPL3   0x00000002 /* Set if OPL3 supported */

◆ SYNTH_CAP_PERCMODE

#define SYNTH_CAP_PERCMODE   0x00000001 /* No longer used */

◆ SYNTH_TYPE_FM

#define SYNTH_TYPE_FM   0

◆ SYNTH_TYPE_MIDI

#define SYNTH_TYPE_MIDI   2 /* Midi interface */

◆ SYNTH_TYPE_SAMPLE

#define SYNTH_TYPE_SAMPLE   1

◆ SYSEX_PATCH

#define SYSEX_PATCH   _PATCHKEY(0x05)

◆ TMR_CLOCK

#define TMR_CLOCK   9 /* MIDI clock */

◆ TMR_CONTINUE

#define TMR_CONTINUE   5

◆ TMR_ECHO

#define TMR_ECHO   8

◆ TMR_EXTERNAL

#define TMR_EXTERNAL   0x00000002

◆ TMR_INTERNAL

#define TMR_INTERNAL   0x00000001

◆ TMR_MODE_CLS

#define TMR_MODE_CLS   0x00000040

◆ TMR_MODE_FSK

#define TMR_MODE_FSK   0x00000020

◆ TMR_MODE_MIDI

#define TMR_MODE_MIDI   0x00000010

◆ TMR_MODE_SMPTE

#define TMR_MODE_SMPTE   0x00000080

◆ TMR_SPP

#define TMR_SPP   10 /* Song position pointer */

◆ TMR_START

#define TMR_START   4

◆ TMR_STOP

#define TMR_STOP   3

◆ TMR_TEMPO

#define TMR_TEMPO   6

◆ TMR_TIMESIG

#define TMR_TIMESIG   11 /* Time signature */

◆ TMR_WAIT_ABS

#define TMR_WAIT_ABS   2 /* Absolute time since TMR_START */

◆ TMR_WAIT_REL

#define TMR_WAIT_REL   1 /* Time relative to the prev time */

◆ VOL_METHOD_ADAGIO

#define VOL_METHOD_ADAGIO   1

◆ VOL_METHOD_LINEAR

#define VOL_METHOD_LINEAR   2

◆ VOXWARE

#define VOXWARE   /* does this have any use ? */

◆ WAVE_16_BITS

#define WAVE_16_BITS   0x01 /* bit 0 = 8 or 16 bit wave data. */

◆ WAVE_BIDIR_LOOP

#define WAVE_BIDIR_LOOP   0x08 /* bit 3 = Set is bidirectional looping. */

◆ WAVE_ENVELOPES

#define WAVE_ENVELOPES   0x40 /* bit 6 = Enable envelopes - 1 */

◆ WAVE_LOOP_BACK

#define WAVE_LOOP_BACK   0x10 /* bit 4 = Set is looping backward. */

◆ WAVE_LOOPING

#define WAVE_LOOPING   0x04 /* bit 2 = looping enabled-1. */

◆ WAVE_SCALE

#define WAVE_SCALE   0x00040000 /* The scaling info is valid */

◆ WAVE_SUSTAIN_ON

#define WAVE_SUSTAIN_ON   0x20 /* bit 5 = Turn sustaining on. (Env. pts. 3)*/

◆ WAVE_TREMOLO

#define WAVE_TREMOLO   0x00020000 /* The tremolo info is valid */

◆ WAVE_UNSIGNED

#define WAVE_UNSIGNED   0x02 /* bit 1 = Signed - Unsigned data. */

◆ WAVE_VIBRATO

#define WAVE_VIBRATO   0x00010000 /* The vibrato info is valid */

Typedef Documentation

◆ audio_buf_info

typedef struct audio_buf_info audio_buf_info

◆ audio_errinfo

typedef struct audio_errinfo audio_errinfo

◆ buffmem_desc

typedef struct buffmem_desc buffmem_desc

◆ copr_buffer

typedef struct copr_buffer copr_buffer

◆ copr_debug_buf

typedef struct copr_debug_buf copr_debug_buf

◆ copr_msg

typedef struct copr_msg copr_msg

◆ count_info

typedef struct count_info count_info

◆ mixer_info

typedef struct mixer_info mixer_info

◆ oss_audioinfo

typedef struct oss_audioinfo oss_audioinfo

Argument for SNDCTL_AUDIOINFO ioctl.

For use w/ the SNDCTL_AUDIOINFO ioctl available on audio (/dev/dsp*) devices.

◆ oss_card_info

typedef struct oss_card_info oss_card_info

◆ oss_devnode_t

typedef char oss_devnode_t[OSS_DEVNODE_SIZE]

◆ oss_label_t

typedef char oss_label_t[OSS_LABEL_SIZE]

◆ oss_longname_t

typedef char oss_longname_t[OSS_LONGNAME_SIZE]

◆ oss_midi_info

typedef struct oss_midi_info oss_midi_info

◆ oss_mixer_enuminfo

typedef struct oss_mixer_enuminfo oss_mixer_enuminfo

◆ oss_mixer_value

typedef struct oss_mixer_value oss_mixer_value

◆ oss_mixerinfo

typedef struct oss_mixerinfo oss_mixerinfo

◆ oss_mixext

typedef struct oss_mixext oss_mixext

◆ oss_mixext_root

typedef struct oss_mixext_root oss_mixext_root

◆ oss_peaks_t

typedef unsigned short oss_peaks_t[MAX_PEAK_CHANNELS]

◆ oss_syncgroup

typedef struct oss_syncgroup oss_syncgroup

◆ oss_sysinfo

typedef struct oss_sysinfo oss_sysinfo

Argument for SNDCTL_SYSINFO ioctl.

For use w/ the SNDCTL_SYSINFO ioctl available on audio (/dev/dsp*), mixer, and MIDI devices.

◆ sbi_instr_data

typedef u_char sbi_instr_data[32]

◆ snd_capabilities

◆ snd_chan_param

◆ snd_mix_param

typedef struct _snd_mix_param snd_mix_param

◆ snd_sync_parm

typedef struct _snd_sync_parm snd_sync_parm

Function Documentation

◆ seqbuf_dump()

void seqbuf_dump ( void )