1/* 2 SDL - Simple DirectMedia Layer 3 Copyright (C) 1997-2006 Sam Lantinga 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 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 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with this library; if not, write to the Free Software 17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 18 19 Sam Lantinga 20 slouken@libsdl.org 21*/ 22#include "SDL_config.h" 23 24#ifndef _SDL_lowaudio_h 25#define _SDL_lowaudio_h 26 27#define INCL_TYPES 28#define INCL_DOSSEMAPHORES 29#define INCL_DOSRESOURCES 30#define INCL_DOSMISC 31#define INCL_DOSERRORS 32 33#define INCL_OS2MM 34#define INCL_MMIOOS2 35#define INCL_MCIOS2 36#include <os2.h> 37#include <os2me.h> // DART stuff and MMIO stuff 38 39#include "../SDL_sysaudio.h" 40 41/* Hidden "this" pointer for the audio functions */ 42#define _THIS SDL_AudioDevice *_this 43 44/* The DirectSound objects */ 45struct SDL_PrivateAudioData 46{ 47 int iCurrDeviceOrd; 48 int iCurrFreq; 49 int iCurrBits; 50 int iCurrChannels; 51 int iCurrNumBufs; 52 int iCurrBufSize; 53 54 int iLastPlayedBuf; 55 int iNextFreeBuffer; 56 57 MCI_BUFFER_PARMS BufferParms; // Sound buffer parameters 58 MCI_MIX_BUFFER *pMixBuffers; // Sound buffers 59 MCI_MIXSETUP_PARMS MixSetupParms; // Mixer setup parameters 60 HEV hevAudioBufferPlayed; // Event semaphore to indicate that an audio buffer has been played by DART 61}; 62 63#endif /* _SDL_lowaudio_h */ 64