Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!ucsd!ucbvax!pro-grouch.cts.com!rond From: rond@pro-grouch.cts.com (Ron Dippold) Newsgroups: comp.sys.apple2 Subject: Re: Timing problem Message-ID: <3380.apple.net2@pro-grouch> Date: 26 Jul 90 00:46:08 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 30 In-Reply-To: message from dat33228@uxa.cso.uiuc.edu Got to thinking about my comment re: your timing problem again... I had thought you wanted a continuous pulse, but then I reread it and realized you only want a one-shot... My suggestion would be to go to normal mode, do your thing, then return to whatever mode you were in. That way you can get an exactly 2 microsecond (well, 2.046 microsecond) timer. All you need is: lda ($e0),y ; y has zero, $e0 has $5r, $e1 has $c0 (annunciator 3) lda ($e2),y ; $e2 has $5e $5F^^^ , $e3 has $c0 if you don't want to get into any IIgs stuff. If you do, then phd ; save direct page pea $c000 ; make $c000 direct page pld lda $5F ; turn it on lda $5E ; turn it off pld ; restore old direct page I still think the best way to do it would be a one-shot timer, where you could turn off the annunciator to prime it, then turn it on for a 2 msec pulse. You wouldn't need to worry about what speed you were running at. UUCP: crash!pro-grouch!rond ARPA: crash!pro-grouch!rond@nosc.mil INET: rond@pro-grouch.cts.com