summaryrefslogtreecommitdiff
path: root/hw/kdrive/ephyr/README
blob: 6d6a222efca17a9ebb1eb69acfbe32a6883e191c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Xephyr README
=============


What Is It ?
============

Xephyr is a a kdrive server that outputs to a window on a pre-existing
'host' X display. Think Xnest but with support for modern extensions
like composite, damage and randr. 

Unlike Xnest which is an X proxy, i.e.  limited to the
capabilities of the host X server, Xephyr is a real X server which
uses the host X server window as "framebuffer" via fast SHM XImages.

It also has support for 'visually' debugging what the server is
painting.


How To Use 
==========

You probably want to run like;

Xephyr :1 -ac -screen 800x600 &

Then set DISPLAY=:1 and run whatever X apps you like.

Use 'xrandr' to change to orientation/size. 

There is a '-parent' switch which works just like Xnests ( for use
with things like matchbox-nest - http://matchbox.handhelds.org ).

There is also a '-host-cursor' switch to set 'cursor acceleration' -
The host's cursor is reused. This is only really there to aid
debugging by avoiding server paints for the cursor. Performance
improvement is negiable. 

Send a SIGUSR1 to the server ( eg kill -USR1 `pidof Xephyr` ) to
toggle the debugging mode. In this mode red rectangles are painted to
screen areas getting painted before painting the actual content. The
delay between this can be altered by setting a XEPHYR_PAUSE env var to
a value in micro seconds.


Caveats
=======

 - Depth is limited to being the same as the host. 
   *Update* As of 8/11/2004. Xephyr can now do 8bpp & 16bpp 
            on 24bpp host.

 - Rotated displays are currently updated via full blits. This
   is slower than a normal oprientated display. Debug mode will
   therefor not be of much use rotated.  

 - The '-host-cursor' cursor is static in its appearence. 

 - The build gets a warning about 'nanosleep'. I think the various '-D'
   build flags are causing this. I havn't figured as yet how to work
   round it. It doesn't appear to break anything however. 

 - Keyboard handling is basic but works. 

 - Mouse button 5 probably wont work. 





Matthew Allum <mallum@o-hand.com> 2004