1 // Emacs style mode select -*- C++ -*-
2 //-----------------------------------------------------------------------------
6 // Copyright (C) 1993-1996 by id Software, Inc.
8 // This program is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU General Public License
10 // as published by the Free Software Foundation; either version 2
11 // of the License, or (at your option) any later version.
13 // This program is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 // GNU General Public License for more details.
20 // System interface, sound.
22 //-----------------------------------------------------------------------------
29 // UNIX hack, to be removed.
31 extern FILE* sndserver
;
32 extern char* sndserver_filename
;
40 // Init at program start...
41 void I_InitSound(void);
43 // ... update sound buffer and audio device at runtime...
44 void I_UpdateSound(void);
45 void I_SubmitSound(void);
47 // ... shut down and relase at program termination.
48 void I_ShutdownSound(void);
55 // Initialize channels?
56 void I_SetChannels(void);
58 // Get raw data lump index for sound descriptor.
59 int I_GetSfxLumpNum (sfxinfo_t
* sfxinfo
);
62 // Starts a sound in a particular sound channel.
73 // Stops a sound channel.
74 void I_StopSound(int handle
);
76 // Called by S_*() functions
77 // to see if a channel is still playing.
78 // Returns 0 if no longer playing, 1 if playing.
79 int I_SoundIsPlaying(int handle
);
81 // Updates the volume, separation,
82 // and pitch of a sound channel.
94 void I_InitMusic(void);
95 void I_ShutdownMusic(void);
97 void I_SetMusicVolume(int volume
);
98 // PAUSE game handling.
99 void I_PauseSong(int handle
);
100 void I_ResumeSong(int handle
);
101 // Registers a song handle to song data.
102 int I_RegisterSong(const void *data
);
103 // Called by anything that wishes to start music.
104 // plays a song, and when the song is done,
105 // starts playing it again in an endless loop.
106 // Horrible thing to do, considering.
111 // Stops a song over 3 seconds.
112 void I_StopSong(int handle
);
113 // See above (register), then think backwards
114 void I_UnRegisterSong(int handle
);
119 //-----------------------------------------------------------------------------
122 // Revision 1.1 2006/03/28 15:44:01 dave
123 // Patch #2969 - Doom! Currently only working on the H300.
126 //-----------------------------------------------------------------------------