Rev 1465 | Rev 1476 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1465 | Rev 1466 | ||
---|---|---|---|
Line 36... | Line 36... | ||
36 | #include <key_buffer.h> |
36 | #include <key_buffer.h> |
37 | #include <console.h> |
37 | #include <console.h> |
38 | #include <unistd.h> |
38 | #include <unistd.h> |
39 | #include <async.h> |
39 | #include <async.h> |
40 | 40 | ||
- | 41 | static void sysput(char c) |
|
- | 42 | { |
|
- | 43 | __SYSCALL3(SYS_IO, 1, &c, 1); |
|
- | 44 | ||
- | 45 | } |
|
41 | //#define CONSOLE_COUNT VFB_CONNECTIONS |
46 | //#define CONSOLE_COUNT VFB_CONNECTIONS |
42 | #define CONSOLE_COUNT 6 |
47 | #define CONSOLE_COUNT 6 |
43 | 48 | ||
44 | #define NAME "CONSOLE" |
49 | #define NAME "CONSOLE" |
45 | 50 | ||
Line 154... | Line 159... | ||
154 | /* Send message to fb */ |
159 | /* Send message to fb */ |
155 | ipc_call_async_2(connections[consnum].vfb_phone, FB_PUTCHAR, IPC_GET_ARG1(call), IPC_GET_ARG2(call), NULL, NULL); |
160 | ipc_call_async_2(connections[consnum].vfb_phone, FB_PUTCHAR, IPC_GET_ARG1(call), IPC_GET_ARG2(call), NULL, NULL); |
156 | break; |
161 | break; |
157 | case CONSOLE_GETCHAR: |
162 | case CONSOLE_GETCHAR: |
158 | /* FIXME: Only temporary solution until request storage will be created */ |
163 | /* FIXME: Only temporary solution until request storage will be created */ |
159 | - | ||
160 | while (!keybuffer_pop(&(connections[active_client].keybuffer), (char *)&arg1)) { |
164 | while (!keybuffer_pop(&(connections[active_client].keybuffer), (char *)&arg1)) { |
161 | /* FIXME: buffer empty -> store request */ |
165 | /* FIXME: buffer empty -> store request */ |
162 | usleep(10000); |
166 | async_usleep(100000); |
163 | }; |
167 | }; |
164 | 168 | ||
165 | break; |
169 | break; |
166 | } |
170 | } |
167 | ipc_answer_fast(callid, 0, arg1, 0); |
171 | ipc_answer_fast(callid, 0, arg1, 0); |