Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!zaphod.mps.ohio-state.edu!samsung!uunet!cbmvax!valentin From: valentin@cbmvax.commodore.com (Valentin Pepelea) Newsgroups: comp.sys.amiga.tech Subject: Re: Bug in DoIO / SendIO ?? Message-ID: <10280@cbmvax.commodore.com> Date: 20 Mar 90 22:51:50 GMT References: <9003160832.AA23378@jade.berkeley.edu> Reply-To: valentin@cbmvax (Valentin Pepelea) Organization: Commodore, West Chester, PA Lines: 29 In article <9003160832.AA23378@jade.berkeley.edu> BEYSSAC@FRESE51.BITNET writes: > > There seems to be a bug in the KickStart 1.2 DoIO/SendIO routines. >On entry they clear the IO_FLAGS fields of the IoRequest structure. The io_Flags field is reserved. The four lower bits are reserved to Exec's own use, and the fours upper bits are reserved for the individual device driver's use. > I discovered this using the trackdisk.device in raw mode with the >IOTDF_INDEXSYNC flag. It didn't work ! I wrote a little patch for DoIO >and SendIO, and now it works as it should. There is no problem with the >other parts of the system. Indeed, this appears to be a bug, but not where you think it is! In this case, you are supposed to be calling BeginIO() directly rather than going indirectly thorugh SendIO() or DoIO(). To use BeginIO() you must link with amiga.lib. So this is a documentation bug for the trackdisk.device. The documentation of the audio.device mentions explicitly that BeginIO() must be used. Thank you for pointing this bug out. Valentin -- The Goddess of democracy? "The tyrants Name: Valentin Pepelea may distroy a statue, but they cannot Phone: (215) 431-9327 kill a god." UseNet: cbmvax!valentin@uunet.uu.net - Ancient Chinese Proverb Claimer: I not Commodore spokesman be