comparison src/audio/SDL_mixer.c @ 3628:4d46850be3f6

Merged r5070:5071 from branches/SDL-1.2: forcibly disable buggy MMX mixers.
author Ryan C. Gordon <icculus@icculus.org>
date Sun, 10 Jan 2010 07:48:14 +0000
parents 99210400e8b9
children efb79807afe1
comparison
equal deleted inserted replaced
3627:631173ffd68f 3628:4d46850be3f6
120 } 120 }
121 break; 121 break;
122 122
123 case AUDIO_S8: 123 case AUDIO_S8:
124 { 124 {
125 #if defined(SDL_BUGGY_MMX_MIXERS) /* buggy, so we're disabling them. --ryan. */
125 #if defined(__GNUC__) && defined(__i386__) && defined(SDL_ASSEMBLY_ROUTINES) 126 #if defined(__GNUC__) && defined(__i386__) && defined(SDL_ASSEMBLY_ROUTINES)
126 if (SDL_HasMMX()) { 127 if (SDL_HasMMX()) {
127 SDL_MixAudio_MMX_S8((char *) dst, (char *) src, 128 SDL_MixAudio_MMX_S8((char *) dst, (char *) src,
128 (unsigned int) len, (int) volume); 129 (unsigned int) len, (int) volume);
129 } else 130 } else
130 #elif ((defined(_MSC_VER) && defined(_M_IX86)) || defined(__WATCOMC__)) && defined(SDL_ASSEMBLY_ROUTINES) 131 #elif ((defined(_MSC_VER) && defined(_M_IX86)) || defined(__WATCOMC__)) && defined(SDL_ASSEMBLY_ROUTINES)
131 if (SDL_HasMMX()) { 132 if (SDL_HasMMX()) {
132 SDL_MixAudio_MMX_S8_VC((char *) dst, (char *) src, 133 SDL_MixAudio_MMX_S8_VC((char *) dst, (char *) src,
133 (unsigned int) len, (int) volume); 134 (unsigned int) len, (int) volume);
134 } else 135 } else
136 #endif
135 #endif 137 #endif
136 #if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES) 138 #if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES)
137 SDL_MixAudio_m68k_S8((char *) dst, (char *) src, 139 SDL_MixAudio_m68k_S8((char *) dst, (char *) src,
138 (unsigned long) len, (long) volume); 140 (unsigned long) len, (long) volume);
139 #else 141 #else
165 } 167 }
166 break; 168 break;
167 169
168 case AUDIO_S16LSB: 170 case AUDIO_S16LSB:
169 { 171 {
172 #if defined(SDL_BUGGY_MMX_MIXERS) /* buggy, so we're disabling them. --ryan. */
170 #if defined(__GNUC__) && defined(__i386__) && defined(SDL_ASSEMBLY_ROUTINES) 173 #if defined(__GNUC__) && defined(__i386__) && defined(SDL_ASSEMBLY_ROUTINES)
171 if (SDL_HasMMX()) { 174 if (SDL_HasMMX()) {
172 SDL_MixAudio_MMX_S16((char *) dst, (char *) src, 175 SDL_MixAudio_MMX_S16((char *) dst, (char *) src,
173 (unsigned int) len, (int) volume); 176 (unsigned int) len, (int) volume);
174 } else 177 } else
175 #elif ((defined(_MSC_VER) && defined(_M_IX86)) || defined(__WATCOMC__)) && defined(SDL_ASSEMBLY_ROUTINES) 178 #elif ((defined(_MSC_VER) && defined(_M_IX86)) || defined(__WATCOMC__)) && defined(SDL_ASSEMBLY_ROUTINES)
176 if (SDL_HasMMX()) { 179 if (SDL_HasMMX()) {
177 SDL_MixAudio_MMX_S16_VC((char *) dst, (char *) src, 180 SDL_MixAudio_MMX_S16_VC((char *) dst, (char *) src,
178 (unsigned int) len, (int) volume); 181 (unsigned int) len, (int) volume);
179 } else 182 } else
183 #endif
180 #endif 184 #endif
181 #if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES) 185 #if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES)
182 SDL_MixAudio_m68k_S16LSB((short *) dst, (short *) src, 186 SDL_MixAudio_m68k_S16LSB((short *) dst, (short *) src,
183 (unsigned long) len, (long) volume); 187 (unsigned long) len, (long) volume);
184 #else 188 #else