⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emu10k1.h

📁 linux 内核源代码
💻 H
📖 第 1 页 / 共 5 页
字号:
#define ENVVAL_MASK		0x0000ffff	/* Current value of modulation envelope state variable 	*/						/* 0x8000-n == 666*n usec delay				*/#define ATKHLDM			0x15		/* Modulation envelope hold and attack register		*/#define ATKHLDM_PHASE0		0x00008000	/* 0 = Begin attack phase				*/#define ATKHLDM_HOLDTIME	0x00007f00	/* Envelope hold time (127-n == n*42msec)		*/#define ATKHLDM_ATTACKTIME	0x0000007f	/* Envelope attack time, log encoded			*/						/* 0 = infinite, 1 = 11msec, ... 0x7f = 5.5msec		*/#define DCYSUSM			0x16		/* Modulation envelope decay and sustain register	*/#define DCYSUSM_PHASE1_MASK	0x00008000	/* 0 = Begin attack phase, 1 = begin release phase	*/#define DCYSUSM_SUSTAINLEVEL_MASK 0x00007f00	/* 127 = full, 0 = off, 0.75dB increments		*/#define DCYSUSM_DECAYTIME_MASK	0x0000007f	/* Envelope decay time, log encoded			*/						/* 0 = 43.7msec, 1 = 21.8msec, 0x7f = 22msec		*/#define LFOVAL2 		0x17		/* Vibrato LFO register					*/#define LFOVAL2_MASK		0x0000ffff	/* Current value of vibrato LFO state variable 		*/						/* 0x8000-n == 666*n usec delay				*/#define IP			0x18		/* Initial pitch register				*/#define IP_MASK			0x0000ffff	/* Exponential initial pitch shift			*/						/* 4 bits of octave, 12 bits of fractional octave	*/#define IP_UNITY		0x0000e000	/* Unity pitch shift					*/#define IFATN			0x19		/* Initial filter cutoff and attenuation register	*/#define IFATN_FILTERCUTOFF_MASK	0x0000ff00	/* Initial filter cutoff frequency in exponential units	*/						/* 6 most significant bits are semitones		*/						/* 2 least significant bits are fractions		*/#define IFATN_FILTERCUTOFF	0x08080019#define IFATN_ATTENUATION_MASK	0x000000ff	/* Initial attenuation in 0.375dB steps			*/#define IFATN_ATTENUATION	0x08000019#define PEFE			0x1a		/* Pitch envelope and filter envelope amount register	*/#define PEFE_PITCHAMOUNT_MASK	0x0000ff00	/* Pitch envlope amount					*/						/* Signed 2's complement, +/- one octave peak extremes	*/#define PEFE_PITCHAMOUNT	0x0808001a#define PEFE_FILTERAMOUNT_MASK	0x000000ff	/* Filter envlope amount				*/						/* Signed 2's complement, +/- six octaves peak extremes */#define PEFE_FILTERAMOUNT	0x0800001a#define FMMOD			0x1b		/* Vibrato/filter modulation from LFO register		*/#define FMMOD_MODVIBRATO	0x0000ff00	/* Vibrato LFO modulation depth				*/						/* Signed 2's complement, +/- one octave extremes	*/#define FMMOD_MOFILTER		0x000000ff	/* Filter LFO modulation depth				*/						/* Signed 2's complement, +/- three octave extremes	*/#define TREMFRQ 		0x1c		/* Tremolo amount and modulation LFO frequency register	*/#define TREMFRQ_DEPTH		0x0000ff00	/* Tremolo depth					*/						/* Signed 2's complement, with +/- 12dB extremes	*/#define TREMFRQ_FREQUENCY	0x000000ff	/* Tremolo LFO frequency				*/						/* ??Hz steps, maximum of ?? Hz.			*/#define FM2FRQ2 		0x1d		/* Vibrato amount and vibrato LFO frequency register	*/#define FM2FRQ2_DEPTH		0x0000ff00	/* Vibrato LFO vibrato depth				*/						/* Signed 2's complement, +/- one octave extremes	*/#define FM2FRQ2_FREQUENCY	0x000000ff	/* Vibrato LFO frequency				*/						/* 0.039Hz steps, maximum of 9.85 Hz.			*/#define TEMPENV 		0x1e		/* Tempory envelope register				*/#define TEMPENV_MASK		0x0000ffff	/* 16-bit value						*/						/* NOTE: All channels contain internal variables; do	*/						/* not write to these locations.			*//* 0x1f: not used */#define CD0			0x20		/* Cache data 0 register				*/#define CD1			0x21		/* Cache data 1 register				*/#define CD2			0x22		/* Cache data 2 register				*/#define CD3			0x23		/* Cache data 3 register				*/#define CD4			0x24		/* Cache data 4 register				*/#define CD5			0x25		/* Cache data 5 register				*/#define CD6			0x26		/* Cache data 6 register				*/#define CD7			0x27		/* Cache data 7 register				*/#define CD8			0x28		/* Cache data 8 register				*/#define CD9			0x29		/* Cache data 9 register				*/#define CDA			0x2a		/* Cache data A register				*/#define CDB			0x2b		/* Cache data B register				*/#define CDC			0x2c		/* Cache data C register				*/#define CDD			0x2d		/* Cache data D register				*/#define CDE			0x2e		/* Cache data E register				*/#define CDF			0x2f		/* Cache data F register				*//* 0x30-3f seem to be the same as 0x20-2f */#define PTB			0x40		/* Page table base register				*/#define PTB_MASK		0xfffff000	/* Physical address of the page table in host memory	*/#define TCB			0x41		/* Tank cache base register    				*/#define TCB_MASK		0xfffff000	/* Physical address of the bottom of host based TRAM	*/#define ADCCR			0x42		/* ADC sample rate/stereo control register		*/#define ADCCR_RCHANENABLE	0x00000010	/* Enables right channel for writing to the host       	*/#define ADCCR_LCHANENABLE	0x00000008	/* Enables left channel for writing to the host		*/						/* NOTE: To guarantee phase coherency, both channels	*/						/* must be disabled prior to enabling both channels.	*/#define A_ADCCR_RCHANENABLE	0x00000020#define A_ADCCR_LCHANENABLE	0x00000010#define A_ADCCR_SAMPLERATE_MASK 0x0000000F      /* Audigy sample rate convertor output rate		*/#define ADCCR_SAMPLERATE_MASK	0x00000007	/* Sample rate convertor output rate			*/#define ADCCR_SAMPLERATE_48	0x00000000	/* 48kHz sample rate					*/#define ADCCR_SAMPLERATE_44	0x00000001	/* 44.1kHz sample rate					*/#define ADCCR_SAMPLERATE_32	0x00000002	/* 32kHz sample rate					*/#define ADCCR_SAMPLERATE_24	0x00000003	/* 24kHz sample rate					*/#define ADCCR_SAMPLERATE_22	0x00000004	/* 22.05kHz sample rate					*/#define ADCCR_SAMPLERATE_16	0x00000005	/* 16kHz sample rate					*/#define ADCCR_SAMPLERATE_11	0x00000006	/* 11.025kHz sample rate				*/#define ADCCR_SAMPLERATE_8	0x00000007	/* 8kHz sample rate					*/#define A_ADCCR_SAMPLERATE_12	0x00000006	/* 12kHz sample rate					*/#define A_ADCCR_SAMPLERATE_11	0x00000007	/* 11.025kHz sample rate				*/#define A_ADCCR_SAMPLERATE_8	0x00000008	/* 8kHz sample rate					*/#define FXWC			0x43		/* FX output write channels register			*/						/* When set, each bit enables the writing of the	*/						/* corresponding FX output channel (internal registers  */						/* 0x20-0x3f) to host memory.  This mode of recording   */						/* is 16bit, 48KHz only. All 32 channels can be enabled */						/* simultaneously.					*/#define FXWC_DEFAULTROUTE_C     (1<<0)		/* left emu out? */#define FXWC_DEFAULTROUTE_B     (1<<1)		/* right emu out? */#define FXWC_DEFAULTROUTE_A     (1<<12)#define FXWC_DEFAULTROUTE_D     (1<<13)#define FXWC_ADCLEFT            (1<<18)#define FXWC_CDROMSPDIFLEFT     (1<<18)#define FXWC_ADCRIGHT           (1<<19)#define FXWC_CDROMSPDIFRIGHT    (1<<19)#define FXWC_MIC                (1<<20)#define FXWC_ZOOMLEFT           (1<<20)#define FXWC_ZOOMRIGHT          (1<<21)#define FXWC_SPDIFLEFT          (1<<22)		/* 0x00400000 */#define FXWC_SPDIFRIGHT         (1<<23)		/* 0x00800000 */#define A_TBLSZ			0x43	/* Effects Tank Internal Table Size. Only low byte or register used */#define TCBS			0x44		/* Tank cache buffer size register			*/#define TCBS_MASK		0x00000007	/* Tank cache buffer size field				*/#define TCBS_BUFFSIZE_16K	0x00000000#define TCBS_BUFFSIZE_32K	0x00000001#define TCBS_BUFFSIZE_64K	0x00000002#define TCBS_BUFFSIZE_128K	0x00000003#define TCBS_BUFFSIZE_256K	0x00000004#define TCBS_BUFFSIZE_512K	0x00000005#define TCBS_BUFFSIZE_1024K	0x00000006#define TCBS_BUFFSIZE_2048K	0x00000007#define MICBA			0x45		/* AC97 microphone buffer address register		*/#define MICBA_MASK		0xfffff000	/* 20 bit base address					*/#define ADCBA			0x46		/* ADC buffer address register				*/#define ADCBA_MASK		0xfffff000	/* 20 bit base address					*/#define FXBA			0x47		/* FX Buffer Address */#define FXBA_MASK		0xfffff000	/* 20 bit base address					*/#define A_HWM			0x48	/* High PCI Water Mark - word access, defaults to 3f */#define MICBS			0x49		/* Microphone buffer size register			*/#define ADCBS			0x4a		/* ADC buffer size register				*/#define FXBS			0x4b		/* FX buffer size register				*//* register: 0x4c..4f: ffff-ffff current amounts, per-channel *//* The following mask values define the size of the ADC, MIX and FX buffers in bytes */#define ADCBS_BUFSIZE_NONE	0x00000000#define ADCBS_BUFSIZE_384	0x00000001#define ADCBS_BUFSIZE_448	0x00000002#define ADCBS_BUFSIZE_512	0x00000003#define ADCBS_BUFSIZE_640	0x00000004#define ADCBS_BUFSIZE_768	0x00000005#define ADCBS_BUFSIZE_896	0x00000006#define ADCBS_BUFSIZE_1024	0x00000007#define ADCBS_BUFSIZE_1280	0x00000008#define ADCBS_BUFSIZE_1536	0x00000009#define ADCBS_BUFSIZE_1792	0x0000000a#define ADCBS_BUFSIZE_2048	0x0000000b#define ADCBS_BUFSIZE_2560	0x0000000c#define ADCBS_BUFSIZE_3072	0x0000000d#define ADCBS_BUFSIZE_3584	0x0000000e#define ADCBS_BUFSIZE_4096	0x0000000f#define ADCBS_BUFSIZE_5120	0x00000010#define ADCBS_BUFSIZE_6144	0x00000011#define ADCBS_BUFSIZE_7168	0x00000012#define ADCBS_BUFSIZE_8192	0x00000013#define ADCBS_BUFSIZE_10240	0x00000014#define ADCBS_BUFSIZE_12288	0x00000015#define ADCBS_BUFSIZE_14366	0x00000016#define ADCBS_BUFSIZE_16384	0x00000017#define ADCBS_BUFSIZE_20480	0x00000018#define ADCBS_BUFSIZE_24576	0x00000019#define ADCBS_BUFSIZE_28672	0x0000001a#define ADCBS_BUFSIZE_32768	0x0000001b#define ADCBS_BUFSIZE_40960	0x0000001c#define ADCBS_BUFSIZE_49152	0x0000001d#define ADCBS_BUFSIZE_57344	0x0000001e#define ADCBS_BUFSIZE_65536	0x0000001f/* Current Send B, A Amounts */#define A_CSBA			0x4c/* Current Send D, C Amounts */#define A_CSDC			0x4d/* Current Send F, E Amounts */#define A_CSFE			0x4e/* Current Send H, G Amounts */#define A_CSHG			0x4f#define CDCS			0x50		/* CD-ROM digital channel status register	*/#define GPSCS			0x51		/* General Purpose SPDIF channel status register*/#define DBG			0x52		/* DO NOT PROGRAM THIS REGISTER!!! MAY DESTROY CHIP *//* S/PDIF Input C Channel Status */#define A_SPSC			0x52#define REG53			0x53		/* DO NOT PROGRAM THIS REGISTER!!! MAY DESTROY CHIP */#define A_DBG			 0x53#define A_DBG_SINGLE_STEP	 0x00020000	/* Set to zero to start dsp */#define A_DBG_ZC		 0x40000000	/* zero tram counter */#define A_DBG_STEP_ADDR		 0x000003ff#define A_DBG_SATURATION_OCCURED 0x20000000#define A_DBG_SATURATION_ADDR	 0x0ffc0000// NOTE: 0x54,55,56: 64-bit#define SPCS0			0x54		/* SPDIF output Channel Status 0 register	*/#define SPCS1			0x55		/* SPDIF output Channel Status 1 register	*/#define SPCS2			0x56		/* SPDIF output Channel Status 2 register	*/#define SPCS_CLKACCYMASK	0x30000000	/* Clock accuracy				*/#define SPCS_CLKACCY_1000PPM	0x00000000	/* 1000 parts per million			*/#define SPCS_CLKACCY_50PPM	0x10000000	/* 50 parts per million				*/#define SPCS_CLKACCY_VARIABLE	0x20000000	/* Variable accuracy				*/#define SPCS_SAMPLERATEMASK	0x0f000000	/* Sample rate					*/#define SPCS_SAMPLERATE_44	0x00000000	/* 44.1kHz sample rate				*/#define SPCS_SAMPLERATE_48	0x02000000	/* 48kHz sample rate				*/#define SPCS_SAMPLERATE_32	0x03000000	/* 32kHz sample rate				*/#define SPCS_CHANNELNUMMASK	0x00f00000	/* Channel number				*/#define SPCS_CHANNELNUM_UNSPEC	0x00000000	/* Unspecified channel number			*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -