WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Xfbdev  (Read 11359 times)

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Xfbdev
« on: November 23, 2012, 06:38:56 AM »
I've made several attempts to build Xfbdev from the Xorg-7.6 source, but so far it's not self-contained and does not start properly.

I doubt the xfree86 source will compile 64-bit - any suggestions on obtaining a working Xfbdev gladly received...

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 9587
Re: Xfbdev
« Reply #1 on: November 23, 2012, 07:08:47 AM »
The last version with working kbd and mouse was from xorg-server-1.2.0, IIRC. I wouldn't discount xfree86 for 64-bit, given 4.7.0 was released in 2007, but it does take more effort.
The only barriers that can stop you are the ones you create yourself.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Re: Xfbdev
« Reply #2 on: November 24, 2012, 10:16:11 AM »
'tried a couple of versions of Xfree86 (fails to compile) and several versions of xorg-server (compiles, but Xfbdev seg faults).

The trouble is I don't know whether Xfbdev would work with the intel hd3000 anyway...

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 9587
Re: Xfbdev
« Reply #3 on: November 24, 2012, 11:41:46 AM »
That's quick to test with the 32-bit TC.
The only barriers that can stop you are the ones you create yourself.

Online coreplayer2

  • Hero Member
  • *****
  • Posts: 2509
Re: Xfbdev
« Reply #4 on: November 25, 2012, 12:57:51 AM »
Xfbdev works with Intel HD4000  using core64  but not corepure  unfortunately

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Re: Xfbdev
« Reply #5 on: November 25, 2012, 01:33:06 PM »
That's because it's 32-bit  :)

I got Xfbdev working with core/core64 on the dell e6220 so it's confirmed it works with the hd3000 also (using vga=0x318 video=vesafb:mtrr)

Using Xfbdev compiled 64-bit from the same xorg-server as Xorg-7.6, I can get Xfbdev to "startx", but the mouse doesn't work whatever I do (- mouse /dev/input/mice; /dev/input/mouse1; evdev,5,/dev/input/event9; etc)

As per google, somebody got things to work with xorg-server-1.13.0, but of course this would mean re-compiling half of the *proto sources, etc

I'm unable to compile XFree86-4.8.0 as it doesn't seem to be able to find it's own header files  ???

Code: [Select]
tce-load -i fontconfig-dev perl5

cd xc

grep "__undef_LINUX" /usr/include/sys/kd.h 2>&1 > /dev/null || sed -i.bak '/X.h/i #include <linux/types.h>' programs/Xserver/hw/xfree86/os-support/linux/lnx_agp.c

make -C config/util -f Makefile.ini lndir
mkdir ../xcbuild
cd ../xcbuild
../xc/config/util/lndir ../xc

sed -i 's:^.*asm.*$:# define PAGE_MASK   (~(getpagesize() - 1)):' ../xc/programs/Xserver/hw/xfree86/fbdevhw/fbdevhw.c
sed -i -e "s@^#include <linux/config.h>@/* & */@" `grep -lr linux/config.h ../xc`

copy host.def to xcbuild/config/cf/

Edit /usr/include/limits.h line 125
# include_next <../include-fixed/limits.h>

make World
...
making all in programs/Xserver/hw/dmx...
make[6]: Entering directory `/usr/src/xcbuild/programs/Xserver/hw/dmx'
rm -f dmxinit.o
gcc -c -O2 -fno-strength-reduce -fno-strict-aliasing -Wall -Wpointer-arith -Wundef     -I. -I../../../../programs/Xserver/include -I../../../../programs/Xserver/os -I../../../../programs/Xserver/mi          -I../../../../programs/Xserver/fb -I../../../../programs/Xserver/miext/shadow       -I../../../../programs/Xserver/render -I../../../../programs/Xserver/Xext  -I../../../../exports/include -I/usr/X11R6/include   -Dlinux -D__amd64__ -D_POSIX_C_SOURCE=199309L                            -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_GNU_SOURCE                           -DSHAPE -DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY -DXSYNC -DXF86BIGFONT        -DDPM.tension -DBIGREQS -DPANORAMIX -DRENDER -DRANDR  -DRES  -DPIXPRIV                              -DNDEBUG                    -DNEED_STRLCAT -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH                               -DXFree86Server                            -DSMART_SCHEDULE                                -DBUILDDEBUG                            -DX_BYTE_ORDER=X_LITTLE_ENDIAN -D_XSERVER64  -DFUNCPROTO=15 -DNARROWPROTO   -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR                             -DDDXOSVERRORF -DMITSHM -DMITMISC -DXTEST   -DXTRAP -DXCMISC -DXRECORD -DTOGCUP     -DXF86VIDMODE -DXF86MISC -DXFreeXDGA    -DDBE -DEVI -DSCREENSAVER -DXV      -DXVMC -DGLXEXT -DXF86DRI -DGLX_DIRECT_RENDERING -DGLX_USE_DLOPEN -DGLX_USE_MESA -D__GLX_ALIGN64 -DFONTCACHE -DDMXEXT -UDBE -UNEED_DBE_BUF_BITS                                     -UNEED_DBE_BUF_VALIDATE                                         -UNEED_DBE_BUF_REVALIDATE -UMITSHM -URANDR -UXPRINT         -UMULTIBUFFER -UXV -UXVMC       -UXTESTEXT1 -UXF86VIDMODE -UXF86MISC    -UXFreeXDGA -UGLXEXT -UXF86DRI -UTOGCUP     -UMITMISC -USCREENSAVER         -UFONTCACHE -UXFree86LOADER       -DVENDOR_STRING=\""DMX Project"\" -DVENDOR_RELEASE="((1)     * 100000000) +     ((3)     *   1000000) +     ((2006-2000) *     10000) +     ((2)     *       100) +     ((20)       *         1)" -DOSNAME='"Linux 3.0.21-tinycore64 x86_64 [ELF]"' -DOSVENDOR='""'   dmxinit.c
In file included from dmx.h:57:0,
                 from dmxinit.c:41:
dmxclient.h:86:54: fatal error: X11/Xmu/SysUtil.h: No such file or directory
compilation terminated.
make[6]: *** [dmxinit.o] Error 1
make[6]: Leaving directory `/usr/src/xcbuild/programs/Xserver/hw/dmx'

I can correct the path to SysUtil.h but then a gazillion other relative paths in other headers are wrong.

..which must mean something more basic is amiss - any suggestions welcome

Offline bmarkus

  • Administrator
  • Hero Member
  • *****
  • Posts: 6908
    • My Community Forum
Re: Xfbdev
« Reply #6 on: November 25, 2012, 01:57:43 PM »
I spent days to build Xfbdev on 1.13 basis for the Raspberry Pi. When I got X server working, there were no mouse and keyboard. Going back to xserver 1.2 and Xorg 7.1 I got a working Xfbdev with mouse and keyboard with a missing arrow and insert/home/pageup keys so finally gave it up and now using full Xorg. Well, with fbdev as no accelerated driver available. In between I tried few older versions but it was either not working or a mess due to different libs, tools, protos, ...

To be honest, to build a working Xorg is a nightmare to find which option you can ot you must enable and disable, there are many dependencies, ....
Béla
Ham Radio callsign: HA5DI

"Amateur Radio: The First Technology-Based Social Network."

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Re: Xfbdev
« Reply #7 on: November 25, 2012, 11:55:41 PM »
I finally got the XFree86-4.8.0 version of Xfbdev working  :)

The trouble is editor/fluff/opera-12 work, but something (to do with fonts I guess) stops beaver2/emelfm2 from opening a window  :(

Thus I'm somewhat hesitant to publish an extension...

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Xfbdev
« Reply #8 on: November 26, 2012, 06:37:13 AM »
Does opera-12 work in GTK toolkit mode or not?
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 9587
Re: Xfbdev
« Reply #9 on: November 26, 2012, 08:19:46 AM »
That's what I meant with "they have broken tinyX mouse and keyboard after 1.2.0" ;)
The only barriers that can stop you are the ones you create yourself.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Re: Xfbdev
« Reply #10 on: December 02, 2012, 12:40:11 AM »
Xfbdev from xorg-server-1.2 posted.

Things work for me with the following boot codes:
Code: [Select]
vga=0x318 video=vesafb:mtrr
..and the following first line in .xsession:
Code: [Select]
Xfbdev -br -screen 1024x768x32 -mouse /dev/input/mice,5 -fp /usr/lib/X11/fonts/misc,/usr/lib/X11/fonts/75dpi -nolisten tcp &
..and beaver2 and emelfm2 both work with this version of Xfbdev

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 9587
Re: Xfbdev
« Reply #11 on: December 02, 2012, 01:31:00 AM »
One day, we should get a fork of Xvesa + Xfbdev put up somewhere. Latest code, bugfixes, smallest binary, in one place and compilable ;)
The only barriers that can stop you are the ones you create yourself.

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Re: Xfbdev
« Reply #12 on: December 02, 2012, 12:22:23 PM »
Good idea, perhaps a fork might lead to contributions/collaboration from devs of other distros making use of Xvesa/Xfbdev.
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 9542
Re: Xfbdev
« Reply #13 on: January 24, 2013, 01:27:21 AM »
As advised by @coreplayer2 when using Xfbdev and moving an flwm window to the right, the window does not get redrawn correctly.

It seems that this only applies to 64-bit Xfbdev and, after an appropriate patch, the corruption is fixed, but a window gets re-drawn very slowly when moved in any direction.

I managed to compile Xfbdev from xorg-server-1.13.1 and, after reverting a patch, I can remove the "Pointer option key (device=) of value (/dev/input/event5) not assigned!" error, but now I'm stuck:
Code: [Select]
Xfbdev -br -screen 1024x768x32 -mouse evdev,5,device=/dev/input/event5 -fp /usr/lib/X11/fonts/misc,/usr/lib/X11/fonts/75dpi -nolisten tcp &
...
Ungrabbing evdev mouse device failed: Bad file descriptor

As per:

http://kemovitra.blogspot.com/2012/10/linux-building-xorg-kdrive-server.html

This should work  :(

..any suggestions gratefully received...

Offline sebus

  • Jr. Member
  • **
  • Posts: 96
Re: Xfbdev
« Reply #14 on: January 27, 2013, 05:43:52 AM »
Xfbdev works with Intel HD4000  using core64  but not corepure  unfortunately

Any more development as far as HD4000 is concerned?