[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: Sumbling around in Stack



Reply to note from Steve Webber  Mon, 2
Jan 2006 12:06:34 -0800 (PST)

> I'm using "Stack " & 2 or 3 minor variants (In looking
> for new Stack avenues to study on cmd saving, loading, etc. I
> inadvertently toss away my accumulating new cmds, restore
> My.stk's default zero balance and toss myself back to the "You
> stupid, ignorant, s.o.b." place. (Only mentally, not
> literally.)

Steady on, Steve! This is easy. There are two steps to saving and
restoring the Stack. STACK saves the Stack data to disk
(as MY.STK). That's Step 1, which you should perform just before
you quit XyWrite.

Step 2 is to restore the Stack upon reloading XyWrite. The logical
place to do this is in STARTUP.INT. There should be a line in
STARTUP.INT that has the phrase "stack.int" (without quotes). It
may look like this ("JM" and "Q2" stand for 3-byte functions,
created with PFUN JM and PFUN Q2, respectively):

JM 2.stack.intQ2 ;*;
®SV50,Rc:\xy4\my.stk¯

That's the command that initializes the Stack. Note well that,
immediately after initialization, the Stack contains NO commands.
To reload the commands saved from the previous session, you need to
issue an additional instruction, which in eXPanded view looks like
this ("<" and ">" stand for Ascii-174 and -175 guillemets):

JM 2.stackauxQ2 ;*;

You will, of course, need to edit the path "c:\xy" to conform to the
actual location of MY.STK. Here are the two lines for STARTUP.INT
in working XPL (issue DECODE to decode them):

XPLeNCODE v2.0
b-gin [UNTITLED]
;*;[cr|lf][JM_]2.stack.int[Q2_];*;[cr|lf]{<}SV50,Rc:\xy4\my.s
tk{>}[JM_]2.stackaux[Q2_];*;[cr|lf];*;[cr|lf]
-nd
XPLeNCODE

As for inadvertently tossing your accumulated commands, just
remember that STACK _overwrites_ any existing file MY.STK
every time you issue that command. Therefore, do not issue
STACK until you've successfully restored the previously-
saved Stack to memory, either via STARTUP.INT (as per the
instructions above) or manually, with STACKAUX Rmy.stk. If
you want to play around with saving the Stack, use a filename other
than MY.STK, e.g., STACKAUX Stest.stk.

HNY '06, and HTH!

--
Carl Distefano
cld@xxxxxxxx