Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!columbia!rutgers!ames!lll-tis!ptsfa!ihnp4!cbosgd!osu-eddie!bgsuvax!denbeste From: denbeste@bgsuvax.UUCP (William C. DenBesten) Newsgroups: comp.sys.apple Subject: Re: ProDOS patch (...) Message-ID: <1267@bgsuvax.UUCP> Date: Wed, 26-Aug-87 10:52:20 EDT Article-I.D.: bgsuvax.1267 Posted: Wed Aug 26 10:52:20 1987 Date-Received: Sat, 29-Aug-87 08:08:34 EDT References: <8708241100.aa03291@SMOKE.BRL.ARPA> Organization: Bowling Green State University B.G., Oh. Lines: 24 in article <8708241100.aa03291@SMOKE.BRL.ARPA>, mat6013@DMZRZU71.BITNET says: > > This weekend I took a detailed look at the ProDOS patcher program > posted 5/8/87 to find out the changes applied to the "PRODOS" system > file (I'm using version 1.2). Adding the "LDA $C08C,X" makes sense to > me, but *why* was "STA $C08n,X" changed to "LDA $C08n,X" (n= 0, 2, 4, > 6) ? These are for turning off the four windings of the stepper motor > which is responsible for the head seeking. So what's the difference > between a read and a write operation here ? This is because of a imperfection in the way that a STA works on the 6502s. When the STA is executed, the effective address is put on the address bus TWICE. The first time, the location is read. The second time, the location is written. This is most noticable when accessing the speaker. The flip-flop the drives the speaker toggles twice, and the speaker cone doesn't move, so no sound is generated. In terms of a stepper motor, I don't see that it makes any difference, but better safe than sorry. The end result is that it is better to access soft switches with a LDA rather than a STA.