home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!sun-barr!ames!data.nas.nasa.gov!taligent!apple!mumbo.apple.com!gallant.apple.com!city-lights.apple.com!user
- From: mattd@apple.com (Matt Deatherage)
- Newsgroups: comp.sys.apple2
- Subject: Accelerator stuff
- Message-ID: <mattd-140992122917@city-lights.apple.com>
- Date: 14 Sep 92 19:32:32 GMT
- References: <1992Sep10.032455.4825@wl.com> <1992Sep13.085028.20950@pro-palmtree.socal.com> <1992Sep13.210815.27707@news.iastate.edu> <1992Sep14.041304.7483@cco.caltech.edu>
- Sender: news@gallant.apple.com
- Followup-To: comp.sys.apple2
- Organization: Developer Technical Support, Apple Computer, Inc.
- Lines: 46
-
- In article <1992Sep14.041304.7483@cco.caltech.edu>, toddpw@cco.caltech.edu
- (Todd P. Whitesel) wrote:
- >
- > there is the AppleTalk/IRQ option but I am not sure exactly what
- > all that does, whether it uses a timer or if it just disables the accelerator
- > anytime interrupts are being processed (bleck).
-
- Blech is the incorrect word.
-
- The Zip's "timers-only" system means you can't be sure your
- timing-sensitive
- code works correctly unless you hit a softswitch that triggers a timer in
- the code at the appropriate intervals, or unless you explicitly turn off
- the Zip. Either way requires modifying existing timing-sensitive code, and
- this was not a good idea.
-
- The TWGS's "AppleTalk/IRQ" option slows down to Control Panel speed (2.5 or
- 1 MHz) whenever interrupts are disabled. This has the advantage of making
- _all_ timing sensitive code work as advertised, because anyone writing
- timing-sensitive code knew they had to disable interrupts already.
-
- It might slow down somewhat, but it's a darn sight better than Zip's
- "AppleTalk delay" which slows the accelerator down about 30% of the time
- (5 ms for every interrupt, incluing the 60 Hz VBL interrupt, which means
- a minimum of 300 ms slowdown every second). It also wouldn't have forced
- Apple to waste time rewriting the internal LocalTalk code to be speed
- dependent at 1 MHz instead of 2.5 MHz, requiring more patch memory on ROM
- 3 and time that could have been spent on more productive things.
-
- (And no, ZipTalk alone or the code I wrote that did the same thing and
- sent to Zip a long time ago wouldn't have fixed it -- LocalTalk has to
- send a "clear to send" packet as soon as it sees a "ready to send"
- packet, and that's all done in the interrupt handler without dispatching
- to the LAPRead or LAPWrite commands -- and patching out the interrupt
- vector to slow down before doing it is not supportable or feasible due
- to extreme AppleTalk timing constraints.)
-
- > Todd Whitesel
- > toddpw @ cco.caltech.edu
-
- ============================================================================
- Matt Deatherage, Developer Support Center, Apple Computer, Inc.
- Personal mail only -- please POST technical questions, questions about
- Apple and its policies, where to find documents and related inquiries.
- The opinions I express don't represent Apple, which makes us both happy.
- ============================================================================
-