Mercurial > sdl-ios-xcode
annotate include/SDL_config_amiga.h @ 1982:3b4ce57c6215
First shot at new audio data types (int32 and float32).
Notable changes:
- Converters between types are autogenerated. Instead of making multiple
passes over the data with seperate filters for endianess, size, signedness,
etc, converting between data types is always one specialized filter. This
simplifies SDL_BuildAudioCVT(), which otherwise had a million edge cases
with the new types, and makes the actually conversions more CPU cache
friendly. Left a stub for adding specific optimized versions of these
routines (SSE/MMX/Altivec, assembler, etc)
- Autogenerated converters are built by SDL/src/audio/sdlgenaudiocvt.pl. This
does not need to be run unless tweaking the code, and thus doesn't need
integration into the build system.
- Went through all the drivers and tried to weed out all the "Uint16"
references that are better specified with the new SDL_AudioFormat typedef.
- Cleaned out a bunch of hardcoded bitwise magic numbers and replaced them
with new SDL_AUDIO_* macros.
- Added initial float32 and int32 support code. Theoretically, existing
drivers will push these through converters to get the data they want to
feed to the hardware.
Still TODO:
- Optimize and debug new converters.
- Update the CoreAudio backend to accept float32 data directly.
- Other backends, too?
- SDL_LoadWAV() needs to be updated to support int32 and float32 .wav files
(both of which exist and can be generated by 'sox' for testing purposes).
- Update the mixer to handle new datatypes.
- Optionally update SDL_sound and SDL_mixer, etc.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Thu, 24 Aug 2006 12:10:46 +0000 |
parents | 4371d679ee12 |
children |
rev | line source |
---|---|
1422
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
1 /* |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
2 SDL - Simple DirectMedia Layer |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
3 Copyright (C) 1997-2006 Sam Lantinga |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
4 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
5 This library is free software; you can redistribute it and/or |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
6 modify it under the terms of the GNU Lesser General Public |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
7 License as published by the Free Software Foundation; either |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
8 version 2.1 of the License, or (at your option) any later version. |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
9 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
10 This library is distributed in the hope that it will be useful, |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
13 Lesser General Public License for more details. |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
14 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
15 You should have received a copy of the GNU Lesser General Public |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
16 License along with this library; if not, write to the Free Software |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
18 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
19 Sam Lantinga |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
20 slouken@libsdl.org |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
21 */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
22 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
23 #ifndef _SDL_config_amiga_h |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
24 #define _SDL_config_amiga_h |
1608
d951a5afaf07
A less rude way of doing the same thing...
Sam Lantinga <slouken@libsdl.org>
parents:
1607
diff
changeset
|
25 |
d951a5afaf07
A less rude way of doing the same thing...
Sam Lantinga <slouken@libsdl.org>
parents:
1607
diff
changeset
|
26 #include "SDL_platform.h" |
1422
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
27 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
28 /* This is a set of defines to configure the SDL features */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
29 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
30 #define SDL_HAS_64BIT_TYPE 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
31 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
32 /* Useful headers */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
33 #define HAVE_SYS_TYPES_H 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
34 #define HAVE_STDIO_H 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
35 #define STDC_HEADERS 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
36 #define HAVE_STRING_H 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
37 #define HAVE_INTTYPES_H 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
38 #define HAVE_SIGNAL_H 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
39 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
40 /* C library functions */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
41 #define HAVE_MALLOC 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
42 #define HAVE_CALLOC 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
43 #define HAVE_REALLOC 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
44 #define HAVE_FREE 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
45 #define HAVE_ALLOCA 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
46 #define HAVE_GETENV 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
47 #define HAVE_PUTENV 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
48 #define HAVE_MEMSET 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
49 #define HAVE_MEMCPY 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
50 #define HAVE_MEMMOVE 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
51 #define HAVE_MEMCMP 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
52 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
53 /* Enable various audio drivers */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
54 #define SDL_AUDIO_DRIVER_AHI 1 |
1533
38c1eb6b0083
By default all the real targets have dummy audio/video and disk audio.
Sam Lantinga <slouken@libsdl.org>
parents:
1532
diff
changeset
|
55 #define SDL_AUDIO_DRIVER_DISK 1 |
1532
30f189cdd82b
Implemented dummy audio driver.
Ryan C. Gordon <icculus@icculus.org>
parents:
1423
diff
changeset
|
56 #define SDL_AUDIO_DRIVER_DUMMY 1 |
1422
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
57 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
58 /* Enable various cdrom drivers */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
59 #define SDL_CDROM_DUMMY 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
60 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
61 /* Enable various input drivers */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
62 #define SDL_JOYSTICK_AMIGA 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
63 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
64 /* Enable various shared object loading systems */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
65 #define SDL_LOADSO_DUMMY 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
66 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
67 /* Enable various threading systems */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
68 #define SDL_THREAD_AMIGA 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
69 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
70 /* Enable various timer systems */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
71 #define SDL_TIMER_AMIGA 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
72 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
73 /* Enable various video drivers */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
74 #define SDL_VIDEO_DRIVER_CYBERGRAPHICS 1 |
1533
38c1eb6b0083
By default all the real targets have dummy audio/video and disk audio.
Sam Lantinga <slouken@libsdl.org>
parents:
1532
diff
changeset
|
75 #define SDL_VIDEO_DRIVER_DUMMY 1 |
1422
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
76 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
77 /* Enable OpenGL support */ |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
78 #define SDL_VIDEO_OPENGL 1 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
79 |
d2ee8da60262
Added pre-configured versions of SDL_config.h for various platforms
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
80 #endif /* _SDL_config_amiga_h */ |