perhaps of no use at all, but when porting hivelytracker to os3, I made big use of guigfx/renderlib (one or the other or both).
Enabled me to have the app fully 24bit on gfxcards, and still work in 4 colours on aga (and nicely dithered gfx too). It's pretty quick - there is an older asm version and the newer versions were made in c afair.
anyway, it's made by a very talented demo coder so it must be good ;-)
I was thinking back when novacoder was doing his scummvm stuff that perhaps it could be used to make one version for all.
Anyway, just thought i'd drop this here - not necessarily on topic, but we were on a similar subject.