LZED: THE MANUAL Copyrights and Credits INTRODUCTION INSTALLING LZED INVOKING LZED SCREEN FORMAT COMMAND SET ERROR MESSAGES TERMINAL AND ENVIRONMENT DESCRIPTORS MODIFICATIONS POKE AND GO TXTTOWS :LZED Copyrights and Credits LZED LZED: THE MANUAL Copyright 1986 by Zivio, Inc. Copyright 1986 by Zivio, Inc. All Rights Reserved. All Rights Reserved. LZED is the creation of Paul Pomerleau, working with Zivio, Inc. to bring Z-System users application programs and utilities truly suitable to their operating system environment. Inquiries should be directed to Zivio, Inc., P.O. Box 803305, Chicago, Illinois 60680-3305. Modem calls at 312-649-1730 or 312-664-1730 (24 hours) or voice calls at 215-443-9031 (daily and evenings till 10 P.M. E.S.T.). LZED, Zivio: trademarks of Zivio, Inc. WordStar: trademark of MicroPro International Corporation. NewWord: trademark of NewStar Software, Inc. Turbo Pascal: trademark of Borland International Inc. Z-System, ZCPR3: trademarks of Echelon, Inc. and Richard L. Conn. :INTRODUCTION LZED, the "Little Z EDitor", is a memory-based text editor for Z- System users. Occupying slightly less than 10k, LZED is a highly efficient text entry and alteration tool, requiring only a Z80-, NSC800-, or HD64180-based computer with the ZCPR3 command processor installed. Its main advantages over conventional, non- ZCPR3 programs that do similar chores include extraordinary speed, minimal disk space, full terminal independence without the bother of elaborate installation programs or research in computer/terminal manuals, and extreme flexibility through sophisticated interaction with the Z-System environment. The commands of LZED are a large subset of those used in WordStar, NewWord, Turbo Pascal's editor, and many other popular text handling programs - users experienced with such tools will have little or no need for this manual beyond those points that are LZED- or ZCPR3-specific. Although not a true word processor, LZED is very likely to become your favorite tool for manipulating text, so be prepared. LZED's only significant limitation as a text editor is that work file size may not exceed available memory after LZED itself is loaded. This is seldom a problem other than for large Assembly Language source files, where it can be readily overcome with any of several assembly and/or linkage techniques. You've made a very wise purchase - enjoy! :INSTALLING LZED LZED is installed as a ZCPR3 utility. There are no configuration files or installation menus to fiddle with. Here is what you do: A0:BASE>Z3INS SYS LZED.COM<cr> Z3INS Version 1.3 ** Installing File LZED .COM Instead of the usual bulky installation files, you need only the ZCPR3 installation utility, Z3INS, and your ENV file, usually called SYS.ENV. That's all there is to it. If LZED does not work properly after installation, the most likely source of trouble is a defective or incomplete TCAP (*.Z3T) or environment descriptor (*.ENV) file. Consult a ZCPR3 reference book or help file. :INVOKING LZED LZED Starts LZED with no specified work file LZED // Calls up a short, ZCPR3-style help message LZED A7: or LZED WORDPROC: Logs into specified DU (drive/user) or DIR (named directory or NDR) before execution LZED A7:MYFILE.TXT or LZED WORDPROC:MYFILE.TXT Reads or opens specified file in specified DU or DIR :LZED SCREEN FORMAT LZED's screen has two sections, an information section occupying the top two lines and a text editing section occupying the remainder of your screen. For example: vvvvvvvvvvvvvvvvvvvvvv<top-of-screen>vvvvvvvvvvvvvvvvvvvvvvvvvvvv |DU=A0: DIR=BASE LIN=1 COL=1 FREE MEM=40000 | |XX:MYFILE.DOC INSERT ON | |---------------------------------------------------------------| |This is an LZED test file. LZED is a very fast and terminal- | |independent ASCII text editor for Z80, NSC800 and HD64180 based| |microcomputers running Z-System or ZCPR3. | | (more text) | | | | | | | ^^^^^^^^^^^^^^^^^^^^^<bottom-of-screen>^^^^^^^^^^^^^^^^^^^^^^^^^^ Status Line Number 1: DU Shows logged drive and user followed by a colon DIR ZCPR3 NDR, shown only if NDR's are implemented in the ZCPR3 environment and the logged DU corresponds to a valid NDR entry LIN Current line of text COL Current column of text, which may run beyond right edge of screen to column 256, beyond which the counter - and LZED's screen displays in general - are not to be relied on, although the accuracy and integrity of the text buffer itself are not compromised FREE MEM Space (in bytes) remaining for additional text Status Line Number 2: XX:MYFILE.DOC Shows DU and filename of working file if name of working file has been chosen. If a filename has not been chosen shows "Unnamed File". MISC INFO Occupies same space as XX:MYFILE.DOC. "Select a Menu:" shows if ^J or linefeed is pressed. Menu title appears if a menu is subsequently selected. "Directory:" shows if ^KF is pressed. INSERT Shows status of the INSERT toggle (INSERT ON pushes text forward to make room for new text and INSERT OFF overwrites existing text). Text Editing Section: The text editing section (everything below the line of hyphens at the top of your screen) contains the text you are working on, the directory of the logged DU after the ^KF "show directory" function is invoked, and the LZED help screens, error messages, and prompts for user response. :THE LZED COMMAND SET Help Commands: ^JM Main (Single Key Commands) ^JQ Quick (^Q Double Key Commands) ^JK Block (^K Double Key Commands) Single Key Commands: ^S ^D ^E ^X Cursor up, down, left, right <BS> ^H Cursor left, same as ^S ^A ^D Cursor one word left, right ^R ^C Screen up, screen down ^G <DEL> ^T ^Y Delete cursor char, delete char left, delete word right, delete line ^N Insert line, keep cursor in current position ^L Repeat last search or search and replace ^V Toggle insert mode Quick (^Q) Double Key Commands: ^QS ^QD Cursor to far left, right ^QE ^QX Cursor to top of screen, bottom of screen ^QR ^QC Find top of file, bottom of file ^QB ^QK Find beginning of block, end of block ^QF Find text ^QA Find and replace text ^QF and ^QA Options: Ignore case? Finds string, STRING, StrinG, etc. Backwards? Search from cursor to beginning of file instead of from cursor to end of file ** Note on ^QF AND ^QA: The length of text to be searched for or replaced may not exceed 32 characters. ^QY Delete to end of line ^Q<DEL> Delete to beginning of line ^QZ Delete (zap) all text (with safety prompt) ^QT Change current TAB stop (with options) Block, File, and Miscellaneous (^K) Double Key Commands: Block: ^KB ^KK Mark block beginning, end ^KC Copy block to cursor position (if cursor is inside block, cursor moves to beginning of block) ^KY Delete block ^KV Move block to cursor position (if cursor is inside block, cursor moves to beginning of block) ^KW Write block to file (prompts for filename) ^KP Print block to list device (optional initialization string sent to printer -- example :^[B^C) ^KH Hides block highlighting and destroys current block markers File: ^KR Read file from disk into current work file at cursor position - inserts a file or, if in "Unnamed File" mode, opens that file for editing ^KN Change name of working file (shows on information line) Disk: ^KF File listing (directory) of logged DU ^KL Log DU or DIR (omitting either drive or user preserves current drive or user) Saving: ^KS Save text to file using filename on information line and continue editing current text ^KX Save text to file using filename on information line and exit to system ^KD Save text to file using filename on information line, clear text from memory, and remain in edit mode ** Note: ^KS, ^KX, and ^KD prompt for filename if no filename is listed on the information line. LZED uses an intermed- iate file with the extension .T$P; for this reason, you should never use .T$P as an extension for an LZED file. ^KQ Exit to system without saving text to file ** Note on ^KN, ^KL, ^KW, ^KR, ^KD, and INSERT OFF: ^KN Change Filename/DU/DIR: Allows you to change not only the name of the file, but its drive and user location as well. This unique feature takes advantage of the flexible storage facilities of ZCPR3, permitting you to save text under multiple filenames and store the files in the DU or DIR of your choice. ^KL Log DU or DIR: By allowing you to log into a new DU or DIR LZED gives you access to ALL FILES ON DISK without exiting to ZCPR3. LZED will even log in where ZCPR3 fears to tread, user areas 16 through 31, so long as your environment descriptor is configured for such access. ^KW Save Marked Block: Allows you to write a portion of your text to disk, possibly to be read into another file later on. When programming, this can be used, in a limited fashion, to overcome the memory limitations of LZED by marking a block, writing it to an external file with ^KW, and replacing it with an INCLUDE or MACLIB statement, or some functional equivalent. ^KR Read File: Allows you to insert a file from any DU or DIR into the text being currently edited. Because LZED allows access to files in all drives and users, it is excellent for the development of subroutines or standard header files. Files may be stored in any DU or DIR and read into the current working file as needed. ^KD Done Editing File: The ^KD command is used when you are finished working on the current text. It writes the text to a file, clears the edit buffer, but does not exit LZED. If you wish to start editing a new file, you can use ^KN to name the new file. The ^KR command can be used to read a new file into the edit buffer. ^KN could then be used to rename the file. INSERT OFF: The ^V command toggles INSERT ON/OFF. With INSERT OFF, all newly entered text will overwrite existing text with the following exceptions: TABS and CARRIAGE RETURNS with INSERT OFF: Even with INSERT OFF, LZED still inserts characters before TABS and CR's (carriage returns). If LZED is writing over a TAB, it will insert characters before the TAB until the TAB is exhausted. If LZED is writing at the end of a line, it will insert characters before the CR. Pressing CR will cause the cursor to move to the beginning of the next line. Pressing TAB will cause the cursor to move to the next TAB stop. Pressing either CR or TAB will insert characters as necessary to move the cursor to the beginning of the next line or to the next TAB stop, respectively. ^N with INSERT OFF: The ^N command inserts a CR just as with INSERT ON. ** Note on PASSWORDED DIRECTORIES: The LZED commands that handle the DIR form respect passwording of directories. If you attempt an operation involving a passworded directory, you will be prompted for the password. If you do not give the correct password, LZED will ignore your command. :ERROR MESSAGES Out of Memory Too much text File Not Found ^KR's filename was not in DIR or DU String Not Found ^QS, ^QA, or ^L have exhausted occurrences of string in text Disk Full No more room on disk to save files. CHANGE DISKS AND REPEAT THE SAVE COMMAND No Block Marked Block function called when no block marked Block Too Large Ran out of memory when extracting block :ZCPR3 TCAP AND ENV REQUIREMENTS FOR RUNNING LZED Clear screen Clear to end of line Cursor positioning Terminal width/height TCAP FEATURE STRONGLY RECOMMENDED: Highlighting on/off :LZED MODIFICATION, POKE AND GO TECHNIQUES Patch Points for Advanced Users: Feature: SAVCCP Address: 10bh Values: 00h = overwrite ZCPR3 and Warm Boot on exit 0ffh = preserve ZCPR3 and return to exit (2k less text buffer if CCP is preserved) Feature: INVERSE Address: 10ch Values: 00h = use dim video 0ffh = use inverse video, draw to end of screen when highlighting Note: Dim video is significantly faster on most terminals. Feature: USRPUNCT Address: 10dh..116h Values: [see below] LZED treats all characters in the USRPUNCT list as punctuation marks. All word-oriented commands - ^A, ^F, ^T - will cause the cursor to stop after any punctuation mark in this list. You may want to change these settings. For example, ()[] would be useful in Pascal and $ would be useful in assembler. If all 10 punctuation indicators are not needed, fill punctuation indicator space by repeating one of the punctuation characters already listed, for example, '.,!().....' Feature: INSERT (initial mode, toggled with ^V) Address: 117h Values: 0ffh = Insert On is default 00h = Insert Off is default Feature: TABSTOP (initial setting, adjusted with ^QT) Address: 118h Values: Tab expansion minus one (valid values are 1, 3, 7 or 15 only) Feature: BACKUP Address: 119h Values: 0ffh = Preserve backup (.BAK) file 00h = Destroy .BAK file :POKE and GO Aliases: If you have ZCPR3 implemented with the intrinsic GET and GO commands and are using a Resident Command Package with the POKE command, you will be able to create aliases that automatically modify LZED in memory to run with the default values you need for a particular task. Example 1: Alias: LZED-C Purpose: Load LZED to destroy CCP, Warm Boot on exit, treat specified characters as punctuation for C language programming, and edit file with name specified by first parameter on command line. GET 100 LZED.COM;POKE 10B 00;POKE 10D "._,?!;:[]?;GO $1 Example 2: Alias: LZED-I Purpose: Load LZED to run with reverse video highlighting. Edit file with name specified by first parameter on command line. LDR REVERSE.Z3T;GET 100 LZED.COM;POKE 10C FF;GO $1 The number of different aliases you can create with this technique is limited only by the permutations of LZED's default settings. Source Code Listing of Patch Points: ; User Patches org 10bh SAVCCP: db 0ffh INVERSE: db 0ffh USRPUNCT: db ',.?!;:::::' INSERT: db 0ffh TABSTOP: db 7 BACKUP: db 0ffh :TEXT TO WORDSTAR OR NEWWORD TXTTOWS.COM is provided to LZED owners as a means of converting files created with LZED into WordStar/NewWord document files. This allows you to use LZED to generate documents for subsequent formatting and printing with either of these word processors. TXTTOWS.COM is included with LZED by virtue of the generosity of its author, Sigi Kluger (ESKAY Software Service), who placed it in the public domain for such purposes. TXTTOWS is invoked by typing its name followed by a filename, which may contain wildcard characters. Examples: B0:WORK>txttows *.doc (process all DOC files) B0:WORK>txttows txttows.doc (process one file only) TXTTOWS will display the name of the file it is currently working on. All modified data are written into a file TXTTOWS$.TMP. After successful completion, the original file is deleted and TXTTOWS$.TMP is renamed to the original file's name. This insures that in case of failure the original file remains intact. The input file will only be deleted if TXTTOWS successfully closes the output file. :CREDITS emains intact. The input file will only be delet