🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #2173

Aborting TimerReq (answer and a question)

#2173
From: Dale Larson
Date: Fri, 17 Nov 1989 17:55
49 lines
2373 bytes
/*  eat this? */

A few weeks ago, I posted a message about a problem with aborting a
timer request.  The only response I recieved indicated that doing
so is not possible.  I have found a kludgy way of aborting the request, 
and would like to know why it seems to be necessary.  If I'd saved that
address for sending bug reports to, I'd send it.
 
From: lsuc!nrcaer!julie!mcr@neat.ai.toronto.edu (Michael Richardson)
>>Is the only way to reuse my timer request to close down the device and port
>>and re-open them???  Or have I (HOPEFULLY!) done something stupid again?
>  Look at the entry for timer.device again --- notice the lack of support
>for AbortIO()?
>  You can't abort the timer.device.
>  Everyone seems to anyway though... and it worked for me, until a friend
>pointed out that you can't abort it.

Page B-68 of the printed 1.3 AutoDocs (the entry for 
timer.device/TR_ADDREQUEST) says:

"The message may be forced to finish early with an AbortIO()/WaitIO()
pair."

As stated in my original message (to which I have recieved no other replies)
I cannot get things to work properly with a simple AbortIO()/WaitIO() pair.
The WaitIO() always returns error IOERR_ABORTED (or whatever) and fails
to clear some bit or another.  The following code segment, however, has 
been working for me:

			if(AbortIO((struct IORequest *)TimerReq))
			{
				close_down("AbortIO(TimerReq) Error!");
			}
			if(error=WaitIO((struct IORequest *)TimerReq))
			{
				Wait(1<<TimerPort->mp_SigBit);
			}

If I replace the WaitIO() with the Wait(), however, something else is broken
(it waits forever if I recall correctly, it's been a few weeks and my notes
are jumbled).

Can anyone shed any light for me?

-- 
	    A lack of prior planning on the part of any programmer 
		       always constitutes an emergency.
	
           Digital Teddy Bear      dlarson@blake.acs.washington.edu
Technical Details
Message-ID: <4499@blake.acs.washington.edu>
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!shadooby!samsung!caesar.cs.montana.edu!ogccse!blake!dlarson

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!shadooby!samsung!caesar.cs.montana.edu!ogccse!blake!dlarson
From: dlarson@blake.acs.washington.edu (Dale Larson)
Newsgroups: comp.sys.amiga.tech
Subject: Aborting TimerReq (answer and a question)
Keywords: timer.device AbortIO() WaitIO() Wait()
Message-ID: <4499@blake.acs.washington.edu>
Date: 17 Nov 89 17:55:04 GMT
Organization: The Evergreen State College,  WA
Lines: 48