                    CPUSpeed Documentation - Version 1.20

This program is ShareWare.  Go ahead and try it out, but if you want to continue using it, you need to pay me for it.  For complete details, see the Standard Plea and Legal Absurdities sections near the end of this document.

Synopsis & Description
----------------------
This program tells you approximately how fast your computer is running, in terms of megahertz.  It gives you a "CPU" speed, which will be close to the rated speed of your computer, and an average "system" speed, which is a general indication of how fast the computer will seem to be to a program.  See the "Problems & TechStuff" section for why these two numbers are different.

Usage
-----
Just run this program from any program launcher.  If you have the Orca shell or some other shell that can run "EXE" files, you can change the filetype of the CPUSpeed program to EXE so it will work better with the shell.  Using Orca/APW, the command would be "filetype CPUSpeed s16".  If, for some bizzare reason, you want to install this program as a utility under Orca/APW, it is restartable.

Problems & TechStuff
--------------------
The routine which generates the CPU speed works by essentially turning off everything taking place in the background while it's checking the speed.  While things are only off for about 1/60th of a second at a time, very time-critical things such as AppleTalk may have problems.  For this reason, the CPU speed routine is only called when the system speed varies by more than 1 MHz.  This  will _usually_ only happen when the CPU speed has actually changed.

The CPU and system speed are different because several things take place in the background while programs are running.  There are too many possible things to go into, but they include AppleTalk, screen blankers such as UltraBlank (shameless plug), and anything else that needs to be handled on a regular basis.

The average system speed is computed by taking the average of the last 60 "instantaneous" system speed values, which are kept in a circular buffer.  Every time the speed changes by more than 1 MHz, this buffer is cleared so that the new system speed will appear immediately.  Smaller changes will take some time to show up in the average, though, since it takes time for the new numbers to replace the old (at one MHz, several seconds).

The actual numbers that this program reports are, as far as I can tell, correct.  I have no means of determining the exact speed that my computer is running, so I've 'tweaked' the numbers to arrive at what should be close, if not exactly right.  This program has been tested at 1.024 and 2.8 MHz, and a "7" (actually 6.25) MHz TransWarp GS.  Let me know if the numbers are way off at other speeds.  Remember though, that the reported CPU speed will be somewhat slower than the actual speed of the chip.

This program should fairly accurately report the speed of the computer up to slightly more than 19.6 MHz, after which the program will cease giving meaningful numbers.

Standard Plea
-------------
This program is ShareWare, so if you find yourself using it, please help me out by paying something for it, so I can justify spending the time to update this and write other nifty pieces of software.  People who send me at least $2 (US) per computer, along with their vital information (Name, Address, # of computers, America Online screen name [if applicable], any other Internet-accessable names, etc.), and refer to "CPUSpeed Version 1.20" will be assigned a registration number and will be entitled to receive future ShareWare versions of this program.  Unless you include money to cover shipping, I will only send updates by e-mail.

If you enjoyed this software, have suggestions for enhancements or improvements, want to report bugs, or send piles of money, my address is:
     Robert S. Claney
     2370-E Shady Oaks Rd
     Marshalltown, IA  50158-9575

I can also be reached at the following locations:
     America Online:  BobClaney
     Internet:        bobclaney@aol.com
                      txa84@isuvax.iastate.edu  (won't be checked very often
                      claney@iastate.edu         this summer)

Version History
---------------
Version 1.20
Make program run cleaner when launched as S16 (while still working as EXE).  Enlarge the history buffer, so the system speed will be more stable.

Version 1.15
Change the way the program decides to "recalibrate" the CPU speed, to attempt to keep the system loading down.  Add the closing plug.  Shrink system speed history buffer, to keep size down, and make the system speed more responsive.

Version 1.11
Tweak the timing control for the CPU speed, so it's accurate at higher speeds.

Version 1.10
Change speed calibration to try to take into account the amount of time spent in the timing routines running at 1.024 MHz (bacause of accesses to slow RAM).  Add the onscreen docs.

Version 1.01
Add CPU speed routine, to (attempt to) indicate the processor's actual speed irrespective of system loading.

Version 1.00
First version.  Attempt to calibrate number to documented speed (1.024/2.8MHz) when there are no background tasks.

Legal Absurdities
-----------------
This document and the accomanying software are Copyright 1992 by Robert S. Claney.

Non-registered users are granted a limited license to try out this software to see whether it is useful to them.  Continued usage requires registering this software by following the instructions in the "Standard Plea" section.  In any case, this software may only be used for non-commercial purposes on a single machine only, unless specifically authorized in writing by me.

The accompanying software may be distributed as long as the following conditions are met:  This documentation (CPUSpeed.Docs) must accompany the program (CPUSpeed). Neither the documentation nor the program is modified in any way, other than compression by ShrinkIt or some other widely available Apple compression program.  No charge is made for it, other than minimal copying and media charges, or normal network charges, if online.  It is not incorporated into or with any other software, without my written permission.

CPUSpeed and UltraBlank are trademarks of Robert S. Claney.

Apple and AppleTalk are registered trademarks, and Finder is a trademark, of Apple Computer, Inc.

Orca is a trademark of The Byte Works, Inc.

Any other names are trademarks or registered trademarks of their respective companies.
