On 15 Jul 2005 at 10:59, Stephen Peters wrote:

> "David W. Fenton" <[EMAIL PROTECTED]> writes:
> 
> > Surely for a data bus that is assumed to have multiple devices using
> > it, *all* data has to be time-stamped in some fashion.
> 
> Why?  For a multiple-device data bus, all you have to do is ensure
> that devices are tagged correctly and that events for a given device
> are in the correct order.  Everything else is just detail, defining
> how responsive the entire system is.

As long as a piece of software is responding to the queue from only 
one USB device, this will work. When you need to serialize messages 
from more than one device, it's impossible to do so without some kind 
of device non-specific ordering method.

> The requirement you state implies that every device needs to provide a
> time-critical component with short latency, which would raise the cost
> of every single device.  Useful for RT, but not for a general purpose
> bus.  

Other people have no problems with using a USB QWERTY keyboard with a 
USB MIDI keyboard for Speedy entry. This suggests that those who are 
doing that successfully are getting properly serialized data into 
Finale.

That Chris is not suggests to me that one or more of his devices is 
non-/sub-standard.

Or perhaps those who are successful are using all USB 2, whereas I 
believe Chris said he was on USB 1.1.

> > If not, then that means that nobody using a USB QWERTY keyboard with
> > a USB MIDI interface would be having success, since it would mean
> > that there's no way for USB to appropriate serialize events
> > generated by different devices destined for the same software
> > process.
> 
> That may have little to do with the bus (although with two devices
> that are requiring bounded-latency response to small packets of data,
> you could have problems with bus contention).  If the software process
> is reading information from two different locations, the software may
> not be properly synchronizing.

Um, it's *not* reading it from two different locations. It's reading 
it from a single bus. The USB bus is like a telephone party line -- 
multiple devices connected to it sharing the same communication 
space. So, it's *not* different devices.

Now, each device does have it's own USB device identifier and it's 
reading that information (since it needs to know which information to 
accept and what the source is so it knows what to do with it), but 
Finale then has to figure out the order in which to process the data. 
Without an accurate serialization code in the basic datastream on the 
USB bus, there's no way for Finale to know the order in which it 
should process the data from the two sources.

-- 
David W. Fenton                        http://www.bway.net/~dfenton
David Fenton Associates                http://www.bway.net/~dfassoc
All non-quoted content (c) David W. Fenton, all rights reserved

_______________________________________________
Finale mailing list
[email protected]
http://lists.shsu.edu/mailman/listinfo/finale

Reply via email to