Article View: comp.sys.amiga.tech
Article #10343Re: ARexx questions
From: Larry Phillips
Date: Tue, 22 Nov 1988 15:06
Date: Tue, 22 Nov 1988 15:06
80 lines
3738 bytes
3738 bytes
> 1. I think I already have an idea what's going on here, but whenever I
> "address command 'external command'" something, the results are
> frequently disappointing. First of all, it seems ARexx has no idea what
> my path is, because it can only find an external program if it's in the
> current directory or C:. So unless I put 500 files in one directory....
It's a problem with Amigados and current directory (according to Bill
Hawes). I work around it for now by using either ASIGNed names or the
'pragma' function. With pragma, you can set up a 'home position' and go
from there. WShell suffers from the same problem. I do believe it's the
same things as happens with PopCLI III.
> 2. I think this is just a bug. I cannot get a 'signal on break_c' to
> work. (or break_d or break_e or break_f) It won't work in my programs,
> and the supplied sample program breaksig.rexx doesn't work. I tried
> this from a plain newcli, shell, and the new 1.3 Shell. Anybody gotten
> this to work?
Yes. I have a small BBS program written completely in ARexx that uses the
AUX: handler and a NewWsh. Of course since the caller is actually using
a CLI from the serial port, it would never do to allow him to ^C out of it.
I don't know if the WShell makes any difference, but the 'break' code works
fine...
signal on break_c
signal on break_d
signal on break_e
signal on break_f
signal on halt
signal on ioerr
.... here be Arexx code ...
break_c:
break_d:
break_e:
break_f:
halt:
ioerr:
return 0
---- end of program ---
> 3. I would like to be able to call scripts from an application (Uedit)
> and not wait for a reply before calling another one. Is this possible?
> I can start multiple scripts running from cli's, and one from Uedit, and
> have them all send messages to Uedit while the script that Uedit called is
> still operating, and Uedit will deal with them all correctly. But until
> the script that Uedit called terminates, Uedit cannot call another. It
> tells me to fetch reply before sending a message, or something like
> that. Is there a way that a script can send a reply to the program that
> called it, and free up that port?
I don't know about UEdit in particular, but yes, multiple script calls
from a program is possible, as are multiple calls to functions within
one script.
When you call a script from a program, the reply must come from the
resident process ('REXX') itself, and that reply probably comes after the
script called has exited.
I am working on a small serial module that can communicate with one or more
ARexx scripts and one or more other modules (and vice versa, communication
is fully bidirectional). Calls sent via messages from the program to an
opened port within the script are answered explicitly within the script,
soon or not-so-soon, depending on the function being performed. Since the
RexxMessages are allocated at the time of sending, there can be multiple
outstanding messages in either direction.
-larry
--
"Intelligent CPU? I thought you said Intel CPU!"
-Anonymous IBM designer-
+----------------------------------------------------------------+
| // Larry Phillips |
| \X/ lpami.wimsey.bc.ca!lphillips or van-bc!lpami!lphillips |
| COMPUSERVE: 76703,4322 |
+----------------------------------------------------------------+
Technical Details
Message-ID:
<1969@van-bc.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!van-bc!rootShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!van-bc!root From: lphillips@lpami.van-bc.UUCP (Larry Phillips) Newsgroups: comp.sys.amiga.tech Subject: Re: ARexx questions Message-ID: <1969@van-bc.UUCP> Date: 22 Nov 88 15:06:08 GMT Sender: usenet@van-bc.UUCP Lines: 80