105b261ecSmrgXephyr README
205b261ecSmrg=============
305b261ecSmrg
405b261ecSmrg
505b261ecSmrgWhat Is It ?
605b261ecSmrg============
705b261ecSmrg
805b261ecSmrgXephyr is a a kdrive server that outputs to a window on a pre-existing
905b261ecSmrg'host' X display. Think Xnest but with support for modern extensions
10ed6184dfSmrglike composite, damage and randr.
1105b261ecSmrg
1205b261ecSmrgUnlike Xnest which is an X proxy, i.e.  limited to the
1305b261ecSmrgcapabilities of the host X server, Xephyr is a real X server which
1405b261ecSmrguses the host X server window as "framebuffer" via fast SHM XImages.
1505b261ecSmrg
1605b261ecSmrgIt also has support for 'visually' debugging what the server is
1705b261ecSmrgpainting.
1805b261ecSmrg
1905b261ecSmrg
20ed6184dfSmrgHow To Use
2105b261ecSmrg==========
2205b261ecSmrg
2305b261ecSmrgYou probably want to run like;
2405b261ecSmrg
2505b261ecSmrgXephyr :1 -ac -screen 800x600 &
2605b261ecSmrg
2705b261ecSmrgThen set DISPLAY=:1 and run whatever X apps you like.
2805b261ecSmrg
29ed6184dfSmrgUse 'xrandr' to change to orientation/size.
3005b261ecSmrg
31ed6184dfSmrgThere is a '-parent' switch which works just like Xnest's ( for use
3205b261ecSmrgwith things like matchbox-nest - http://matchbox.handhelds.org ).
3305b261ecSmrg
3405b261ecSmrgThere is also a '-host-cursor' switch to set 'cursor acceleration' -
3505b261ecSmrgThe host's cursor is reused. This is only really there to aid
3605b261ecSmrgdebugging by avoiding server paints for the cursor. Performance
37ed6184dfSmrgimprovement is negligible.
3805b261ecSmrg
3905b261ecSmrgSend a SIGUSR1 to the server ( eg kill -USR1 `pidof Xephyr` ) to
4005b261ecSmrgtoggle the debugging mode. In this mode red rectangles are painted to
4105b261ecSmrgscreen areas getting painted before painting the actual content. The
4205b261ecSmrgdelay between this can be altered by setting a XEPHYR_PAUSE env var to
43ed6184dfSmrga value in microseconds.
4405b261ecSmrg
4505b261ecSmrg
4605b261ecSmrgCaveats
4705b261ecSmrg=======
4805b261ecSmrg
49ed6184dfSmrg - Depth is limited to being the same as the host.
50ed6184dfSmrg   *Update* As of 8/11/2004. Xephyr can now do 8bpp & 16bpp
5105b261ecSmrg            on 24bpp host.
5205b261ecSmrg
5305b261ecSmrg - Rotated displays are currently updated via full blits. This
5405b261ecSmrg   is slower than a normal oprientated display. Debug mode will
55ed6184dfSmrg   therefore not be of much use rotated.
5605b261ecSmrg
57ed6184dfSmrg - The '-host-cursor' cursor is static in its appearance.
5805b261ecSmrg
5905b261ecSmrg - The build gets a warning about 'nanosleep'. I think the various '-D'
60ed6184dfSmrg   build flags are causing this. I haven't figured as yet how to work
61ed6184dfSmrg   around it. It doesn't appear to break anything however.
6205b261ecSmrg
63ed6184dfSmrg - Keyboard handling is basic but works.
6405b261ecSmrg
65ed6184dfSmrg - Mouse button 5 probably won't work.
6605b261ecSmrg
6705b261ecSmrg
6805b261ecSmrg
6905b261ecSmrg
7005b261ecSmrg
71ed6184dfSmrgMatthew Allum <mallum@o-hand.com> 2004
72