Re: Sound driver and xquake problem

Hallow (hallow@cris.com)
Wed, 10 Jul 1996 19:14:46 -0400


Troy J Ryan wrote:
>
> After reading a post about the Linux Quake release, I downloaded the
> software and ran it on a 2.0.3 kernel. The sound failed and crashed the
> program with a floating point exeption.
>
> mprotect(0x8043000, 4064, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
> write(2, "writable code 804420c-8044732\n", 30writable code 804220c-8044732) = 30
> mprotect(0x8044000, 1842, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
> --- SIGFPE (Floating point exception) ---
> +++ killed by SIGFPE +++
>
> Runs fine with -nosound, but what fun is that?
>
> After bringing down the 2.0.4 patch (and adding the missing ; to
> sb_common.c), I tried again. Big nada.
>
> I rebooted my system with 1.3.80 and ran xquake. Sound!
>
> Has something changed in the code for a Soundblaster 16?
>
> Troy

According to ddt (the gentleman who wrote the linux port),
the kernel in 1.3.8x returns a 2 for stereo sound. This
number is used internally by xquake for a couple of different
things. As you can see above 2.0.x kernels are returning 0,
that's why you get an FPE - it's trying to divide by 0,
and everyone knows you can't do that.

I don't know if ddt has plans to rewrite xquake to fix
this, or it's a sound driver/kernel problem, and not
necessarily the app.

You can get sound in mono however, by setting the
following envar "export QUAKE_SOUND_CHANNELS=1"

There are also 2 other envars related to sound in quake.
These are:

QUAKE_SOUND_SAMPLEBITS (8 or 16)
QUAKE_SOUND_SPEED

Hallow

hallow@cris.com