David Craig <[EMAIL PROTECTED]> writes:
> We are wanting to use �non standard� FB device format (YCR for TV display
> output) in linux. I do not imagine that ggi would work on such a framebuffer
> device �out of the box�, but has anyone actually used a non-standard fb
> device before? What is involved in porting GGI?
As long as the format has packed pixels, and doesn't do "weird" stuff,
like writing one pixel affects the colors of adjacent pixels, all
you need to do is implement the ggiMapColor()/ggiUnmapPixel()
functions for that format.
Otherwise you must implement at least the ggiPutPixel()/ggiGetPixel()
functions, and to get descent speed you should implement all drawing
functions for that format.
We might also have to add a new buffer type to the DirectBuffer
structure, but that is no problem.
If the FB device is implemented as a standard linux framebuffer
you just need to modify the display-fbdev target to load the
apropriate sublibs and set up DirectBuffers correctly. Otherwise
you'll need to write your own target, but that is quite simple if
you use an existing one as a template. Basicly you just set up
the internal structs, load the generic-stubs library, and then
you override the functions you want. Either directly in the target,
or by loading sublibs that overrides them.
//Marcus
--
-------------------------------+------------------------------------
Marcus Sundberg | http://www.stacken.kth.se/~mackan
Royal Institute of Technology | Phone: +46 707 295404
Stockholm, Sweden | E-Mail: [EMAIL PROTECTED]