Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VLM

6 views
Skip to first unread message

rs1n

unread,
Nov 2, 2009, 10:41:01 PM11/2/09
to
Does anyone know what VLM does? There does not seem to be any info on
this entry in either editions of the SysRPL guides. I cannot seem to
make out much of the ROM dis-assembly since most of it consists of
unsupported entries.

John H Meyers

unread,
Nov 3, 2009, 1:48:30 AM11/3/09
to
On Mon, 02 Nov 2009 21:41:01 -0600, rs1n wrote:

> Does anyone know what VLM does?

Examine "StartupProc"

When the highest level "System Outer Loop"
can not handle an error in its own "SysErrorTrap"
it is assumed that there is Very Low Memory (VLM),
a/k/a "Out of Memory" (#135h DOERR)
which instigates a procedure of desperation,
to try to free some.

See section "28.1 System UI" of ENT_SRT.DOC
http://www.hpcalc.org/details.php?id=1782
http://www.hpcalc.org/hp48/programming/entries/ent_srt.zip

The original HP48 Users Guides might illustrate
the steps that VLM undertakes, asking questions
about what you might be willing to purge
(stack, variables, etc.) until enough memory is found
to resume operation.

[r->] [OFF]

John H Meyers

unread,
Nov 3, 2009, 2:13:03 AM11/3/09
to
If you would like to see VLM in action on HP49/50 series
(it might be a good idea to back up your memory first :)

Type: HOME 256 ATTACH
Then type: MEM 100 - MAKESTR MEM

The actual number of bytes of free memory
(somewhere in the vicinity of 100 or less)
will now be on the stack.

Press ENTER (DUP) repeatedly; pretty soon you will see VLM,
with "Out of Memory" displayed on screen, and questions
about purging things, with Yes/No responses ("A" or "F").

You can press ON/CANCEL at any time,
to see whether you have freed enough memory
to resume normal operation.

If you free the stack (which contains a string using up
nearly all of free memory), then you should be able to continue,
but if anything goes wrong, just restore your memory back up :)

[r->] [OFF]

John H Meyers

unread,
Nov 3, 2009, 2:32:51 AM11/3/09
to
[about causing an "Out of Memory" to see VLM in action]

Since the method previously posted
uses a large string on the stack to use up most of free memory,
a warmstart (ON+C) is another way to recover.

One reason why VLM may not be mentioned in most SysRPL guides
is that it is not something which has any use
to be called from any program, but Sorcerers' Apprentices,
like some cats, are always looking for some trouble to get into :)

<URL: http://en.wikipedia.org/wiki/The_Sorcerer's_Apprentice >

[r->] [OFF]

rs1n

unread,
Nov 3, 2009, 12:11:42 PM11/3/09
to
I see now. Thank you for the informative posts!
0 new messages