COMMAND: EV
VEDIT PLUS Ver. 2.33b 04/27/87
This is the source code for VEDIT ⧸ VEDIT‑PLUS for CP/M, version 2.33b (04/27/87), the commercial text editing system and text-oriented programming language, produced by Theodore Green and Greenview Data Inc. (formerly CompuView Products, Inc.) of Ann Arbor, Michigan.
This incarnation of VEDIT was created in 1979 and was commercially supported until 1988 (when it was superseded by VEDIT 3) and is the direct predecessor of the current VEDIT product available from VEDIT, Inc.
This VEDIT ⧸ VEDIT‑PLUS source code can be assembled to produce binaries compatible with various processors (8080, Z80, etc.) and operating systems (CP/M, MP/M, CDOS, etc.).
Historically, compatible VEDIT ⧸ VEDIT‑PLUS versions were adapted for CP/M‑80, MP/M‑80, CDOS, CP/M‑86, MP/M‑86, Concurrent CP/M‑86, SCP 86‑DOS, MS‑DOS, Cromix, and Turbo DOS.
Later versions were available for PC‑MOS/386, CP/M‑68K, IBM 4960/FlexOS, IBM OS/2, UNIX/Xenix, QNX, and Microsoft Windows (both 16-bit Windows 3.1 and 32-bit Windows 95/NT).
Companion programs (i.e. V‑PRINT, V‑SPELL, a Z80‑8086 Translator, etc.) were also produced.
(from the VEDIT User's Manual)
VEDIT is an editor designed to take full advantage of a CRT display to make your word processing and program development editing as fast and easy as possible. VEDIT's "Visual Mode" offers true "What-you-see-is-what-you-get" type editing, which continuously displays a region of your file on the screen and allows any changes made to the screen display to become the changes in the file. You can change the screen display by moving the displayed cursor to any place in the file and then typing in new text or typing an edit function key. These insertions, deletions, and corrections are immediately seen on the screen and become the changes to the file.
You can also perform the common word processing operations of wrapping words at the end of lines and formatting paragraphs between right and left margins. It is easy to print any portion of the text being worked on. Horizontal scrolling allows editing of very long lines. Ten scratchpad buffers may be used for extensive "cut and paste" operations. Powerful search and selective replace operations simplify editing. Other features, such as automatic indenting for structured programming languages, simplify and enhance program development editing.
VEDIT also provides a very flexible and powerful "Command Mode", which serves the dual purpose of separating the less commonly used functions from the "Visual Mode", and of making VEDIT a text oriented programming language. Repetitive editing operations can be performed and blocks of text may be copied or moved within the current file and other files in an almost unlimited manner. The extensive file handling allows multiple files to be edited, split, and merged, other files to be viewed, and specified portions of other files to be extracted. The command macro capability allows complex editing tasks to be performed automatically. Examples of such tasks include numerous search/replace operations on multiple files and source code translations. The command macros can be saved on disk for future use. Online help is available.
You can edit files of virtually any size with little concern over the actual size of the files. You can also recover from common disk write errors, such as running out of disk space, by deleting files or inserting another disk.
Since so many different hardware configurations, keyboards, editing applications, and personal preferences exist, VEDIT is supplied with a customization (installation) program in order to let users create versions of VEDIT which are most suitable to their hardware, keyboard, applications, and preferences.
Currently, the full VEDIT‑PLUS (both Z80 and 8080) configurations, along with the TRS‑80 Model II variants, have been built and tested. The Pπceon V‑100 video variant has not yet been tested.
VEDIT ⧸ VEDIT‑PLUS is built using either the Technical Design Labs, Inc. Z80 Relocating/Linking Disk Assembler (TDL ZASM) version 2.21 (1978), or the Phoenix Software Associates Ltd. Macro Assembler (PSA PASM) version 1.0 (1980).
The VEDIT ⧸ VEDIT‑PLUS sources are closely integrated with the TDL ZASM ⧸ PSA PASM conditional build system, and rely heavily on the features and quirks of these particular assemblers.
TDL ZASM ⧸ PSA PASM only outputs diagnostics to the CP/M LIST
device, usually a line printer. Be sure to have a list device
configured and online if you need to examine the assembler output.
Be aware that TDL ZASM ⧸ PSA PASM make minimal distinctions between non-fatal warnings and fatal errors in the build summary. Some (non-fatal) errors currently occur and are not of major concern. Determining the actual error severity requires carefully examining the output sent to the list device.
The source code was very lightly modified to support building with
these particular assembler versions. These changes include removing
the DATE
definition, and a small patch to VEDITT3
to expose the
HCRSOF
symbol when targeting the 8080/Z80.
The HEX output produced by these assemblers can be directly converted
to an executable COM file using the HEXCOM
utility.
For Z80 variants, the final executable can be reduced in size by about
25% while remaining directly executable using the POPCOM
compressor.
- Working versions of these tools are included in the
dev
directory of this repository for convenience — they are not an official part of the VEDIT ⧸ VEDIT‑PLUS source distribution.
The following cross-development tools are highly recommended:
-
ccom is a cross-platform CP/M‑80 2.2 emulator that supports redirecting the list device output to a file, suitable for running the
ZASM
,PASM
, andHEXCOM
programs on a UNIX-like host. It is available as part of the Portable MINCE repository. -
cpm is Joe Allen's portable CP/M‑80 2.2 emulator. Although it does not support saving the list device output, it's
BDOS
simulation makes it suitable for running thePOPCOM
executable compressor. -
tnylpo is yet another CP/M‑80 2.2 emulator, written by Georg Brein, with excellent compatibility and curses-based VT‑52/VT‑100 terminal emulation.
Full system simulators (e.g. Z80PACK, Open SIMH, YAZE‑AG, etc.) are also available and useful for cross-development.
-
Build example:
>PASM VEDPLUS.ASM PSA Macro Assembler [C12011-0102 ] C. 1980 by Phoenix Software Associates Ltd. VEDIT (0) or VEDIT PLUS (1) ?: 1 Full version, Z-80, CRT (1) Full version, Z-80, Memory mapped (2) Full version, 8080, CRT (3) note:Versions 1-8 have I/O polling Full version, 8080, Memory mapped (4) set on and org. @ 0000H. CRT Mini version, Z-80, CRT (5) versions are 24X80 while MEM Mini version, Z-80, Memory mapped (6) mapp`d versions are 16X64. Mini version, 8080, CRT (7) Mini version, 8080, Memory mapped (8) CRT emulation is always ON. Full version, Z-80, Model II, P&T (9) Full version, Z-80, Model II, Gen (10) Full version, Z-80, Piiceon @ 90H (11) Other version made to custom specs.(12) enter a version number (1 to 12) : 3 INCLUDE PRINT FORMATTER? (0=NO) (1=YES): 1 INCLUDE WINDOWS? (0=NO) (1=YES): 1 DEMO VERSION? (0=NO) (1=YES): 0 DEVELOPMENT VERSION? (0=NO) (1=DEVELOPMENT) (2=ALPHA) (3=BETA): 0 PRODUCE LISTING? (0=NO) (1=YES) (2=CUSTOMER PATCH ONLY): 0 VEDITT3 VEDITIO VPLUSB1 VEDITF1 VEDITF2 VEDITC1 VPLUSE1 VEDITC2 VEDITC4 VPLUSSR VEDIT-CP VPLUS-R1 VEDITV0 VEDITV1 VEDITV2 VEDITW1 VEDITV3 VEDITV4 VEDITG2 VEDIT VEDITT3 VEDITIO VPLUSB1 VEDITF1 VEDITF2 VEDITC1 VPLUSE1 VEDITC2 VEDITC4 VPLUSSR VEDIT-CP VPLUS-R1 VEDITV0 VEDITV1 VEDITV2 VEDITW1 VEDITV3 VEDITV4 VEDITG2 Errors Were Detected ***** >HEXCOM VEDPLUS HEXCOM VERS: 3.00 FIRST ADDRESS 0100 LAST ADDRESS 89CD BYTES READ 833E RECORDS WRITTEN 12
-
With any luck, you will now have a working
VEDPLUS.COM
executable.
-
The files that were shipped on the original CP/M‑80 and CP/M‑86 distribution media are included in the
disk
anddisk/86
directories, respectively.- This includes the
INSTALL.COM
/INSTALL.CMD
andINTCOM.COM
utilities used to tailor the (uncompressed, if usingPOPCOM
on CP/M‑80) executable to your specific system.
- This includes the
-
Help files are included in the
hlp
directory. These help files should be verified and possibly modified to ensure the key bindings or other source customizations match what you are "shipping to the customer". -
The
zilint
directory contains CompuView's Z80‑8086 Translator macros. -
The
bin
directory contains a pre-built CP/M‑86 VEDIT‑PLUS executable.
- A few files still need to be located:
- Building for CP/M‑86 (or MS‑DOS), if even possible (as the sources
seem to support), needs to be worked out and documented.
- It seems that when building for 8086, the sources would be
further translated by means of a currently unknown program;
many such programs were historically commercially available,
including CompuView's own Z80‑8086 Translator (which,
unfortunately, does not include the required
MAC
source files). - When trying to assemble with
P8086
defined, two missing source files,MAC1.ASM
andMAC2.ASM
, are referenced. It is assumed that these files would have been part of the currently unknown translation package (or cross-assembler software). - Further investigation is required.
- It seems that when building for 8086, the sources would be
further translated by means of a currently unknown program;
many such programs were historically commercially available,
including CompuView's own Z80‑8086 Translator (which,
unfortunately, does not include the required
- VEDIT ⧸ VEDIT‑PLUS for CP/M is freely redistributable for non-commercial purposes.
- VEDIT Manual (1987):