Norman Feske ef741ef80d Change pixel format to 32 bits per pixel
Until now, Genode's framebuffer session interface was based on the
RGB565 pixel format. This patch changes the pixel format to 32-bit
XRGB where the X part is ignored. It adapts all graphical applications
and device drivers accordingly.

The patch also adjusts the users of the drivers_interactive packages,
assigning 64 MiB RAM and 1500 caps to the drivers subsystem, which is
sufficient for covering high resolutions at 32 bits per pixel and to
accommodate multi-component USB HID input stacks.

Fixes #3784
2020-06-29 14:22:29 +02:00
..
2020-06-22 09:39:40 +02:00
2020-06-22 09:39:40 +02:00

The 'gui_fb' server provides a single session of the 'Input' and 'Framebuffer'
services by presenting a Nitpicker view at a predefined screen position. If
instantiated multiple times, it can be used to statically arrange multiple
virtual frame buffers on one physical screen. The size and screen position
of each 'gui_fb' instance can be defined via Genode's configuration mechansim
using the following attributes of the 'gui_fb' config node:

! <config xpos="100" ypos="150" width="300" height="200" origin="top_left"/>

The 'origin' attribute denotes the coordinate origin of the values specified
in the 'xpos' and 'ypos' attributes. Supported origins are "top_left",
"top_right", "bottom_left", and "bottom_right". This attribute allows one to
align the nitpicker view at any of the four screen boundaries.

The 'width' and 'height' attribute values can be negative. If so, they are
relative to the physical screen size. E.g., when using a screen size of
640x480, the effective width for a 'width' attribute value of "-100" would
be 640 - 100 = 540.

In case 'gui_fb' is used in a dynamic fashion, e.g., in combination with a
window manager, the 'initial_width' and 'initial_height' attributes must be
used to set the initial dimensions of the frame buffer rather than 'width'
and 'height'. Mixing those attributes is not supported, 'width' or 'height'
will have priority.