term_pos_t
term_pos_t vb_scr_size; /* (b) Screen dimensions. */
term_pos_t vb_cursor; /* (u) Cursor position. */
term_pos_t vb_mark_start; /* (b) Copy region start. */
term_pos_t vb_mark_end; /* (b) Copy region end. */
void vtbuf_copy(struct vt_buf *, const term_rect_t *, const term_pos_t *);
void vtbuf_init(struct vt_buf *, const term_pos_t *);
void vtbuf_grow(struct vt_buf *, const term_pos_t *, unsigned int);
void vtbuf_putchar(struct vt_buf *, const term_pos_t *, term_char_t);
void vtbuf_cursor_position(struct vt_buf *, const term_pos_t *);
void vt_termsize(struct vt_device *, struct vt_font *, term_pos_t *);
vtbuf_dirty_cell(struct vt_buf *vb, const term_pos_t *p)
vtbuf_copy(struct vt_buf *vb, const term_rect_t *r, const term_pos_t *p2)
const term_pos_t *p1 = &r->tr_begin;
vtbuf_init(struct vt_buf *vb, const term_pos_t *p)
term_pos_t p;
vtbuf_grow(struct vt_buf *vb, const term_pos_t *p, unsigned int history_size)
rowssize = history_size * sizeof(term_pos_t *);
vtbuf_putchar(struct vt_buf *vb, const term_pos_t *p, term_char_t c)
vtbuf_cursor_position(struct vt_buf *vb, const term_pos_t *p)
term_pos_t s, e;
term_pos_t s, e;
vtterm_cursor(struct terminal *tm, const term_pos_t *p)
vtterm_putchar(struct terminal *tm, const term_pos_t *p, term_char_t c)
const term_pos_t *p)
term_pos_t size;
term_pos_t size;
term_pos_t size;
vt_termsize(struct vt_device *vd, struct vt_font *vf, term_pos_t *size)
term_pos_t size;
term_pos_t size;
term_pos_t size;
term_pos_t size;
terminal_set_cursor(struct terminal *tm, const term_pos_t *pos)
typedef void tc_cursor_t(struct terminal *tm, const term_pos_t *p);
typedef void tc_putchar_t(struct terminal *tm, const term_pos_t *p,
const term_pos_t *p);
void terminal_set_cursor(struct terminal *tm, const term_pos_t *pos);