Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!ames!ucbcad!ucbvax!decvax!decwrl!sun!imagen!atari!dyer From: dyer@atari.UUCP Newsgroups: comp.sys.atari.st Subject: Re: Rwabs question Message-ID: <550@atari.UUCP> Date: Tue, 3-Feb-87 12:16:03 EST Article-I.D.: atari.550 Posted: Tue Feb 3 12:16:03 1987 Date-Received: Thu, 5-Feb-87 04:37:37 EST References: <613@eneevax.UUCP> Distribution: world Organization: Atari Corp., Sunnyvale CA Lines: 38 in article <613@eneevax.UUCP>, iarocci@eneevax.UUCP (Bill Dorsey) says: > I wrote a program which intercepts the Rwabs call through the Rwabs > vector at 0x476 and noticed something really strange. It seems that > the operating system sometimes calls Rwabs with the buffer argument > set to zero. Does this mean that the operating system will load > sectors starting at address zero, writing over all the interrupt > vectors stored at these locations? If, as I suspect, it does not, > then what specifically does it do? In all the documentation I have > examined, I have found no mention of Rwabs doing anything special > under these circumstances. From the documentation: LONG Rwabs(rwflag, buf, count, recno, dev) WORD rwflag; LONG buf; WORD count; WORD recno; WORD dev; For floppies, if `buf' is NULL, then no I/O operation is performed, and the volume's media-change mode is set to `count'. (This kludge brought to you courtesy of the GEM desktop.) This can be used by applications (such as the desktop), typically to force a "Might have changed" media change mode on the floppy. Rwabs() will check for a media change on the next I/O operation. [DMA cannot occur to location $000000 on the ST since the first eight bytes are ROM.] -- -Landon Dyer, Atari Corp. {sun,lll-lcc,imagen}!atari!dyer The views expressed here do not not necessarily reflect those of Atari Corp. Segments are for worms.