Best CP/M text editor

1,513 views
Skip to first unread message

ladislau szilagyi

unread,
Aug 20, 2021, 12:09:49 AM8/20/21
to RC2014-Z80
Hi,

I'm trying to set up my 'CP/M toolset', and I'm looking for a good text editor.

For now, I use E.Meyer's VDE v2.66, I like-it because it's quick, the commands are similar to Wordstar, I could easily configure the arrow-keys, and it can handle large-enough files ( my largest file has 49612 bytes, and VDE tells me I still have 573 available bytes left !!! ). But I'm aware that other existing CP/M text editors might be better than VDE... 

Which is, according to you, the best CP/M text editor?

thanks,
Ladislau

Phillip Stevens

unread,
Aug 20, 2021, 12:32:35 AM8/20/21
to RC2014-Z80

Ladislau wrote:
I'm trying to set up my 'CP/M toolset', and I'm looking for a good text editor.
Which is, according to you, the best CP/M text editor?

My 2c.  ->   Miguel's TE.

Stuart Smith

unread,
Aug 20, 2021, 1:55:34 AM8/20/21
to rc201...@googlegroups.com
I always just used wordstar in plain text mode. Happily edited files larger than memory. 

--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/d2f58520-9a8a-4ecf-a5cd-c67e8975bacan%40googlegroups.com.

Olev Toom

unread,
Aug 20, 2021, 3:44:07 AM8/20/21
to rc201...@googlegroups.com
For smaller files (which fit in memory), i use Turbo Pascal editor. It's compatible with WS and quicker.
And, you'll start program in TP anyway soon :)


david ledbury

unread,
Aug 20, 2021, 4:42:03 AM8/20/21
to rc201...@googlegroups.com
I used to use ZDE16 on the SAM Coupe's CP/M compatible system ProDos -
but other people may have their own favourites.

D
> --
> You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/68a00775-754c-4181-8d27-a0ba7fc15cd6n%40googlegroups.com.

Jeff Greer

unread,
Aug 20, 2021, 8:47:44 AM8/20/21
to rc201...@googlegroups.com
TE is the best I have found.

Sent from my iPhone

On Aug 19, 2021, at 11:32 PM, Phillip Stevens <phillip...@gmail.com> wrote:


--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.

Fred Weigel

unread,
Aug 20, 2021, 10:34:32 AM8/20/21
to RC2014-Z80
I have the following editors on my "A: drive"

ED.COM - standard CP/M editor
EDIT80.COM - microsoft, good for remote editing
WS.COM (WORDSTAR 3.3)
PMATE 3.21 - phoenix software associates
WM.COM (WORDMASTER  1.07A)

For program editing, I prefer PMATE. Note that all of these editors can edit files larger than
memory! Only Wordstar has overlays. WordMaster has a separate on-line help file.

PMATE is a visual TECO -- it is a programmable editor with multiple buffers. WordMaster does
"WordStar" -- written by the same programmer. You should try WM.COM, and *maybe* PMATE.COM.

Pretty much the only reason I keep EDIT80.COM around is that it completes my Microsoft CP/M tool
collection. EDIT80.COM is a clone of the TOPS-10 SOS (Son Of Stopgap) editor. Microsoft even
bundled TOPS-10 FILCOM with it. SOS is what you used when TECO wasn't available and PMATE
is that.

So ED/PMATE, WM/WS, EDIT80 -- The "WS" style is distinct from the others (used by TURBO and M2 as
well). The main difference is that TURBO cannot edit files larger than memory (I think M2 can).

Fred

ladislau szilagyi

unread,
Aug 20, 2021, 11:27:25 AM8/20/21
to RC2014-Z80
Hi,

Thanks for your suggestions, I tend to think that the TE editor is one of the best.
I have tested-it a little, it seems quick and user-friendly.

However, I failed to configure-it to accept text files with lines longer than 80 chars... 

I followed the TE user manual's instructions:

I modified TE.CF :
...
screen.columns = 120
...

then tried to use TECF, but got the following error message : 

J>tecf patch te.com te.cf
TECF: Can't read file.
 
Why? te.com & te.cf are present:

J>sdir te.*

Directory For Drive J:  User  0

    Name     Bytes   Recs   Attributes      Name     Bytes   Recs   Attributes
------------ ------ ------ ------------ ------------ ------ ------ ------------
TE       BAK     2k      9 Dir RW       TE       CF      2k      9 Dir RW
TE       COM    20k    149 Dir RW

Total Bytes     =     24k  Total Records =     167  Files Found =    3
Total 1k Blocks =     23   Used/Max Dir Entries For Drive J:  346/1024

J>

Could this be caused by CP/M being executed in Udo Munk's Z80SIM? I do not know...

I will continue to use VDE & TE in parallel...

regards,
Ladislau

Fred Weigel

unread,
Aug 20, 2021, 12:27:25 PM8/20/21
to rc201...@googlegroups.com
Ladislau

Line length restriction? Just... no...

ED.COM (which comes with CP/M... free). does not have that. And... can edit files larger than memory.

That is my baseline.

WM.COM (wordmaster) imposes a limit, I think that no line can be longer than a screen. Ok, acceptable.
WM *automatically* buffers files if they are too large for memory. It uses "Q" register (TECO) for transfer.
It does have help. It is 10.5k bytes. It does offer help, and also supports macros (like ED.COM).

PMATE.COM supports the ED and WM commands (changing C to M though) It does eat up two lines
of the display. If you know ED and WM, you will be immediately productive, even though PMATE does NOT
use "WS diamond" for full-screen display editing.

PMATE does have a main (automatic) buffer, 10 other buffers and a command area that can all be edited.
Fully programmable -- this offers the best of TECO along with full-screen editing. Size? my PMATE is
24K, but that includes 2K of "permanent" macros. You may want more or less for permanent macros
(these are editing programs - say justify text, capitalize, center, etc).  This is ALMOST full TECO. Now, with TECO:

+0UN QN"E 20UN ' BUH BUV HK
QN< J BUQ QN*10/3UI
QI< \+2*10+(QQ*QI)UA B L K QI*2-1UJ QA/QJUQ
QA-(QQ*QJ)-2\ 10@I// -1%I >
QQ/10UT QH+QT+48UW QW-58"E 48UW %V ' QV"N QV^T ' QWUV QQ-(QT*10)UH >
QV^T @^A/
/

The above program will calculate an arbitrary number of digits of PI. For TOPS-10 TEC124, the command was "39eiPI.TEC$$" to get 39 digits of PI.

Yes, compute PI to arbitrary number of digits, in your text editor. Indeed, EMACS was originally written as a series of TECO macros. And, yes, without comments, it looks like garbage. That was because it was designed to be entered "on the fly". ED.COM follows this philosophy

For example
compile a file myprog.xxx
syntax error in line 123: blargh not defined
(and we know blargh should be blah)
ed myprog.xxx
#a123:sblargue^ZblqahZ^Z
e

and continue.

note that I did not even bother to display the correction. I made it, and continued.
How is that for speed?

wm can do this, and pmate can. ws? not so much -- it is a word processor, not a text editor.

anyway, te is nice,  but very large for what it offers.

Note, that macro would need to be translated to PMATE -- I haven't done it, but eyeballing it,
it would JUST fit.




--
You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/vUxILmiIV5Q/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/a34385ba-709b-438c-a362-48420805137bn%40googlegroups.com.

Fred Weigel

unread,
Aug 20, 2021, 12:52:33 PM8/20/21
to RC2014-Z80
But it is really hard to define "best".

I started with punched cards. Editing is easy -- replace a card...

I then used a PDP-10. TECO was ok, but SOS was a bit better for me. I then used a non-CP/M disk
system with a simple screen editor (very simple). Switched to word processors with a bit of CP/M,
then CP/M exclusively. CP/M had ED, which was universal, and somewhat related to TECO.  These
experiences carry forward; set expectations, and also build "muscle memory". I can still "TECO"
and I am very comfortable with WordMaster and I prefer to write initial drafts of documents in WordStar.
Yes, GUIs may be good, but don't work that well for me. If you know what KIND of editor you like,
we can help match you up. If you are just looking around... we can give guidance as to WHY one
editor is different/better/worse than another. For example, I don't like editors that restrict the size
of text. Some line length restriction is ok, but needs to be large enough to not be bothersome. If I
kept hitting the limit, -or- needed to reconfigure for it, that would be a "don't use" for me.

I really like editing macros. I can think of what needs to be done procedurally, and type it in
quickly. So... short commands: D for delete, and NOT deleteCharacterRight() They may be equivalent,
but really? Not so much. I need the machine to be interactive but only give me information that
I want. I generally find I want a "clean" look. WordStar is far too busy for program editing for me.
WordMaster is JUST my text. I don't need column counter and row counter. But I would like to
have a ruler sometimes to help horizontal alignment.

So, the editor has to support the functions you want, with a look that makes you comfortable.
Let me know what you settle on! (and why)

Fred

ladislau szilagyi

unread,
Aug 20, 2021, 1:58:53 PM8/20/21
to RC2014-Z80
Hi Fred,

just tell me where I can download PMATE.


Is this the right version?

I can hardly wait to try-it :)

Ladislau

Fred Weigel

unread,
Aug 20, 2021, 2:23:34 PM8/20/21
to RC2014-Z80
I will prepare a package for you, and put it on dropbox... That will be a bit later today...

(that is version 3.02 -- the last cp/m version was 3.21) I will bundle in package, and
manuals. And... for PMATE you WILL need the manual.

Fred

Robert Kincaid

unread,
Aug 20, 2021, 6:25:12 PM8/20/21
to RC2014-Z80

My 2cents... I have been using TE for source code that will fit in TE's memory. It's ok and gets the job done. I've started to get used to it, but I have deeply rooted muscle memory for vi. I can tell you how many times I press ESC or : and then have to get things back to where I want them.

There is s (https://github.com/udo-munk/s). I gave that a try a while back from a binary I found, but I couldn't exit out of it. I found the GitHub source to realize that for whatever reason, "q" is a top level command like the nav keys. Ugh... So you can use s as a vi substitute and just remember where the q command is in the hierarchy, or you can do as I did and just edit the source to use ":q" I even added some code to understand ":q!".

The code is pretty readable and well commented. So doing mods should be fairly straightforward. I haven't used it a lot, but so far it seems ok and I can edit with my hardcoded vi neurons *grin*.

Added bonus: The GitHub source will compile on MacOS, Linux or HI-TECH C. You can download the s.com binary directly from the repo if you're happy with that version (and the q command). I would prefer just using regular vi/vim on MacOS, but compiling on MacOS is handy for testing/debuging code changes quickly before building mods for CP/M.

--Robert

ladislau szilagyi

unread,
Aug 21, 2021, 12:13:45 AM8/21/21
to RC2014-Z80
Hi Robert,

wow, I have not used vi since the 90's... but I admit that "S" is a nice text editor.

thanks,
Ladislau

Jay Cotton

unread,
Aug 21, 2021, 1:41:51 AM8/21/21
to RC2014-Z80
Thanks for pointing out the "S" editor.  

I did a test to see how big a file it would handle.  

STDLIB1.C  claims to be 8k but is smaller.  
S J:STDLIB1.C reads to line 177 and stops.

Using S for a large project will require tools to break down files into functions, and force modular programming.

Here is a memory map of my test system.
Start of BIOS   : E600
Start of BDOS   : D806
Start of CCP    : D000

CP/M size       : 59K
Available TPA   : 53.75K
RSX installed   : No

I should test with UDO's z80 simulator.  It seems to allow much larger memory maps.

Tony Nicholson

unread,
Aug 21, 2021, 6:20:12 AM8/21/21
to RC2014-Z80
I responded to a few messages about PMATE on the old USENET newsgroup
comp.os.cpm (you can access this via Google Groups).  If you read the following
threads you'll find the download links that I posted for a couple of versions of
PMATE for CP/M and MS-DOS - and some scanned documentation -


Tony

Pellatonian

unread,
Aug 22, 2021, 8:29:20 AM8/22/21
to RC2014-Z80
Wordmaster (WM.COM & WM.HLP) still works well for me. I bought a pair of used Shugart 8" floppies in a case at a computer fair back around 1986 and found a disk containing Wordmaster in one drive. I have been using that version since then. It's also commonly available on CP/M Internet repositories.

It's a full screen editor with Wordstar-like onscreen controls. The terminal screen control sequences are in a defined location so they can be redefined for different screen protocols and sizes. If you have the original release the source for the screen controls is available so you can recompile it and merge it with the main editor using DDT. It handles files greater than the available memory size (you don't have to care about the buffering in and out like some ancient editors). The online help text is held externally so you can edit it as you wish.

As a product which basically came free and been used for 35 years I guess it has been the most satisfactory piece of software I ever bought.

Andy Nicol

unread,
Aug 24, 2021, 10:18:21 AM8/24/21
to RC2014-Z80
"Best" is of course a matter of taste and priorities, I can only share my opinions and experiences. Given free of charge, and worth every penny. No returns accepted.

I've been using Vi and Vim for about 40 years now, so I was delighted to find Udo Munk's version for CP/M. But it's sufficiently familiar that I think I know what I'm doing, only to be tripped up by a limitation or difference from Vim.

I tried Express and WordMaster but was frustrated by problems getting them set up.

Then I found WordStar 4, another old favourite from the eighties. I got it configured fairly painlessly and it works a treat. WordStar configuration is flexible, allowing users to configure the software to accept keystrokes from a PUTTY window.  Plus I still remember some of the keystrokes, so it's a bit like visiting an old haunt.

WordStar has Document and Nondocument editing modes, and the default can be set to Nondocument for files opened from the command line. This is important because files edited in Document mode will choke the assembler (I think from memory it sets the MSB of some characters in the text file for its own purposes).

Also of note is that WordStar can be configured to know which drives are valid, and more importantly, where to find its overlay files if it wasn't started from the currently selected drive.

Plus WordStar documentation is pretty good, manuals are for 3.3 but still relevant.

http://www.bitsavers.org/pdf/microPro/Wordstar_3.3/Wordstar_3.3_Reference_Manual_1983.pdf



All this was done on my SC131, so I'm looking forward to copying it all onto my RC2014 when I get it set up in the new house.

E Hazen

unread,
Sep 11, 2021, 8:51:15 AM9/11/21
to RC2014-Z80
I think no one else has suggested it, so I'll mention VEDIT.  This was a commercial product from Greenview Data (for all I know you can still buy a windows version).  It was a rather effective full-screen editor which could work in either memory-mapped or terminal mode.  The key bindings were completely customizable, which is either a blessing or a curse.  It was rather unusual for the time in that it could handle files larger than memory.

Also, it had a powerful macro command language so one could do all sorts of automated editing (unfortunately though that command language was essentially a version of the DEC TECO, so a bit cryptic).

Maybe take a look if you can find a copy.

Robert Kincaid

unread,
Sep 12, 2021, 6:48:46 PM9/12/21
to RC2014-Z80
In the never ending search for BEST, I thought I'd try mince (Mince is not complete EMACS). It sounds ideal (except it isn't VI *grin*). I tracked down a couple of different copies, but I can't seem to get it to speak VT100 correctly even though it has a VT100 option in the config program.

Has anyone had success in getting this to run properly on an RC2014 system? It runs and doesn't crash, but it doesn't do the screen formatting properly (even after config). I've tried multiple terminal programs, etc.

Any opinions about its usefulness from experience back in the day?

Another bonus is that there is the GitHub site for something called pmince (portable mince). Where they claim to have it working on a number of more modern platforms in addition to legacy stuff. See https://github.com/johnsonjh/pmince . Look for the mince80 directory.

You run the config.com to select terminal type and options, etc. There is a swap file in the fallback directory, but I don't think you really need it as the config program will create one. I've tried it both ways, reading the swp file and modifying it and creating a new swp file and get the same unsatisfying results.

I'll have to resort to entering a new terminal description by hand I guess...

Robert

Fred Weigel

unread,
Sep 12, 2021, 8:12:24 PM9/12/21
to rc201...@googlegroups.com
Robert

I am not sure about MINCE. VT100 may be the issue. A real VT100 supports VT52 command codes, as
well as VT100.

ESC [ ? 2 l

will cause a VT100 to accept VT52 commands. This is NOT available in ANSI.

FredW


Wayne Hortensius

unread,
Sep 12, 2021, 9:39:53 PM9/12/21
to rc201...@googlegroups.com
On Sun, 12 Sep 2021 15:48:45 -0700 (PDT)
Robert Kincaid wrote:

> Has anyone had success in getting this to run properly on an RC2014
> system? It runs and doesn't crash, but it doesn't do the screen
> formatting properly (even after config). I've tried multiple terminal
> programs, etc.

The VT100 terminal selection does look like it's using VT52 sequences.

But putting in a ANSI definition by hand isn't too bad, as you can see
in the attached pictures.

Regards,
Wayne
definition.jpg
running.jpg

Robert Kincaid

unread,
Sep 12, 2021, 10:25:23 PM9/12/21
to RC2014-Z80
Thanks! Now I don't have to convert the usual ANSI tables to hex codes *grin*. BTW, I was able to build pmince for MacOS with the included GNUmakefile. I imagine it would work for any gcc system. Good to know the mince80 version works too.

Thanks again Wayne,
Robert

Richard Deane

unread,
Sep 13, 2021, 2:40:42 AM9/13/21
to rc201...@googlegroups.com
You don't mention which serial terminal program you are using. Some may support vt52 within vt100. Try ckermit under macos, or try "serial". ckermit has the benefit of a wide variety of legacy terminal types.

Richard 

--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/b6f1f7d1-5b37-41df-96f8-3d6b2fdb87c0n%40googlegroups.com.

Fred Weigel

unread,
Sep 13, 2021, 11:18:54 AM9/13/21
to rc201...@googlegroups.com
Richard

Some terminal emulators do vt100 properly. xterm does.  cool-retro-term does. These two have
vt52 support within vt100.

gnome-terminal does not "screen" does not. c-kermit does not have terminal emulation.
I don't know what "serial" is.



You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/vUxILmiIV5Q/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/CAG2GuRYD2mmxTJTVoBu169JS2poP%2BMbvoXqfoT8tAkggBSVfLw%40mail.gmail.com.

Richard Deane

unread,
Sep 13, 2021, 1:12:44 PM9/13/21
to rc201...@googlegroups.com
just tested ckermit on linux buster on my chromebook, and it definitely supports terminal types, e.g. set terminal type vt52 (fresh make, no pre-built package for buster).

"Serial" is a commercial terminal package for MacOS. When I had access to a mac it was the best I could find at a reasonable price.

Richard


Fred Weigel

unread,
Sep 13, 2021, 2:22:41 PM9/13/21
to rc201...@googlegroups.com
Richard

Ah... on Fedora:

(/home/fred/dl/) C-Kermit>help set terminal

Syntax: SET TERMINAL parameter value
 
SET TERMINAL TYPE ...
  This command is not available because this version of Kermit does not
  include a terminal emulator.  Instead, it is a "semitransparent pipe"
  (or a totally transparent one, if you configure it that way) to the
  computer or service you have made a connection to.  Your console,
  workstation window, or the terminal emulator or terminal from which you
  are running Kermit provides the emulation.
 

Oddly: 

(/home/fred/dl/) C-Kermit>set terminal type vt52
(/home/fred/dl/) C-Kermit>

but... no interpretation of characters actually happens (I connected kermit to my altair-duino and
ran vt100->vt52 and vt52 test sequences -- and the Fedora kermit didn't interpret any sequences -
matched the help output) but... your mileage may vary
.
I did NOT actually compile kermit -- I took the Fedora version (to get updates).

Thanks for the information on "serial"

FredW

Robert Kincaid

unread,
Sep 13, 2021, 3:18:53 PM9/13/21
to RC2014-Z80
Thanks for all the help from everybody. With Wayne's screen shot I was able to quickly create an ANSI terminal definition, and all seems well.

For what it's worth I was using MacOS: minicom, Serial, Cool-Retro-Term and WIn10: TerraTerm and ExtraPutty. Nothing seemed to work with the original VT52/VT100 settings. Although now I've gone through the setup process I bet I could have edited the VT52/VT100 to have an init string to turn on the VT52 emulation - which I gather must be the missing element, at least for terminals that support it. Sometime when I'm feeling curious enough I may try it. But for now, just going with Wayne's ANSI setup. It's probably best for me as it's compatible with all the other programs I have (like WordStar).

So far mince seems like a good choice for those looking for a quick and relatively full featured editor that is not limited by memory size. You can specify the size of the swp file to be whatever size you want. And given we have the luxury of 8Mb disks, I think you can get lots of headroom for large files. The default size is 64K but I set mine up for 128K. However, I have not tested files that large so I don't know if it has any 16bit limits to it's virtual memory addressing (or some equivalent). I can imagine ways it could work in 16bits, so maybe it does.

I can't say I care for the emacs navigation key bindings, but I'll get used to it. I'd prefer the classic wordstar layout, personally.

FWIW, I'm really enjoying this group and the active help everyone is willing to give. Thanks everyone.

Olev Toom

unread,
Nov 27, 2023, 3:42:44 PM11/27/23
to rc201...@googlegroups.com
Hello all!
Please recommend me a good programmer's editor for Intel 8080-powered machine. 
Thing is, we here in Estonia are bringing to life a 8-bit computer we built in 1983, and which went latter into serial production in Russia.
(If you do ask: why people in their own minds would bother themselves building a 8080-based computer in 1983?  then you haven't lived under Russian occupation :P))
WordStar of course works but is a bit bulky.
WordMaster works but has some kinks I haven't ironed out.
So, the best editor that works on 8080, is...

Thank you in advance,
olev


Virus-free.www.avg.com

Richard Deane

unread,
Nov 27, 2023, 4:35:20 PM11/27/23
to rc201...@googlegroups.com
I used MagicWand as my programming editor and word processor for project docs. 
Z80 s100 with hard disk. Programming in Pascal (Transam TCL Pascal because it just worked, a dream), though I like PLI-80.
Richard 

Steve Gibson

unread,
Nov 27, 2023, 7:55:50 PM11/27/23
to rc201...@googlegroups.com
I like the TE editor (written by Miguel Garcia) with Ladislau's improvements:

https://github.com/Laci1953/RC2014-CPM/tree/main/te

--
Steve Gibson 
st...@stevegibson.com
   :___;
{ o , o }
| ) ___ )
- " - " -

Patrick Jackson

unread,
Nov 27, 2023, 8:52:26 PM11/27/23
to RC2014-Z80
The TE editor is definitely one of the best, just be sure to get the exact version that fits your needs (ANSI vs VT100, for example)
ZDE may be more your speed, options are good to have.

I use Word Master for my 8080 systems because it works natively on it and is very lightweight

Jerry Prusa

unread,
Nov 27, 2023, 10:22:38 PM11/27/23
to RC2014-Z80
Has this resource been mentioned yet?
Reply all
Reply to author
Forward
0 new messages