111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** To edit the content of this header, modify the corresponding 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** source file (e.g. under external/kernel-headers/original/) then 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** run bionic/libc/kernel/tools/update_all.py 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** Any manual change here will be lost the next time this script will 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** be run. You've been warned! 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _UAPISOUNDCARD_H 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _UAPISOUNDCARD_H 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_VERSION 0x030802 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define OPEN_SOUND_SYSTEM 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/ioctl.h> 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <endian.h> 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_ADLIB 1 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_SB 2 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_PAS 3 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_GUS 4 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_MPU401 5 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_SB16 6 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_SB16MIDI 7 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_UART6850 8 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_GUS16 9 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_MSS 10 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_PSS 11 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_SSCAPE 12 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_PSS_MPU 13 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_PSS_MSS 14 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_SSCAPE_MSS 15 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_TRXPRO 16 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_TRXPRO_SB 17 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_TRXPRO_MPU 18 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_MAD16 19 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_MAD16_MPU 20 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_CS4232 21 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_CS4232_MPU 22 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_MAUI 23 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_PSEUDO_MSS 24 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_GUSPNP 25 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCARD_UART401 26 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _SIOWR 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if defined(_IOWR) && (defined(_AIX) || !defined(sun) && !defined(sparc) && !defined(__sparc__) && !defined(__INCioctlh) && !defined(__Lynx__)) 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOCPARM_MASK IOCPARM_MASK 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_VOID IOC_VOID 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_OUT IOC_OUT 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_IN IOC_IN 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_INOUT IOC_INOUT 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_SIZE _IOC_SIZE 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_DIR _IOC_DIR 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_NONE _IOC_NONE 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_READ _IOC_READ 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_WRITE _IOC_WRITE 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIO _IO 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOR _IOR 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOW _IOW 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOWR _IOWR 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOCPARM_MASK 0x1fff 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_VOID 0x00000000 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_OUT 0x20000000 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_IN 0x40000000 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SIOC_INOUT (SIOC_IN|SIOC_OUT) 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIO(x,y) ((int)(SIOC_VOID|(x<<8)|y)) 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOR(x,y,t) ((int)(SIOC_OUT|((sizeof(t)&SIOCPARM_MASK)<<16)|(x<<8)|y)) 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOW(x,y,t) ((int)(SIOC_IN|((sizeof(t)&SIOCPARM_MASK)<<16)|(x<<8)|y)) 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOWR(x,y,t) ((int)(SIOC_INOUT|((sizeof(t)&SIOCPARM_MASK)<<16)|(x<<8)|y)) 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_SIZE(x) ((x>>16)&SIOCPARM_MASK) 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_DIR(x) (x & 0xf0000000) 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_NONE SIOC_VOID 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_READ SIOC_OUT 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SIOC_WRITE SIOC_IN 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_RESET _SIO ('Q', 0) 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_SYNC _SIO ('Q', 1) 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SYNTH_INFO _SIOWR('Q', 2, struct synth_info) 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_CTRLRATE _SIOWR('Q', 3, int) 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_GETOUTCOUNT _SIOR ('Q', 4, int) 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_GETINCOUNT _SIOR ('Q', 5, int) 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_PERCMODE _SIOW ('Q', 6, int) 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_FM_LOAD_INSTR _SIOW ('Q', 7, struct sbi_instrument) 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_TESTMIDI _SIOW ('Q', 8, int) 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_RESETSAMPLES _SIOW ('Q', 9, int) 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_NRSYNTHS _SIOR ('Q',10, int) 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_NRMIDIS _SIOR ('Q',11, int) 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_MIDI_INFO _SIOWR('Q',12, struct midi_info) 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_THRESHOLD _SIOW ('Q',13, int) 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SYNTH_MEMAVL _SIOWR('Q',14, int) 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_FM_4OP_ENABLE _SIOW ('Q',15, int) 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_PANIC _SIO ('Q',17) 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_OUTOFBAND _SIOW ('Q',18, struct seq_event_rec) 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SEQ_GETTIME _SIOR ('Q',19, int) 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SYNTH_ID _SIOWR('Q',20, struct synth_info) 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SYNTH_CONTROL _SIOWR('Q',21, struct synth_control) 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_SYNTH_REMOVESAMPLE _SIOWR('Q',22, struct remove_sample) 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct synth_control 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int devno; 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char data[4000]; 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}synth_control; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct remove_sample 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int devno; 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int bankno; 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int instrno; 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} remove_sample; 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct seq_event_rec { 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char arr[8]; 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} seq_event_rec; 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_TIMEBASE _SIOWR('T', 1, int) 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_START _SIO ('T', 2) 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_STOP _SIO ('T', 3) 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_CONTINUE _SIO ('T', 4) 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_TEMPO _SIOWR('T', 5, int) 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_SOURCE _SIOWR('T', 6, int) 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_INTERNAL 0x00000001 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_EXTERNAL 0x00000002 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_MODE_MIDI 0x00000010 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_MODE_FSK 0x00000020 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_MODE_CLS 0x00000040 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_MODE_SMPTE 0x00000080 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_METRONOME _SIOW ('T', 7, int) 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_TMR_SELECT _SIOW ('T', 8, int) 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _LINUX_PATCHKEY_H_INDIRECT 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/patchkey.h> 16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#undef _LINUX_PATCHKEY_H_INDIRECT 16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifdef __BYTE_ORDER 16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if __BYTE_ORDER == __BIG_ENDIAN 16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_S16_NE AFMT_S16_BE 17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#elif __BYTE_ORDER == __LITTLE_ENDIAN 17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_S16_NE AFMT_S16_LE 17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#error "could not determine byte order" 17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 17711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct patch_info { 17811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 17911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short key; 18011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_PATCH _PATCHKEY(0x04) 18111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GUS_PATCH WAVE_PATCH 18211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVEFRONT_PATCH _PATCHKEY(0x06) 18311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 18411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert short device_no; 18511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert short instr_no; 18611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int mode; 18711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_16_BITS 0x01 18811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 18911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_UNSIGNED 0x02 19011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_LOOPING 0x04 19111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_BIDIR_LOOP 0x08 19211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_LOOP_BACK 0x10 19311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 19411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_SUSTAIN_ON 0x20 19511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_ENVELOPES 0x40 19611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_FAST_RELEASE 0x80 19711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_VIBRATO 0x00010000 19811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 19911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_TREMOLO 0x00020000 20011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_SCALE 0x00040000 20111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_FRACTIONS 0x00080000 20211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_ROM 0x40000000 20311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 20411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAVE_MULAW 0x20000000 20511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int len; 20611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int loop_start, loop_end; 20711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int base_freq; 20811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 20911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int base_note; 21011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int high_note; 21111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int low_note; 21211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int panning; 21311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 21411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int detuning; 21511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char env_rate[ 6 ]; 21611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char env_offset[ 6 ]; 21711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char tremolo_sweep; 21811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 21911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char tremolo_rate; 22011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char tremolo_depth; 22111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char vibrato_sweep; 22211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char vibrato_rate; 22311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 22411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char vibrato_depth; 22511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int scale_frequency; 22611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int scale_factor; 22711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int volume; 22811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 22911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int fractions; 23011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int reserved1; 23111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int spare[2]; 23211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char data[1]; 23311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 23411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 23511cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sysex_info { 23611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert short key; 23711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYSEX_PATCH _PATCHKEY(0x05) 23811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 23911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MAUI_PATCH _PATCHKEY(0x06) 24011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert short device_no; 24111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int len; 24211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char data[1]; 24311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 24511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_NOTEOFF 0 24611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_FMNOTEOFF SEQ_NOTEOFF 24711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_NOTEON 1 24811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_FMNOTEON SEQ_NOTEON 25011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_WAIT TMR_WAIT_ABS 25111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PGMCHANGE 3 25211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_FMPGMCHANGE SEQ_PGMCHANGE 25311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 25411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_SYNCTIMER TMR_START 25511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_MIDIPUTC 5 25611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DRUMON 6 25711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DRUMOFF 7 25811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 25911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_ECHO TMR_ECHO 26011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_AFTERTOUCH 9 26111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_CONTROLLER 10 26211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_BANK_SELECT 0x00 26311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 26411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_MODWHEEL 0x01 26511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_BREATH 0x02 26611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_FOOT 0x04 26711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_PORTAMENTO_TIME 0x05 26811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 26911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_DATA_ENTRY 0x06 27011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_MAIN_VOLUME 0x07 27111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_BALANCE 0x08 27211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_PAN 0x0a 27311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 27411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_EXPRESSION 0x0b 27511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE1 0x10 27611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE2 0x11 27711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE3 0x12 27811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 27911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE4 0x13 28011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_DAMPER_PEDAL 0x40 28111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_SUSTAIN 0x40 28211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_HOLD 0x40 28311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 28411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_PORTAMENTO 0x41 28511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_SOSTENUTO 0x42 28611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_SOFT_PEDAL 0x43 28711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_HOLD2 0x45 28811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 28911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE5 0x50 29011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE6 0x51 29111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE7 0x52 29211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_GENERAL_PURPOSE8 0x53 29311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_EXT_EFF_DEPTH 0x5b 29511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_TREMOLO_DEPTH 0x5c 29611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_CHORUS_DEPTH 0x5d 29711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_DETUNE_DEPTH 0x5e 29811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_CELESTE_DEPTH 0x5e 30011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_PHASER_DEPTH 0x5f 30111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_DATA_INCREMENT 0x60 30211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_DATA_DECREMENT 0x61 30311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 30411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_NONREG_PARM_NUM_LSB 0x62 30511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_NONREG_PARM_NUM_MSB 0x63 30611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_REGIST_PARM_NUM_LSB 0x64 30711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTL_REGIST_PARM_NUM_MSB 0x65 30811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 30911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTRL_PITCH_BENDER 255 31011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTRL_PITCH_BENDER_RANGE 254 31111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTRL_EXPRESSION 253 31211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CTRL_MAIN_VOLUME 252 31311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 31411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_BALANCE 11 31511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_VOLMODE 12 31611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define VOL_METHOD_ADAGIO 1 31711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define VOL_METHOD_LINEAR 2 31811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 31911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_FULLSIZE 0xfd 32011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PRIVATE 0xfe 32111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_EXTENDED 0xff 32211cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef unsigned char sbi_instr_data[32]; 32311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 32411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sbi_instrument { 32511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short key; 32611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define FM_PATCH _PATCHKEY(0x01) 32711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define OPL3_PATCH _PATCHKEY(0x03) 32811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 32911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert short device; 33011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int channel; 33111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert sbi_instr_data operators; 33211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 33311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 33411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct synth_info { 33511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[30]; 33611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int device; 33711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int synth_type; 33811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 33911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_TYPE_FM 0 34011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_TYPE_SAMPLE 1 34111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_TYPE_MIDI 2 34211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int synth_subtype; 34311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define FM_TYPE_ADLIB 0x00 34511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define FM_TYPE_OPL3 0x01 34611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_TYPE_MPU401 0x401 34711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SAMPLE_TYPE_BASIC 0x10 34811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SAMPLE_TYPE_GUS SAMPLE_TYPE_BASIC 35011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SAMPLE_TYPE_WAVEFRONT 0x11 35111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int perc_mode; 35211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int nr_voices; 35311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 35411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int nr_drums; 35511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int instr_bank_size; 35611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int capabilities; 35711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_CAP_PERCMODE 0x00000001 35811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 35911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_CAP_OPL3 0x00000002 36011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SYNTH_CAP_INPUT 0x00000004 36111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int dummies[19]; 36211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 36311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 36411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct sound_timer_info { 36511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[32]; 36611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int caps; 36711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 36811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 36911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_CAP_MPU401 1 37011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct midi_info { 37111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[30]; 37211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int device; 37311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 37411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int capabilities; 37511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int dev_type; 37611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int dummies[18]; 37711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert }; 37811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 37911cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct { 38011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char cmd; 38111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char nr_args, nr_returns; 38211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char data[30]; 38311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 38411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } mpu_command_rec; 38511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_MIDI_PRETIME _SIOWR('m', 0, int) 38611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_MIDI_MPUMODE _SIOWR('m', 1, int) 38711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_MIDI_MPUCMD _SIOWR('m', 2, mpu_command_rec) 38811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 38911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_RESET _SIO ('P', 0) 39011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SYNC _SIO ('P', 1) 39111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SPEED _SIOWR('P', 2, int) 39211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_STEREO _SIOWR('P', 3, int) 39311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETBLKSIZE _SIOWR('P', 4, int) 39511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SAMPLESIZE SNDCTL_DSP_SETFMT 39611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_CHANNELS _SIOWR('P', 6, int) 39711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_WRITE_CHANNELS SNDCTL_DSP_CHANNELS 39811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_WRITE_FILTER _SIOWR('P', 7, int) 40011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_POST _SIO ('P', 8) 40111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SUBDIVIDE _SIOWR('P', 9, int) 40211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETFRAGMENT _SIOWR('P',10, int) 40311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 40411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETFMTS _SIOR ('P',11, int) 40511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETFMT _SIOWR('P',5, int) 40611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_QUERY 0x00000000 40711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_MU_LAW 0x00000001 40811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 40911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_A_LAW 0x00000002 41011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_IMA_ADPCM 0x00000004 41111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_U8 0x00000008 41211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_S16_LE 0x00000010 41311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 41411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_S16_BE 0x00000020 41511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_S8 0x00000040 41611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_U16_LE 0x00000080 41711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_U16_BE 0x00000100 41811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 41911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_MPEG 0x00000200 42011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define AFMT_AC3 0x00000400 42111cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct audio_buf_info { 42211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int fragments; 42311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 42411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int fragstotal; 42511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int fragsize; 42611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int bytes; 42711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } audio_buf_info; 42811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 42911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETOSPACE _SIOR ('P',12, audio_buf_info) 43011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETISPACE _SIOR ('P',13, audio_buf_info) 43111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_NONBLOCK _SIO ('P',14) 43211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETCAPS _SIOR ('P',15, int) 43311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 43411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_REVISION 0x000000ff 43511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_DUPLEX 0x00000100 43611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_REALTIME 0x00000200 43711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_BATCH 0x00000400 43811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 43911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_COPROC 0x00000800 44011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_TRIGGER 0x00001000 44111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_MMAP 0x00002000 44211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_MULTI 0x00004000 44311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_CAP_BIND 0x00008000 44511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETTRIGGER _SIOR ('P',16, int) 44611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETTRIGGER _SIOW ('P',16, int) 44711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCM_ENABLE_INPUT 0x00000001 44811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCM_ENABLE_OUTPUT 0x00000002 45011cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct count_info { 45111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int bytes; 45211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int blocks; 45311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 45411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int ptr; 45511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } count_info; 45611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETIPTR _SIOR ('P',17, count_info) 45711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETOPTR _SIOR ('P',18, count_info) 45811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 45911cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct buffmem_desc { 46011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned *buffer; 46111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int size; 46211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } buffmem_desc; 46311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 46411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_MAPINBUF _SIOR ('P', 19, buffmem_desc) 46511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_MAPOUTBUF _SIOR ('P', 20, buffmem_desc) 46611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETSYNCRO _SIO ('P', 21) 46711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETDUPLEX _SIO ('P', 22) 46811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 46911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETODELAY _SIOR ('P', 23, int) 47011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETCHANNELMASK _SIOWR('P', 64, int) 47111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_BIND_CHANNEL _SIOWR('P', 65, int) 47211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_QUERY 0x00000000 47311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 47411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_FRONT 0x00000001 47511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_SURR 0x00000002 47611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_CENTER_LFE 0x00000004 47711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_HANDSET 0x00000008 47811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 47911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_MIC 0x00000010 48011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_MODEM1 0x00000020 48111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_MODEM2 0x00000040 48211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_I2S 0x00000080 48311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 48411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define DSP_BIND_SPDIF 0x00000100 48511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_SETSPDIF _SIOW ('P', 66, int) 48611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_GETSPDIF _SIOR ('P', 67, int) 48711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_PRO 0x0001 48811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 48911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_N_AUD 0x0002 49011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_COPY 0x0004 49111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_PRE 0x0008 49211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_CC 0x07f0 49311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_L 0x0800 49511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_DRS 0x4000 49611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SPDIF_V 0x8000 49711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_DSP_PROFILE _SIOW ('P', 23, int) 49811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define APF_NORMAL 0 50011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define APF_NETWORK 1 50111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define APF_CPUINTENS 2 50211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_READ_RATE _SIOR ('P', 2, int) 50311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 50411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_READ_CHANNELS _SIOR ('P', 6, int) 50511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_READ_BITS _SIOR ('P', 5, int) 50611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_READ_FILTER _SIOR ('P', 7, int) 50711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_WRITE_BITS SNDCTL_DSP_SETFMT 50811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 50911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_WRITE_RATE SNDCTL_DSP_SPEED 51011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_POST SNDCTL_DSP_POST 51111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_RESET SNDCTL_DSP_RESET 51211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SYNC SNDCTL_DSP_SYNC 51311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 51411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SUBDIVIDE SNDCTL_DSP_SUBDIVIDE 51511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SETFRAGMENT SNDCTL_DSP_SETFRAGMENT 51611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETFMTS SNDCTL_DSP_GETFMTS 51711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SETFMT SNDCTL_DSP_SETFMT 51811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 51911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETOSPACE SNDCTL_DSP_GETOSPACE 52011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETISPACE SNDCTL_DSP_GETISPACE 52111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_NONBLOCK SNDCTL_DSP_NONBLOCK 52211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETCAPS SNDCTL_DSP_GETCAPS 52311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 52411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETTRIGGER SNDCTL_DSP_GETTRIGGER 52511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SETTRIGGER SNDCTL_DSP_SETTRIGGER 52611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_SETSYNCRO SNDCTL_DSP_SETSYNCRO 52711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETIPTR SNDCTL_DSP_GETIPTR 52811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 52911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_GETOPTR SNDCTL_DSP_GETOPTR 53011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_MAPINBUF SNDCTL_DSP_MAPINBUF 53111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_PCM_MAPOUTBUF SNDCTL_DSP_MAPOUTBUF 53211cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct copr_buffer { 53311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 53411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int command; 53511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int flags; 53611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CPF_NONE 0x0000 53711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CPF_FIRST 0x0001 53811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 53911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CPF_LAST 0x0002 54011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int len; 54111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int offs; 54211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char data[4000]; 54311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } copr_buffer; 54511cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct copr_debug_buf { 54611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int command; 54711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int parm1; 54811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int parm2; 55011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int flags; 55111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int len; 55211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } copr_debug_buf; 55311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 55411cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct copr_msg { 55511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int len; 55611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char data[4000]; 55711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } copr_msg; 55811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 55911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_RESET _SIO ('C', 0) 56011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_LOAD _SIOWR('C', 1, copr_buffer) 56111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_RDATA _SIOWR('C', 2, copr_debug_buf) 56211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_RCODE _SIOWR('C', 3, copr_debug_buf) 56311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 56411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_WDATA _SIOW ('C', 4, copr_debug_buf) 56511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_WCODE _SIOW ('C', 5, copr_debug_buf) 56611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_RUN _SIOWR('C', 6, copr_debug_buf) 56711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_HALT _SIOWR('C', 7, copr_debug_buf) 56811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 56911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_SENDMSG _SIOWR('C', 8, copr_msg) 57011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SNDCTL_COPR_RCVMSG _SIOR ('C', 9, copr_msg) 57111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_NRDEVICES 25 57211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_VOLUME 0 57311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 57411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_BASS 1 57511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_TREBLE 2 57611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_SYNTH 3 57711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PCM 4 57811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 57911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_SPEAKER 5 58011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_LINE 6 58111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_MIC 7 58211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_CD 8 58311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 58411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_IMIX 9 58511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_ALTPCM 10 58611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_RECLEV 11 58711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_IGAIN 12 58811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 58911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_OGAIN 13 59011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_LINE1 14 59111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_LINE2 15 59211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_LINE3 16 59311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_DIGITAL1 17 59511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_DIGITAL2 18 59611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_DIGITAL3 19 59711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PHONEIN 20 59811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PHONEOUT 21 60011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_VIDEO 22 60111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_RADIO 23 60211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_MONITOR 24 60311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 60411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_ONOFF_MIN 28 60511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_ONOFF_MAX 30 60611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_NONE 31 60711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_ENHANCE SOUND_MIXER_NONE 60811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 60911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_MUTE SOUND_MIXER_NONE 61011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_LOUD SOUND_MIXER_NONE 61111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_DEVICE_LABELS {"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"} 61211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_DEVICE_NAMES {"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"} 61311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 61411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_RECSRC 0xff 61511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_DEVMASK 0xfe 61611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_RECMASK 0xfd 61711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_CAPS 0xfc 61811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 61911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_CAP_EXCL_INPUT 0x00000001 62011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_STEREODEVS 0xfb 62111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_OUTSRC 0xfa 62211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_OUTMASK 0xf9 62311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 62411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_VOLUME (1 << SOUND_MIXER_VOLUME) 62511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_BASS (1 << SOUND_MIXER_BASS) 62611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_TREBLE (1 << SOUND_MIXER_TREBLE) 62711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_SYNTH (1 << SOUND_MIXER_SYNTH) 62811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 62911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_PCM (1 << SOUND_MIXER_PCM) 63011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_SPEAKER (1 << SOUND_MIXER_SPEAKER) 63111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_LINE (1 << SOUND_MIXER_LINE) 63211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_MIC (1 << SOUND_MIXER_MIC) 63311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 63411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_CD (1 << SOUND_MIXER_CD) 63511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_IMIX (1 << SOUND_MIXER_IMIX) 63611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_ALTPCM (1 << SOUND_MIXER_ALTPCM) 63711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_RECLEV (1 << SOUND_MIXER_RECLEV) 63811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 63911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_IGAIN (1 << SOUND_MIXER_IGAIN) 64011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_OGAIN (1 << SOUND_MIXER_OGAIN) 64111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_LINE1 (1 << SOUND_MIXER_LINE1) 64211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_LINE2 (1 << SOUND_MIXER_LINE2) 64311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_LINE3 (1 << SOUND_MIXER_LINE3) 64511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_DIGITAL1 (1 << SOUND_MIXER_DIGITAL1) 64611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_DIGITAL2 (1 << SOUND_MIXER_DIGITAL2) 64711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_DIGITAL3 (1 << SOUND_MIXER_DIGITAL3) 64811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_PHONEIN (1 << SOUND_MIXER_PHONEIN) 65011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_PHONEOUT (1 << SOUND_MIXER_PHONEOUT) 65111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_RADIO (1 << SOUND_MIXER_RADIO) 65211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_VIDEO (1 << SOUND_MIXER_VIDEO) 65311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 65411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_MONITOR (1 << SOUND_MIXER_MONITOR) 65511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_MUTE (1 << SOUND_MIXER_MUTE) 65611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_ENHANCE (1 << SOUND_MIXER_ENHANCE) 65711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MASK_LOUD (1 << SOUND_MIXER_LOUD) 65811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 65911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIXER_READ(dev) _SIOR('M', dev, int) 66011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_VOLUME MIXER_READ(SOUND_MIXER_VOLUME) 66111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_BASS MIXER_READ(SOUND_MIXER_BASS) 66211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_TREBLE MIXER_READ(SOUND_MIXER_TREBLE) 66311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 66411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_SYNTH MIXER_READ(SOUND_MIXER_SYNTH) 66511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_PCM MIXER_READ(SOUND_MIXER_PCM) 66611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_SPEAKER MIXER_READ(SOUND_MIXER_SPEAKER) 66711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_LINE MIXER_READ(SOUND_MIXER_LINE) 66811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 66911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_MIC MIXER_READ(SOUND_MIXER_MIC) 67011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_CD MIXER_READ(SOUND_MIXER_CD) 67111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_IMIX MIXER_READ(SOUND_MIXER_IMIX) 67211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_ALTPCM MIXER_READ(SOUND_MIXER_ALTPCM) 67311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 67411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_RECLEV MIXER_READ(SOUND_MIXER_RECLEV) 67511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_IGAIN MIXER_READ(SOUND_MIXER_IGAIN) 67611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_OGAIN MIXER_READ(SOUND_MIXER_OGAIN) 67711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_LINE1 MIXER_READ(SOUND_MIXER_LINE1) 67811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 67911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_LINE2 MIXER_READ(SOUND_MIXER_LINE2) 68011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_LINE3 MIXER_READ(SOUND_MIXER_LINE3) 68111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_MUTE MIXER_READ(SOUND_MIXER_MUTE) 68211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_ENHANCE MIXER_READ(SOUND_MIXER_ENHANCE) 68311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 68411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_LOUD MIXER_READ(SOUND_MIXER_LOUD) 68511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_RECSRC MIXER_READ(SOUND_MIXER_RECSRC) 68611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_DEVMASK MIXER_READ(SOUND_MIXER_DEVMASK) 68711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_RECMASK MIXER_READ(SOUND_MIXER_RECMASK) 68811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 68911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_STEREODEVS MIXER_READ(SOUND_MIXER_STEREODEVS) 69011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_READ_CAPS MIXER_READ(SOUND_MIXER_CAPS) 69111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIXER_WRITE(dev) _SIOWR('M', dev, int) 69211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_VOLUME MIXER_WRITE(SOUND_MIXER_VOLUME) 69311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_BASS MIXER_WRITE(SOUND_MIXER_BASS) 69511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_TREBLE MIXER_WRITE(SOUND_MIXER_TREBLE) 69611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_SYNTH MIXER_WRITE(SOUND_MIXER_SYNTH) 69711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_PCM MIXER_WRITE(SOUND_MIXER_PCM) 69811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_SPEAKER MIXER_WRITE(SOUND_MIXER_SPEAKER) 70011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_LINE MIXER_WRITE(SOUND_MIXER_LINE) 70111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_MIC MIXER_WRITE(SOUND_MIXER_MIC) 70211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_CD MIXER_WRITE(SOUND_MIXER_CD) 70311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 70411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_IMIX MIXER_WRITE(SOUND_MIXER_IMIX) 70511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_ALTPCM MIXER_WRITE(SOUND_MIXER_ALTPCM) 70611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_RECLEV MIXER_WRITE(SOUND_MIXER_RECLEV) 70711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_IGAIN MIXER_WRITE(SOUND_MIXER_IGAIN) 70811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 70911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_OGAIN MIXER_WRITE(SOUND_MIXER_OGAIN) 71011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_LINE1 MIXER_WRITE(SOUND_MIXER_LINE1) 71111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_LINE2 MIXER_WRITE(SOUND_MIXER_LINE2) 71211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_LINE3 MIXER_WRITE(SOUND_MIXER_LINE3) 71311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 71411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_MUTE MIXER_WRITE(SOUND_MIXER_MUTE) 71511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_ENHANCE MIXER_WRITE(SOUND_MIXER_ENHANCE) 71611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_LOUD MIXER_WRITE(SOUND_MIXER_LOUD) 71711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_WRITE_RECSRC MIXER_WRITE(SOUND_MIXER_RECSRC) 71811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 71911cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct mixer_info 72011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 72111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char id[16]; 72211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[32]; 72311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 72411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int modify_counter; 72511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int fillers[10]; 72611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} mixer_info; 72711cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct _old_mixer_info 72811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 72911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 73011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char id[16]; 73111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[32]; 73211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} _old_mixer_info; 73311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 73411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_INFO _SIOR ('M', 101, mixer_info) 73511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_OLD_MIXER_INFO _SIOR ('M', 101, _old_mixer_info) 73611cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef unsigned char mixer_record[128]; 73711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_ACCESS _SIOWR('M', 102, mixer_record) 73811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 73911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_AGC _SIOWR('M', 103, int) 74011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_3DSE _SIOWR('M', 104, int) 74111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PRIVATE1 _SIOWR('M', 111, int) 74211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PRIVATE2 _SIOWR('M', 112, int) 74311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PRIVATE3 _SIOWR('M', 113, int) 74511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PRIVATE4 _SIOWR('M', 114, int) 74611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_PRIVATE5 _SIOWR('M', 115, int) 74711cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct mixer_vol_table { 74811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int num; 75011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[32]; 75111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int levels[32]; 75211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} mixer_vol_table; 75311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 75411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_GETLEVELS _SIOWR('M', 116, mixer_vol_table) 75511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SOUND_MIXER_SETLEVELS _SIOWR('M', 117, mixer_vol_table) 75611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define OSS_GETVERSION _SIOR ('M', 118, int) 75711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define EV_SEQ_LOCAL 0x80 75811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 75911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define EV_TIMING 0x81 76011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define EV_CHN_COMMON 0x92 76111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define EV_CHN_VOICE 0x93 76211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define EV_SYSEX 0x94 76311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 76411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_NOTEOFF 0x80 76511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_NOTEON 0x90 76611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_KEY_PRESSURE 0xA0 76711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_CTL_CHANGE 0xB0 76811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 76911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_PGM_CHANGE 0xC0 77011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_CHN_PRESSURE 0xD0 77111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_PITCH_BEND 0xE0 77211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MIDI_SYSTEM_PREFIX 0xF0 77311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 77411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_WAIT_REL 1 77511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_WAIT_ABS 2 77611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_STOP 3 77711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_START 4 77811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 77911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_CONTINUE 5 78011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_TEMPO 6 78111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_ECHO 8 78211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_CLOCK 9 78311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 78411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_SPP 10 78511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define TMR_TIMESIG 11 78611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LOCL_STARTAUDIO 1 78711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DECLAREBUF() SEQ_USE_EXTBUF() 78811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 78911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PM_DEFINES int __foo_bar___ 79011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_LOAD_GMINSTR(dev, instr) 79111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_LOAD_GMDRUM(dev, drum) 79211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SEQ_EXTERN extern 79311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_USE_EXTBUF() _SEQ_EXTERN unsigned char _seqbuf[]; _SEQ_EXTERN int _seqbuflen; _SEQ_EXTERN int _seqbufptr 79511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef USE_SIMPLE_MACROS 79611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DEFINEBUF(len) unsigned char _seqbuf[len]; int _seqbuflen = len;int _seqbufptr = 0 79711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SEQ_NEEDBUF(len) if ((_seqbufptr+(len)) > _seqbuflen) seqbuf_dump() 79811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SEQ_ADVBUF(len) _seqbufptr += len 80011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DUMPBUF seqbuf_dump 80111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 80211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _SEQ_NEEDBUF(len) 80311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 80411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 80511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_VOLUME_MODE(dev, mode) {_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);} 80611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _CHN_VOICE(dev, event, chn, note, parm) {_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);} 80711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_START_NOTE(dev, chn, note, vol) _CHN_VOICE(dev, MIDI_NOTEON, chn, note, vol) 80811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 80911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_STOP_NOTE(dev, chn, note, vol) _CHN_VOICE(dev, MIDI_NOTEOFF, chn, note, vol) 81011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_KEY_PRESSURE(dev, chn, note, pressure) _CHN_VOICE(dev, MIDI_KEY_PRESSURE, chn, note, pressure) 81111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _CHN_COMMON(dev, event, chn, p1, p2, w14) {_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);} 81211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_SYSEX(dev, buf, len) {int ii, ll=(len); unsigned char *bufp=buf; if (ll>6)ll=6; _SEQ_NEEDBUF(8); _seqbuf[_seqbufptr] = EV_SYSEX; _seqbuf[_seqbufptr+1] = (dev); for(ii=0;ii<ll;ii++) _seqbuf[_seqbufptr+ii+2] = bufp[ii]; for(ii=ll;ii<6;ii++) _seqbuf[_seqbufptr+ii+2] = 0xff; _SEQ_ADVBUF(8);} 81311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 81411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_CHN_PRESSURE(dev, chn, pressure) _CHN_COMMON(dev, MIDI_CHN_PRESSURE, chn, pressure, 0, 0) 81511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_SET_PATCH SEQ_PGM_CHANGE 81611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PGM_CHANGE(dev, chn, patch) _CHN_COMMON(dev, MIDI_PGM_CHANGE, chn, patch, 0, 0) 81711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_CONTROL(dev, chn, controller, value) _CHN_COMMON(dev, MIDI_CTL_CHANGE, chn, controller, 0, value) 81811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 81911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_BENDER(dev, chn, value) _CHN_COMMON(dev, MIDI_PITCH_BEND, chn, 0, 0, value) 82011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_V2_X_CONTROL(dev, voice, controller, 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); _seqbuf[_seqbufptr+5] = ((value)&0xff); _seqbuf[_seqbufptr+6] = ((value>>8)&0xff); _seqbuf[_seqbufptr+7] = 0; _SEQ_ADVBUF(8);} 82111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PITCHBEND(dev, voice, value) SEQ_V2_X_CONTROL(dev, voice, CTRL_PITCH_BENDER, value) 82211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_BENDER_RANGE(dev, voice, value) SEQ_V2_X_CONTROL(dev, voice, CTRL_PITCH_BENDER_RANGE, value) 82311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 82411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_EXPRESSION(dev, voice, value) SEQ_CONTROL(dev, voice, CTL_EXPRESSION, value*128) 82511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_MAIN_VOLUME(dev, voice, value) SEQ_CONTROL(dev, voice, CTL_MAIN_VOLUME, (value*16383)/100) 82611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PANNING(dev, voice, pos) SEQ_CONTROL(dev, voice, CTL_PAN, (pos+128) / 2) 82711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _TIMER_EVENT(ev, parm) {_SEQ_NEEDBUF(8); _seqbuf[_seqbufptr+0] = EV_TIMING; _seqbuf[_seqbufptr+1] = (ev); _seqbuf[_seqbufptr+2] = 0; _seqbuf[_seqbufptr+3] = 0; *(unsigned int *)&_seqbuf[_seqbufptr+4] = (parm); _SEQ_ADVBUF(8);} 82811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 82911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_START_TIMER() _TIMER_EVENT(TMR_START, 0) 83011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_STOP_TIMER() _TIMER_EVENT(TMR_STOP, 0) 83111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_CONTINUE_TIMER() _TIMER_EVENT(TMR_CONTINUE, 0) 83211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_WAIT_TIME(ticks) _TIMER_EVENT(TMR_WAIT_ABS, ticks) 83311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 83411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_DELTA_TIME(ticks) _TIMER_EVENT(TMR_WAIT_REL, ticks) 83511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_ECHO_BACK(key) _TIMER_EVENT(TMR_ECHO, key) 83611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_SET_TEMPO(value) _TIMER_EVENT(TMR_TEMPO, value) 83711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_SONGPOS(pos) _TIMER_EVENT(TMR_SPP, pos) 83811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 83911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_TIME_SIGNATURE(sig) _TIMER_EVENT(TMR_TIMESIG, sig) 84011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _LOCAL_EVENT(ev, parm) {_SEQ_NEEDBUF(8); _seqbuf[_seqbufptr+0] = EV_SEQ_LOCAL; _seqbuf[_seqbufptr+1] = (ev); _seqbuf[_seqbufptr+2] = 0; _seqbuf[_seqbufptr+3] = 0; *(unsigned int *)&_seqbuf[_seqbufptr+4] = (parm); _SEQ_ADVBUF(8);} 84111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_PLAYAUDIO(devmask) _LOCAL_EVENT(LOCL_STARTAUDIO, devmask) 84211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_MIDIOUT(device, byte) {_SEQ_NEEDBUF(4); _seqbuf[_seqbufptr] = SEQ_MIDIPUTC; _seqbuf[_seqbufptr+1] = (byte); _seqbuf[_seqbufptr+2] = (device); _seqbuf[_seqbufptr+3] = 0; _SEQ_ADVBUF(4);} 84311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_WRPATCH(patchx, len) {if (_seqbufptr) SEQ_DUMPBUF(); if (write(seqfd, (char*)(patchx), len)==-1) perror("Write patch: /dev/sequencer");} 84511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SEQ_WRPATCH2(patchx, len) (SEQ_DUMPBUF(), write(seqfd, (char*)(patchx), len)) 84611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 847