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
/
EDITOR
/
ZDE16.LBR
/
ZDE16.NZW
/
ZDE16.NEW
Wrap
Text File
|
1990-06-01
|
22KB
|
498 lines
New in ZDE
Z-System Display Editor
Version 1.6 02 Jun 90
ZDE is copyright 1990 by Carson Wilson, all rights reserved.
You use ZDE at your own risk. The author accepts no liability
for any damages resulting from its use or misuse. The files in
this library may not be circulated in any incomplete or
modified form without the written permission of Carson Wilson.
Any commercial use of ZDE, defined as any situation where the
duplicator receives revenue by duplicating or distributing ZDE
by itself or in conjunction with any hardware or software
product, is expressly prohibited unless authorized in writing
by Carson Wilson.
This file describes changes to ZDE since version 1.3. I have
decided not to release document revisions while ZDE is still in
active development. For now, please obtain ZDE10.DOC and
ZDENSTAL.DOC from ZDE10.LBR, and ZDE13.NEW from ZDE13.LBR,
available on Antelope Freeway and many other remote CP/M
systems. Except for the changes detailed below, these text
files provide a thorough explanation of how to use and install
ZDE. Alternatively, send a contribution to support further
work on ZDE, and I will mail you a high quality, up-to-date
printed manual for ZDE version 1.6. See section 6.3 of this
file for details.
- CONTENTS -
1. FUNCTIONAL ENHANCEMENTS.
1.1. Proportional Formatting.
1.2. Last Entry Recall.
1.3. Enhanced Operation Under CP/M Plus and ZSDOS.
1.4. Control-U now Aborts "Delete To" Function.
1.5. Fully Operational Auto-Indent (^OA).
1.6. Chain to ZCPR Error Handler.
1.7. Return to Previous Position Command (^QP).
1.8. Global Find/Replace Option.
1.9. Semicolons are now Characters in Nondocuments.
2. BUGS FIXED.
2.1. More Robust Space Calculation.
2.2. ZCPR Line Queue Bug Fixed.
2.3. Other Minor Nuisances Corrected.
3. INSTALLATION.
3.1. New in ZDENSTAL Version 1.6.
4. USAGE HINTS.
4.1. Saving Macros.
4.2. Creating a Smaller ZDE.
4.3. Using GET and GO with ZDE.
5. DEVELOPMENT HISTORY.
6. FURTHER INFORMATION.
6.1. About Z System.
6.2. About the Author.
6.3. Pre-Printed Manuals.
1. FUNCTIONAL ENHANCEMENTS.
1.1. Proportional Formatting.
ZDE can now format your text for use with proportional printer
fonts! See the files ZDEPROP.DOC and ZDEPROP.Z80 (included in
ZDE16.LBR) for full details.
1.2. Last Entry Recall.
The following commands (among others) cause ZDE to prompt
you for information:
COMMAND PROMPT
^KD "Load:"
^KE "Erase:"
^KN "Name:"
^KL "Load:"
^KR "Read:"
^QF "Find:"
^QA "Find:" and "Change to:"
ESC-M "Macro:"
You can often save typing time and prevent errors by using
control-R or your right arrow key [as installed] to Recall your
last response to any of the above prompts. For example, to read
in a file and then erase it, you could enter "^KR, <filename>,
RETURN" followed by "^KE, ^R, RETURN". The ^R command will
automatically recalls the filename you entered in response to the
"Read:" prompt. The Find, Replace, and Macro prompts work in a
similar manner. ^R Recalls your entire response; right arrow
recalls your last response one character at a time to allow
further editing.
The Recall keys can also be used to recall the last used macro,
even if it wasn't entered manually.
1.3. Enhanced Operation Under CP/M Plus and Z3PLUS.
ZDE takes advantage of advanced BDOS error handling to provide
slightly faster file output under CP/M Plus and Z3PLUS. In
addition, file Create stamps are now preserved under CP/M Plus
based systems as well as ZSDOS and ZDDOS systems.
1.4. Control-U now Aborts "Delete To" Function.
Control-U can now be used to abort a "Delete To" (^QT) operation.
Previously, ZDE would attempt to delete up to the next literal ^U
character in the file, often causing frustration.
1.5. Fully Operational Auto-Indent (^OA).
Auto-Indent is useful for typing outlines, structured program
source code, and other text where the "left margin" varies. When
the Insert (^V) toggle is on, Auto-Indent aligns the left margin
with that of the previous line. When Insert is off, it causes
the RETURN key to act differently: RETURN advances the cursor
past any indentation when moving through a file.
When a new line is begun either by wordwrap or reformat (see
below) or by hitting RETURN with Insert on, Auto-Indent indents
the following line or lines to equal the previous one. It does
this by counting the number of spaces or Hard TABs (whichever
came first) before the text of the previous line, and indenting,
wrapping, or reformatting using this number of spaces or Hard
TABs. This entails certain possible conflicts, most of which ZDE
itself automatically prevents:
First, if you mix Hard TABs and spaces when indenting a line, AI
may give strange results, as it will count and use the first
character only. For example, if your line is indented as
<TAB><TAB><SPACE>, AI will indent the next line with <TAB><TAB>
only.
To avoid conflicts, enabling AI sets the left margin to 1, and
setting the left margin greater than 1 disables AI. Also, Double
Spacing (^O S) is disabled by Auto-Indent, and Auto-Indent
disables Double Spacing.
Auto-indent status also now defaults to ON in Nondocument mode,
and OFF otherwise.
1.6. Chain to ZCPR Error Handler.
ZDE 1.6 will chain to the installed Error Handler under ZCPR 3.4
with error #12 (TPA overflow) if there was not enough memory for
ZDE to edit the file you specified on the command line. ZDE does
this because the flow of logic in a multiple command line
sometimes dictates that the editor complete its task before
succeeding commands are carried out. For example, I use the
a multiple command alias similar to the following
ZDE file;echo erase;if in;era file;else;mv file newdir:;fi
to process modem capture files. After processing each file with
ZDE I generally want either to erase it (if it contained nothing
worth saving) or move it to another directory. But on occasion
the capture file is too large to process with ZDE. If the script
were allowed to proceed, it would force me either to erase the
capture file or move it elsewhere, neither of which would be
appropriate if I hadn't even looked at its contents yet.
This is where Z System's error handler comes it handy: it
provides a means of dealing with an offending command line before
unwanted commands cause harm. When ZDE chains to the error
handler, I can _edit_ commands beginning with ZDE's invocation,
either removing unwanted commands or inserting further commands
as the situation may dictate (it is also possible to abort the
command or multiple command script altogether). In the above
case, I would revise my command line to the following:
NW file;echo erase;if in;era file;else;mv file newdir:;fi
By substituting the ZDE command with NW I have invoked NewWord
for this instance only of the command, which in turn will edit
the larger file.
Without question the finest ZCPR error handler now available is
Rob Friefeld's ZERR. There are even provisions within ZERR for
automatically editing LSH scripts and for automatically chaining
to transient versions when resident (RCP, CCP) commands fail; all
of this is described in ZERR13.LBR.
1.7. Return to Previous Position Command (^QP).
This function is basically the same as the WordStar command:
hitting ^Q-P takes you to the position the cursor was at before
the previous command (including the ^QP command itself - try
it!). For instance, the sequence "^B, ^Q-P" reformats beginning
with the current line then restores the cursor to its original
position within the paragraph. ^Q-P is also useful for moving
long distances within a file without losing one's place: for
example you can move to the top of the file with ^Q-R, then come
back with ^Q-P.
Within Macros, the previous cursor location is preserved: ^Q-P
will always return you to your place in the text BEFORE you
invoked the Macro. This not only allows you to resume editing at
the same location after using Macros; you can also build one or
more ^Q-P commands into the Macro itself. See SAMPKEY.* files
for one example; I'm sure there are lots of other ways to use
^Q-P within a Macro. Thanks to Howard Schwartz for keeping on my
case about this feature until I finally discovered an easy way to
implement it.
1.8. Global Find/Replace Option.
Besides "B" (backwards search) and "C" (case-sensitive search),
ZDE now sports a THIRD find/replace option: "G" for Global
search. ZDE normally begins your (backward or forward) search at
the current cursor location. Specifying "G" causes ZDE to start
at the BEGINNING of the file when searching forward for strings,
or at the END when searching backwards. Otherwise, the search or
replace command proceeds exactly as it does normally. The "G"
option is used in the same way as the other options, by enclosing
it in slashes as a prefix to the string being searched for (e.g.,
to find "Carson" globally, enter "/gc/Carson" in response to
^Q-F's "Find: " prompt).
1.9. Semicolons are now Characters in Nondocuments.
ZDE now counts the ";" (semicolon) character as a normal
character in "N" mode, whereas it counts the semicolon as a
punctuation mark in the "W" and "A" modes. This is mainly of
interest to assembly language programmers, as the semicolon is
often used alone to mark the beginnings of comments in source
code. Treating the semicolon as a normal character in "N" files
simply makes it easier to manipulate assembly language comments.
Thanks to Rob Friefeld for his thoughts on this.
2. BUGS FIXED.
2.1. More Robust Space Calculation.
ZDE's calculation of memory space remaining is now more robust.
In past versions of ZDE (and VDE), certain editing commands could
cause a crash when only a few bytes of free memory were
available (thanks to Rob Friefeld).
2.2. ZCPR Line Queue Bug Fixed.
The ^QQ (go to next line in ZCPR queue) command of previous
versions of ZDE failed if ZCPR's 16-byte user-defined buffer was
filled. Version 1.6 fixes this problem, properly returning to
the first line in the queue after the last value in has been
reached. This allows Turbo Pascal-like interactive programming
of Z80 assembly language when used under Z System with Al
Hawley's ZMAC Z80 Macro Compiler ($50 including ZML and ZMLIB;
contact Al Hawley at Ladera Z-Node, 213/670-9465 (modem), Ladera
Heights, CA).
2.3. Other Minor Nuisances Corrected.
ZDE now turns alternate video off when placing the cursor at the
string to change during ^QA prompts.
A bug which allowed an extra character or hyphen on the last line
of a paragraph if the line's length was one character beyond the
right margin has been fixed (thanks to Larry Schnitger for
spotting these).
A bug which occurred if you set the block end marker to the last
byte in the file then did a block delete has been fixed (thanks
to Ben Cohen for finding this).
One or more bug(s) which occurred while printing have been
cleared up. ZDE should now always give a correct left margin
with or without a page header or top margin. The printout is
also slightly faster when left and top margins are used together.
ZDE now always finds strings located exactly at the end of a
file.
When searching with the /c/ option, erroneous results occurred if
a non-matching string of the same length as the search string
beginning with the same first character as the search string was
located at the very end of a file. This has been fixed.
Fixed minor bug in proportional formatting that caused repeated
^B commands to give inconsistent results under some
circumstances.
Fixed bug which set margins spuriously if an illegal number was
entered. ZDE also now disallows setting margins to zero, which
caused formatting problems.
^B (reformat) no longer absorbs following commands, allowing ^B
to be embedded in key redefinitions with SmartKey, etc.
3. INSTALLATION.
You MUST use ZDENSTAL 1.6 to install this version of ZDE. Older
ZDK and .ZDP files will still work. Due to extra installation
codes, .ZDE files created with version 1.0 of ZDE will not work
with this version of ZDENSTAL.
3.1. New in ZDENSTAL Version 1.6.
The proportional formatting (^OJ) toggle can be disabled with
ZDENSTAL to allow use of ZDE's proportional spacing table as a
patch area. When proportional spacing is disabled, an additional
96 bytes of space is released for custom user patching. ZDENSTAL
also allows you to set the proportional formatting toggle to ON
or OFF at startup [this can also be toggled while operating ZDE].
ZDENSTAL's "R" option now restores ZDE's proportional spacing
table to its default (as distributed) values.
ZDENSTAL's "F" option now gives the locations of all FIVE key
definition tables (former versions left out the ESC- table). The
"F" option also gives the location of ZDE's proportional spacing
table for use when patching ZDE.
The Osborne 1 and Vixen terminal definitions are now separate due
to different screen width requirements (thanks to Ben Cohen for
sorting this out).
ZDENSTAL previously would overwrite .ZDK and .ZDP files with the
wrong information if the .ZDK or .ZDP file had been archived (bit
7 of filetype character 3 set). This problem has been corrected
in version 1.6.
Some ZDENSTAL messages have been improved.
4. USAGE HINTS.
The following are just some miscellania that I have picked up
from using and working on ZDE.
4.1. Saving Macros to Disk.
Under Z System version 3.4, it is possible to "save your work"
after creating a working Macro. First, be sure to save your new
Macros as Macro Keys using ZDE's ESC-# command (see ZDE Manual).
Then exit ZDE and type
POKE 310 02 50;ZSAVE 310-490 filename.ZDK
You have just used Z System's type-4 SAVE program to create a new
.ZDK file, which can now be examined and installed permanently
into ZDE with ZDENSTAL, or further revised using ZDKCOM. [NOTE:
the addresses and values given above will work for ZDE version
1.6, but may change with future versions of ZDE.]
4.2. Creating a Smaller ZDE.
If you are SURE you will never want to enable the Help Menus, you
can create a slightly smaller copy of ZDE. First use ZDENSTAL to
disable ZDE's Help Menus. Then issue the Z System command,
GET 100 ZDE.COM;ZSAVE 100-3E7F filename.COM
This creates a copy of ZDE that is about 1 kilobyte smaller than
the distributed package, and loads somewhat faster on slower
systems. This procedure is specific to ZDE 1.6; do NOT assume
that it will work on future versions.
4.3. Using GET and GO with ZDE.
Some users have discovered that the Z System GET and GO commands
can be used to extend ZDE's versatility or save disk space.
Since the .ZDE, .ZDP, and .ZDK files used by ZDENSTAL are simply
binary images of various portions of ZDE, you can achieve the
versatility of having several copies of ZDE without the added
disk overhead by using Z System commands that "install" one or
more of ZDENSTAL's files on the fly.
For example, if you used ZDE with a particular terminal most of
the time, but occasionally switched to another terminal that was
incompatible with the first one, you might want to create a Z
System Alias which would overlay the default copy of ZDE with
your second terminal's characteristics at startup. You could
achieve this by first using ZDENSTAL to configure ZDE for your
second terminal, saving the terminal's characteristics into a
.ZDE file (see the ZDE Manual for details on this). You would
then ZDE for your normal terminal, and write an Alias to
auto-install this copy of ZDE for your occasional terminal on the
fly:
GET 100 ZDE.COM;GET 180 term2.ZDE;GO $*
This command loads the file term2.ZDE over ZDE before proceeding,
providing a temporary copy of ZDE that works with your second
terminal.
This approach can also be used to generate "virtual" copies of
ZDE with different printer codes and Macro Key definitions. The
addresses of the various overlays for ZDE version 1.6 are:
180 hex - Terminal codes (.ZDE files)
1F0 hex - Printer codes (.ZDP files)
310 hex - Macro Keys (.ZDK files)
[These addresses may well change in future versions of ZDE.]
Obviously, this involves some "homework:" if you get the
addresses wrong or use an incompatible .ZDx file (from a previous
version of ZDE, for example), you will likely cause yourself
grief. For these reasons I generally recommend simply creating
multiple copies of ZDE. But under some circumstances (e.g.,
laptop computer with limited disk or ROM space) this approach may
be quite rewarding.
5. DEVELOPMENT HISTORY.
ZDE is a descendant of Eric Meyer's famous VDE (Video Display
Editor) program for CP/M. In 1988, Eric produced his final
version of VDE for CP/M (2.66). Eric now maintains VDE for
MS-DOS only; ZDE continues VDE's evolution on Z80 systems. ZDE
removes many of the CP/M VDE's defects and adds such features as
support for ZCPR, ZSDOS, and CP/M Plus, improved terminal and
disk I/O performance, proportional formatting, file datestamp
support, and improved installation. Meanwhile, the MS-DOS
version of VDE has continued to evolve, now boasting multiple
file buffers, auto-save, auto-number, and much more. VDE for
MS-DOS is available on computer bulletin boards (including
Antelope Freeway; see below) as VDE152.ZIP.
6. FURTHER INFORMATION.
6.1. About Z System.
If you are using CP/M equipment, you have probably heard of Z
System. Basically this is a downward compatible replacement for
the system software distributed with Z80 CP/M equipment. By
utilizing Z80 opcodes and advanced design techniques, the authors
of Z System have expanded the versatility of the CP/M operating
system far beyond its original limitations. To learn more about
Z System, log into the bulletin board listed below, or contact
one of the following:
Plu*Perfect Systems Sage Microsystems East
410 23rd St. 1435 Centre St.
Santa Monica, CA 90402 Newton Centre, MA 02159-2469
(213)-393-6105 (eves.) (617)-965-3552 (9am-11pm)
6.2. About the Author
First, let me take this opportunity to thank the community of
users without whose support this version of ZDE would not have
been possible. You have made ZDE what it is through your
generous contributions of time and/or money. Without those who
appreciate (and criticize) my work I doubt I could justify the
time and energy I've spent on ZDE. In addition, many of the
improvements and bug fixes in version 1.6 result directly from
specific comments and insights by users. Please continue to
share your thoughts and experiences with ZDE; I'm listening.
I am a doctoral student trying to keep from starving while
working on my dissertation in Political Science at Loyola
University of Chicago. I am a coauthor of ZSDOS, a commercial
replacement for the BDOS portion of CP/M, and have authored
numerous CP/M and Z System programs. My interests include
computer programming, telecommunications, the Soviet Union,
Political Theory, and bicycling (not necessarily in that order).
I am also looking for part- or full-time work. To this end I am
skilled in political analysis, know the Russian language and the
Z80, C, BASIC, and Pascal computer languages, and have
comprehensive knowledge of CP/M and Z System and working
knowledge of Unix and MS-DOS. If you know of a gainful opening
in the computer field, I would like to hear from you.
Among other things I operate the Antelope Freeway Remote Access
Systems for CFOG, Chicago's First Osborne Group. These dual
remote systems are available at the same number, 312/764-5162,
Chicago. Antelope 1 covers CP/M and Z System while Antelope 2 is
dedicated to MS-DOS support. The best way to contact me is
through this board. Registration is free. If you are not a
registered member, you can leave me a note as part of your
application.
Alternatively, my mailing address is:
1359 W. Greenleaf, #1D
Chicago, IL 60626
USA
6.3. Pre-Printed Manuals.
As I mentioned above, I don't plan to reissue the ZDE manuals
with the library while ZDE is still in development. For those
who wish an updated manual and/or wish to support ZDE, I offer
instead a pre-printed 40-page User's Manual and Installation
Guide with Table of Contents and Index, postpaid, for those who
make contributions of $6 or more to support further development
of ZDE.