Parkydr
Developing for the GP2X since 2006
I've got XFree86 compiling now - takes ages
Are you compiling the full thing or the smaller server? Once you've compiled it once, you can compile the server you want on its own. I think I've found a way of getting the joystick to act as a mouse, I'm in the middle of writing a driver now (I just need to work out how to combine 4 individual bytes to form an unsigned long).Parkydr posted on May 13 2006 at 05:18 PM said:I've got XFree86 compiling now - takes ages
Orkie posted on May 13 2006 at 06:02 PM said:Are you compiling the full thing or the smaller server? Once you've compiled it once, you can compile the server you want on its own. I think I've found a way of getting the joystick to act as a mouse, I'm in the middle of writing a driver now (I just need to work out how to combine 4 individual bytes to form an unsigned long).
Parkydr posted on May 13 2006 at 04:05 AM said:The credit should go to Orkie, I've been trying to get my head round the X build system and it's not an easy task. All I've done is a bit of configuration and used the X server as a remote display. I've not had to write a single line of code.
danboid posted on May 13 2006 at 09:11 PM said:Orkie/ Parkydr -
Do neither of you have a EXT USB host adapter with a USB keyboard and mouse to test X11 with? I wouldn't be bothered controlling it with joystick for mouse and then clicking on a virtual keyboard if thats what you have in mind. It would be a good fall-back option though.
nubie posted on May 13 2006 at 09:21 PM said:The X as a remote display should be enough for portable browsing if you can send the screen over a Wifi link and send keypress info back to a PC, a diskless 633mhz Via Epia Mini-ITX could surely feed it with enough to enable smooth, smooth web browsing shouldn't it?
And it might be good for some TV-Out browsing or email.
I don't mean this to downplay efforts to get full browser's on the GP2X, but this is cool and it could move the bulk of the memory and processing to a server elsewhere when at home.
Orkie posted on May 13 2006 at 10:27 PM said:Statically linked, the server should be 6-8MB. To compile it like that, you need to compile it with only the -msoft-float option via CDEBUGFLAGS (I haven't compiled it with this but I assume it would work), then compile the Xserver with only -static.
#define OptimizedCDebugFlags -O2 -msoft-float
#define ServerCDebugFlags -static
Parkydr posted on May 14 2006 at 11:47 AM said:Orkie posted on May 13 2006 at 10:27 PM said:Statically linked, the server should be 6-8MB. To compile it like that, you need to compile it with only the -msoft-float option via CDEBUGFLAGS (I haven't compiled it with this but I assume it would work), then compile the Xserver with only -static.
I couldn't get CDEBUGFLAGS read directly. After looking through the makefiles, I ended up putting the following in my hosts.def file
Code:#define OptimizedCDebugFlags -O2 -msoft-float #define ServerCDebugFlags -static
Orkie posted on May 14 2006 at 01:18 PM said:You might be interested in the version of gpm which I've compiled for the GP2X (I've written a basic driver to use the joystick as a pointer, but the mouse buttons aren't yet working and I'm still working on it). It is possible to use gpm as a repeater for X if X doesn't support the mouse protocol but gpm does by using the -R option, but I can't get it to work with my X server so if you can work it out, please let me know how you did it, then I'll finish off the driver and compile a complete package with gpm, X and the X libraries.
http://www.orkiesrealm.co.uk/x11-14may2006.zip (vanilla static X build with a single line added to make it search for a mouse at /dev/gpmdata as well as the other locations & gpm with the gp2x driver)
To run it, you need to pass -m /dev/GPIO -t gp2x followed by whatever other options you wish to use. If you kill the gp2xmenu then run it, you can try it out not in X.
evol posted on May 14 2006 at 11:44 PM said:im of the general idea that X is evil,bad,huge,slow,bloated on an embedded device then i stumled on an kernel module called fbui an framebuffer windowing driver (gives the framebuffer much of the functionality of X)
so how big is it ?
[hold on to your hat] h34r:
50kb :blink:
http://fbui.org/
It may be possible, I'll look into it when I get chance though I'm not sure if kdrive supports larger than physical screens.Aimless_E posted on May 15 2006 at 04:32 PM said:Just A thought but couldn't we increase the size of the screen using a virtual rez. I haven't seen it done in a while, but Im sure you know what Im talking about. For those that don't, your physical screen might be 320x240 you can have a virtual screen of what ever you like. Granted its kindof a pain having to mv back an forth from one side of the screen to the other but its a thought
Orkie posted on May 15 2006 at 07:38 PM said:It may be possible, I'll look into it when I get chance though I'm not sure if kdrive supports larger than physical screens.Aimless_E posted on May 15 2006 at 04:32 PM said:Just A thought but couldn't we increase the size of the screen using a virtual rez. I haven't seen it done in a while, but Im sure you know what Im talking about. For those that don't, your physical screen might be 320x240 you can have a virtual screen of what ever you like. Granted its kindof a pain having to mv back an forth from one side of the screen to the other but its a thought
Another progress report: I now have a working mouse driver inside X. There are two problems with it though. The first is that it refuses to allow the mouse to work without gpm running in the background (despite the fact that I'm no longer using that for the mouse, I moved the code into kdrive itself) and the second is that the mouse is really jumpy - so jumpy that if you knock the stick, it leaps almost instantaneously to the other side of the screen.
EDIT: The joystick-as-mouse driver now works nearly perfectly. I'll post some more info tommorow.