On Thu Nov 03, 2011 at 12:55:31 +0300, Ivan Loskutov wrote:
I executed porting of Disko (http://www.diskohq.com/ ) to use in L4Re. Archive with dependencies and patches http://dl.dropbox.com/u/8558928/disko.tar.bz2
Looks nice.
- Differences of Disko original source code
I changed *.cpp files name extension to *.cc. I didn’t build a library from *.cpp files. I added files enabling working with framebuffer (mmsgui/fb/mmsfbl4re.cc) and L4Re input subsystem (mmsinput/mmsinputl4rehandler.cc). Virtual file system(VFS) added (mmstool/vfswrapper.cc) for implementation of access at application resources (image, xml form files). Libwhefs library was used for it (http://code.google.com/p/whefs/).
- Known issues
The input system link handler has has only the functions I needed. The touchscreen calibration function was added to mmsinputl4rehandler.cc, but it’s not the best solution. The best solution would be a separate server for the input subsystem that routes handled events to other applications. To simplify the touchscreen handler coding I added a patch to input. See input.patch.
L4Re video API function bits_per_pixel returned incorrect pixel size because it was calculated as a sum of R, G, B and A fields sizes. I have used RGB32 format with A field length equal to 0 bits. That’s why the returned total length was 24 bits instead of 32 bits. See video.patch
There's a difference between bytes_per_pixel and bits_per_pixel. bits-pp is indeed summing up each field but it does not reflect the size of the pixel, which why there's bytes-pp.
Adam