MOVE_VERTICAL
  Moves the active editing position up or down in the current buffer by the
  number of rows specified.
  Syntax
     MOVE_VERTICAL (integer)
  Parameters
     integer    The number of rows the editing position moves.  Positive
                values are down (toward the bottom of the buffer).  Negative
                values are up (toward the top of the buffer).
  Comments
  By default, DECTPU keeps the cursor at the same offset on each line.
  However, since DECTPU counts a tab as one character, regardless of how
  wide the tab is, the column position of the cursor may vary greatly from
  line to line even though the offset is the same.
  To keep the cursor in approximately the same column on each line, use the
  following statement:
     SET (COLUMN_MOVE_VERTICAL, ON);
  This statement directs DECTPU to keep the cursor in the same column unless
  a tab character makes this impossible.  If a tab occupies the column
  position, DECTPU moves the cursor to the beginning of the tab.
  Example
  The following procedure moves the current character position by eight-line
  sections and puts the cursor at the start of a line:
     PROCEDURE user_move_by_lines
        IF CURRENT_DIRECTION = FORWARD
           THEN
              MOVE_VERTICAL (+8);          ! down a section
           ELSE
              MOVE_VERTICAL( -8);          ! up a section
        ENDIF;
        MOVE_HORIZONTAL (-CURRENT_OFFSET); ! go to start of line
     ENDPROCEDURE;
  Related topics
     CURSOR_VERTICAL   MOVE_HORIZONTAL   SET(COLUMN_MOVE_VERTICAL)