mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
498 lines
21 KiB
498 lines
21 KiB
|
|
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.
|
|
|