What do we do about two apps that fight over it?
Something tells me I'm a little over my head here, but couldn't Hijack act as a "middleman"? Like, could apps "bind" to the display via an ioctl (without actually opening the display itself) and tell Hijack "hey, I'm here, please give me a buffer to write to." Instead of the apps having to have the display open, they could write to that buffer, and Hijack would merge the buffers as needed. I'm assuming by "fight over it" you mean there'd be some contention for the display device itself. So why not have Hijack control the display device, and just mix in each of the application's own virtual display buffers?
But I haven't really got a handle on overlaid displays yet --> there we would have multiple apps with display_focus, and fighting like cats and dogs over input_focus.
Not sure if you got the gist of my hastily-written design above, but the way I'm imaging it, apps wouldn't be able to fight over input_focus. Hijack would do the passing of the conch shell, so to speak. No app would grab or release input focus, the kernel would do that. Apps would simply wait for focus events or sleep until they're focused again. Or am I not understanding what you mean by "fighting" over the input focus? My very shallow knowledge of how this might actually get implemented in the kernel is probably causing a bit of a communication gap here...

The reason I think separating input and display focus is a good idea is that input focus absolutely *needs* to be controlled because of the very limited number of buttons available, especially on the front panel. I didn't really have a concept of "display focus" in my design above, rather, the app with input focus would be drawn on top of the others, assuming it's using the display.

Not that I should care, since I have NEVER yet run any app on my player. Ever.

But I do care, because when it screws up, I'm the point man. I'll see 20 emails for every one that an app writer sees. This eats into my time. So I care.
If all of this is more than you want to deal with, then I'm reasonably happy with what's there today. There just seems to be a bit of interest in a new more flexible system for handling >1 userland application, and I figured I'd ask. Anyway, I'd hope people would have the sense to recognize that you're one busy dude, and would direct most questions to the BBS instead of your personal email.
_________________________
- Tony C
my empeg stuff