Path: utzoo!mnetor!uunet!husc6!bbn!rochester!cornell!batcomputer!itsgw!imagine!pawl23.pawl.rpi.edu!jesup From: jesup@pawl23.pawl.rpi.edu (Randell E. Jesup) Newsgroups: comp.sys.amiga Subject: Re: one last word on my simple device problem Message-ID: <181@imagine.PAWL.RPI.EDU> Date: 24 Dec 87 08:35:41 GMT References: <897@louie.udel.EDU> Sender: news@imagine.PAWL.RPI.EDU Reply-To: beowulf!lunge!jesup@steinmetz.UUCP Distribution: na Organization: RPI Public Access Workstation Lab - Troy, NY Lines: 32 In article <897@louie.udel.EDU> rminnich@udel.EDU (Ron Minnich) writes: > Problem is that, for example, if i do a DoIO, internet.device >eventually responds, when it is all done, with a ReplyMsg. Then >the DoIO returns. All subsequent DoIOs return immediately, i.e. >long before the ReplyMsg in the device. So, somehow a bit of state >(pun intended- though it may be more than one bit) gets set and >is not getting properly cleared somewhere else. The DoIOs always >return 0, so it is not as though there is an error occuring. Also, >internet.device registers the incoming io requests. But, the telnet >program performing the DoIO does not block until the ReplyMsg- DoIO >returns immediately (i.e. incorrectly) on the second and succeeding >operations. Aha! I'll assume you are just using DoIO, no WaitIO's (as in the previous message - I'd assumed you were using SendIO or BeginIO). Note that DoIO always tries Quick IO first, then normal IO if it fails. SendIO never uses QUICK, and BeginIO allows you to play. See the discussion Quick io in the RKM under IO. The device has certain responsibilites when it comes to clearing/whatever the quick bit, depending on how it is processed (quick or not). Note many devices support quick for only a few commands, the rest have to wait for completion. ( Essentially, this is what DoIO does: Set IOF_QUICK bit. Do a BeginIO check to see if quick bit still set, if so, return. else do a SendIO, then a WaitIO, then return. ) // Randell Jesup Lunge Software Development // Dedicated Amiga Programmer 13 Frear Ave, Troy, NY 12180 \\// lunge!jesup@beowulf.UUCP (518) 272-2942 \/ (uunet!steinmetz!beowulf!lunge!jesup)