+----------------------------------------------+ | Warning! STAT applications can wipe memory! | +----------------------------------------------+ SigmaDAT EDIT bug, G/GX, rev K-P. Reported by EduCALC customer to Richard Nelson. HP, when asked, said they already knew about it, but weren't shouting it from the rooftops, for obvious reasons. This writeup is by Joe Horn, who likes shouting from rooftops. +-------------+ | DESCRIPTION | +-------------+ On an HP 48G or GX, version K through P, press: left-shift 5 (shows stat menu) DATA (the first softkey) 3 (magic number, but almost any non-array works) left-shift SigmaDAT (stores the 3 into SigmaDAT) right-shift 5 (shows the STAT application choose box) ENTER (starts the Single-Var Statistics application) EDIT (either the softkey or on the keyboard) --> Memory Clear +-------+ | CAUSE | +-------+ The EDIT key in the STAT applications throws the contents of SigmaDAT into the MatrixWriter without first performing an object type check. This is reasonable, since the creation of SigmaDAT from the applications *does* perform object type checking. They forgot that SigmaDAT can be created elsewhere first, however. When an object that is not an array (matrix) is thrown into the MatrixWriter, which only knows how to work with arrays, all hell breaks loose. Wanna see your HP48 on drugs? Perform the routine described above, but instead of the "magic number" 3, use a list like { 0 }. The MatrixWriter will launch, but filled with garbage values. Press right-shift down-arrow, then right-shift right-arrow. Look at the cell coordinates on the command line! It would appear that we are editing a complex matrix that's 979,058 by 480,114! Yikes; that would require 7.52 Terabytes of RAM! Pressing ON twice to exit reveals a pile of junk on the stack. Bad news. +------------+ | WORKAROUND | +------------+ The best workaround is never to store non-arrays into SigmaDAT, which is a silly thing to do anyway. But since software might do so, a sufficient workaround is to visually inspect SigmaDAT before pressing EDIT, and if it's not an array, then press MATRIX (right-shift ENTER) instead of EDIT, or simply to type the matrix directly from the keyboard and press ENTER. The whole problem is exacerbated by the HP 48G Series User's Guide, which starts Chapter 21 (Statistics and Data Analysis) like this: Entering Statistical Data Data can be accumulated on the HP 48 in two different kinds of objects: arrays and lists. In general, lists are best-suited for one-variable statistics, arrays for multi-variable statistics. This would seem to encourage storing lists into SigmaDAT. Although the manual does mention next that SigmaDAT only contains arrays, it then goes on to say: To enter statistical data as a list: 1. Press left-shift { } to begin the list. 2. Type each datum followed by [SPC]. Press [ENTER] after you've typed the final datum. Although correct, it is very misleading. Many beginners have carefully followed these instructions, successfully stored the result into SigmaDAT, then gone to the next paragraph which says to press right-shift STAT and then EDIT. Youch. -jkh-