NewtInfo 0.9§8
(C)1994 Innovative Computer Solutions, All Rights Reserved
Written by Dan Rowley, Documentation/Graphics by Tom Collins

NOTE:  This is a beta version of NewtInfo.  It does not, to the best of our knowledge, corrupt any information when run.  There is always a chance that it could cause your Newton to crash or behave improperly.  If you do find a bug with NewtInfo, please report it to us so we can fix it (see Bugs section for more info).

< Overview >
	NewtInfo is a system profiler for the Newton MessagePad.  It can display, print, fax, e-mail or serially transmit a detailed report of soups, packages, memory usage, add-on prefs and formulas, power-off handlers, idlers, find-enabled packages, and intelligent assistance packages.  Users can find out whatÕs taking up so much space on their systems, what some hot new program patches, or why software is suddenly running slower.  Developers can have customers use it when calling in with technical support questions.

< Installation Notes >
	Install NewtInfo as you would any other package (with the Connection Kit or some other utility).  NewtInfo will work if installed on a PCMCIA card (no Grip ÔO Death).  Do not attempt to remove the card while NewtInfo is running.  NewtInfo must be available while printing, but does not have to be running.

< Usage >
	When you launch NewtInfo, you are presented with a list of reports to run.  Select the reports to generate, and tap on the Start button.  NewtInfo will then build the reports (which can take some time).  Once complete, the reports will appear on a roll similar to the Prefs and Formulas rolls.  You can tap on the up and down arrows to scroll from one report to another, or tap on the overview button to bring up a list of reports.  Tap on a title in the list to go to that report.

	Generating the reports requires that you have enough free heap memory.  Generating all of the reports on an average Newton (MP100 with 2 meg card) requires at least 20k of heap.  If you are short on heap space, generate one or two sections at a time.  The ÒHeap UsageÓ section requires the most heap to run, followed by the soup stats sections.

	While viewing the report, you can click on the routing button (envelope icon) to print, fax,or NewtonMail the report.  You can also export the report to your Notes, or send it through the serial port at 9600 baud (N81) using your Connection Kit cable.  (If anyone wants to share the pinouts for the Mac and PC cables, e-mail them to us and weÕll include them in the next release.)  Since NewtInfo separates lines with a single carriage return, be sure to have your terminal program add linefeeds to carriage returns.

	Note that NewtInfo must be present when you print or fax the report from your OutBox (e.g., you cannot remove a card with NewtInfo to put in your PCMCIA FaxModem to fax).  Also note that routing a NewtInfo report will require additional heap space.  You may want to quit NewtInfo before sending the report from your OutBox.  If youÕre low on heap memory, you may want to generate the report in two parts.

[ List General Newton Statistics ]
	Provides info about the version of NewtInfo, the type of MessagePad (Classic, 100, 110), Language/Locale settings, ROM version, and information about stores (number, names, locked/unlocked, size, space used, space available).  A ÒstoreÓ refers to a storage device (e.g., internal memory, Flash RAM card, etc.).

[ Calculate Soup Stats ]
	What is a soup you may ask?  Well, the Newton stores information in ÒsoupsÓ instead of files.  A soup is made up of multiple entries, similar to a database file being made up of multiple records.

		This report provides names of all soups on both stores with the number of non-index entries, and total memory used (including indices).  Soups listed as <none> do not have any entries or indices on that store.  Because of indices, it is possible to have a soup with zero entries that still takes up space.  Also, because of rounding, it is possible for entries to Ònot add upÓ (e.g., if 0.1k + 0.0k = 0.2k appears, it could be 0.140 + 0.030 = 0.170).  NewtInfo also totals memory used by soups on each store in addition to a grand total.

[ More Soup Details ]
	This section provides some more details on two built-in soups.  Since many programs store information in the System and Directory Soups, this report lists  the components of those soups with their storage usage.

	It also attempts to list ÒorphanÓ soups -- soups which may have been left behind when you removed a package.  This section may list soups which arenÕt actually orphans.  The orphan soup section lists soups with names that NewtInfo canÕt match up with an installed (or NewtCased) package.  If a soup doesnÕt appear in this list, it probably belongs on your Newton.  Soups in the list may or may not be in use.  In other words, just because a soup appears in the list doesnÕt mean you should delete it.

[ List Packages ]
	Packages are Newton programs.  Autoparts are Newton programs that run once (when installed and at every reboot) and donÕt appear in the Extras Drawer.  All packages take up storage space on your Newton.  This report lists the installed packages (including autoparts) and storage used by each.

[ Calculate Package Heap Usage ]
	Packages also use Òheap memoryÓ.  The heap is a section of the NewtonÕs internal memory used by the operating system and packages during program execution.  All packages take up heap space, some more than others.  The Òout of memory, you may need to rebootÓÊerror occurs when you run out of heap.

	This report lists the estimated heap memory used by closed installed packages.  NewtInfo cannot calculate the heap used by open (i.e., running) packages.  Because this operation is particularly invasive (it involves temporarily removing and installing packages), NewtInfo will ask you twice if you are really sure you want to run it.  This operation requires more heap heap space than the others and may, in rare instances, cause your Newton to crash.  If your Newton does crash while generating this section, reboot it immediately -- do not attempt to continue to use your Newton without rebooting.  A side effect of this operation is that packages may appear in a different order in the Extras Drawer.  Also note that as of this this beta version, this report will not work if you have ScrollEx installed.

[ List NewtCased Packages ]
	This report lists all packages archived with NewtCase.  See <Our Other Newton Applications> for more information on NewtCase.  The numbers listed in parentheses are the storage used by the archived package, and the estimated heap space that the package uses when installed.  The report also tells you how much heap space you are saving by keeping the packages archived.

[ List Add-on Prefs/Formulas ]
	This report lists new or modified entries in your Preferences and Formulas rolls.

[ List PowerOffHandlers ]
	This report lists any programs that will be notified when the Newton powers down.  If you have a Newton that wonÕt go to sleep, its insomnia could be caused by a package listed in this section.

	Whenever you hit the switch to turn your Newton off, the operating system first notifies all packages with PowerOffHandlers to prepare for the shutdown.  At this time, any package can abort the shutdown by refusing the request.

[ List Idlers ]
	This report lists any idling programs, their frequency and their owners.  An idling program performs some function on a periodic basis.  For example, every two minutes a program is called to update the hands on the clock in the status bar.  Our program SleepAid has an idler that checks for the presence of AC power and adjusts the sleep time accordingly.  NewtInfo might not be able to figure out the owners of certain idlers.  It will only report the default idle frequency, which may or may not have been changed by the program.

[ List Find-enabled Applications ]
	This report lists programs that are checked when you perform a ÒFind AllÓ.  If your Newton crashes when you perform finds, this would be a good place to look for the culprit.

[ List Intelligent Assistant Info ]
	This report lists built-in and add-on verbs that the Intelligent Assistant understands.  The first section lists verbs that are handled directly by the Newton operating system.  The second section lists user installed programs that handle additional verbs.  In some instances NewtInfo might not be able to find the owner of a particular verb.

< Registration Information >
	This application is SHAREWARE.  If you decide to keep it, please register by sending US$15.00 to Innovative Computer Solutions; ATTN: Tom Collins; 1075 North Miller Road, #142; Scottsdale, Arizona USA 85257-4612.  Please include your name, the name of this utility (NewtInfo 0.9b8), type(s) of MessagePad(s) owned, address (postal) and preferred e-mail address so we can contact you about updates and our other products.  You can also register NewtInfo on CompuServe.  GO SWREG and search for apps with the keyword ÒICSÓ to see all of our programs.  NewtInfo is program #3932.

	PLEASE BE HONEST and register this software if you use it -- we canÕt continue to write cool Newton apps if we donÕt get any support.  Look at it this way -- if NewtInfo saves you an hour tracking down a problem with your Newton, how much is it worth?  Even if you donÕt register it, e-mail us a copy of your report when you try it out so we can get a feel for what other people have installed on their Newtons.

< Bugs, Questions, Comments, Suggestions... >
	If NewtInfo crashes, please write down the error code and e-mail a bug report to Dan.  Please be sure to write down the entire error message, all of the information is important.  If there are any errors in the documentation (spelling, grammatical, technical) or you have some input on how to make a section clearer, send e-mail to Tom.

	Also, if you have any ideas for a report or routing option youÕd like to see, let us know and weÕll try to add it to the next version.  If you want us to add beaming, youÕll need to come up with a very convincing arguement as to how you would use it.

	Send e-mail to the author, Dan Rowley, at ics@amug.org or 73563,2343 on CompuServe.  You can reach Tom Collins at ics@indirect.com or 75460,2121 on CompuServe.  We want to develop Newton applications to fit your needs.  Give us feedback, let us know if weÕre doing it right.  WeÕre here for you.

< Our Other Newton Applications >
	Check out our popular Newton utilities, NewtCase and SleepAid.  They were voted numbers three and five (respectively) in the GNUT Top 10 Shareware List of September 1994.  You can find our software on CompuServe (GO NEWTON), AOL (PDA and NEWTON), AppleLink, eWorld, and the Internet (newton.uiowa.edu, ftp.amug.org, etc.).  Internet users should check out our World Wide Web page at http://www.indirect.com/ics/newton/ and FTP files (always the latest versions) at ftp://ftp.indirect.com/pub/ics/.

< Revision History >
	0.9b8 - Really fixed that -48406 error (knock on wood!) in addition to some other bugs.  Added ÒMore soup infoÓ, export to Notes and dump to serial.
	0.9b3 to 0.9b7 - Special thanks to our beta testers who helped us through these releases.
	0.9b2 - Fixed -48406 error on Intelligent Assistant section.  Added heap usage section.  Added e-mail to routing slip.
	0.9b - Initial public release.

< Legal Mumbo Jumbo >
	Newton, MessagePad, Connection Kit and Apple are registered trademarks of Apple Computer, Inc.  NewtInfo is a trademark of Innovative Computer Solutions.

	You canÕt sell NewtInfo, but you can charge a nominal fee for connect time or media (not to exceed $5).  Contact the authors if you plan to include it in some sort of shareware/freeware collection or bundle it with a commercial product.

	In using this software, you understand and agree that this software is provided Òas isÓ without warranty of any kind.  The authors do not make any warranties, either expressed or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to this software.

	In no event shall the authors be liable for any consequential, incidental, or special damages whatsoever (including, without limitation, damages for loss of critical data, loss of profits, interruption of business and the like) arising out of the use or inability to use this software.

	Have a nice day.  ;-)

Innovative Computer Solutions / (602) 970-1032
1075 N. Miller Rd. #142 / Scottsdale, Arizona USA 85257
Dan Rowley/ics@amug.org/CIS: 73563,2343/eWorld&NewtonMail: DRowley
Tom Collins/ics@indirect.com/CIS: 75460,2121/eWorld&NewtonMail: Innovative