Here is a patch for pd that gives native alsa sequencer support for routing midi messages. It is the working version i have, and it chooses between alsa or oss at compile time, the code seemed prepared for such a thing, but i'm thinking it might be better to let the user choose at execution as with audio.
As i can take some time to think about a way to do it differently here is the initial 'unofficial' patch for people who can benefit from it and test it.
http://nabla.ath.cx/delirium/pd_alsa_midi.patch.diff
you should apply the patch to a fresh cvs checkout with patch -p1 < pd_alsa_midi.patch (execute that from the main dir of the checkout)
i had some problems with configure script that led to stupid compile errors. it seems my final makefile was missing -DUNIX and -DUNISTD in MORECFLAGS variable. as this problems have nothing to do with my patch they are not corrected in the diff, so beware if you try to compile.
It still has some glitches, touch and polytouch messages are not working, and pitchbend gives strange values. I'll soon correct these.
best regards pablo