I understood... and I'm unsure as to why they wouldn't be compatible as they are today. They just need some linux code to talk to them. There's basically two elements to a USB device.. "hardware identification", where devices identify themselves (by, say, claiming to be a Rio/800), and then the bit where applications say "I want to send 512 bytes of data to a Rio/800 that's on the USB bus."

The first part is fairly easy.
The second part is fairly easy.
[ although admittedly those AREN'T my field of expertise, so I couldn't do them ]

Once you're tossing data back and forth, the operating system is completely irrelevant.

So I guess I still don't understand what you're saying "couldn't work at present".