Rev 1536 | Rev 1653 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1536 | Rev 1610 | ||
---|---|---|---|
Line 62... | Line 62... | ||
62 | { |
62 | { |
63 | ipcarg_t r0,r1; |
63 | ipcarg_t r0,r1; |
64 | size_t i = 0; |
64 | size_t i = 0; |
65 | 65 | ||
66 | while (i < count) { |
66 | while (i < count) { |
67 | if (sync_send_2(streams[0].phone, CONSOLE_GETCHAR, 0, 0, &r0, &r1) < 0) { |
67 | if (async_req_2(streams[0].phone, CONSOLE_GETCHAR, 0, 0, &r0, &r1) < 0) { |
68 | return -1; |
68 | return -1; |
69 | } |
69 | } |
70 | ((char *)buf)[i++] = r0; |
70 | ((char *)buf)[i++] = r0; |
71 | } |
71 | } |
72 | return i; |
72 | return i; |
Line 76... | Line 76... | ||
76 | { |
76 | { |
77 | int i; |
77 | int i; |
78 | ipcarg_t r0,r1; |
78 | ipcarg_t r0,r1; |
79 | 79 | ||
80 | for (i = 0; i < count; i++) |
80 | for (i = 0; i < count; i++) |
81 | send_call(streams[1].phone, CONSOLE_PUTCHAR, ((const char *)buf)[i]); |
81 | async_msg(streams[1].phone, CONSOLE_PUTCHAR, ((const char *)buf)[i]); |
82 | 82 | ||
83 | return count; |
83 | return count; |
84 | } |
84 | } |
85 | 85 | ||
86 | 86 | ||
Line 157... | Line 157... | ||
157 | } |
157 | } |
158 | 158 | ||
159 | 159 | ||
160 | ssize_t write(int fd, const void *buf, size_t count) |
160 | ssize_t write(int fd, const void *buf, size_t count) |
161 | { |
161 | { |
- | 162 | // __SYSCALL3(SYS_IO, 1, (sysarg_t)buf, (sysarg_t) count); |
|
- | 163 | // return count; |
|
162 | if (fd < FDS) |
164 | if (fd < FDS) |
163 | return streams[fd].w(streams[fd].param, buf, count); |
165 | return streams[fd].w(streams[fd].param, buf, count); |
164 | 166 | ||
165 | return 0; |
167 | return 0; |
166 | } |
168 | } |