schur@isi.edu (Sean Schur) (04/23/91)
I am trying to use AREXX to control a Lyon-Lamb Minivas. This is a single frame recorder controller for single framing images to videotape. The MiniVas has a standard RS232 port. It accepts standard ASCII characters for control. I have had complete success in using AREXX to control the MiniVas. I have an AREXX script that will display a series of images one by one on the Video Toaster and tell the MiniVas to grab the frame once it is displayed. No problem. Now I want to turn things around. Supposedly the MiniVas also sends out standard ASCII characters reporting on it's current state. What I want to be able to do is to have the MiniVas tell the AREXX script when it gets to a particular frame, then activate the Toaster at that point to do a framegrab. The reason I want to do this is to be able to grab a series of images to do animated image maps for Lightwave. So, for example I could grab a series of 60 frames of a movie, then have those frames play on the screen in an animation in Lightwave. The problem I am having is how to run tests to figure out what ASCII characters are being sent by the MiniVas at exactly what point. For my earlier script (to send characters TO the MiniVas) I could set up a simple script that would open the SER: port as a logical file, then pull a character from the keyboard and do a "writech" to send the character to the SER: port. Easy enough to do a loop so I could type a "+" and it would start to play, and a "<" and it would rewind. I had direct control over the MiniVas from the keyboard. I want to be able to do the same thing now, to send characters to the MiniVas, but I also want to be able to find out what the MiniVas is sending back. Optimally I would like some process watching the SER: port for any incoming characters while I send out characters as well. I can't run two separate AREXX scripts. If I have one running that has the SER: port open and I run a second, the second one fails when it tries to access the port. The other option is to run one script in a loop. Allow me to send a character to the MiniVas then look for a response, if there is none let me send another character, etc. The problem I am having with this (and it is probably AREXX ignorance) is that after sending a character with "writech" I am using "readch,1" to look for a single character. The program isn't receiving one and the script completely freezes, I can't get out of it at all without rebooting. I am pretty sure that I need to send a particular character first to tell the MiniVas that I want it to start sending it's status. The documentation for the MiniVas is pretty bad and I need to be able to try several different things before I figure it out. So, how do I tell AREXX to TRY to read a character, if it doesn't get one within a specified length of time, to return control of the program to me so I can type another character. It would also be desirable to have the script echo the character to me immediately as opposed to writing it into a file to look at later. Any suggestions and help would be appreciated. Thanks. ======================================================================= Sean Schur USENET: schur@isi.edu Assistant Director Amiga/Media Lab Compuserve: 70731,1102 Character Animation Department Plink: OSS259 California Institute of the Arts =======================================================================
tell@oscar.cs.unc.edu (Stephen Tell) (04/24/91)
In article <17683@venera.isi.edu> schur@venera.isi.edu (Sean Schur) writes: >I am trying to use AREXX to control a Lyon-Lamb Minivas. This is a single >frame recorder controller for single framing images to videotape. The >MiniVas has a standard RS232 port. It accepts standard ASCII characters >for control. > The problem I am having with this >(and it is probably AREXX ignorance) is that after sending a character >with "writech" I am using "readch,1" to look for a single character. >The program isn't receiving one and the script completely freezes, I can't >get out of it at all without rebooting. >So, how do I tell AREXX to TRY to read a character, if it doesn't get >one within a specified length of time, to return control of the program >to me so I can type another character. It would also be desirable to >have the script echo the character to me immediately as opposed to >writing it into a file to look at later. The problem is with the SER: handler; it just isn't designed for this "give me a character if there is one, or else time out" sort of operation. I have had good luck writing quick & dirty serial applications from C by opening up UUSER:, a driver that comes with the AmigaUUCP package. I use open(), and then when I try to read() a single character the read times out with an error if there is no character to read after the timeout specified in the open string (somthing like "UUSER:serial.device/1/R500/C0/G0" for 500 millisecond timeout). This should work with Arexx if it handles errors from the AmigaDos I/O routines reasonably and lets you read and write from the same filehandle. From C, its easier to use the lower level I/O functions, like open() or Open() as opposed to dealing with stdio and fopen(), which don't do bidirectional I/O quite as gracefully. I have Arexx, but haven't used it enough to comment on it directly. UUSER: is designed to run under the getty program also in the UUCP package, but it seems to work fine by itself. >Sean Schur USENET: schur@isi.edu >Assistant Director Amiga/Media Lab Compuserve: 70731,1102 >Character Animation Department Plink: OSS259 >California Institute of the Arts Steve -- Steve Tell tell@cs.unc.edu H: +1 919 968 1792 #5L Estes Park apts CS Grad Student, UNC Chapel Hill. W: +1 919 962 1845 Carrboro NC 27510 Duke Blue Devils: 1991 NCAA Basketball National Champions! We're Number 1 !! UNLV 90-91 record: "34 and DUKE."
dac@prolix.pub.uu.oz.au (Andrew Clayton) (04/24/91)
In article <17683@venera.isi.edu>, Sean Schur writes: > So, how do I tell AREXX to TRY to read a character, if it doesn't get > one within a specified length of time, to return control of the program > to me so I can type another character. It would also be desirable to > have the script echo the character to me immediately as opposed to > writing it into a file to look at later. > > Any suggestions and help would be appreciated. I would like to see this information as well. [Sorry, no email at the moment] Dac --
dillon@overload.Berkeley.CA.US (Matthew Dillon) (04/25/91)
In article <3397@borg.cs.unc.edu> tell@oscar.cs.unc.edu (Stephen Tell) writes: >In article <17683@venera.isi.edu> schur@venera.isi.edu (Sean Schur) writes: >>I am trying to use AREXX to control a Lyon-Lamb Minivas. This is a single >>frame recorder controller for single framing images to videotape. The >>.. > >UUSER: is designed to run under the getty program also in the UUCP package, >but it seems to work fine by itself. > >>Sean Schur USENET: schur@isi.edu >>Assistant Director Amiga/Media Lab Compuserve: 70731,1102 >>Character Animation Department Plink: OSS259 >>California Institute of the Arts It does but I'm phasing it out, I haven't had the time to get it to look more like a console device and instead will concentrate on FIFO: in combination with Getty which, while still buggy, has a greater capability. Just to let you all know that UUSER: isn't going to be supported re: bug fixes. >Steve > >-- >Steve Tell tell@cs.unc.edu H: +1 919 968 1792 #5L Estes Park apts >CS Grad Student, UNC Chapel Hill. W: +1 919 962 1845 Carrboro NC 27510 >Duke Blue Devils: 1991 NCAA Basketball National Champions! We're Number 1 !! >UNLV 90-91 record: "34 and DUKE." -Matt -- Matthew Dillon dillon@Overload.Berkeley.CA.US 891 Regal Rd. uunet.uu.net!overload!dillon Berkeley, Ca. 94708 USA
caw@miroc.Chi.IL.US (Christopher A. Wichura) (04/25/91)
In article <17683@venera.isi.edu> schur@isi.edu (Sean Schur) writes: >I am trying to use AREXX to control a Lyon-Lamb Minivas. This is a single >frame recorder controller for single framing images to videotape. The >MiniVas has a standard RS232 port. It accepts standard ASCII characters >for control. I have had complete success in using AREXX to control the >MiniVas. I have an AREXX script that will display a series of images >one by one on the Video Toaster and tell the MiniVas to grab the frame >once it is displayed. No problem. A long time ago, I picked up rexxserdev.library. This was a function library for ARexx scripts that let you talk to the serial ports without having to play games with SER:. As I recall, about 3 revisions came out within a weeks time. A quick search of my system shows I still have the function library, but none of the docs for it. If someone knows where to find the most recent distribution of this library, I'd like to know about it as well. -=> CAW Christopher A. Wichura Multitasking. Just DO it. caw@miroc.chi.il.us (my amiga) ...the Amiga way... u12401@uicvm.uic.edu (school account)
jay@deepthot.cary.nc.us (Jay Denebeim) (04/28/91)
In article <caw.9533@miroc.Chi.IL.US> caw@miroc.Chi.IL.US (Christopher A. Wichura) writes: > >A long time ago, I picked up rexxserdev.library. This was a function > >If someone knows where to find the most recent distribution of this >library, I'd like to know about it as well. Its available on deepthot, call or use the file request mailer. > >-=> CAW > >Christopher A. Wichura Multitasking. Just DO it. >caw@miroc.chi.il.us (my amiga) ...the Amiga way... >u12401@uicvm.uic.edu (school account) -- |_o_o|\\ |. o.| || The Jay Denebeim | . | || Software | o | || Distillery | |// Address: UUCP: mcnc.org!deepthot.uucp!jay ====== Internet: jay@deepthot.cary.nc.us BBS:(919)-460-7430 VOICE:(919)-460-6934