-------------------------------------------------------------------

How to extract sounds from the SOUND.DRV library..

Here are 4 different sound effects that can called

via APIs to the "SOUND.DRV" library. You can modify

the values to create your own unique sounds.

Declare these APIs:

 

Declare Function OpenSound% Lib "sound.drv" ()

Declare Function VoiceQueueSize% Lib "sound.drv" (ByVal nVoice%, ByVal nByteS)

Declare Function SetVoiceSound% Lib "sound.drv" (ByVal nSource%, ByVal Freq&,

ByVal nDuration%)

Declare Function StartSound% Lib "sound.drv" ()

Declare Function CloseSound% Lib "sound.drv" ()

Declare Function WaitSoundState% Lib "sound.drv" (ByVal State%)

 

Add this routine, to be used with SirenSound1 routine

 

Sub Sound (ByVal Freq As Long, ByVal Duration As Integer)

Dim S As Integer

Shift frequency to high byte.

   Freq = Freq * 2 ^ 16

   S = SetVoiceSound(1, Freq, Duration)

   S = StartSound()

   While (WaitSoundState(1) <> 0): Wend

End Sub

 

 

Here are the 4 sound routines:

 

* Attention Sound #1 *

Sub AttenSound1 ()

Dim Succ, S As Integer

   Succ = OpenSound()

   S = SetVoiceSound(1, 1500 * 2 ^ 16, 50)

   S = SetVoiceSound(1, 1000 * 2 ^ 16, 50)

   S = SetVoiceSound(1, 1500 * 2 ^ 16, 100)

   S = SetVoiceSound(1, 1000 * 2 ^ 16, 100)

   S = SetVoiceSound(1, 800 * 2 ^ 16, 40)

 

   S = StartSound()

   While (WaitSoundState(1) <> 0): Wend

   Succ = CloseSound()

 

End Sub

 

* Click Sound #1 *

Sub ClickSound1 ()

Dim Succ, S As Integer

   Succ = OpenSound()

   S = SetVoiceSound(1, 200 * 2 ^ 16, 2)