Wolf3D-Mac/SoundMusicSystem.h

1 line
14 KiB
C
Raw Normal View History

/*****************************************************/ /* ** SoundMusicSys.h ** ** Structures for handling the sounds used by system ** ** (c) 1989-1994 by Halestorm, Inc, All Rights Reserved ** ** ** History - ** 7/20/89 Created ** 7/24/89 Created Asyncronous Sample List Player. ** 12/3/89 Modified all tools to work with the Sound Driver instead of the ** Sound Manager (He got fired.) ** 12/21/89 Added PlayTheSample. ** 2/1/90 Added Sound Manager (he got hired as a consultant) and use it ** when system 6.0 or greater is around. (Better sound. !!?!??) ** 4/10/90 Fixed pause/resume sound to allocate/deallocate sound channel. ** 7/3/90 Added a REST mechanisim to the SampleList player ** 7/28/90 Added IsSoundListFinished() to the SampleList player ** 7/31/90 Added IsSoundFXFinished() ** 8/13/90 Moved example and StandAlone code to a seperate project. ** 12/12/90 Added GetSoundWaveform() & GetSoundLength() & GetSoundDefaultRate(). ** 1/9/91 Added sound done call back function. ** 3/4/91 Completed work on Sound Driver's call back. ** 4/10/91 Fixed a bug in CalcPlaybackLength that calculated the wrong length. ** 4/10/91 Added purgability of the samples. ** 4/23/91 Added better compatibility to Think C version 3.0 ** 4/30/91 Put in support for snd resource type 1 and type 2. ** 5/18/91 Changed to zone calls instead of globals. ** 5/20/91 Mucking around for bug that Mick is having. ** 5/20/91 Added csnd compressed resource based upon the LZSS algo. ** 5/25/91 Added a FinisSoundChannel/InitSoundChannel inside of EndSound() for Mick ** 5/27/91 Fixed potential bug with BeginSoundList() in which the sound may be ** loaded during a VBL! ** 5/28/91 Modified to new Think C MPW like header names. ** 6/18/91 Added delay to the starting of a new sound with BeginSound (4 Ticks). ** 7/24/91 Added delay to the starting of a new sound with PlayTheSample (4 Ticks). ** 8/5/91 Removed duplicate code in BeginSound & PlayTheSample. ** 8/5/91 Added 2 tick delay to soundLength. Used in IsSoundFXFinished. ** 8/5/91 Added BeginSoundReverse & BeginSoundSection. ** 8/6/91 Fixed some memory management problems with SoundMemorySize. ** 8/6/91 Added a semaphore to the vbl task. ** 9/9/91 Cleaned up for Think C 5.0 ** 9/9/91 Added PLAY_ALL_SAMPLE ** 9/9/91 Changed all 'int's to 'short int'. Sorry guys. This is because I want ** 16 bit integers. ** 10/8/91 Added sound looping features. BeginSoundLoop(), BeginSoundEnvelope(), ** and BeginSoundEnvelopeProc(). ** 11/11/91 Added SoundLock(). ** 1/22/92 Put in buffer SndDoCommands for looped & enveloped sounds ** 3/9/92 Modifed for MPW and removed all THINK C 3 & 4 compiler stuff ** 3/23/92 Added access to"Private-Sound/Music.h" ** 5/1/92 Added the SoundChannelRestart() function ** 7/10/92 Combined SoundSys.h & MusicSys.h into new and improved version ** 7/10/92 Added new calls to initilize & clean up the system ** 7/10/92 Heavily modified for Rev 3 of the sound system. ** 7/10/92 Now calling jim's sound mixer ** 7/13/92 Added BeginMasterFadeOut & FadeLevel ** 7/18/92 Fully intergrated the SoundManager out and replaced with "SoundGod" ** 7/26/92 Added ChangeOuputQuality() and fixed bug with BeginSongLooped ** 7/31/92 Fixed weird bug with MPW passing of 32-bit value "shorts"!! ** 7/31/92 Fixed BeginMasterFadeOut code. ** 8/4/92 Change playback rate command to 16.16 fixed value. Sorry guys. ** 8/6/92 Built a mult-voice tracker, to work with sound effects. ** 8/23/92 Added 2 pt intrepolation ** 8/24/92 Added ChangeSystemVoices ** 12/4/92 Added LoadSound ** 12/9/92 Added FreeSound ** 12/29/92 ResumeSoundMusicSystem and PauseSoundMusicSystem now return ** errors ** 3/6/93 Fixed the SoundDone callback system. ** 3/6/93 Elimated the playback decay govenour. ** 3/16/93 Added BeginMasterFadeIn ** 3/19/93 Added SetSongDoneCallBack ** 5/31/93 Made LoadSong/FreeSong work ** 6/14/93 Changed VBL task to be out of the system heap ** 6/24/93 Added StartFilePlayback, EndFilePlayback, and ChangeFilePlaybackRate ** 6/24/93 Added IsThisSoundFXFinished ** 7/2/93 Added EndSoundList ** 7/13/93 Fixed File stre