home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
ZCPR33
/
S-Z
/
ZCOLUMNS.LBR
/
FOREVERZ.8Z7
/
FOREVERZ.887
Wrap
Text File
|
2000-06-30
|
16KB
|
518 lines
FOREVER Záì
by Rick Charnes
Appearing in Morrow Owners Review Aug.-Sept. 1987 issue
1165 Shotwell St.
San Francisco, CA 94110
826-9448 or 821-4345
approx. 2300 words
Copyright (c) 1987 by Rick Charnes. All rights reserved
SUBMISSION DATE: 6/8/87
áì
I very much appreciate all the letters I've been getting with theáì
áì
large number of excellent suggestions. This is the stuff of whicháì
áì
real communication is made and makes being involved in this Z-áì
áì
adventure such a joy. Please continue to send mail to the MORáì
áì
office and phone calls to my home. Something as delightful as Z-áì
áì
System -- as life in general -- feels best when done with theáì
áì
support of a concerned, vital, passionate and enthusiasticáì
áì
community, and that is what we are building here. Whether by BBS,áì
áì
phone network, or mail, staying in touch with and learning fromáì
áì
others fundamentally enhances the pleasure and meaning of theáì
áì
entire computing experience. Communication and understanding,áì
áì
remember, were the great promises of the computer revolution.áì
áì
Let's work to make that a reality and take it away from those whoáì
áì
would use computers primarily as a tool in their plans foráì
áì
military armament as they bring us closer and closer to globaláì
áì
holocaust.áì
áì
One of the odds and ends culled from discussions on the MOR BBSáì
áì
was a question about error handlers. Error handlers are a little-áì
áì
used but very powerful Z-System feature. If you're a less thanáì
áì
perfect typist and are tired of CP/M's "????" response when youáì
áì
type something it finds incomprehensible, then error handlers areáì
áì
for you. When an error handler is "installed" in your system andáì
áì
ZCPR3 cannot understand what you've typed in, you're then -- in ì
áì
the words of Jerry Maloney, error handler enthusiast in Boston --áì
áì
"given a second chance." Simply correct your typing error, hitáì
áì
<CR>, and your command line is run again. I'm not aware ofáì
áì
anything comparable to this in the MS-DOS world.áì
áì
This may not seem so important for those used to CP/M 2.2 witháì
áì
which only a single command may be typed on any one line.áì
áì
Remember, however, that in ZCPR3 many commands may be strungáì
áì
together, separated by a semicolon. I take advantage of thisáì
áì
feature as often as I can. If you have a series of commands toáì
áì
run that you don't use very often and therefore for which anáì
áì
alias is not appropriate, simply type them all together at theáì
áì
ZCPR3 prompt. This can be very enjoyable and can save a lot ofáì
áì
time especially on floppy systems. Rather than sitting staring atáì
áì
the screen while I am waiting for the results of one commandáì
áì
before I can run the next, I often try to anticipate my nextáì
áì
several moves and type in as many commands as I can foresee intoáì
áì
the future. For instance, If I'm cleaning up my disk and thenáì
áì
want to rename a file before working on it I can easily findáì
áì
myself doing something like:áì
ERASE *.BAK,MARY.LTR;REN JOE.LTR=JOE;NW JOE.LTR
áì
This may look difficult and confusing but if you study it you'lláì
áì
see it's quite straightforward and is a real time-saver. You mayáì
áì
find it an enjoyable challenge to discipline yourself enough toáì
áì
anticipate and plan out your next few commands. In this exampleáì
áì
we take advantage of a capability of many ZCPR3 but not CP/Máì
áì
utilities, that of accepting a [bold]file list[end bold]áì
áì
parameter. Here, ERASE.COM is given a parameter ofáì
áì
"*.BAK,MARY.LTR", a list of two files, one ambiguous and oneáì
áì
unambiguous, separated by a comma. A quick browse througháì
áì
[underline]ZCPR3: The Manual[end underline] will reveal that aáì
áì
dozen or two utilities have this ability. After ZCPR3 has erasedáì
áì
these, JOE is renamed to JOE.LTR and then loaded in with NewWord.áì
áì
It's our multiple command line feature that permits us to doáì
áì
this.áì
áì
But to my point: with long command lines such as these typingáì
áì
mistakes happen rather easily! Enter error handlers. The mostáì
áì
common error handler is VERROR, for Video ERROR. To installáì
áì
VERROR, simply type "VERROR<CR>". From then on VERROR isáì
áì
"installed." From then on, anytime you make a mistake, oráì
áì
anytime any of your VFILER or other macros contain a mistake,áì
áì
your error handler is invoked. You are then put into a one-lineáì
áì
Wordstar-like editor within which you can then use all theáì
áì
familiar cursor motion commands to correct your input anywhere onáì
áì
your command line. When finished, simply hit <CR> and youráì
áì
command(s) are sent out again.áì
One warning, though: with ZCPR3.0 you cannot be running anáì
áì
extended command processor such as ARUNZ if at the same time youáì
áì
have an error handler installed. With the new ZCPR3.3 thisáì
áì
problem is remedied.áì
By the way, if you're feeling that you never manually string aáì
áì
series of commands together on the command line and can't imagineáì
áì
why you would ever want to do so, here's an easy one to start outáì
áì
with in order to see how much time you can actually save. Supposeáì
áì
you're on one directory and want to log on to another, do a diskáì
áì
directory, and then perform various operations from there. Ifáì
áì
you're on A0: and want to work on B0:, without ZCPR3 you wouldáì
áì
type "B0:<CR>", wait for the system to log you in, then "DIR",áì
áì
etc. Instead, try simply "B0:;DIR<CR>". Why complicate mattersáì
áì
with an extra carriage return and a wait, when you could beáì
áì
having fun watching the computer do all the work for you?áì
I can hardly believe I've let three columns come and go without aáì
áì
mention of the famous "POKE 'N' GO" technique. This is one of theáì
áì
very nicest features of Z-System, something that you easily runáì
áì
the risk of taking for granted. It's especially useful for savingáì
áì
disk space on floppy systems. Suppose you normally run WordStaráì
áì
or NewWord in single space mode and a right margin of 65, butáì
áì
occasionally use double spacing and a right margin of 78. You areáì
áì
tired of having to remember to manually type in your "^OS" toáì
áì
change the spacing, set your new ruler line with "^OR", andáì
áì
finally put in your ^PA code to change the printer pitch to 12. Iáì
áì
always end up forgetting to do this when using settings otheráì
áì
than my default and find it extremely frustrating. One solutionáì
áì
of course is to make a completely new WS.COM or NW.COM disk fileáì
áì
with these new settings, but with disk space precious this isáì
áì
silly. With Z-System's alias-making capability there is an easyáì
áì
solution.áì
Let's take the above situation and see how we can handle it witháì
áì
ZCPR3. The first step is to find the exact patch points in ouráì
áì
*.COM file where the values for line spacing and right margin areáì
áì
held. This is done with NewWord by extracting the informationáì
áì
from the relevant section in the "patch menus" in NWINSTAL.COM,áì
áì
and with WordStar from one of the many public domain docsáì
áì
providing this kind of information. To set NewWord 2.16 to theáì
áì
above values we find that 0762h should be set to 02, 0713h to 4eáì
áì
(4eh=78 decimal) for the ruler line, and lastly both 0721h andáì
áì
0723h should be changed to 0A to modify the standard printeráì
áì
pitch from 10 to 12.áì
Now for the beautiful part. Make either a free-standing aliasáì
áì
using our trusty VALIAS or BALIAS or -- my preferred method -- anáì
áì
entry in your ARUNZ.CMD, as follows:áì
GET 100 NW.COM
POKE 0762 02
POKE 0713 4E
POKE 0721 0A
POKE 0723 0A
GO $1
With ARUNZ/ALIAS.CMD all this is strung together on a single lineáì
áì
separated by semicolons, beginning with its name. I have calledáì
áì
mine NW78. Here's what happens: in Z-System we have a memory-áì
áì
resident GET command. GET is one of those seemingly arcane ì
áì
features that really performs when called on. It will load theáì
áì
file given as its second parameter at the location in memoryáì
áì
given as its first parameter, but [bold]without running it[endáì
áì
bold]. We here load NW.COM at 100 hex, the spot in memory whereáì
áì
all COM files load when they run. But here it doesn't actuallyáì
áì
run; it simply is suspended there, awaiting further instructions.áì
áì
Now we use ZCPR3's resident POKE command, which CP/M also lacks.áì
áì
"POKE 0762 02" will insert the hex value 02 at memory locationáì
áì
0762. Since we have loaded NW.COM into memory we are in effectáì
áì
patching NW! Then GO is the final memory-resident command usedáì
áì
in our holy trinity. GO takes whatever is sitting there at 100áì
áì
hex and runs it, and the "$1" is of course the name of our fileáì
áì
to be edited.áì
Suppose we wanted to work on our file JOE.LTR. At the ZCPR3áì
áì
command line we simply type "NW78 JOE.LTR<CR>" and sit back andáì
áì
watch. Our command processor gives us a pleasing visual displayáì
áì
of all this POKE-ing, NewWord loads, and we find ourselves ináì
áì
JOE.LTR, double spaced, margin set to 78.áì
You can have as many of these POKE 'N' GO aliases as you like,áì
áì
setting your wordprocessor to as many default values as you like.áì
áì
Disk space used for all this sophistication? If entered as anáì
áì
entry inside your ALIAS.CMD, 0k.áì
A couple of notes inspired by letters I have received: the Morrowáì
áì
KEY.COM will not work with the hard disk Z-System. The Morrowáì
áì
BIOS was reworked much more fundamentally than the floppy versionáì
áì
in order to Z-ify it. A decision was made in its development thatáì
áì
the amount of space KEY.COM took up in the BIOS was not justifiedáì
áì
by what it did, that this space was more important usedáì
áì
elsewhere. Backgrounder II, which has an extensive keyáì
áì
redefinition capability, or Echelon's NUKEY are the programs ofáì
áì
choice for hard-disk users.áì
Some confusion has developed about the public directory feature.áì
áì
The best way to learn about it is with the PUBLIC.HLP file on theáì
áì
Z-System disk. If you're logged onto the same drive but aáì
áì
different user area than your public directory, DO NOT create aáì
áì
file with the same name as a file on the public directory. Z-áì
áì
System will assume you are working on the public file and willáì
áì
make any changes to it that you make to your file, such asáì
áì
deletion, etc.áì
Another caution: declaring a directory public in Z-System worksáì
áì
only for all user areas [bold]on that drive[end bold]. In otheráì
áì
words, if you are logged onto D6: and your public directory isáì
áì
A1:, everything that goes on in your A: drive will have access toáì
áì
the files in A1:, but do not expect your files in A1: to haveáì
áì
anything significant to say to operations running on your D:áì
áì
drive. However, there is one "out" here: in their search foráì
áì
overlays, a small number of programs, most notably WordStar, haveáì
áì
enough smarts to check also on drive A: of whatever user numberáì
áì
you're logged into if they don't find them on the currentáì
áì
drive/user. So in our case putting the WordStar overlays into aáì
áì
public directory on the A: drive will do an yeoman's job ofáì
áì
servicing your entire system. Other programs, however, such asáì
áì
Correct-It and SuperCalc as I mentioned last time, do not performáì
áì
this "search on A:" operation and must be dealt with otherwise.áì
áì
Very briefly, an alias should be set up in which the very firstáì
áì
command logs on to drive A: of the currently logged user area.áì
áì
Then the source file is accessed from drive A:. I have created aáì
áì
number of aliases that are available on the MOR BBS that dealáì
áì
with this problem.áì
I'd like to emphasize how much easier and quicker the utilityáì
áì
VFILER makes running your entire computer operation, in the timeáì
áì
it saves lost to typing errors. Without VFILER, if you haveáì
áì
incorrectly typed the name of a file to be edited, for instance,áì
áì
time is wasted retyping your command line. With VFILER and theáì
áì
macros you have written, simply position the pointer on youráì
áì
target file, and hit the macro number or letter. "Point andáì
áì
shoot," as Ted Silveira very appropriately calls it. Nothingáì
áì
could be simpler.áì
One final comment about VFILER. The command recall and editingáì
áì
program HSH will not and cannot be made to work when runningáì
áì
programs from its "Z" option.áì
As I write (early June) ZCPR3.3 has been released, written by theáì
áì
extraordinarily prolific Jay Sage of Boston. One of the featuresáì
áì
I like best about it is its incredible flow control package, witháì
áì
more "IF options" than one could possibly imagine. In addition toáì
áì
the "IF INPUT", 'IF EXIST", "IF NULL", etc. that we've all comeáì
áì
to use and love, it is now possible to test if a file isáì
áì
compressed (squeezed or crunched), ambiguous (wild cards presentáì
áì
in the name), and for the presence of any of the three fileáì
áì
attributes: system, read-only, and archived. We now welcome IFáì
áì
COMPR, IF AMBIG, IF SYS, IF RO, and IF ARC to an already-packedáì
áì
pantheon of conditionals. Additionally, we now have two entirelyáì
áì
new commands related to "IF": "AND" and "OR". As an example ofáì
áì
their use, Z-System aliases are traditionally set up so that helpáì
áì
messages will display if the user enters the command with eitheráì
áì
a "//" parameter or no parameter at all. To create an ARUNZ entryáì
áì
for our by-now classic "COPY" alias to do this our line used toáì
áì
have to read:áì
COPY IF //=$1;ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>";
ELSE;IF NU $1;ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>";
ELSE;CP $2=$1;FI;FI
Whew! How boring. Now we need only enter:
COPY IF //=$1;OR NU $1;
ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>"
ELSE;CP $2=$1;FI
One other feature of ZCPR3.3 for which alone I would want it isáì
áì
its memory-resident ECHO command. It can finally display loweráì
áì
case characters. I've always felt the upper-case only ECHO-ingáì
áì
looked silly and infantile; we now have the capability to makeáì
áì
professional-looking displays, status reporting messages, etc. --áì
áì
a very important part of every fully-utilized Z-System.áì
Contact MOR for the terms of a ZCPR3.3 upgrade.
áì
By the way, I recommend that you start writing aliases witháì
áì
either VALIAS or BALIAS (or, of course, as I will never fail toáì
áì
suggest, ARUNZ). I recommend you not even touch ALIAS.COM; thisáì
áì
program is very much outdated.áì
More news on the Z280 front. I just learned of this a few daysáì
áì
ago and know very little about it, but there is a company by theáì
áì
name of Zedux in Van Nuys, California that apparentlyáì
áì
manufactures a generic Z280 add-on board. And as if that weren'táì
áì
enough to get the adrenaline going, the real shocker to me cameáì
áì
as I browsed through their documentation: they have a genuinelyáì
áì
multi-tasking operating system already written for it as well. Iáì
áì
know nothing more than what I've read, and merely pass on theáì
áì
information to you. I immediately sent them off a missiveáì
áì
requesting more information and a possible Morrow beta-test, butáì
áì
for those whose interest is as piqued as mine their address isáì
áì
14402 Hamlin Ave., Suite #C, Van Nuys, CA 91401, telephone (818)áì
áì
787-0113. This could be a real gold mine.áì
I hope your summer is going well. Z you next time...