Rev 4321 | Rev 4326 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4321 | Rev 4325 | ||
---|---|---|---|
Line 139... | Line 139... | ||
139 | static void curs_goto(int row, int col) |
139 | static void curs_goto(int row, int col) |
140 | { |
140 | { |
141 | async_msg_2(fb_info.phone, FB_CURSOR_GOTO, row, col); |
141 | async_msg_2(fb_info.phone, FB_CURSOR_GOTO, row, col); |
142 | } |
142 | } |
143 | 143 | ||
- | 144 | static void screen_grab(void) |
|
- | 145 | { |
|
- | 146 | ipc_call_sync_0_0(fb_info.phone, FB_SCREEN_GRAB); |
|
- | 147 | } |
|
- | 148 | ||
- | 149 | static void screen_relinquish(void) |
|
- | 150 | { |
|
- | 151 | ipc_call_sync_0_0(fb_info.phone, FB_SCREEN_RELINQUISH); |
|
- | 152 | } |
|
- | 153 | ||
144 | static void set_style(int style) |
154 | static void set_style(int style) |
145 | { |
155 | { |
146 | async_msg_1(fb_info.phone, FB_SET_STYLE, style); |
156 | async_msg_1(fb_info.phone, FB_SET_STYLE, style); |
147 | } |
157 | } |
148 | 158 | ||
Line 328... | Line 338... | ||
328 | 338 | ||
329 | if (newcons == KERNEL_CONSOLE) { |
339 | if (newcons == KERNEL_CONSOLE) { |
330 | async_serialize_start(); |
340 | async_serialize_start(); |
331 | curs_hide_sync(); |
341 | curs_hide_sync(); |
332 | gcons_in_kernel(); |
342 | gcons_in_kernel(); |
- | 343 | screen_relinquish(); |
|
333 | async_serialize_end(); |
344 | async_serialize_end(); |
- | 345 | ||
334 | 346 | ||
335 | if (__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE)) { |
347 | if (__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE)) { |
336 | prev_console = active_console; |
348 | prev_console = active_console; |
337 | active_console = KERNEL_CONSOLE; |
349 | active_console = KERNEL_CONSOLE; |
338 | } else |
350 | } else |
Line 340... | Line 352... | ||
340 | } |
352 | } |
341 | 353 | ||
342 | if (newcons != KERNEL_CONSOLE) { |
354 | if (newcons != KERNEL_CONSOLE) { |
343 | async_serialize_start(); |
355 | async_serialize_start(); |
344 | 356 | ||
345 | if (active_console == KERNEL_CONSOLE) |
357 | if (active_console == KERNEL_CONSOLE) { |
- | 358 | screen_grab(); |
|
346 | gcons_redraw_console(); |
359 | gcons_redraw_console(); |
- | 360 | } |
|
347 | 361 | ||
348 | active_console = newcons; |
362 | active_console = newcons; |
349 | gcons_change_console(newcons); |
363 | gcons_change_console(newcons); |
350 | conn = &connections[active_console]; |
364 | conn = &connections[active_console]; |
351 | 365 |