home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sys.hp48
- Path: sparky!uunet!mcsun!news.funet.fi!funic!nntp.hut.fi!nntp.hut.fi!mheiskan
- From: mheiskan@hut.fi (Mika Heiskanen)
- Subject: Re: ParOuterLoop'news
- In-Reply-To: mheiskan@hut.fi's message of 18 Aug 92 17:09:28
- Message-ID: <MHEISKAN.92Aug19015651@vipunen.hut.fi>
- Sender: usenet@nntp.hut.fi (Usenet pseudouser id)
- Nntp-Posting-Host: vipunen.hut.fi
- Reply-To: mheiskan@.vipunen.hut.fi
- Organization: Helsinki University of Technology - Finland
- References: <1992Aug17.113027.201@cmu.unige.ch> <MHEISKAN.92Aug18170928@vipunen.hut.fi>
- Date: 19 Aug 92 01:56:51
- Lines: 33
-
- In article <MHEISKAN.92Aug18170928@vipunen.hut.fi> mheiskan@hut.fi (Mika Heiskanen) writes:
-
- > > So, the moral is if you can't do a LASTSTACK after the program has run
- > > (the calc is stuck), you probably put bad arguments in the stack.
- >
- > Ah, but you CAN use the supported SAVESTACK command, which collects the
- > stack (duplicated) to a list and BINDs it to SAVELAM (supported).
- > Then use undo (supported) to get the list exploded. NOTE: undo doesn't ABND
- > since there can be new temporary environments created after SAVESTACK.
- >
- > If I recall right, I couldn't find any references in memory to SAVESTACK
- > command, but unfortunately I don't have my calc with me now. I'll do a seek
- > command this evening and make a followup about it. Why? To see if SAVESTACK
- > is used/not used internally and thus not safe/safe to use.
-
- Seems that I again wrote something out of the context, and even worse,
- bullshit.
-
- Anyway, the reason LASTSTACK may crash after a program may be because
- whatever you do at user level, like executing programs, causes SAVESTACK.
- SAVESTACK CACHEs the stack to SAVELAM without dropping the arguments.
- Thus, if you have one too many ABND in your program, LASTSTACK will try to
- undo (Similar to DUMP) SAVELAM, which should result in a crash. The reason
- for this is that SAVELAM has a count without # prolog. Since a normal
- entry in a lam usually has a prolog ~ 2000h, LASTSTACK tries to undo ~2000h
- nonexistant LAMs. This isn't very healthy. :)
-
- Also temporary environment seems to be marked to when you execute
- something. Thus too few ABNDs might not be a problem, but I wouldn't bet on
- it.
-
- --
- --> mheiskan@vipunen.hut.fi
-