1 /* 2 SDL - Simple DirectMedia Layer 3 Copyright (C) 1997-2004 Sam Lantinga 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Library General Public 7 License as published by the Free Software Foundation; either 8 version 2 of the License, or (at your option) any later version. 9 10 This library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Library General Public License for more details. 14 15 You should have received a copy of the GNU Library General Public 16 License along with this library; if not, write to the Free 17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 19 Sam Lantinga 20 slouken (at) libsdl.org 21 */ 22 #include "SDL_config.h" 23 24 /* 25 STFA control structure 26 27 Patrice Mandin 28 */ 29 30 #ifndef _SDL_mintaudio_stfa_h 31 #define _SDL_mintaudio_stfa_h 32 33 /*--- Defines ---*/ 34 35 #define C_STFA 0x53544641L /* Sound treiber fr atari (seb/The removers) */ 36 37 #define STFA_PLAY_ENABLE (1<<0) 38 #define STFA_PLAY_DISABLE (0<<0) 39 #define STFA_PLAY_REPEAT (1<<1) 40 #define STFA_PLAY_SINGLE (0<<1) 41 42 #define STFA_FORMAT_SIGNED (1<<15) 43 #define STFA_FORMAT_UNSIGNED (0<<15) 44 #define STFA_FORMAT_STEREO (1<<14) 45 #define STFA_FORMAT_MONO (0<<14) 46 #define STFA_FORMAT_16BIT (1<<13) 47 #define STFA_FORMAT_8BIT (0<<13) 48 #define STFA_FORMAT_LITENDIAN (1<<9) 49 #define STFA_FORMAT_BIGENDIAN (0<<9) 50 #define STFA_FORMAT_FREQ_MASK 0x0f 51 enum { 52 STFA_FORMAT_F4995=0, 53 STFA_FORMAT_F6269, 54 STFA_FORMAT_F7493, 55 STFA_FORMAT_F8192, 56 57 STFA_FORMAT_F9830, 58 STFA_FORMAT_F10971, 59 STFA_FORMAT_F12538, 60 STFA_FORMAT_F14985, 61 62 STFA_FORMAT_F16384, 63 STFA_FORMAT_F19819, 64 STFA_FORMAT_F21943, 65 STFA_FORMAT_F24576, 66 67 STFA_FORMAT_F30720, 68 STFA_FORMAT_F32336, 69 STFA_FORMAT_F43885, 70 STFA_FORMAT_F49152 71 }; 72 73 /*--- Types ---*/ 74 75 typedef struct { 76 unsigned short sound_enable; 77 unsigned short sound_control; 78 unsigned short sound_output; 79 unsigned long sound_start; 80 unsigned long sound_current; 81 unsigned long sound_end; 82 unsigned short version; 83 void *old_vbl; 84 void *old_timera; 85 unsigned long old_mfp_status; 86 void *new_vbl; 87 void *drivers_list; 88 void *play_stop; 89 unsigned short frequency; 90 void *set_frequency; 91 92 unsigned short frequency_threshold; 93 unsigned short *custom_freq_table; 94 unsigned short stfa_on_off; 95 void *new_drivers_list; 96 unsigned long old_bit_2_of_cookie_snd; 97 void (*stfa_it)(void); 98 } cookie_stfa_t __attribute__((packed)); 99 100 #endif /* _SDL_mintaudio_stfa_h */ 101