Additional changes for 2.5

This commit is contained in:
Andrey A. Chernov 1994-04-23 04:16:53 +00:00
parent f66fdd6803
commit 2a9de2027e
2 changed files with 8 additions and 32 deletions

View File

@ -7,8 +7,8 @@
#define DSP_BUFFSIZE 65536
#define SELECTED_SOUND_OPTIONS 0xffffffff
#define SOUND_VERSION_STRING "2.4"
#define SOUND_CONFIG_DATE "Mon Mar 7 23:54:09 PST 1994"
#define SOUND_CONFIG_BY "swallace"
#define SOUND_CONFIG_HOST "freefall.cdrom.com"
#define SOUND_VERSION_STRING "2.5"
#define SOUND_CONFIG_DATE "Sat Apr 23 07:45:17 MSD 1994"
#define SOUND_CONFIG_BY "ache"
#define SOUND_CONFIG_HOST "dream.demos.su"
#define SOUND_CONFIG_DOMAIN ""

View File

@ -69,7 +69,7 @@ static void sound_mem_init(void);
unsigned
long
get_time()
get_time(void)
{
extern struct timeval time;
struct timeval timecopy;
@ -324,27 +324,14 @@ sound_mem_init (void)
{
dsp_init_mask |= (1 << dev);
#if 1 /* 0 */
if (sound_dma_automode[dev])
{
sound_dma_automode[dev] = 0; /* Not possible with FreeBSD */
}
if (sound_buffcounts[dev] == 1)
{
sound_buffcounts[dev] = 2;
sound_buffsizes[dev] /= 2;
}
if (sound_buffsizes[dev] > 65536) /* Larger is not possible (yet) */
sound_buffsizes[dev] = 65536;
sound_buffcounts[dev] = 1;
if (sound_dsp_dmachan[dev] > 3 && sound_buffsizes[dev] > 65536)
dma_pagesize = 131072; /* 128k */
else
dma_pagesize = 65536;
/* More sanity checks */
if (sound_buffsizes[dev] > dma_pagesize)
@ -352,24 +339,13 @@ sound_mem_init (void)
sound_buffsizes[dev] &= ~0xfff; /* Truncate to n*4k */
if (sound_buffsizes[dev] < 4096)
sound_buffsizes[dev] = 4096;
#else
dma_pagesize = 4096;
sound_buffsizes[dev] = 4096;
sound_buffcounts[dev] = 16; /* -> 64k */
#endif
/* Now allocate the buffers */
for (snd_raw_count[dev] = 0; snd_raw_count[dev] < sound_buffcounts[dev]; snd_raw_count[dev]++)
{
/*
* The DMA buffer allocation algorithm hogs memory. We allocate
* a memory area which is two times the requires size. This
* guarantees that it contains at least one valid DMA buffer.
*
* This really needs some kind of finetuning.
*/
char *tmpbuf = contigmalloc (sound_buffsizes[dev], M_DEVBUF, M_NOWAIT, 0xFFFFFFul, 0ul, 0xFFFFul);
char *tmpbuf = contigmalloc (sound_buffsizes[dev], M_DEVBUF, M_NOWAIT,
0xFFFFFFul, 0ul, dma_pagesize <= 65536 ? 0xFFFFul : 0x1FFFFul);
if (tmpbuf == NULL)
{