Mmm.. The only problem I see with this is that the player will have already been started (and have taken over the serial port) by the time Hijack sees any NMEA coming in from an attached GPS.

So.. one problem is how to split the serial port, for which the solution is to create a second device entity that multiplexes into the serial driver, similar to the existing RDS userland hack. When Hijack recognises NMEA (or what else?) coming in, those lines get redirected to the second device, everything else goes to the player.

But wait, even better: with a second "device" for GPSapp to open/use, Hijack could just "disconnect" the player (blocking all serial input/output) whenever it sees a userland app open() the second device for use.

The only thing NOT caught by this would be the boot-up spewing of stuff out the serial link, and possibly a few lines from the player before GPSapp (or other userland app) gets going and opens the second device.

But that's probably not a big deal. And all this would allow me to rip out the serial port menu entry (no longer needed) in favour of this new automatic method.

What's everyone think of this idea? It looks darned near trivial to implement, but I could be wrong about that..

Cheers