Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Vaxstation 4000 sound support



Hello again list.

Want to listen to some sweet phone quality tunes when playing with your new
framebuffer driver?
I noticed that openbsd had vsbus attachment for the am7930 audio on the
vaxstations. I did a quick port of it. (I don't know what I'm doing here
so don't be too harsh)
Thanks to tnn@ and kapu on #netbsd (ircnet) for help.

Here is a GENERIC kernel (7.99.1) with sound support
http://2.248.109.164/netbsd.vsaudio.bin

You will have to make audio devices since there are none in /dev.
Audio device major is 99.
# cd /dev;mknod sound0 c 99 0;mknod mixer0 c 99 16;mknod audioctl0 c 99 192;mknod audio0 c 99 128

VLC-users will need to change the output with
mixerctl -w monitor.output=headphones
For speaker I used a handset from a phone. :)
Tried recording with it and it worked fine too.

If you don't have a suitable au-file get
http://2.248.109.164/sample.au (warning LOUD!)

Play!
$ audioplay sample.au


Compiling is a bit more involved:
Get
http://2.248.109.164/vsaudio.c
and put it in arch/vax/vsa

Add audio to conf/majors.vax
device-major    audio           char 99                 audio
I chose 99 just because the last (nsmb) was 98.

Add vsaudio to conf/files.vax
# Vaxstation 4000 audio
device  vsaudio: audiobus, am7930
attach  vsaudio at vsbus
file    arch/vax/vsa/vsaudio.c          vsaudio needs-flag

Add sound to your kernel config
vsaudio0        at vsbus0 csr 0x200d0000 # VS4000/60 (or VLC) audio
vsaudio0        at vsbus0 csr 0x26800000 # VS4000/90 audio
audio*          at audiobus?

Now comes the yucky part...
The MI am7930 driver includes machine/autoconf.h which NetBSD/vax does
not have.
To get past this I just did "touch arch/vax/include/autoconf.h"
I don't know what the correct way to fix this is.

Remember to re-run config! 
Compile and boot.
Make sure you have made the proper device files.

Now you can convert your entire music collections to 8KHz mono. :P

I would like to hear yay/nay from owners of /60 /90 and /90A machines.
Does it work?

How do you check if the event counters are working?

/Björn


Home | Main Index | Thread Index | Old Index