X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fsound.h;h=8851b8513320a4d6870faeebee0b6b24473edda1;hb=99e9995ba077aa90b20b47d528ccd3ff27949652;hp=dc46f7c6538cf8a954984b9d67ea7dd7ed808b42;hpb=b3bc39f92fad67f60df3ee76a5c824bf89a317a8;p=flatwaifu.git diff --git a/src/sound.h b/src/sound.h index dc46f7c..8851b85 100644 --- a/src/sound.h +++ b/src/sound.h @@ -24,55 +24,47 @@ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifdef __cplusplus -extern "C" { -#endif +#ifndef SOUND_H_INCLUDED +#define SOUND_H_INCLUDED -// заголовок инструмента (DMI) -#pragma pack(1) -typedef struct{ - unsigned int len, // длина в байтах - rate, // частота в Гц. - lstart, // начало повтора в байтах от начала данных - llen; // длина повтора в байтах -}snd_t; -#pragma pack() +typedef struct { + int tag; +} snd_t; -void S_init(void); +// Sound volume 0..128 +extern short snd_vol; -void S_done(void); +// Get sound handle for resource +snd_t *S_get (int id); -// проиграть звук s на канале c (1-8), частоте r и громкости v (0-255) -// возвращает номер канала, на котором играется звук -// если c==0, то звук попадет в любой свободный канал -// r - это относительная частота (обычно 1024) -short S_play(snd_t *s,short c,unsigned r,short v); +// Get sound handle for resource with name +snd_t *S_load (const char name[8]); -// остановить звук на канале c (1-8) -void S_stop(short c); +// Stop sound and free handle +void S_free (snd_t *s); -void S_startmusic(int); +// Initialize sound subsystem +void S_init (void); -void S_stopmusic(void); +// Deinitialize sound subsystem +void S_done (void); -void S_updatemusic(void); +// Play sound on channel with volume . +// = sound handle (NULL is ignored) +// = 1..8 or 0 for any free +// = 0..255 +// return used channel or zero on error +short S_play (snd_t *s, short c, short v); -// громкость звука и музыки (0-128) -extern short snd_vol,mus_vol; +// Stop sound on channel +// = 0..8 (0 ignored) +void S_stop (short c); -void S_volumemusic(int v); -void S_volume(int v); -void free_chunks(); -void S_wait(); +// Set sound volume to , also affects variable snd_vol +// = 0..128 +void S_volume (int v); -extern char music_random; -extern int music_time; -extern int music_fade; +// Wait before all sounds end playing +void S_wait (void); -void F_freemus(void); -void S_initmusic(void); -void S_donemusic(void); - -#ifdef __cplusplus -} -#endif +#endif /* SOUND_H_INCLUDED */