HINSTANCE hInstDS;
-qboolean SNDDMA_InitDirect (void);
qboolean SNDDMA_InitWav (void);
-
+sndinitstat SNDDMA_InitDirect (void);
/*
==================
WAVEFORMATEX format, pformat;
HRESULT hresult;
int reps;
+ int i;
memset ((void *)&sn, 0, sizeof (sn));
shm->channels = 2;
shm->samplebits = 16;
- shm->speed = 11025;
+ i = COM_CheckParm ("-sndspeed"); // LordHavoc: -sndspeed option
+ if (i && i != (com_argc - 1))
+ shm->speed = atoi(com_argv[i+1]);
+ else
+ shm->speed = 11025;
memset (&format, 0, sizeof(format));
format.wFormatTag = WAVE_FORMAT_PCM;
format.nChannels = shm->channels;
format.wBitsPerSample = shm->samplebits;
format.nSamplesPerSec = shm->speed;
- format.nBlockAlign = format.nChannels
- *format.wBitsPerSample / 8;
+ format.nBlockAlign = format.nChannels * format.wBitsPerSample / 8;
format.cbSize = 0;
- format.nAvgBytesPerSec = format.nSamplesPerSec
- *format.nBlockAlign;
+ format.nAvgBytesPerSec = format.nSamplesPerSec * format.nBlockAlign;
if (!hInstDS)
{
if (snd_firsttime)
Con_SafePrintf(" %d channel(s)\n"
" %d bits/sample\n"
- " %d bytes/sec\n",
+ " %d samples/sec\n",
shm->channels, shm->samplebits, shm->speed);
gSndBufSize = dsbcaps.dwBufferBytes;
}
memset(lpData, 0, dwSize);
-// lpData[4] = lpData[5] = 0x7f; // force a pop for debugging
pDSBuf->lpVtbl->Unlock(pDSBuf, lpData, dwSize, NULL, 0);
shm->channels = 2;
shm->samplebits = 16;
- shm->speed = 11025;
+ i = COM_CheckParm ("-sndspeed"); // LordHavoc: -sndspeed option
+ if (i && i != (com_argc - 1))
+ shm->speed = atoi(com_argv[i+1]);
+ else
+ shm->speed = 11025;
memset (&format, 0, sizeof(format));
format.wFormatTag = WAVE_FORMAT_PCM;
==================
*/
-int SNDDMA_Init(void)
+qboolean SNDDMA_Init(void)
{
sndinitstat stat;
snd_firsttime = false;
if (!dsound_init && !wav_init)
- {
-// if (snd_firsttime)
-// Con_SafePrintf ("No sound device initialized\n");
-
return 0;
- }
return 1;
}
{
s = snd_sent * WAV_BUFFER_SIZE;
}
+ else
+ s = 0;
s >>= sample16;