billw@hpcvra.CV.HP.COM (William C Wickes) (08/02/90)
Here's a candidate for "most obscure way to use up memory on the HP 48SX." When a program executes DOERR with a string argument, the string and hence the program too if the string is embedded in the program are referenced for the sake of the ERRM command. Thus if you purge the program, the memory used by the program is not reclaimed until the ERRM reference is updated to a new string. If the string is in a port, you will get the Object In Use error if you try to purge the library or backup object containing the string. A system halt prior to a PURGE will not help unless the object is in port 1 or port 2 (it will reclaim memory held by a successfully purged but still referenced object). For port 0 objects, the only way to break the reference is to execute DOERR again with a new string.