1 Here is a small patch to get meteor_fgrab_widget_0.8 framegrabber widget
2 working with Tcl/Tk 8.0 on Linux RedHat 6.1.
4 With this, I have it working. The colors are a bit strange, but I
5 guess that is a local problem. :-)
7 diff -ru meteor_fgrab_widget_0.8/Makefile meteor_fgrab_widget_0.8-pere/Makefile
8 --- meteor_fgrab_widget_0.8/Makefile Mon Feb 10 22:54:51 1997
9 +++ meteor_fgrab_widget_0.8-pere/Makefile Tue Dec 14 14:27:05 1999
11 fgrab_wish: fgrab_tkAppInit.o fgrab_meteor.o
12 cc -o fgrab_wish-$(VERSION) fgrab_tkAppInit.o $(FGRAB_METEOR).o\
14 - -ltk4.1 -ltcl7.5 -lXext -lX11 -lm -ldl
15 + -ltk8.0 -ltcl8.0 -lXext -lX11 -lm -ldl
16 fgrab_tkAppInit.o: fgrab_tkAppInit.c; cc -c -g fgrab_tkAppInit.c
17 fgrab_meteor.o: $(FGRAB_METEOR).c;
18 cc -D$(FORMAT) -D$(DEVICE) -D$(BOARD) -c -g $(FGRAB_METEOR).c
19 diff -ru meteor_fgrab_widget_0.8/fgrab_meteor-0.8.c meteor_fgrab_widget_0.8-pere/fgrab_meteor-0.8.c
20 --- meteor_fgrab_widget_0.8/fgrab_meteor-0.8.c Mon Feb 10 23:22:16 1997
21 +++ meteor_fgrab_widget_0.8-pere/fgrab_meteor-0.8.c Tue Dec 14 14:43:25 1999
23 static struct meteor_geomet geo;
24 static struct meteor_frame_offset off;
28 -static struct sigaction sigact =
29 -((struct sigaction){ sa_handler: FGrabGotFrame,
30 - sa_mask: (sigset_t)0,
31 - sa_flags: SA_RESTART });
33 -static struct sigaction sigalrm =
34 -((struct sigaction){ sa_handler: FGrabCountFrame,
35 - sa_mask: (sigset_t)SIGUSR2,
36 - sa_flags: SA_RESTART });
38 +static struct sigaction sigact;
39 +static struct sigaction sigalrm;
41 static void FGrabCountFrame( int signum ) {
44 if (!(FGrabReg & FPSCOUNT)) {
46 /* hier muß noch der alte Wert von Sigaction gespeichert werden !! */
48 + sigalrm.sa_handler = FGrabCountFrame;
49 + sigalrm.sa_flags = SA_RESTART;
50 + sigemptyset(&sigalrm.sa_mask);
51 + sigaddset(&sigalrm.sa_mask, SIGUSR2);
53 if (sigaction (SIGALRM, &sigalrm, NULL)) {
54 Tcl_AppendResult (interp, "alrmaction failed", (char *) NULL);
57 geo.frames = NOFRAMES;
58 geo.oformat = fgrabPtr->video.oformat | fgrabPtr->fieldmode;
60 + sigact.sa_handler = FGrabGotFrame;
61 + sigact.sa_flags = SA_RESTART;
62 + sigemptyset(&sigact.sa_mask);
63 if (sigaction (SIGUSR2, &sigact, NULL)) {
64 Tcl_AppendResult (interp, "sigaction failed", (char *) NULL);
66 Only in meteor_fgrab_widget_0.8-pere: fgrab_meteor-0.8.c~
67 diff -ru meteor_fgrab_widget_0.8/fgrab_meteor-0.8.h meteor_fgrab_widget_0.8-pere/fgrab_meteor-0.8.h
68 --- meteor_fgrab_widget_0.8/fgrab_meteor-0.8.h Mon Feb 10 22:53:23 1997
69 +++ meteor_fgrab_widget_0.8-pere/fgrab_meteor-0.8.h Tue Dec 14 13:59:54 1999
76 #include <sys/types.h>
79 #include <sys/resource.h>
82 +/* Does not compile on newer glibc */
87 #include <X11/Intrinsic.h>
88 #include <X11/StringDefs.h>
89 Only in meteor_fgrab_widget_0.8-pere: fgrab_meteor-0.8.o
90 Only in meteor_fgrab_widget_0.8-pere: fgrab_tkAppInit.o
91 Binary files meteor_fgrab_widget_0.8/fgrab_wish-0.8 and meteor_fgrab_widget_0.8-pere/fgrab_wish-0.8 differ
92 Only in meteor_fgrab_widget_0.8-pere: meteor_fgrab_widget_0.8.lsm