Well, after a mere three years I have a working ALSA driver for the Dreamcast. Had to get a lot of help from the ALSA developers to do it - so special thanks to James Courier-Dutton and Lee Revell - but it's a good feeling.
The code is now at http://newgolddream.dyndns.info/cgi-bin/cvsweb
Key events today were fianlly burning a new boot cdrom so I didn't have to struggle with the five year old one that would only boot when cold (I assume that was the reason) and realising that timer polling was the way to go - the ARM7->SH4 interrupt clearly wasn't fully reversed as it just didn't worked as described.