On Mon, Jan 14, 2002 at 05:16:25PM +0100, Wolfgang Lenerz wrote: > On 13 Jan 2002, at 19:22, Richard Zidlicky wrote: > > > On Fri, Jan 11, 2002 at 06:45:05AM +0100, Thierry Godefroy wrote: > > > > > NOT AT ALL !!! This is perfectly documented: the documentation for the > > > IOSS (see the QDOS/SMS reference manual) DOES says that A0 must stay > > > unchanged or at least be restored if the device driver did not recognize > > > its own device in the name during an open call, and it also says that > > > this is because A0 is reused after by the other device drivers. > Actually, I'm not sure about that. I've checked witht the reference > manual, and it does NOT say that you should preserve A0 if (in a > simple device driver) you fail to decode the device name (see QRM, > section 6.4). > However, it is true that this is the way this is being handled by all > drivers I know of until now. I haven't decompiled the source code to > see how the IOSS handles this and whether or not is restitutes A0 > upon an unsuccesful call.
every QDOS version I have seen does *not* restore A0. That doesn't mean that there is an obligation for QDOS implementors to do it that way - save/restore more registers than was (un)documented in the original QDOS docs was always considered the normal freedom of the implementor. Bye Richard
