-void vt102_cursor_normalize (VT102 * v, int do_wrapscroll, int use_margins);
-void vt102_cursor_motion (VT102 * v, int x, int y, int wrapscroll);
-void vt102_delete_from_line (VT102 * v, CRT_Pos p);
-void vt102_parse_esc (VT102 * v, int c);
-void vt102_parse_csi (VT102 * v, char *buf, int len);
-void vt102_status_line (VT102 * v, char *str);
-void vt102_parse_char (VT102 * v, int c);
-void vt102_parser_reset (VT102_parser * p);
-void vt102_reset (VT102 * v);
+void vt102_log_line(VT102 *v, int line);
+void vt102_clip_cursor(VT102 *v, CRT_Pos tl, CRT_Pos br);
+void vt102_cursor_normalize(VT102 *v);
+void vt102_cursor_carriage_return(VT102 *v);
+void vt102_cursor_advance_line(VT102 *v);
+void vt102_cursor_advance(VT102 *v);
+void vt102_do_pending_wrap(VT102 *v);
+void vt102_cursor_retard(VT102 *v);
+void vt102_reset_tabs(VT102 *v);
+void vt102_cursor_advance_tab(VT102 *v);
+int vt102_cursor_home(VT102 *v);
+int vt102_cursor_absolute(VT102 *v, int x, int y);
+int vt102_cursor_relative(VT102 *v, int x, int y);
+void vt102_delete_from_line(VT102 *v, CRT_Pos p);
+void vt102_insert_into_line(VT102 *v, CRT_Pos p);
+void vt102_change_mode(VT102 *v, int private, char *ns, int set);
+void vt102_parse_mode_string(VT102 *v, char *buf, int len);
+void vt102_change_attr(VT102 *v, char *na);
+void vt102_parse_attr_string(VT102 *v, char *buf, int len);
+void vt102_save_state(VT102 *v);
+void vt102_restore_state(VT102 *v);
+void vt102_scs(VT102 *c, int g, int s);
+void vt102_parse_esc(VT102 *v, int c);
+void vt102_parse_csi(VT102 *v, char *buf, int len);
+void vt102_status_line(VT102 *v, char *str);
+void vt102_parse_char(VT102 *v, int c, TTY *tty);
+int vt102_parse(VT102 *v, char *buf, int len, TTY *t);
+void vt102_parser_reset(VT102_parser *p);
+void vt102_send(VT102 *v, uint8_t key, TTY *tty);
+void vt102_reset(VT102 *v);
+int vt102_dispatch(VT102 *v, TTY *tty);
+int vt102_dispatch_one(VT102 *v, TTY *tty);
+VT102 *vt102_new(void);
+void vt102_free(VT102 *v);
+/* tty.c */
+/* history.c */
+History *history_new(int n);
+void history_free(History *h);
+void history_add(History *h, CRT_CA *c);
+/* ring.c */
+int ring_read(Ring *r, void *b, int n);
+int ring_write(Ring *r, void *b, int n);
+Ring *ring_new(int n);
+/* ptty.c */
+TTY *ptty_open(char *path, char *argv[]);