Pre-release version of sound (/dev/dsp) driver for Dreamcast Linux
Those of you who feel confident (and have a console) with the idea of
compiling a new module for the kernel may wish to try the /dev/dsp sound
driver I have written for Linux on the Sega Dreamcast.
The two source files you need are at:
http://www.mcmen.demon.co.uk/linuxdc/aica/aica.c
and
http://www.mcmen.demon.co.uk/linuxdc/aica/arm7.h
What you need to know etc...
The driver acts as an extended wrap around to what essentially is Dan
Potter's KOS code - ie it loads and runs some basic ARM7 code that drives the
DC's sound processor and controls that through polling.
The driver is written to comply with the OSS/Free standard and to get it to
run you need to compile the OSS soundcore.o module - this is available from
the linuxsh CVS as well as many other places.
Be careful about compiling the rest of the OSS stuff - on my kernel
(2.4.10-pre6) the DMA code appears to cause real problems.
You may also need to export a couple of additional variable from the kerenel
(I did, but can't speak for other versions of the kernel).
Performance....
Seems fine with 8 and 16 bit mono, but is a little bit jerky with stereo and
complex code (eg MP3s).
I have been able to compile SoX and MAD and play sounds with both (though
only one MP3 so far with MAD).
Sound from PRBOOM (but not MIDI music) seems also to work.
What next...
Marcus Brown is working on DMA which should greatly improve performance.
So no one should regard this as an opportunity to do anything other than to
test a pre-release version of the code.
Please feel free to let me know what problems or comments you have.
Adrian McMenamin
ad...@mc...
-------------------------------------------------------
|