cpos[m++] = ERASE_CHAR;
cpos[m++] = erase_char;
static void insch (int n) {    int dir = (n < 0 ? -1 : +1);    int m;    n = (n < 0 ? -n : n);    if (n > cols - curs_x)	n = cols - curs_x;    m = cols - curs_x - n;    check_selection (cpos, cpos+n);    if (dir < 0) {	memmove (cpos, cpos+n, m*TSIZE);	while (n--)	    cpos[m++] = ERASE_CHAR;    } else {	memmove (cpos+n, cpos, m*TSIZE);	while (n--)	    cpos[n] = ERASE_CHAR;    }}