home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sys.apple2
- Path: sparky!uunet!elroy.jpl.nasa.gov!nntp-server.caltech.edu!toddpw
- From: toddpw@cco.caltech.edu (Todd P. Whitesel)
- Subject: Re: System Bad: C000005 (anyone know?)
- Message-ID: <1992Sep14.041304.7483@cco.caltech.edu>
- Sender: news@cco.caltech.edu
- Nntp-Posting-Host: punisher
- Organization: California Institute of Technology, Pasadena
- References: <1992Sep10.032455.4825@wl.com> <1992Sep13.085028.20950@pro-palmtree.socal.com> <1992Sep13.210815.27707@news.iastate.edu>
- Date: Mon, 14 Sep 1992 04:13:04 GMT
- Lines: 53
-
- irsman@iastate.edu (Ian Schmidt) writes:
-
- >This is becuase the Transwarp doesn't actually speed things up ;-) (notice
- >that NTGS's effective processor speed gauge shows TWGS's as 2.6 mhz, while
- >Zips register at much more reasonable values...Todd Whitesel could probably
- >explain exactly why this is so).
-
- Well, not exactly, but it's not really necessary in this case. The way most
- accelerators deal with CPU speed dependent code (like Disk ][ access, system 5
- appletalk timeout loops, //e-style sound output, and self-tests) is by trying
- to detect when the program is doing something speed dependent and temporarily
- drop back to normal speed so the program doesn't notice anything wrong. This is
- a time-honored technique that dates back to the days of the original SpeeDemon
- card (I may be wrong, but it's the oldest one I can think of). The original
- TransWarp card from AE also used this technique and nobody has abandoned it yet
- since it is simple and works well.
-
- How it works: the accelerator has special logic on it that checks to see if the
- CPU tries to access a hardware location (like $C030 for //e 1-bit sound, or
- $C070 for the paddle/joystick input) and when it does, it flips a little timer
- that causes the accelerator to slow down until the timer runs out -- if one of
- those locations is accessed again before it runs out, then the timer is reset
- again, so the accelerator will be off until a full timer period after the last
- access. The TWGS has a lot of these hardwired into the card, and you can't turn
- them off -- 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).
-
- The Zip offers a rather nice range of options in this area: Joystick, Speaker,
- Horizontal Video Counter ($C02F), and IRQ (AppleTalk Delay) can all be set
- independently to start 5 millisecond timers, and each of the slots can be set
- to start 50 millisecond timers. The Zip's controller ASIC will insist that any
- slot the IIgs recognizes as containing a Disk ][ card be set, but you can set
- the other slots yourself.
-
- My guess is that the TWGS has a timer start whenever the sound chip is accessed
- and I know the Zip does not. That explains why the Zip documentation tells you
- that test C will always fail if you have the Zip enabled.
-
- What REALLY annoys me is people who tell somebody "just remove the Zip and put
- the old CPU back in and try the self-test again". That is totally unnecessary,
- and I've seen people saying it on Genie twice already in the past week. All you
- have to do is use the Zip control software or the Zippy P8 program (neat app,
- BTW) to "disable" the accelerator and then try the self test. When you are
- done, "enable" the accelerator the same way and keep going. You do not have to
- turn the computer off, and if you have the ZipINIT installed then it may take
- care of enabling the accelator for you when you reboot after the self test.
-
- If the Zip is disabled and the self-test still fails, then you have a real
- problem and ONLY THEN you should physically remove the Zip and try it again.
-
- Todd Whitesel
- toddpw @ cco.caltech.edu
-