/*	Driver file for Newbury 7008
 *
 *	- use with UMIST.def
 */

new_move(srow, scol)
register int srow, scol;
 {  /* ^V, col+040, row+040 */
    ttyout('\026');
    ttyout(scol+040);
    ttyout(srow+040);
 }

new_setup()
{
	ictab[004] = NL;
	ictab[012] = DOWN;
	ectab[012] = IGN;
	ictab[014] = BOTSCREEN;
	ectab[014] = IGN;
	ictab[016] = ectab[016] = ERASE;
	ictab[031] = LINEERASE;
	ectab[031] = IGN;
	ictab[035] = ectab[035] = CHMODE;
}

struct TERMINAL new_ter =
 {  /* nrows, ncols - size of the screen */
    TER_ROWS, TER_COLS,

    /* up, left, c_MODIFY, c_CONTROL, c_BLOB - single characters */
    { '\013', '\010', 0, '^'|0200, ' '|0200 },
        /* onechar */

    /* rollup, pushdown, pushup, pulldown, pullup STRINGS */
    /* and hardscroll boolean */
    { "\n", 0, 0, 0, 0, false },
        /* scrseq */

    /* scrollup, scrolldown PROCEDURES */
    scr0_up, scr0_down,

    /* splitdown, splitup, joindown, joinup STRINGS */
    { 0, 0, 0, 0 },
        /* splitseq */

    /* split_row, join_row PROCEDURES */
    split0, join0,

    /* clearscreen, *clearhead, *cleartail STRINGS */
    { "\037", 0, "\031" },
        /* clrseq */

    /* clr_screen, clr_head, clr_tail PROCEDURES */
    clrs1, clrh0, clrt1,

    /* inspace, makespace, rubout, erase STRINGS */
    { 0, "\017", 0, "\016" },
        /* charseq */

    /* ins_char, del_char PROCEDURES */
    insc2, delc2,

    /* bright, normal STRINGS */
    { "\005", "\006" },
        /* vidseq */

    /* in_two, out_two PROCEDURES */
    no_char, no_char,

    /* move PROCEDURE and nmove integer */
    new_move, 3,

    /* setup, special, pad PROCEDURES */
    new_setup, no_int, no_int

 };

