[comp.sys.apple] GS clock speed weirdness

AWCTTYPA@UIAMVS.BITNET ("David A. Lyons") (11/20/88)

>Date:         Fri, 18 Nov 88 03:36:46 GMT
>From:         Doug Gwyn <haven!adm!smoke!gwyn@AMES.ARC.NASA.GOV>
>Subject:      Re: Bad Clock/Crystal in GS

>In article <8811162247.aa01906@SMOKE.BRL.MIL> JCKASPER@MTUS5.BITNET writes:
>:for System Speed that says either FAST or NORMAL.  Well... regardless
>:of what my GS is set to it runs according to a SIN wave.  A sin wave with
>:an amplitude of 1/10 Mhz to 10 Mhz and a period (duration of cycle) of
>:2-5 minutes.  Needless to say... this is rather anoying.  Does anybody
>:have any suggestions as to what might be wrong?
>Yes -- you need to find a better drug dealer.

I haven't received JCKASPER's original note, but could this have
something to do with the difference between reading from ROM and
reading from RAM?  As I recall, the clock speed is 2.8 MHz, but it's
effectively slowed down by wait states (?) to 2.5 MHz if you're
reading from (fast) RAM, since sometimes the RAM is already busy
being refreshed when you want to read it.

Anyway, if the sampling period being used to measure the frequency
was relatively short, and the computer was doing something
repetitive where it spent part of the time reading from ROM and part
reading from RAM, I can see how "interference patterns" might be
generated that would make it look like the frequency was varying in
a repetitive pattern, with an amplitude of less than 3/10 MHz.

Sort of like watching a picture of a TV picture _on_ a TV and
getting slow interference from the not-quite-exactly-60Hz scan
rates.

I need more info to figure out why you're measuring about 2.5 MHz
even when the control panel is set to Normal (1 MHz).  Note that the
control panel only determines the default value for a $C0xx location
that actually controls the speed.  So:

  o  Software is free to override the speed setting;

  o  The ROM in face _does_ override the speed setting and switch
     into high gear _temporarily_; but if you're measuring the
     hardware clock and spending all or almost all of the time _in_
     some ROM routine (like the blinking-checkerboard get-a-key
     routine, the machine may be in Fast mode most or all of the
     time).

  o  There is a small but nonzero chance when NOT running
     GS-specific event-driven software that when you hit Apple-Ctrl-
     ESC you will interrupt the system at a very unlucky spot: a
     ROM routine may have preserved the _old_ system speed on the
     stack so it can put the speed back where it was.  If you change
     the speed, exit the control panel, and that ROM routine takes
     control back, finished what it was doing, and then sets the
     system speed back to the value it had when the routine was
     entered, your control panel setting seems to have had no
     effect.

     (In this case, your setting is still stored in the battery-RAM
     and will take effect if you reboot or hit RESET, for example.)

Or, _possibly_, you need to get a better drug dealer.  :-)

--David A. Lyons              bitnet: awcttypa@uiamvs
  DAL Systems                 CompuServe:  72177,3233
  P.O. Box 287                GEnie mail:    D.LYONS2
  North Liberty, IA 52317     AppleLinkPE: Dave Lyons