| diff -Nur --exclude=CVS xc-011010.src/include/extensions/lbxstr.h xc-011010/include/extensions/lbxstr.h |
| --- xc-011010.src/include/extensions/lbxstr.h Tue Jul 31 20:44:35 2001 |
| +++ xc-011010/include/extensions/lbxstr.h Sun Apr 21 12:35:05 2002 |
| @@ -25,7 +25,7 @@ |
| #ifndef _LBXSTR_H_ |
| #define _LBXSTR_H_ |
| |
| -#include <X11/extensions/XLbx.h> |
| +#include "XLbx.h" |
| |
| #define LBXNAME "LBX" |
| |
| diff -Nur --exclude=CVS xc-011010.src/programs/Xserver/hw/kdrive/fbdev/fbdev.h xc-011010/programs/Xserver/hw/kdrive/fbdev/fbdev.h |
| --- xc-011010.src/programs/Xserver/hw/kdrive/fbdev/fbdev.h Sun Jun 3 17:52:45 2001 |
| +++ xc-011010/programs/Xserver/hw/kdrive/fbdev/fbdev.h Sun Apr 21 12:36:25 2002 |
| @@ -29,6 +29,7 @@ |
| #include <linux/fb.h> |
| #include <unistd.h> |
| #include <sys/mman.h> |
| +#include <sys/types.h> |
| #include "kdrive.h" |
| #include "layer.h" |
| |
| diff -Nur xc-011010.src2/lib/X11/Xlib.h xc-011010/lib/X11/Xlib.h |
| --- xc-011010.src/programs/Xserver/hw/kdrive/linux/ts.c Tue Jul 10 22:58:19 2001 |
| +++ xc-011010/programs/Xserver/hw/kdrive/linux/ts.c Tue Apr 23 20:16:23 2002 |
| @@ -33,65 +33,48 @@ |
| #include "kdrive.h" |
| #include "Xpoll.h" |
| #include <sys/ioctl.h> |
| -#include <linux/h3600_ts.h> /* touch screen events */ |
| + |
| +typedef struct { |
| + unsigned short pressure; |
| + unsigned short x; |
| + unsigned short y; |
| + unsigned short pad; |
| + struct timeval stamp; |
| +} TS_EVENT; |
| |
| static long lastx = 0, lasty = 0; |
| int TsScreen; |
| extern int TsFbdev; |
| |
| -void |
| -TsRead (int tsPort, void *closure) |
| -{ |
| - TS_EVENT event; |
| - long buf[3]; |
| - int n; |
| - long pressure; |
| - long x, y; |
| - unsigned long flags; |
| - unsigned long buttons; |
| - |
| - n = Ps2ReadBytes (tsPort, (char *) &event, |
| - sizeof (event), sizeof (event)); |
| - if (n == sizeof (event)) |
| - { |
| - if (event.pressure) |
| - { |
| - /* |
| - * HACK ATTACK. (static global variables used !) |
| - * Here we test for the touch screen driver actually being on the |
| - * touch screen, if it is we send absolute coordinates. If not, |
| - * then we send delta's so that we can track the entire vga screen. |
| - */ |
| - if (TsScreen == TsFbdev) { |
| - flags = KD_BUTTON_1; |
| - x = event.x; |
| - y = event.y; |
| - } else { |
| - flags = /* KD_BUTTON_1 |*/ KD_MOUSE_DELTA; |
| - if ((lastx == 0) || (lasty == 0)) { |
| - x = 0; |
| - y = 0; |
| - } else { |
| - x = event.x - lastx; |
| - y = event.y - lasty; |
| - } |
| - lastx = event.x; |
| - lasty = event.y; |
| - } |
| - } else { |
| - flags = KD_MOUSE_DELTA; |
| - x = 0; |
| - y = 0; |
| - lastx = 0; |
| - lasty = 0; |
| - } |
| - KdEnqueueMouseEvent (flags, x, y); |
| +void TsRead (int tsPort, void *closure) { |
| + TS_EVENT event; |
| + long buf[3]; |
| + int n; |
| + long pressure; |
| + long x, y; |
| + unsigned long flags; |
| + unsigned long buttons; |
| + |
| + n = Ps2ReadBytes(tsPort, (char *) &event, sizeof (event), sizeof (event)); |
| + if (n >= sizeof (event)) { |
| + if (event.pressure >= 100) { |
| + flags = KD_BUTTON_1; |
| + x = (960 - event.x) * 640 / (920); |
| + y = (960 - event.y) * 480 / (920); |
| + //ErrorF("flags %d x %d y %dn",flags,event.x,event.y); |
| + } |
| + else { |
| + flags = KD_MOUSE_DELTA; |
| + x = lastx; |
| + y = lasty; |
| } |
| + KdEnqueueMouseEvent(flags, x, y); |
| + } |
| } |
| |
| char *TsNames[] = { |
| - "/dev/ts", |
| - "/dev/h3600_ts" /* temporary name; note this code can try |
| + "/dev/ucb1x00-ts", |
| + "/dev/ts" /* temporary name; note this code can try |
| to open more than one device */ |
| }; |
| |
| @@ -99,9 +82,7 @@ |
| |
| int TsInputType; |
| |
| -int |
| -TsInit (void) |
| -{ |
| +int TsInit (void) { |
| int i; |
| int TsPort; |
| |
| diff -Nur xc-011010.src/startx xc-011010/startx |
| --- ../../buildroot-tux.Apr25-1/build/xc-011010.src/startx Thu Apr 25 05:20:35 2002 |
| +++ xc-011010/startx Sun Apr 28 05:35:35 2002 |
| @@ -0,0 +1,11 @@ |
| +#!/bin/sh |
| +killall Xfbdev |
| +sleep 1 |
| +export DISPLAY=":0" |
| +/usr/X11R6/bin/Xfbdev -ac & |
| +sleep 4 |
| +/usr/X11R6/bin/matchbox & |
| +sleep 1 |
| +/usr/X11R6/bin/minisys & |
| +/usr/X11R6/bin/minitime & |
| +/usr/X11R6/bin/rxvt & |
| diff -Nur xc-011010.src/lib/Xft/xftgram.y xc-011010/lib/Xft/xftgram.y |
| --- ../../buildroot-tux.Apr25-1/build/xc-011010/lib/Xft/xftgram.y Thu Apr 25 05:20:35 2002 |
| +++ xc-011010/lib/Xft/xftgram.y Sun Apr 28 05:35:35 2002 |
| @@ -165,6 +165,7 @@ |
| matrix.yx = $4; |
| matrix.__REALLY_YY__ = $5; |
| } |
| + ; |
| number : INTEGER |
| { $$ = (double) $1; } |
| | DOUBLE |
| diff -Nur xc-011010.src/programs/twm/gram.y xc-011010/programs/twm/gram.y |
| --- ../../buildroot-tux.Apr25-1/build/xc-011010/programs/twm/gram.y Thu Apr 25 05:20:35 2002 |
| +++ xc-011010/programs/twm/gram.y Sun Apr 28 05:35:35 2002 |
| @@ -650,6 +650,7 @@ |
| RemoveDQuote(ptr); |
| $$ = ptr; |
| } |
| + ; |
| number : NUMBER { $$ = $1; } |
| ; |
| |