Audio for the XBOX

Hi again… Now that I have basic support for video/joystick for the XBOX,
I would like to get some audio working.

The XBOX environment is a little unusual in that it runs on an i386 CPU
with the executables being very similar to normal Win32 apps, except that
they must be statically compiled (ie. no DLLs are available - save for a
few kernel calls). There is no notion of “drivers” as Windows/Linux knows
them; each XBOX game/program is basically compiled into one monolithic
application… so I can’t program to a driver interface.

The APU on the XBOX is a NVIDIA nForce, so given the constraints of the
above, as best I can tell, I need to find code that manipulates the nForce
registers directly.

Any thoughts on libraries that I should start investigating? Reading the
the openal-devel list, I see mention of “native nForce2” support… does
anyone know whether that is provided through an external DLL, or is it in
the OpenAL source tree? Should I look at other libraries? Any and all
thoughts would be much appreciated. Thanks a lot.–
Craig Edwards

Craig Edwards wrote:

Hi again… Now that I have basic support for video/joystick for the
XBOX, I would like to get some audio working.

The XBOX environment is a little unusual in that it runs on an i386
CPU with the executables being very similar to normal Win32 apps,
except that they must be statically compiled (ie. no DLLs are
available - save for a few kernel calls). There is no notion of
"drivers" as Windows/Linux knows them; each XBOX game/program is
basically compiled into one monolithic application… so I can’t
program to a driver interface.

The APU on the XBOX is a NVIDIA nForce, so given the constraints of
the above, as best I can tell, I need to find code that manipulates
the nForce registers directly.

Nforce audio is a (almost fully compliant) ac97 chip. So documentation
for any ac97 chip could be used. For example intel’s (which AFAIK is the
only ac97 doc around) :

Any thoughts on libraries that I should start investigating? Reading
the the openal-devel list, I see mention of "native nForce2"
support… does anyone know whether that is provided through an
external DLL, or is it in the OpenAL source tree? Should I look at
other libraries? Any and all thoughts would be much appreciated.
Thanks a lot.

Look at the alsa source code. It has ac97 support.

Stephane