162306a36Sopenharmony_ci=========================================== 262306a36Sopenharmony_ciSound Blaster Live mixer / default DSP code 362306a36Sopenharmony_ci=========================================== 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciThe EMU10K1 chips have a DSP part which can be programmed to support 762306a36Sopenharmony_civarious ways of sample processing, which is described here. 862306a36Sopenharmony_ci(This article does not deal with the overall functionality of the 962306a36Sopenharmony_ciEMU10K1 chips. See the manuals section for further details.) 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ciThe ALSA driver programs this portion of chip by default code 1262306a36Sopenharmony_ci(can be altered later) which offers the following functionality: 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciIEC958 (S/PDIF) raw PCM 1662306a36Sopenharmony_ci======================= 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciThis PCM device (it's the 3rd PCM device (index 2!) and first subdevice 1962306a36Sopenharmony_ci(index 0) for a given card) allows to forward 48kHz, stereo, 16-bit 2062306a36Sopenharmony_cilittle endian streams without any modifications to the digital output 2162306a36Sopenharmony_ci(coaxial or optical). The universal interface allows the creation of up 2262306a36Sopenharmony_cito 8 raw PCM devices operating at 48kHz, 16-bit little endian. It would 2362306a36Sopenharmony_cibe easy to add support for multichannel devices to the current code, 2462306a36Sopenharmony_cibut the conversion routines exist only for stereo (2-channel streams) 2562306a36Sopenharmony_ciat the time. 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciLook to tram_poke routines in lowlevel/emu10k1/emufx.c for more details. 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ciDigital mixer controls 3162306a36Sopenharmony_ci====================== 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ciThese controls are built using the DSP instructions. They offer extended 3462306a36Sopenharmony_cifunctionality. Only the default built-in code in the ALSA driver is described 3562306a36Sopenharmony_cihere. Note that the controls work as attenuators: the maximum value is the 3662306a36Sopenharmony_cineutral position leaving the signal unchanged. Note that if the same destination 3762306a36Sopenharmony_ciis mentioned in multiple controls, the signal is accumulated and can be clipped 3862306a36Sopenharmony_ci(set to maximal or minimal value without checking for overflow). 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciExplanation of used abbreviations: 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciDAC 4462306a36Sopenharmony_ci digital to analog converter 4562306a36Sopenharmony_ciADC 4662306a36Sopenharmony_ci analog to digital converter 4762306a36Sopenharmony_ciI2S 4862306a36Sopenharmony_ci one-way three wire serial bus for digital sound by Philips Semiconductors 4962306a36Sopenharmony_ci (this standard is used for connecting standalone D/A and A/D converters) 5062306a36Sopenharmony_ciLFE 5162306a36Sopenharmony_ci low frequency effects (used as subwoofer signal) 5262306a36Sopenharmony_ciAC97 5362306a36Sopenharmony_ci a chip containing an analog mixer, D/A and A/D converters 5462306a36Sopenharmony_ciIEC958 5562306a36Sopenharmony_ci S/PDIF 5662306a36Sopenharmony_ciFX-bus 5762306a36Sopenharmony_ci the EMU10K1 chip has an effect bus containing 16 accumulators. 5862306a36Sopenharmony_ci Each of the synthesizer voices can feed its output to these accumulators 5962306a36Sopenharmony_ci and the DSP microcontroller can operate with the resulting sum. 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci``name='Wave Playback Volume',index=0`` 6362306a36Sopenharmony_ci--------------------------------------- 6462306a36Sopenharmony_ciThis control is used to attenuate samples from left and right PCM FX-bus 6562306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 0 and 1 for left and right PCM samples. 6662306a36Sopenharmony_ciThe result samples are forwarded to the front DAC PCM slots of the AC97 codec. 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci``name='Wave Surround Playback Volume',index=0`` 6962306a36Sopenharmony_ci------------------------------------------------ 7062306a36Sopenharmony_ciThis control is used to attenuate samples from left and right PCM FX-bus 7162306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 0 and 1 for left and right PCM samples. 7262306a36Sopenharmony_ciThe result samples are forwarded to the rear I2S DACs. These DACs operates 7362306a36Sopenharmony_ciseparately (they are not inside the AC97 codec). 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci``name='Wave Center Playback Volume',index=0`` 7662306a36Sopenharmony_ci---------------------------------------------- 7762306a36Sopenharmony_ciThis control is used to attenuate samples from left and right PCM FX-bus 7862306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 0 and 1 for left and right PCM samples. 7962306a36Sopenharmony_ciThe result is mixed to mono signal (single channel) and forwarded to 8062306a36Sopenharmony_cithe ??rear?? right DAC PCM slot of the AC97 codec. 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ci``name='Wave LFE Playback Volume',index=0`` 8362306a36Sopenharmony_ci------------------------------------------- 8462306a36Sopenharmony_ciThis control is used to attenuate samples from left and right PCM FX-bus 8562306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 0 and 1 for left and right PCM. 8662306a36Sopenharmony_ciThe result is mixed to mono signal (single channel) and forwarded to 8762306a36Sopenharmony_cithe ??rear?? left DAC PCM slot of the AC97 codec. 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci``name='Wave Capture Volume',index=0``, ``name='Wave Capture Switch',index=0`` 9062306a36Sopenharmony_ci------------------------------------------------------------------------------ 9162306a36Sopenharmony_ciThese controls are used to attenuate samples from left and right PCM FX-bus 9262306a36Sopenharmony_ciaccumulator. ALSA uses accumulators 0 and 1 for left and right PCM. 9362306a36Sopenharmony_ciThe result is forwarded to the ADC capture FIFO (thus to the standard capture 9462306a36Sopenharmony_ciPCM device). 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci``name='Synth Playback Volume',index=0`` 9762306a36Sopenharmony_ci---------------------------------------- 9862306a36Sopenharmony_ciThis control is used to attenuate samples from left and right MIDI FX-bus 9962306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 4 and 5 for left and right MIDI samples. 10062306a36Sopenharmony_ciThe result samples are forwarded to the front DAC PCM slots of the AC97 codec. 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci``name='Synth Capture Volume',index=0``, ``name='Synth Capture Switch',index=0`` 10362306a36Sopenharmony_ci-------------------------------------------------------------------------------- 10462306a36Sopenharmony_ciThese controls are used to attenuate samples from left and right MIDI FX-bus 10562306a36Sopenharmony_ciaccumulator. ALSA uses accumulators 4 and 5 for left and right MIDI samples. 10662306a36Sopenharmony_ciThe result is forwarded to the ADC capture FIFO (thus to the standard capture 10762306a36Sopenharmony_ciPCM device). 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ci``name='Surround Playback Volume',index=0`` 11062306a36Sopenharmony_ci------------------------------------------- 11162306a36Sopenharmony_ciThis control is used to attenuate samples from left and right rear PCM FX-bus 11262306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 2 and 3 for left and right rear PCM samples. 11362306a36Sopenharmony_ciThe result samples are forwarded to the rear I2S DACs. These DACs operate 11462306a36Sopenharmony_ciseparately (they are not inside the AC97 codec). 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci``name='Surround Capture Volume',index=0``, ``name='Surround Capture Switch',index=0`` 11762306a36Sopenharmony_ci-------------------------------------------------------------------------------------- 11862306a36Sopenharmony_ciThese controls are used to attenuate samples from left and right rear PCM FX-bus 11962306a36Sopenharmony_ciaccumulators. ALSA uses accumulators 2 and 3 for left and right rear PCM samples. 12062306a36Sopenharmony_ciThe result is forwarded to the ADC capture FIFO (thus to the standard capture 12162306a36Sopenharmony_ciPCM device). 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ci``name='Center Playback Volume',index=0`` 12462306a36Sopenharmony_ci----------------------------------------- 12562306a36Sopenharmony_ciThis control is used to attenuate sample for center PCM FX-bus accumulator. 12662306a36Sopenharmony_ciALSA uses accumulator 6 for center PCM sample. The result sample is forwarded 12762306a36Sopenharmony_cito the ??rear?? right DAC PCM slot of the AC97 codec. 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci``name='LFE Playback Volume',index=0`` 13062306a36Sopenharmony_ci-------------------------------------- 13162306a36Sopenharmony_ciThis control is used to attenuate sample for center PCM FX-bus accumulator. 13262306a36Sopenharmony_ciALSA uses accumulator 6 for center PCM sample. The result sample is forwarded 13362306a36Sopenharmony_cito the ??rear?? left DAC PCM slot of the AC97 codec. 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci``name='AC97 Playback Volume',index=0`` 13662306a36Sopenharmony_ci--------------------------------------- 13762306a36Sopenharmony_ciThis control is used to attenuate samples from left and right front ADC PCM slots 13862306a36Sopenharmony_ciof the AC97 codec. The result samples are forwarded to the front DAC PCM 13962306a36Sopenharmony_cislots of the AC97 codec. 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ci.. note:: 14262306a36Sopenharmony_ci This control should be zero for the standard operations, otherwise 14362306a36Sopenharmony_ci a digital loopback is activated. 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ci``name='AC97 Capture Volume',index=0`` 14762306a36Sopenharmony_ci-------------------------------------- 14862306a36Sopenharmony_ciThis control is used to attenuate samples from left and right front ADC PCM slots 14962306a36Sopenharmony_ciof the AC97 codec. The result is forwarded to the ADC capture FIFO (thus to 15062306a36Sopenharmony_cithe standard capture PCM device). 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci.. note:: 15362306a36Sopenharmony_ci This control should be 100 (maximal value), otherwise no analog 15462306a36Sopenharmony_ci inputs of the AC97 codec can be captured (recorded). 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci``name='IEC958 TTL Playback Volume',index=0`` 15762306a36Sopenharmony_ci--------------------------------------------- 15862306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 TTL 15962306a36Sopenharmony_cidigital inputs (usually used by a CDROM drive). The result samples are 16062306a36Sopenharmony_ciforwarded to the front DAC PCM slots of the AC97 codec. 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci``name='IEC958 TTL Capture Volume',index=0`` 16362306a36Sopenharmony_ci-------------------------------------------- 16462306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 TTL 16562306a36Sopenharmony_cidigital inputs (usually used by a CDROM drive). The result samples are 16662306a36Sopenharmony_ciforwarded to the ADC capture FIFO (thus to the standard capture PCM device). 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ci``name='Zoom Video Playback Volume',index=0`` 16962306a36Sopenharmony_ci--------------------------------------------- 17062306a36Sopenharmony_ciThis control is used to attenuate samples from left and right zoom video 17162306a36Sopenharmony_cidigital inputs (usually used by a CDROM drive). The result samples are 17262306a36Sopenharmony_ciforwarded to the front DAC PCM slots of the AC97 codec. 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ci``name='Zoom Video Capture Volume',index=0`` 17562306a36Sopenharmony_ci-------------------------------------------- 17662306a36Sopenharmony_ciThis control is used to attenuate samples from left and right zoom video 17762306a36Sopenharmony_cidigital inputs (usually used by a CDROM drive). The result samples are 17862306a36Sopenharmony_ciforwarded to the ADC capture FIFO (thus to the standard capture PCM device). 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci``name='IEC958 LiveDrive Playback Volume',index=0`` 18162306a36Sopenharmony_ci--------------------------------------------------- 18262306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 optical 18362306a36Sopenharmony_cidigital input. The result samples are forwarded to the front DAC PCM slots 18462306a36Sopenharmony_ciof the AC97 codec. 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci``name='IEC958 LiveDrive Capture Volume',index=0`` 18762306a36Sopenharmony_ci-------------------------------------------------- 18862306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 optical 18962306a36Sopenharmony_cidigital inputs. The result samples are forwarded to the ADC capture FIFO 19062306a36Sopenharmony_ci(thus to the standard capture PCM device). 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci``name='IEC958 Coaxial Playback Volume',index=0`` 19362306a36Sopenharmony_ci------------------------------------------------- 19462306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 coaxial 19562306a36Sopenharmony_cidigital inputs. The result samples are forwarded to the front DAC PCM slots 19662306a36Sopenharmony_ciof the AC97 codec. 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ci``name='IEC958 Coaxial Capture Volume',index=0`` 19962306a36Sopenharmony_ci------------------------------------------------ 20062306a36Sopenharmony_ciThis control is used to attenuate samples from left and right IEC958 coaxial 20162306a36Sopenharmony_cidigital inputs. The result samples are forwarded to the ADC capture FIFO 20262306a36Sopenharmony_ci(thus to the standard capture PCM device). 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ci``name='Line LiveDrive Playback Volume',index=0``, ``name='Line LiveDrive Playback Volume',index=1`` 20562306a36Sopenharmony_ci---------------------------------------------------------------------------------------------------- 20662306a36Sopenharmony_ciThis control is used to attenuate samples from left and right I2S ADC 20762306a36Sopenharmony_ciinputs (on the LiveDrive). The result samples are forwarded to the front 20862306a36Sopenharmony_ciDAC PCM slots of the AC97 codec. 20962306a36Sopenharmony_ci 21062306a36Sopenharmony_ci``name='Line LiveDrive Capture Volume',index=1``, ``name='Line LiveDrive Capture Volume',index=1`` 21162306a36Sopenharmony_ci-------------------------------------------------------------------------------------------------- 21262306a36Sopenharmony_ciThis control is used to attenuate samples from left and right I2S ADC 21362306a36Sopenharmony_ciinputs (on the LiveDrive). The result samples are forwarded to the ADC 21462306a36Sopenharmony_cicapture FIFO (thus to the standard capture PCM device). 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci``name='Tone Control - Switch',index=0`` 21762306a36Sopenharmony_ci---------------------------------------- 21862306a36Sopenharmony_ciThis control turns the tone control on or off. The samples for front, rear 21962306a36Sopenharmony_ciand center / LFE outputs are affected. 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci``name='Tone Control - Bass',index=0`` 22262306a36Sopenharmony_ci-------------------------------------- 22362306a36Sopenharmony_ciThis control sets the bass intensity. There is no neutral value!! 22462306a36Sopenharmony_ciWhen the tone control code is activated, the samples are always modified. 22562306a36Sopenharmony_ciThe closest value to pure signal is 20. 22662306a36Sopenharmony_ci 22762306a36Sopenharmony_ci``name='Tone Control - Treble',index=0`` 22862306a36Sopenharmony_ci---------------------------------------- 22962306a36Sopenharmony_ciThis control sets the treble intensity. There is no neutral value!! 23062306a36Sopenharmony_ciWhen the tone control code is activated, the samples are always modified. 23162306a36Sopenharmony_ciThe closest value to pure signal is 20. 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_ci``name='IEC958 Optical Raw Playback Switch',index=0`` 23462306a36Sopenharmony_ci----------------------------------------------------- 23562306a36Sopenharmony_ciIf this switch is on, then the samples for the IEC958 (S/PDIF) digital 23662306a36Sopenharmony_cioutput are taken only from the raw FX8010 PCM, otherwise standard front 23762306a36Sopenharmony_ciPCM samples are taken. 23862306a36Sopenharmony_ci 23962306a36Sopenharmony_ci``name='Headphone Playback Volume',index=1`` 24062306a36Sopenharmony_ci-------------------------------------------- 24162306a36Sopenharmony_ciThis control attenuates the samples for the headphone output. 24262306a36Sopenharmony_ci 24362306a36Sopenharmony_ci``name='Headphone Center Playback Switch',index=1`` 24462306a36Sopenharmony_ci--------------------------------------------------- 24562306a36Sopenharmony_ciIf this switch is on, then the sample for the center PCM is put to the 24662306a36Sopenharmony_cileft headphone output (useful for SB Live cards without separate center/LFE 24762306a36Sopenharmony_cioutput). 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_ci``name='Headphone LFE Playback Switch',index=1`` 25062306a36Sopenharmony_ci------------------------------------------------ 25162306a36Sopenharmony_ciIf this switch is on, then the sample for the center PCM is put to the 25262306a36Sopenharmony_ciright headphone output (useful for SB Live cards without separate center/LFE 25362306a36Sopenharmony_cioutput). 25462306a36Sopenharmony_ci 25562306a36Sopenharmony_ci 25662306a36Sopenharmony_ciPCM stream related controls 25762306a36Sopenharmony_ci=========================== 25862306a36Sopenharmony_ci 25962306a36Sopenharmony_ci``name='EMU10K1 PCM Volume',index 0-31`` 26062306a36Sopenharmony_ci---------------------------------------- 26162306a36Sopenharmony_ciChannel volume attenuation in range 0-0x1fffd. The middle value (no 26262306a36Sopenharmony_ciattenuation) is default. The channel mapping for three values is 26362306a36Sopenharmony_cias follows: 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci* 0 - mono, default 0xffff (no attenuation) 26662306a36Sopenharmony_ci* 1 - left, default 0xffff (no attenuation) 26762306a36Sopenharmony_ci* 2 - right, default 0xffff (no attenuation) 26862306a36Sopenharmony_ci 26962306a36Sopenharmony_ci``name='EMU10K1 PCM Send Routing',index 0-31`` 27062306a36Sopenharmony_ci---------------------------------------------- 27162306a36Sopenharmony_ciThis control specifies the destination - FX-bus accumulators. There are 27262306a36Sopenharmony_citwelve values with this mapping: 27362306a36Sopenharmony_ci 27462306a36Sopenharmony_ci* 0 - mono, A destination (FX-bus 0-15), default 0 27562306a36Sopenharmony_ci* 1 - mono, B destination (FX-bus 0-15), default 1 27662306a36Sopenharmony_ci* 2 - mono, C destination (FX-bus 0-15), default 2 27762306a36Sopenharmony_ci* 3 - mono, D destination (FX-bus 0-15), default 3 27862306a36Sopenharmony_ci* 4 - left, A destination (FX-bus 0-15), default 0 27962306a36Sopenharmony_ci* 5 - left, B destination (FX-bus 0-15), default 1 28062306a36Sopenharmony_ci* 6 - left, C destination (FX-bus 0-15), default 2 28162306a36Sopenharmony_ci* 7 - left, D destination (FX-bus 0-15), default 3 28262306a36Sopenharmony_ci* 8 - right, A destination (FX-bus 0-15), default 0 28362306a36Sopenharmony_ci* 9 - right, B destination (FX-bus 0-15), default 1 28462306a36Sopenharmony_ci* 10 - right, C destination (FX-bus 0-15), default 2 28562306a36Sopenharmony_ci* 11 - right, D destination (FX-bus 0-15), default 3 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ciDon't forget that it's illegal to assign a channel to the same FX-bus accumulator 28862306a36Sopenharmony_cimore than once (it means 0=0 && 1=0 is an invalid combination). 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ci``name='EMU10K1 PCM Send Volume',index 0-31`` 29162306a36Sopenharmony_ci--------------------------------------------- 29262306a36Sopenharmony_ciIt specifies the attenuation (amount) for given destination in range 0-255. 29362306a36Sopenharmony_ciThe channel mapping is following: 29462306a36Sopenharmony_ci 29562306a36Sopenharmony_ci* 0 - mono, A destination attn, default 255 (no attenuation) 29662306a36Sopenharmony_ci* 1 - mono, B destination attn, default 255 (no attenuation) 29762306a36Sopenharmony_ci* 2 - mono, C destination attn, default 0 (mute) 29862306a36Sopenharmony_ci* 3 - mono, D destination attn, default 0 (mute) 29962306a36Sopenharmony_ci* 4 - left, A destination attn, default 255 (no attenuation) 30062306a36Sopenharmony_ci* 5 - left, B destination attn, default 0 (mute) 30162306a36Sopenharmony_ci* 6 - left, C destination attn, default 0 (mute) 30262306a36Sopenharmony_ci* 7 - left, D destination attn, default 0 (mute) 30362306a36Sopenharmony_ci* 8 - right, A destination attn, default 0 (mute) 30462306a36Sopenharmony_ci* 9 - right, B destination attn, default 255 (no attenuation) 30562306a36Sopenharmony_ci* 10 - right, C destination attn, default 0 (mute) 30662306a36Sopenharmony_ci* 11 - right, D destination attn, default 0 (mute) 30762306a36Sopenharmony_ci 30862306a36Sopenharmony_ci 30962306a36Sopenharmony_ci 31062306a36Sopenharmony_ciMANUALS/PATENTS 31162306a36Sopenharmony_ci=============== 31262306a36Sopenharmony_ci 31362306a36Sopenharmony_ciftp://opensource.creative.com/pub/doc 31462306a36Sopenharmony_ci------------------------------------- 31562306a36Sopenharmony_ci 31662306a36Sopenharmony_ciNote that the site is defunct, but the documents are available 31762306a36Sopenharmony_cifrom various other locations. 31862306a36Sopenharmony_ci 31962306a36Sopenharmony_ciLM4545.pdf 32062306a36Sopenharmony_ci AC97 Codec 32162306a36Sopenharmony_cim2049.pdf 32262306a36Sopenharmony_ci The EMU10K1 Digital Audio Processor 32362306a36Sopenharmony_cihog63.ps 32462306a36Sopenharmony_ci FX8010 - A DSP Chip Architecture for Audio Effects 32562306a36Sopenharmony_ci 32662306a36Sopenharmony_ci 32762306a36Sopenharmony_ciWIPO Patents 32862306a36Sopenharmony_ci------------ 32962306a36Sopenharmony_ci 33062306a36Sopenharmony_ciWO 9901813 (A1) 33162306a36Sopenharmony_ci Audio Effects Processor with multiple asynchronous streams 33262306a36Sopenharmony_ci (Jan. 14, 1999) 33362306a36Sopenharmony_ci 33462306a36Sopenharmony_ciWO 9901814 (A1) 33562306a36Sopenharmony_ci Processor with Instruction Set for Audio Effects (Jan. 14, 1999) 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ciWO 9901953 (A1) 33862306a36Sopenharmony_ci Audio Effects Processor having Decoupled Instruction 33962306a36Sopenharmony_ci Execution and Audio Data Sequencing (Jan. 14, 1999) 34062306a36Sopenharmony_ci 34162306a36Sopenharmony_ci 34262306a36Sopenharmony_ciUS Patents (https://www.uspto.gov/) 34362306a36Sopenharmony_ci----------------------------------- 34462306a36Sopenharmony_ci 34562306a36Sopenharmony_ciUS 5925841 34662306a36Sopenharmony_ci Digital Sampling Instrument employing cache memory (Jul. 20, 1999) 34762306a36Sopenharmony_ci 34862306a36Sopenharmony_ciUS 5928342 34962306a36Sopenharmony_ci Audio Effects Processor integrated on a single chip 35062306a36Sopenharmony_ci with a multiport memory onto which multiple asynchronous 35162306a36Sopenharmony_ci digital sound samples can be concurrently loaded 35262306a36Sopenharmony_ci (Jul. 27, 1999) 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_ciUS 5930158 35562306a36Sopenharmony_ci Processor with Instruction Set for Audio Effects (Jul. 27, 1999) 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ciUS 6032235 35862306a36Sopenharmony_ci Memory initialization circuit (Tram) (Feb. 29, 2000) 35962306a36Sopenharmony_ci 36062306a36Sopenharmony_ciUS 6138207 36162306a36Sopenharmony_ci Interpolation looping of audio samples in cache connected to 36262306a36Sopenharmony_ci system bus with prioritization and modification of bus transfers 36362306a36Sopenharmony_ci in accordance with loop ends and minimum block sizes 36462306a36Sopenharmony_ci (Oct. 24, 2000) 36562306a36Sopenharmony_ci 36662306a36Sopenharmony_ciUS 6151670 36762306a36Sopenharmony_ci Method for conserving memory storage using a 36862306a36Sopenharmony_ci pool of short term memory registers 36962306a36Sopenharmony_ci (Nov. 21, 2000) 37062306a36Sopenharmony_ci 37162306a36Sopenharmony_ciUS 6195715 37262306a36Sopenharmony_ci Interrupt control for multiple programs communicating with 37362306a36Sopenharmony_ci a common interrupt by associating programs to GP registers, 37462306a36Sopenharmony_ci defining interrupt register, polling GP registers, and invoking 37562306a36Sopenharmony_ci callback routine associated with defined interrupt register 37662306a36Sopenharmony_ci (Feb. 27, 2001) 377