home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 128 30
/
q30.d81
/
t.zed
< prev
next >
Wrap
Text File
|
2022-08-28
|
15KB
|
346 lines
ZED-128 version 0.77.00 [February 16, 1993]
Program and Text by Craig Bruce
FENDER'S PREMUMBLE: Three or four people sent me copies of ZED recently,
recommending it as a text editor for the C-128 80-column mode, especially
for use with downloaded text. It's freeware and many of you may already
have it, but I hope that it will be new to enough of you to justify my
placing it on LOADSTAR 128. I use THE WRITE STUFF V2 almost exclusively
for word processing but after using ZED a little, I can see its usefulness.
Since it wasn't written for LOADSTAR it doesn't return to LOADSTAR when you
quit. Here's Bruce to tell you all about his baby...
ZED is a text editor program for the Commodore 128 80-column screen
that I am currently working on. IT IS NOT COMPLETE, but I think that it is
complete enough to be quite useful. To use it, just LOAD and RUN the "ZED-
128" binary file. Be sure to save it in PRG format.
New features of version 0.77 over version 0.75
-----------------------------------------------
Well, really not much. The bug with loading a file that is too large
from a non-burst device causing the machine to crash has been fixed. A
couple of other minor bugs have been fixed.
Also, CT-^ (Enter Commodore DOS command) has been implemented. This is
very useful for CMD drive users out there.
Here is a summary of Zed's important features:
- Works with *BIG* text files. It gives over 100K bytes free for the
unexpanded 128 and almost 630K bytes free with a 512K RAM expander. It
auto-detects whether you have a RAM expander and supports up to 8 Megs.
- 100% unadulterated machine code with high-speed VDC accessing.
- Uses Burst commands for reading 1571 and 1581 files. Reads about 3,500
bytes/sec from a 1571 and about 6,100 bytes/sec from a 1581. Works with
non-burst devices as well.
- Uses a dynamically allocated data structure to hold the editor document
and the "Kill Buffer", so there are no fixed limits on the size of each;
they both can use all of the memory that is available.
- Will optionally expand TAB characters into spaces while loading a file
and compress spaces into TABs while saving.
- Global search and replace.
- Range delete and recall.
- File translation to and from ASCII-CrLf, ASCII-Lf, ASCII-Cr, and
SPEEDSCRIPT character codes. ASCII-CrLf is used by MS-DOS and ASCII-Lf is
used by Unix. SpeedScript and THE WRITE STUFF both save their files in
screen code.
And here is its major limitation:
- Has a maximum line length of 80 characters. It will split file lines
longer than that. The complete version will support lines up to 240
characters and use horizontal scrolling, but that's another day.
And there is also a known bug:
- Don't let the number of bytes free get lower than around 150 or you run
the chance of having the internal memory allocate function fail. Most of
the routines do not check whether a memory allocate call succeeded, so they
proceed as if it did, and all kinds of bad stuff can happen.
Here is the action key summary (an * precedes the keys that have
actually been implemented). For the keys preceded by a "CT-", hold the
Control key while typing them (duh!), "SH" means Shift and "CO" means
Commodore. The UP, DOWN, LEFT and RIGHT keys are the cursor arrow keys.
When you have to hold down SH, CO, or CT with a arrow key, use the arrow
keys on the top of the keyboard. For convenience, SH-UP and SH-DOWN do the
same as CT-UP and CT-DOWN.
ZED-128 Command Key Summary:
----------------------------
Control Commands:
I CODE KEY ACTION
- ---- --- ------
* $e0 CT-@ Exchange cursor position with mark position
* $e1 CT-A Alter case of letter under cursor
* $e2 CT-B Byte value input
$e3 CT-C Copy range
* $e4 CT-D Delete range
* $e5 CT-E Exit with save
* $e6 CT-F Find next occurance of hunt string
$e7 CT-G Goto given line number
* $e8 CT-H Set Hunt string
$e9 CT-I Insert new file into current one
* $ea CT-J Juggle range of lines for text formatting
* $eb CT-K Kill current line
* $ec CT-L Load file
* $ed CT-M Set Mark for range operations
* $ee CT-N Set Name of current file
* $ef CT-O Set Options: input/output translation/tab-expansion, etc.
* $f0 CT-P Print current file
* $f1 CT-Q Quit without save
* $f2 CT-R Recall text from buffer
* $f3 CT-S Save file
$f4 CT-T Translation utils: WC, Rot13, Up/Lowcase, Indent,
Justify, Prefix
* $f5 CT-U Use new disk device number
$f6 CT-V Verify file
$f7 CT-W Write range with new name
* $f8 CT-X Exchange cursor character with next character
* $f9 CT-Y Replace (all the other letters were taken!)
$fa CT-Z Goto bottom of screen
* $fb CT-[ Toggle insert mode
* $fc CT-\ Toggle modified flag
* $fd CT-] Toggle indent mode (Indent / Noindent / WordWrap)
* $fe CT-^ Enter Commodore DOS command
* $ff CT- <nothing>
Key Commands 1:
I CODE KEYACTION
- ---- ---------
* $00 <none><nothing>
$01 CT-RETURN Go up one paragraph
* $02 SH-TAB Backtab
* $03 STOP <stop some operations>
$04 SH-HELP <same as HELP>
* $05 CT-2 Clear buffer
* $06 SH-LEFT Word left
* $07 SH-LINEFEED ?
* $08 CO-DEL Rubout
* $09 TAB Tab
* $0a LINEFEED ?
* $0b SH-RIGHT Word right
* $0c CO-UP Goto top of document
* $0d RETURN Split current line (indent not yet implemented)
* $0e SH-ESCAPE ?
* $0f CO-DOWN Goto bottom of document
* $10 CO-LEFT Goto beginning of line
* $11 DOWN Cursor down
* $12 CT-9 Reverse screen on
* $13 HOME <nothing>
* $14 DELETE Delete character
* $15 CO-RIGHT Goto end of line
* $16 CT-UP Page up
* $17 CT-DOWN Page down
$18 CT-TAB ?
$19 CT-LEFT Page left
$1a CT-RIGHT Page right
* $1b ESCAPE <nothing>
$1c CT-3 Directory with block counts
* $1d RIGHT Cursor right
* $1e CT-6 ?
* $1f CT-7 ?
Key Commands 2:
I CODE KEYACTION
- ---- ---------
$80 CT-F1 Function key 9
* $81 CO-1 Set display to 25 lines
$82 CT-F3 Function key 10
$83 SH-STOP ?
$84 HELP Display help message
$85 F1 Function key 1
$86 F3 Function key 3
$87 F5 Function key 5
$88 F7 Function key 7
$89 SH-F1 Function key 2
$8a SH-F3 Function key 4
$8b SH-F5 Function key 6
$8c SH-F7 Function key 8
$8d SH-RETURN Go to next paragraph
$8e CT-F5 Function key 11
$8f CT-F7 Function key 12
* $90 CT-1 Clear document
* $91 UP Cursor up
* $92 CT-0 Screen reverse off
* $93 SH-HOME Cursor home
$94 SH-DELETE Insert one space
* $95 CO-2 Set display to 27 lines
* $96 CO-3 Set display to 30 lines
* $97 CO-4 Set display to 45 lines
* $98 CO-5 Set display to 51 lines
* $99 CO-6 Set display to 29 lines
$9a CO-7 ?
$9b CO-8 ?
$9c CT-5 Display code of current character
* $9d LEFT Cursor left
$9e CT-8 ?
* $9f CT-4 Display directory with byte counts
To delete a range, use CT-M to set the mark for one bound of the range
and move the cursor to the other bound of the range. Then press CT-D to
delete. The range includes both bounding lines. CT-K (kill current line)
is the same as pressing CT-M and then CT-D on the same line.
CT-R recalls the text at the current cursor line. To recall after the
end of the document, add a new blank line to the end, recall, and then
delete the extra line you added. You can recall the kill buffer text as
many times as you wis