1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2006 Thom Johansen
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
25 /* Set the appropriate #defines based on CPU or whatever matters */
27 #define DSP_HAVE_ASM_RESAMPLING
28 #define DSP_HAVE_ASM_CROSSFEED
29 #elif defined (CPU_COLDFIRE)
30 #define DSP_HAVE_ASM_APPLY_GAIN
31 #define DSP_HAVE_ASM_RESAMPLING
32 #define DSP_HAVE_ASM_CROSSFEED
33 #define DSP_HAVE_ASM_SOUND_CHAN_MONO
34 #define DSP_HAVE_ASM_SOUND_CHAN_CUSTOM
35 #define DSP_HAVE_ASM_SOUND_CHAN_KARAOKE
36 #define DSP_HAVE_ASM_SAMPLE_OUTPUT_MONO
37 #define DSP_HAVE_ASM_SAMPLE_OUTPUT_STEREO
38 #endif /* CPU_COLDFIRE */
40 /* Declare prototypes based upon what's #defined above */
41 #ifdef DSP_HAVE_ASM_CROSSFEED
42 void apply_crossfeed(int count
, int32_t *buf
[]);
45 #ifdef DSP_HAVE_ASM_APPLY_GAIN
46 void dsp_apply_gain(int count
, struct dsp_data
*data
, int32_t *buf
[]);
47 #endif /* DSP_HAVE_ASM_APPLY_GAIN* */
49 #ifdef DSP_HAVE_ASM_RESAMPLING
50 int dsp_upsample(int count
, struct dsp_data
*data
,
51 int32_t *src
[], int32_t *dst
[]);
52 int dsp_downsample(int count
, struct dsp_data
*data
,
53 int32_t *src
[], int32_t *dst
[]);
54 #endif /* DSP_HAVE_ASM_RESAMPLING */
56 #ifdef DSP_HAVE_ASM_SOUND_CHAN_MONO
57 void channels_process_sound_chan_mono(int count
, int32_t *buf
[]);
60 #ifdef DSP_HAVE_ASM_SOUND_CHAN_CUSTOM
61 void channels_process_sound_chan_custom(int count
, int32_t *buf
[]);
64 #ifdef DSP_HAVE_ASM_SOUND_CHAN_KARAOKE
65 void channels_process_sound_chan_karaoke(int count
, int32_t *buf
[]);
68 #ifdef DSP_HAVE_ASM_SAMPLE_OUTPUT_STEREO
69 void sample_output_stereo(int count
, struct dsp_data
*data
,
70 int32_t *src
[], int16_t *dst
);
73 #ifdef DSP_HAVE_ASM_SAMPLE_OUTPUT_MONO
74 void sample_output_mono(int count
, struct dsp_data
*data
,
75 int32_t *src
[], int16_t *dst
);
78 #endif /* _DSP_ASM_H */