[Date Prev][Date Next][Subject Prev][Subject Next][
Date Index][
Subject Index]
Re: Integers vs. reals in s/gs
- Subject: Re: Integers vs. reals in s/gs
- From: Harry Binswanger hb@xxxxxxxx
- Date: Tue, 04 Oct 2016 17:24:01 -0400
Carl,
Thanks, very helpful. I use 4DOS occasionally but
I don't know how to run Xy from it, other than:
making a .BTM file that launches EDITOR, loading
CMD.EXE, executing said .BTM at CMD's C:\ prompt.
Of course, that can all be done via a shortcut,
but it seems a little awkward, and when I shell
to DOS from XyWrite, I'm in regular DOS, not
4DOS. I can do dos/nv/x/z /c 4DOS, but that again seems awkward.
I've experimented with overwriting CMD.EXE with
4DOS.COM and it works to use in loading Xy, and
does shell to 4DOS, but this can't be the way to go.
Regards,
Harry
Harry,
1. Do serious XPL programmers use Scroll Lock? I don't, but maybe
I'm missing out.
It's a quick-and-dirty facility for recording macros. If you're
programming, chances are you need more than that. Besides, Scroll Lock
is a pain. If it gets stuck in the On state, which happens frequently,
you've got to kill the session. If you want to record keystrokes,
investigate Xy4's func RK. U2 has two implementations of it, frame RK
(mine) and frame RKOK (Robert's).
2. In the same vein, should I be using LDPM? Or does U2 obsolesce that?
Timely question. LDPM is the only "native" XyWrite way to load the
contents of a file into a Save/Get. But since it only works with
"ordinary" S/Gs (A-Z0-9), it's awkward, especially in programs that
are intended for public dissemination. You've got to jump through
hoops to make sure that you're not overwriting the user's S/G
contents. U2 has facilities that automate the hoop-jumping, that
simulate saving the file directly to a programming S/G, like 01.
There's SVfile: JM 2.SVfileQ2 , and there's
one that I use most of the time SV50: JM
2.SV50Q2 , which puts the file contents into S/G 50. Both of these
frames use LDPM in the background. They've got to; there's no other way.
Very recently, however, I discovered that there _is_ another way, if
you're running XyWrite under 4DOS. Look at the new frame SV50v. It
uses a 4DOS batch file, FILE2628.BTM, which writes the contents of a
specified file directly to S/G 628, in DOS. SV50v then passes the
contents of 628 to S/G 50 and zeroes out 628 (to save memory). It's a
tad slower than SVfile or SV50, but it steers clear of LDPM and the
user's ordinary Save/Gets; and, as user programming, it's pretty
nifty. Here's the batch file
rem FILE2628.BTM
@echo off
set /a s=%@filesize[%1]
set n=%@fileopen[%1,r,b]
echos ’SV628,%@fileread[%n,%s]’ >%2
set c=%@fileclose[%n]
exit
I'd better encode that, since it includes 1-byte guillemets:
XPLeNCODE v2.0 (ENCODE.EXE)
b-gin [UNTITLED]
@echo off[cr|lf]set /a s=%@filesize{091}%1{093}[cr|lf]set n=%@
fileopen{091}%1,r,b{093}[cr|lf]echos {<}SV628,%@fileread{091}%
n,%s{093}{>} >%2[cr|lf]set c=%@fileclose{091}%n{093}[cr|lf]exi
t[cr|lf]
-nd
XPLeNCODE
--
Carl Distefano
cld@xxxxxxxx