       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


                                                              
                                  dd                                         
                                  dd                                       
                                  dd
               vv     vv     ddddddd     oooooo 
                vv   vv     dd    dd    oo    oo
                 vv vv      dd    dd    oo    oo
                  vvv        dddddd      oooooo



               ********************************** 
               *           USER MANUAL          *
               **********************************     


                        Table of Contents

-----------------------------------------------------------------
      Section   Title                            Page
-----------------------------------------------------------------

        1       Overview of VDO..................  1
        2       Advantages of VDO................  3
        3       Disadvantages of VDO.............  3
        4       Installation/setup...............  4
        5       Operation........................  6
        6       Cursor control...................  7
        7       Single keystroke commands........  8
        8       Quick commands...................  9
        9       Block commands................... 10 
       10       Help commands.................... 12
       11       Error handling................... 13
       12       Future plans..................... 14

Appendices

        A       Terminal List.................... 15


















                                1





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



1.   Overview 
    VDO  (Video  Display Oriented) Editor is a small (7k)  ASCII 
file  full  screen editor designed for use  under  CP/M  2.x.  It 
originally appeared in a BYTE article by Richard Fobes (BYTE 9/82 
and  10/82).   It  then  underwent  a  series  of  revisions  and 
modifications by the following firms and individuals:
          Spite Software
          Bill McTeer
          Don Krantz
          Mike Rejsa
          Don Krantz (again)
     This is revision 2.5, a major enhancement of the editor. The 
improvements made in this revision include the following:

     - Support for terminals not featuring line insert/delete.
     - Expanded terminal definitions.
     - Default drive logging.
     - Default drive directory display.
     - Revised menu structure.
     - Adjustable help level and help menus.
     - Added support for hiliting, for terminals that support it.
     - Implemenation of a 128 byte type-ahead buffer.
     
     VDO  is  a  memory based editor - that means that  both  the 
editor  and the file being edited reside in memory.  With  a  64K 
CP/M  system,  that  gives you a maximum file size of about  52K. 
Since you will probably use this for program source  files,  that 
ought to be plenty. If not, there's always WordStar.     VDO  uses
a small of standard WordStar keystroke  commands. 
Where  possible  the keystrokes to activate a VDO  operation  are 
exactly the same as for WordStar.

























                                2





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


2.   Advantages to VDO 
    VDO's major advantage over WordStar and other screen editors 
is its small size - only 7K of disk space is needed,  as  opposed 
to  60+ for WordStar.  A minor advantage is VDO's speed - with no 
overlay files to swap in and out,  VDO seems very fast.  And with 
the  type-ahead buffer you don't have to wait for the display  to 
catch  up  with  you.   Another  advantage  it  now  has  is  the 
installation   module   that   allows   menu   driven    terminal 
installation.  A number of terminals  re currently supported (see 
appendix A). 
3.   Disadvantages to VDO 
    VDO  lacks  many features found in WordStar.  It is  a  file 
editor,  not  a word processor.  However,  most of the  important 
features  are  implemented,  and more are on the  drawing  board. 
Section 11,  Future Plans, outlines some of the proposed features 
still to be added.









































                                3





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



4.   Installation/setup

       To  get started with VDO,  you need to set a few things up 
first.  This distribution package contains a number of files that 
make  up  VDO v2.5.  The steps needed to implement  VDO  on  your 
system are listed below.

  1.  Extract  all  of the member files from VDO25.LBR,  using  a 
library utility such as NULU, LU, LSWEEP, etc.

  2.  Unsqueeze all of the files. If you are using NULU or LSWEEP 
you  can  extract  and  unsqueeze  at  the  same  time.  See  the 
respective doc files for details.

  3.  Rename the resulting files according to the table below.

        From                To
        -----------------   -----------------
        VDO25.OBJ           VDO.COM
        VINST11.OBJ         VINST.COM
        VTERM.DAT           VTERM.DAT
        VDO25.MAN           VDO25.MAN
        VDO25.NOT           VDO25.NOT

  4.   VDO  as distributed is installed for the Kaypro  computers 
without hiliting. If this installation fits your needs, skip this 
step.  To install VDO.COM,  type VINST<CR>.  This will start  the 
install module written for the editor.  The user is then prompted 
for  the name of the source file (i.e.  VDO.COM) and the name  of 
the  file  to write the installed version of the editor to  (i.e. 
VDONEW.COM). If you enter a <CR> for the second filename the file 
will  be  overwritten.  A  menu of available  terminals  is  then 
displayed,  allowing the user to select a terminal to install  or 
exit  the  program.  If a valid terminal is  selected,  once  the 
selection  is confirmed the editor will be installed with the new 
terminal control codes,  the user will be informed and the progam 
will terminate.

  5.   You  should  now have a copy of VDO ready to run  on  your 
system.  Type VDO<CR> to start it up. Once inside the editor, try 
various commands,  watching the results to ensure that the editor 
is  properly  installed.  If it doesn't  look  right,  there  are 
several  possibilities.  It  may not be installed for the  proper 
terminal  type.  Check your owners manual and make sure you  have 
selected  the  proper terminal.  If it still  looks  screwy,  the 
terminal definition may be invalid.  If you suspect this,  gather 
together  all the video control information about  your  terminal 
that you can and contact the author via one of the methods listed 
on the title page of this document.

  6.   If  you want to change the initial settings of things such 
as the help level,  insert toggle,  etc. here is what you do. Run 
up  VDO  and  adjust everything to the way that you  want  it  to 
initialize.  Then exit VDO.  Now type DDT VDO.COM. When DDT stops 



                                4





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


loading  and displays it's stats,  type G0 or a ^C to  exit.  Now 
type  save 27 VDO.COM.  You have now created a custom version  of 
VDO for your use.





















































                                5





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



5.   Operation of VDO 
    VDO is started by tying either:VDO     -or-VDO d:filename 
    In the first version,  where no filename is  specified,  VDO 
will create a new file when you exit,  asking for the filename at 
that  time.  If the second version is used,  VDO will attempt  to 
open the specified file. If no file of the specified name exists, 
VDO  will display an error message.  You may continue  from  that 
point,  and the name specified will be used to save the new file. 
If the file specified can be located,  VDO will load the file and 
place  the  cursor at the start of the file.  In any of  the  the 
three situations, you will be ready to start editing the file.    
 VDO's  commands are broken into four  major  groups:  Cursor 
Control,  Quick  Commands,  Block  Commands  and  Help  Commands. 
Several  minor  commands  are also implemented.  Anything  not  a 
control character which can't be interpreted as a command will be 
entered into the file as text. 
    All  input  to  the  editor,  with the  exception  of  pause 
prompts,  is buffered in a 128 character type-ahead buffer.  This 
means  that you don't have to wait for the editor or  display  to 
catch  up to you,  you can just keep typing.  Although I am not a 
touch-typist,  I can get going at a fair rate and I have ran into 
no  serious  problem over-running the buffer.  Characters may  be 
lost  during disk reads/writes,  due to the fact that the  buffer 
routines are not true interupts.
































                                6





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


6.   Cursor Control 
    The standard WordStar cursor controls ^A,  ^S,  ^D,  ^F, ^E, 
^X, ^R, ^C are all implemeted, and all work pretty much as you'd expect. 
Definitions are: 
    ^S   move cursor a character to the left 
    ^D   move cursor a character to the right 
    ^A   move cursor a word to the left 
    ^F   move cursor a word to the right 
    ^E   move cursor up a line 
    ^X   move cursor down a line 
    ^R   move a page (usually about 18 lines) up
    ^C   move cursor a page down













































                                7





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


7.   Single Keystroke Commands 
These commands are all activated by single keystrokes.
RETURN  and TAB are both accepted at any time,  and entered  into 
the file as text.
^L   repeats last ^QF or ^QA  (see Quick commands), using same
     options.
^P   Enter  a  printer code - The next character typed  will  be 
     entered into the text as-is,  even if it normally has  other 
     significance  (e.g.  ^P^L will enter a ^L into the text file 
     rather than doing a "repeat find" operation).
^V   toggle Insert mode on or off
^T    delete  one word to the right - how this works  is:  first,    
      delete  character  under  cursor.   Next  delete  following 
      displayable characters (doesn't include control  characters 
      displayed).  Next, delete following white space (blanks and 
      control characters) except for tabs or end-of-lines.
^Y   delete entire line cursor is on
^G   delete character right at (under) cursor
DEL  delete character left of cursor 
    When  moving  the  cursor,  the display will adjust  to  the 
cursor  position.  You  can't  move the  cursor  off  the  screen 
accidentally. If a line is too wide to fit on the screen, it will 
scroll  left  automatically when the cursor travels off the  left 
end  of  the screen.  The column count on the  status  line  will 
reflect  the  correct  logical  column  at  all  times.   Control 
characters do not count as occupying a logical column.































                                8





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


8.   Quick Commands 
    The  Quick Commands are all accessed by typing a  Control-Q. 
If in Normal or Novice level,  a menu will display showing  Quick 
options.  The  Quick commands,  with one exception,  all  involve 
moving the cursor to a different position in the text quickly.
^QR  places the cursor at the start of the text.
^QC  places the cursor at the bottom of the text.
^QB  places  the cursor at the marker for the beginning  of  the 
     block, if this marker is set (see ^K B).
^QK  places the cursor at the marker for the end of the block, if 
     the marker is set (see ^K K).
^QF  allows  you to specify a string to search for in the  text. 
     This  string  may  not  include  carriage   returns.   After 
     selecting 'F',  VDO will ask for the string to look for (the 
     "target" string). Type in the string, then press RETURN. VDO 
     will  next  ask if you wish to ignore upper and  lower  case 
     differences.  If you do not press "Y",  VDO will look for  a 
     string  capitalized  exactly as you capitalized  the  target 
     string.  Pressing   a "Y",  "y",  or "^Y" will cause VDO  to 
     treat  upper  and lower case letters as  exactly  identical. 
          Next,  VDO will ask if you wish to look backwards  from 
     the cursor position. If you do not answer "Y", "y", or "^Y", 
     VDO will look forward from the cursor postion. 
         When  VDO finds the target string in the text,  it will 
     move the cursor to that position and display the surrounding 
     text.  If  the string is not found,  an error  message  will 
     display  and  the  cursor will be returned to  the  starting 
     position.
^QA  Find-and-replace.  Works  just like ^QF,  except  when  the 
     string is found,  a string of your choice is substituted for 
     the target string. 
    Note:   Strings  containing  Carriage  Returns  may  not  be 
     searched  for,  but  any  other  control  character  may  be 
     included in the target string. (both ^QA and ^QF)
^QT  Set tab stops.  VDO allows tabs to be set to 8, 2, 4, or 16, 
     with  the default at 8.  This is a dynamic process,  and  is 
     used mainly for C,  Ada, and Pascal programmers for variable     
     indentations.



















                                9





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


9.   Block Commands 
    The  block commands are all accessed by typing a  Control-K. 
If  in  Normal or Novice level,  a menu will appear with  second-
keystroke options.  Not all Control-K commands necessarily relate 
to marked blocks. Block commands mainly operate on large portions 
of  the text.  A "Block" is a section of the text  file  begining 
with  the  Block  Start marker,  and ending with  the  Block  End 
marker, which you may set at any point in the text. 
    Attempting  an  operation  which requires the blocks  to  be 
marked  will  generate  an  error if  the  blocks  aren't  marked 
properly - i.e. the beginning or end not marked, or the block end 
marker prior to the block start marker.
^KB  Set block start marker.
^KK  Set block end marker.
^KC  Copy  marked block to the cursor  position.  Block  remains 
     marked at its original position, a copy of the block appears 
     at the cursor,  the cursor is positioned at the start of the 
     copy.
^KV  Move marked block to the cursor position.  The marked  block 
     is removed from its position and appears at the cursor.  The 
     markers  disappear and the cursor is placed at the start  of 
     the moved material. A block can't be moved "into itself".
^KY  Delete marked block.  The marked block is removed from  the 
     file and the cursor remains where it is.
^KW  Writes the marked block into a file of its own.  You specify 
     the new filename.
^KR   Reads  a  disk file into the current  file  at  the  cursor 
      position. You specify the filename.
^KP  Print the file.  You will be asked for printer setup codes, 
     which are entered as you wish them sent.  Example:  You wish 
     to send ESCAPE B to the printer prior to printing. Press the 
     ESCAPE key,  then the B key, then RETURN. Note: You will not 
     be  able  to send any codes for which keystroke  equivalents      
     don't  exist,  and  you will not be able to send the  RETURN 
     code (ASCII CR, hex 0DH, decimal 13).
^KZ  Zaps (erases) current file from memory (does not affect  any 
     disk versions of the file), and erases the filename.
^KX  End  of  Edit.  Saves the file under the current  name  and 
     creates  a backup file if a version is on disk  already.  If 
     VDO  was invoked without a filename,  or if you  ZAPped  the 
     file, VDO will ask for a new filename.
















                               10





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton


^KQ  Abandon file - any changes to the file (unless you did a ^KS 
     are abandoned. Any disk versions of the current file are not 
     affected.
^KS  Save and continue.  Saves the file as it appears in memory, 
     and continues the editing session. Used in case of failure.
^KF  Displays  a  directory of the currently  logged  drive/user 
     area.

^KL  Change logged drive.  Upon selection,  the currently  logged 
     drive  is  displayed  and the user is prompted for  the  new 
     drive to log.


To change disks,  remove the old diskette, insert the new one, do 
a ^KL and log the new diskette. VDO resets the disk system before 
writing files,  so the disk may changed between reading a file in 
and saving a file,  or in case of system failure (e.g. DISK FULL, 
BAD SECTOR).







































                               11





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



10.  Help commands

     The help commands are accessed by typing a Control-J.  If in 
Normal or Novice level,  a menu will appear with second-keystroke 
options.  From  this  point  all of the  on-line  information  is 
available  through  various menus.  The help level  may  also  be 
adjusted.


^JH   Set help level.  The current help level and definitions are 
displayed.  The user is then prompted for the help level desired. 
The editor as distributed defaults to Novice on startup.  In this 
mode  all  menus,  including  basic  cursor  control  info.,  are 
displayed whenever an extended command is initiated (^K, ^Q, ^J).
In Normal mode the basic cursor control info.  is suppressed.  In 
Expert  mode  all  menus are  suppressed.  The  menus  are  still 
available through the help comamnds, ^J, of course.

^JK  Display Block Command menu.

^JQ  Display Quick Command menu.

^JM  Display basic cursor control menu.

^JJ  Display help function menu.































                               12





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



11.  Error Handling 
    VDO  has 9 editing errors which may occur,  which clear  the 
screen,  display a message,  and wait for you to press the ESACPE 
key to clear the error display. The messages are:
FILE  TOO BIG - occurs when loading a file to start  the  editing 
session  or using ^KR.  In the case of ^KR,  none of the file  is 
retained:  the  text remains as it was before you attempted  ^KR. 
This  message may also occur when attempting to insert text after 
the memory size of your system is exceeded.
INVALID  KEY  - occurs when an entry contains an unexpected  key. 
Can happen during text entry when an undefined control  character 
is  typed  (e.g.   ^O),  or  when  entering  filenames  if  bogus 
characters are entered as part of the filename (e.g.  "space") or 
if the filename can't be properly formed.
INPUT/OUTPUT  FAILURE  - occurs when a requested  file  can't  be 
found  during  initial load or ^KR,  or when any  system  failure 
occurs (e.g.  DIRECTORY FULL,  BAD SECTOR,  R/O).  Can also occur 
when trying to read an empty file.
STRING   NOT  FOUND  - occurs  during  find  or  find-and-replace 
operations if the target string can't be located.
DISK FULL - self explanatory. You may insert another disk and try 
again.
BLOCK NOT MARKED - occurs when attempting a block operation which 
require the block to be marked if both the block start and  block 
end  markers aren't marked or if the end is prior to the start of 
the block.
BLOCK STRADDLES CURSOR - occurs when trying to move a block  into 
itself.  The  cursor  can't be inside the block when  copying  or 
moving a block.
ILLEGAL TAB STOP - occurs when setting dynamic tab stops,  if you 
do not enter an valid tab stop number (2,  4, 8, 16 are the valid 
numbers).
























                               13





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



12.  Future Plans

     Well,  v2.5 saw several goals realized,  among them expanded 
terminal defs., initial support of hiliting, directory functions. 
There  are  still  more improvements planned.  Some of  the  ones 
slated for the next version at this time are:


     - Macro capability.
     - A deletion storage buffer (to retract mistakes).
     - Expanded use of hiliting and underlining.
     - Place markers.
     - Expanded installation procedure,  to allow a more  elegant 
       method of creating custom versions.
     - Displayable block markers.

     Suggestions are welcome and should be directed to me via one 
of  the  systems listed below.  VDO is a fine editor  and  should 
prove to be a useful addition to anyones library. Enjoy!

                          James Whorton
                            04/28/85

Suggestions, complaints, comments should be directed to:

OBBS Remote System
(402) 346-4206
300/1200 baud, 11:00 PM - 4:00 PM weekdays, 24 hours weekends
To: Sysop

     or

DRBBS
(402) 896-3537
300/1200 24 hours
To: James Whorton




















                               14





       VDO vers. 2.5   04/28/85   (c)1985 James H. Whorton



A.   Terminal List

     The  following terminals are supported by this  distribution 
package:

          Kaypro, no hilite        Kaypro with hilite
          Osborne 1                Hazeltine 1500
          Hazeltine Esprit         Lear-Siegler ADM-20
          Lear-Siegler ADM-31      Televideo 912/920/92
          Morrow MDT-20            Zenith
          Liberty                  Wyse WY-100/200/300
          Epson Geneva             Osborne Exec
          ADDS 20/25/30            ADDS 40/60
          ADDS Viewpoint-1A        Qume
          Soroc 120/Apple CP/M     Soroc new models
          Visual 200

     Future   revisions  will  support  a  larger  selection   of 
terminals.  Custom terminal defs.  are also avail. If interested, 
contact the author.


                           End of File

































                               15
     