Subject:
|
Re: (Failed) Getting LegOS 0.2.2 working on Windows
|
Newsgroups:
|
lugnet.robotics.rcx.legos
|
Date:
|
Wed, 22 Dec 1999 18:55:52 GMT
|
Viewed:
|
1538 times
|
| |
| |
Well, i'm still looking to find out what might go wrong. Fixing the sigio
handler is of no use as cygwin doesn't send sigio's when data arrives at a
serial port.
Peter
Martin Cornelius wrote:
> Jeff Chrisope wrote:
> >
> > In lugnet.robotics.rcx.legos, Peter Van der Beken writes:
> > >
> > > > chili : /legOS util/dll demo/helloworld.lx
> > > > sending keepalive: Invalid argument
> > > Haven't seen this. could you try with the original loader.c, lx.c and
> > > rcxtty.c and tell us what error it gives then. (They should be backed up as
> > > loader.c.orig, etc. Rename the patched files as loader.c.new to keep them
> > > around). Also, use the -v flag (dll -v demo/helloworld.lx).
> > >
> > > Peter
> >
> > Hey --
> >
> > More info about this odd bug. Installed 0.2.3, and the bug is still there.
> >
> > So the rcxInit() stuff appears to be the problem. Any further ideas on what
> > the heck could be wrong?
>
>
> i dont´t know if you have already fixed this, anyways, there is a bug in
> sigio_handler. The struct timeval last is used uninitialized and should
> be static. Today i sent the following little patch to Markus.
>
> ------- schnips schnips --------
>
> --- loader.c.orig Tue Dec 21 22:55:41 1999
> +++ loader.c Tue Dec 21 22:56:51 1999
> @@ -155,10 +155,12 @@
> return -1;
> }
>
> +static struct timeval last;
> +
> void sigio_handler(int signo) {
>
> if(signo==SIGIO) {
> - struct timeval last,now;
> + struct timeval now;
> unsigned long diff;
>
> unsigned char buffer[256];
> @@ -213,6 +215,7 @@
> } while(diff < 100000);
> read(rcxFD(),buffer,256);
>
> + gettimeofday(&last,0);
> // install IO handler
> //
> signal(SIGIO,sigio_handler);
>
> ------- schnips schnips --------
|
|
Message is in Reply To:
13 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|