[Coco] signal/intercept routine in Basic09
Bob Devries
devries.bob at gmail.com
Sat Jan 23 22:55:37 EST 2010
Would it be possible to write a short assembler routine which sets up an
error trap, and accepts the address of a Basic09 variable (using ADDR()),
and uses that to signal to Basic09 that something has happened by storing a
non-zero value at the address provided? Then the Basic09 programme could
poll the variable to see if a signal occurred.
Just my 2c
Regards, Bob Devries
--
Besides a mathematical inclination, an exceptionally good mastery of one's
native tongue is the most vital asset of a competent programmer.
Edsger W.Dijkstra, 18 June 1975
----- Original Message -----
From: "Robert Gault" <robert.gault at worldnet.att.net>
To: "CoCoList for Color Computer Enthusiasts" <coco at maltedmedia.com>
Sent: Sunday, January 24, 2010 12:52 PM
Subject: Re: [Coco] signal/intercept routine in Basic09
> Aaron Wolfe wrote:
>> It's probably worth noting that the "port closed" signal is not a part
>> of standard OS-9, it is a feature of the DriveWire additions we're
>> working on. The signal's value is 4. It is sent to a process when
>> the remote end of a TCPIP connection closes.
>>
>
> For what it is worth, Basic09 would trap the error 4.
> ON ERROR GOTO 100
> ERROR 4
> END
> 100 PRINT"The error was caught."
>
> When this is run, the message is printed. Now the manual indicates that
> there is no real difference between signals and errors. Errors are just
> specific signals. So, if the signal to be caught is coming from Drivewire,
> it does not seem to be getting through to Basic09. That's assuming error
> trapping as above is being used.
>
> It may mean that using syscall to set up an intercept may not work either.
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco
More information about the Coco
mailing list