woohoo! Thanks for the update.
Looks like I was barking up the right tree for layout ID 5 -- it's a bitmap. And ID 1 (which I hadn't really played with) is a text label, which is good if we ever want to put labels or other stuff on the screen. Though the structure you present for TextWidgetData is a little confusing when compared with others -- I'll have to experiment to make sure I've got it. And I never even discovered the "style" code...
Any chance you can explain how to load a bitmap? Do I give it geometry information, or is that implied in the size of the field? Bit depth? or is that implied/fixed?
Also, are there any other tags (the TrackInfoWidgetData "which" field) that the Rio can display (looking for things like genre, etc.), or other status displays other than mute, repeat, or random?
Even if you can't answer these (for whatever reasons), thanks for the validation of (and kind words regarding) what I've put together! (and this at least frees me from having to try to load a field with IDs 10 through 255!)
david.