Cursorpos in Lisp:

CURSORPOS is an  LSUBR of  0-3 evaluated  arguments.  If  no arguments  are
given, then the cursor coordinates of  the default output TTY are  returned
as a dotted pair in  the form (line# .   column#).  If args are  specified,
then the result is determined as shown below (returns "T" on success, "NIL"
on failure) and  if the  last arg  is a  TTY output  file then  it is  used
instead of the  default.  Note that  the "T" option  alone will return  the
coordinates of TTY "T" rather than homing the cursor; see "T" below.   With
two numeric args given, the cursor is  moved to the ARG1th line and  ARG2th
column.

These are the  special codes used for  (CURSORPOS [<options>]):

A	Advance to a fresh line. If at beginning of line do nothing,
	 else act like a CRLF.
B	move Backward. Decrements the horizontal position.
	 If the horizontal position is 0, it is set to the horizontal
	 screen size (wraparound from left margin to right margin).
C	Clear screen. The cursor goes to the upper left corner and
	 the whole screen is cleared. On a printing tty (%TOMVU is 0)
	 a CRLF is output, since "clearing the screen" is undefined.
	 If "C" is output to the echo area, only the echo area is
	 cleared, and only the echo area cursor is moved.
D	move Down. The vertical position is incremented. If it becomes
	 equal to the vertical screen size, it is set to 0.
E	clear to Eof. The remainder of the current line, and all lower
	 lines, are erased. The cursor doesn't move.
F	move Forward. The horizontal position is incremented. At the
	 end of the line it wraps around to the beginning of the
	 same line.
H	set Horizontal position. Takes one extra argument: it
	 should be the desired horizontal position setting.
	 The vertical position is not changed. An attempt to
	 set the position beyond a margin will position it at the
	 margin.
I	Outputs a one-position printing character.  Takes an extra
	 argument:  the numeric ASCII code of the desired character.
K	Kill (erase) the character the cursor points at. The cursor
	 does not move. The position erased is the one that would be
	 written in next by ordinary output.
L	clear Line. The current line, starting with the position that
	 the cursor points at, is erased. The cursor does not move.
M	(More) hang up until a character is read in then home-up.
N	(No home-up) similar, but don't home up after the character is
	 read.
P	output a .
Q	output a .
R	Restore cursor position. The cursor is set to the most
	 recently saved value.
S	Save cursor position. Remembers the current cursor position
	 for use with "R". There is no stack for saved cursor
	 positions; only the most recent saved position is remembered.
T	go to Top of screen (home up). The cursor is positioned at the
	 upper left corner of the screen.  Note:  since "T" will be
	 taken to mean output TTY "T" an alternate form must be used.
	 (CURSORPOS 'top), (CURSORPOS 84.), and (CURSORPOS 'T 'T) will
	 all work.
U	move Up. The vertical position is decremented. If it was 0,
	 it becomes equal to the vertical size minus one.
V	set Vertical position. Takes an	argument--the desired vertical
	 position.  An attempt to set the cursor beyond the top or bottom
	 margin will position it as far as allowed in the desired direction.
	 Similarly, "V" will not move the echo area cursor outside the echo
	 area. Note that vertical positions in the echo area are to be
	 specified relative to the top of the echo area.
X	backspace and erase one character ("B" followed by "K").
Z	home down. The cursor is positioned at the lower left corner.
]	obsolete - same as "L".
[	insert line.  The current line and all lines below it are
	pushed down one slot.  A blank line appears at the current
	position.  The cursor does not move.  Works only on terminals
	which have %TOLID set ("\" also).  See :TTYVAR TTYOPT
	for information on %TOLID.
\	delete line.  The current line disappears, and all the lines
	below it move up by one position.  The bottom line becomes
	blank.  The cursor does not move.
^	insert character.  All the characters after the cursor move
	right one position.  The last one moves off the right margin
	and disappears.  A space appears at the cursor, which does not
	move.  Works only on terminals which have %TOCID set ("_" also).
	See :TTYVAR TTYOPT for information on %TOCID.
_	delete character.  The character at the cursor disappears, and
	all the rest of the characters on the line move left one
	position.  A space appears at the end of the line.  The cursor
	does not move.  Note:  it's an underscore, not hyphen.
