Thanks for taking the time to help with this, Pedro. I appreciate it. I've observed a couple of new things, which I will share.
Its possible to track when the message is generated, the issue is with cubase not being an open system is not possible (in my mind) to check its arrival with precision.
I seem to detect a bit of Linux snobbery in that comment. I'm a big fan of open-source software, and if you can suggest an open-source DAW for Windows that has all of the features of Cubase (by which I do mean "all," not "some"), I'll be overjoyed to switch to it as my primary platform! But if I have to do without important features ... not gonna switch.
In fact, it's perfectly feasible to check when the message arrives in Cubase. Cubase is a low-latency system that uses the ASIO driver. It responds to MIDI note messages within about 10ms. It is very stable and consistent. Thus, if the output from Cubase is delayed when the MIDI message is being passed through Pd, the cause is certainly a delay introduced by Pd.
I haven't tried it yet, but it's irrelevant to me. I don't want to
play a simple sine wave. I'll try it just >because I'm curious, but even if it's perfect, that won't help me. It can give you some hint/clue about the problem.
I don't have a patch handy that will play a sine wave, and my Pd programming is so horribly rusty it would take me an hour to set one up. Instead, I loaded poly.synth.pd, which comes with the system. Its latency in response to MIDI (the MIDI is arriving directly from the Firewire 410's MIDI driver when I play the keyboard) is about the same -- on the order of 100ms.
When I look in Pd's audio settings box, I find something rather disturbing. It doesn't give me access to the ASIO driver. So the latency with internally generated audio will _inevitably_ be 100ms or more. But: That should not affect the MIDI through routing when no audio is being generated! If it does, Pd is in serious need of optimization. It doesn't take 100ms to route three bytes through a buffer. Or at least, it shouldn't.
But again, I don't want to jump to conclusions. My settings may need to be tweaked somehow. Or perhaps Pd (being free, open-source software, unlike Cubase) simply hasn't been updated to be fully compatible with Windows 7 because nobody has gotten around to doing it yet. I wouldn't know.
--Jim Aikin