97,7 → 97,7 |
*/ |
static int find_free_connection(void) |
{ |
int i = 0; |
int i; |
|
for (i=0; i < CONSOLE_COUNT; i++) { |
if (!connections[i].used) |
148,7 → 148,7 |
|
switch (key) { |
case '\n': |
scr->position_y += 1; |
scr->position_y++; |
scr->position_x = 0; |
break; |
case '\r': |
263,8 → 263,8 |
if (interbuffer) { |
for (i = 0; i < conn->screenbuffer.size_x; i++) |
for (j = 0; j < conn->screenbuffer.size_y; j++) |
interbuffer[i + j * conn->screenbuffer.size_x] |
= *get_field_at(&(conn->screenbuffer), |
interbuffer[i + j * conn->screenbuffer.size_x] = |
*get_field_at(&(conn->screenbuffer), |
i, j); |
/* This call can preempt, but we are already at the end */ |
rc = async_req_2(fb_info.phone, FB_DRAW_TEXT_DATA, 0, 0, NULL, |
484,22 → 484,22 |
|
/* Connect to keyboard driver */ |
|
while ((kbd_phone = ipc_connect_me_to(PHONE_NS, SERVICE_KEYBOARD, 0)) |
< 0) { |
kbd_phone = ipc_connect_me_to(PHONE_NS, SERVICE_KEYBOARD, 0); |
while (kbd_phone < 0) { |
usleep(10000); |
kbd_phone = ipc_connect_me_to(PHONE_NS, SERVICE_KEYBOARD, 0); |
} |
|
if (ipc_connect_to_me(kbd_phone, SERVICE_CONSOLE, 0, &phonehash) != 0) |
{ |
return -1; |
} |
async_new_connection(phonehash, 0, NULL, keyboard_events); |
|
/* Connect to framebuffer driver */ |
|
while ((fb_info.phone = ipc_connect_me_to(PHONE_NS, SERVICE_VIDEO, 0)) |
< 0) { |
fb_info.phone = ipc_connect_me_to(PHONE_NS, SERVICE_VIDEO, 0); |
while (fb_info.phone < 0) { |
usleep(10000); |
fb_info.phone = ipc_connect_me_to(PHONE_NS, SERVICE_VIDEO, 0); |
} |
|
/* Save old kernel screen */ |
535,9 → 535,10 |
} |
connections[KERNEL_CONSOLE].used = 1; |
|
if ((interbuffer = mmap(NULL, sizeof(keyfield_t) * fb_info.cols * |
fb_info.rows, PROTO_READ | PROTO_WRITE, MAP_ANONYMOUS | |
MAP_PRIVATE, 0, 0)) != NULL) { |
interbuffer = mmap(NULL, |
sizeof(keyfield_t) * fb_info.cols * fb_info.rows, |
PROTO_READ | PROTO_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); |
if (!interbuffer) { |
if (async_req_3(fb_info.phone, IPC_M_AS_AREA_SEND, (ipcarg_t) |
interbuffer, 0, AS_AREA_READ, NULL, NULL, NULL) != 0) { |
munmap(interbuffer, sizeof(keyfield_t) * fb_info.cols |