chiark / gitweb /
*** empty log message ***
[sympathy.git] / src / libsympathy.c
1 /*
2  * libsympathy.c:
3  *
4  * Copyright (c) 2008 James McKenzie <james@fishsoup.dhs.org>,
5  * All rights reserved.
6  *
7  */
8
9 static char rcsid[] =
10   "$Id$";
11
12 /*
13  * $Log$
14  * Revision 1.15  2008/02/13 01:08:18  james
15  * *** empty log message ***
16  *
17  * Revision 1.14  2008/02/12 22:36:46  james
18  * *** empty log message ***
19  *
20  * Revision 1.13  2008/02/08 15:06:42  james
21  * *** empty log message ***
22  *
23  * Revision 1.12  2008/02/07 13:26:35  james
24  * *** empty log message ***
25  *
26  * Revision 1.11  2008/02/07 13:22:51  james
27  * *** empty log message ***
28  *
29  * Revision 1.10  2008/02/07 11:32:41  james
30  * *** empty log message ***
31  *
32  * Revision 1.9  2008/02/07 11:11:14  staffcvs
33  * *** empty log message ***
34  *
35  * Revision 1.8  2008/02/07 00:43:27  james
36  * *** empty log message ***
37  *
38  * Revision 1.7  2008/02/07 00:39:13  james
39  * *** empty log message ***
40  *
41  * Revision 1.6  2008/02/06 20:26:58  james
42  * *** empty log message ***
43  *
44  * Revision 1.5  2008/02/06 17:53:28  james
45  * *** empty log message ***
46  *
47  * Revision 1.4  2008/02/04 20:23:55  james
48  * *** empty log message ***
49  *
50  * Revision 1.3  2008/02/04 05:45:55  james
51  * ::
52  *
53  * Revision 1.2  2008/02/04 02:05:06  james
54  * *** empty log message ***
55  *
56  * Revision 1.1  2008/02/03 16:20:24  james
57  * *** empty log message ***
58  *
59  *
60  */
61
62 #include "project.h"
63
64
65
66 void
67 testy (void)
68 {
69   struct termios raw = { 0 };
70   ANSI a = { 0 };
71   Context c;
72
73 #if 0
74   fd_set rfd;
75   int fd;
76   char c;
77
78   TTY *t;
79   VT102 *v;
80   History *h;
81   int i;
82 #endif
83
84   
85
86   ansi_reset (&a);
87
88
89   c.t = tty_new_test ();
90   c.v = vt102_new ();
91
92   a.terminal=terminal_open(0,1);
93
94
95   FD_ZERO (&rfd);
96   for (;;)
97     {
98       struct timeval tv = { 0, 100000 };
99
100       FD_SET (t->fd, &rfd);
101       FD_SET (a.fd, &rfd);
102       select (t->fd + 1, &rfd, NULL, NULL, &tv);
103
104 #if 0
105       if (FD_ISSET (a.fd, &rfd))
106         {
107         }
108 #endif
109
110       switch (ansi_dispatch (&a, v, t))
111         {
112         case -1:
113           break;
114         case 1:
115           ansi_getsize (&a);
116           ansi_reset (&a);
117           ansi_draw (&a, &v->crt);
118           break;
119         }
120
121       if (FD_ISSET (t->fd, &rfd))
122         {
123           if (vt102_dispatch_one (v, t, h))
124             break;
125         }
126
127       if (had_winch)
128         {
129           had_winch = 0;
130           ansi_getsize (&a);
131           ansi_reset (&a);
132           ansi_draw (&a, &v->crt);
133         }
134       ansi_draw (&a, &v->crt);
135     }
136   tcsetattr (0, TCSANOW, &old);
137   printf ("QUAT\n");
138 }