X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fvt102.h;h=e8caf5ed291ca57f3296ad4f2dd12d9b67aa1e0d;hb=3684640e6bdec97cb1b60a34d03e8cde63149215;hp=1007353b502a7eae453d7f5bbe4da4c32f0defa9;hpb=5175425f563e29f4698d2941ba1825b09965aaa5;p=sympathy.git diff --git a/src/vt102.h b/src/vt102.h index 1007353..e8caf5e 100644 --- a/src/vt102.h +++ b/src/vt102.h @@ -12,6 +12,24 @@ /* * $Log$ + * Revision 1.10 2008/02/07 12:16:04 james + * *** empty log message *** + * + * Revision 1.9 2008/02/07 01:57:46 james + * *** empty log message *** + * + * Revision 1.8 2008/02/07 00:39:13 james + * *** empty log message *** + * + * Revision 1.7 2008/02/06 20:26:58 james + * *** empty log message *** + * + * Revision 1.6 2008/02/06 17:53:28 james + * *** empty log message *** + * + * Revision 1.5 2008/02/06 15:53:22 james + * *** empty log message *** + * * Revision 1.4 2008/02/06 11:30:37 james * *** empty log message *** * @@ -43,19 +61,41 @@ typedef struct int in_csi; int csi_ptr; char csi_buf[VT102_CSI_LEN]; + int in_scs; } VT102_parser; +typedef struct +{ + CRT_Pos pos; + int attr; + int color; + int origin_mode; +} VT102_State; + + typedef struct { CRT_Pos top_margin, bottom_margin; CRT_Pos screen_start, screen_end; VT102_parser parser; int attr; + int color; CRT crt; - CRT_Pos pos; + + int pending_wrap; + CRT_Pos pos, current_line; + + VT102_State saved; uint8_t modes[VT102_NMODES]; uint8_t private_modes[VT102_NMODES]; + + uint8_t tabs[VT102_COLS]; + + int application_keypad_mode; + + TTY *tty; + } VT102; #define VT102_PRIVATE_MODE_CURSOR_MODE 1 @@ -66,10 +106,11 @@ typedef struct #define VT102_PRIVATE_MODE_ORIGIN_MODE 6 #define VT102_PRIVATE_MODE_AUTO_WRAP 7 #define VT102_PRIVATE_MODE_AUTO_REPEAT 8 +#define VT102_PRIVATE_MODE_SHOW_CURSOR 25 #define VT102_MODE_KEYBOARD_DISABLE 2 #define VT102_MODE_INSERT 4 -#define VT102_PRIVATE_MODE_LOCAL_ECHO_OFF 12 +#define VT102_MODE_LOCAL_ECHO_OFF 12 #define VT102_MODE_NEWLINE_MODE 20 #endif /* __VT102_H__ */