From: <raymond.meyer%rambler.ru@localhost> Hmm.. hard to say, I like programming, mainly C and a bit of SPARC assembly. These days, any sort of GUI programming involves X11 libs, or some other libs that sit on top of X11, like GTK or QT. I played a bit with X11, but I get the impression it's too bloated and complicated. I've got two framebuffers - Creator3D and Elite3D, so I'm trying to figure out how the hardware works, then I want to write a small "driver" which will draw primitives like dots, lines, polygons, etc.
NetBSD display system (wsdisplay) has a 'dumb framebuffer' interface (wsfb) which graphics drivers can provide as a 'lowest common denominator', so they can be driven by x11 or other users. One thougt which interested me (unfortunately never enough to make me find the time) was getting SDL or similar running directly on wsdisplay. I wonder if the wsdisplay layer is a useful fit for what you are looking at (or even potentially a useful place to start)?
When I'm happy with the driver and the abstraction it provies between the framebuffer and the upper layers, I can start developing experimental GUI library + applications. Something small and efficient, because I gave up on Gnome and KDE a long time ago.
could you end up with two layers - one per device which provides direct framebuffer access and an optional set of accellerated routines, and another common layer which provides the API to the applications?
The hardest bit is getting hardware documentation. I posted the following message on OpenSolaris forums, but nobody even cared to reply on it... http://opensolaris.org/jive/thread.jspa?messageID=384947
Getting hw docs on older graphics devices is a real pain - where X drivers already exist they may prove very useful - particularly on some of the hardware accelleration. Did you take a look at NetBSD's current xorg tree?
Good luck :)