Subversion Repositories HelenOS

Rev

Rev 3742 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3742 Rev 3745
Line 104... Line 104...
104
static void clrscr(void)
104
static void clrscr(void)
105
{
105
{
106
    async_msg_0(fb_info.phone, FB_CLEAR);
106
    async_msg_0(fb_info.phone, FB_CLEAR);
107
}
107
}
108
 
108
 
109
static void curs_visibility(int v)
109
static void curs_visibility(bool visible)
110
{
110
{
111
    async_msg_1(fb_info.phone, FB_CURSOR_VISIBILITY, v);
111
    async_msg_1(fb_info.phone, FB_CURSOR_VISIBILITY, visible);
-
 
112
}
-
 
113
 
-
 
114
static void curs_hide_sync(void)
-
 
115
{
-
 
116
    ipc_call_sync_1_0(fb_info.phone, FB_CURSOR_VISIBILITY, false);
112
}
117
}
113
 
118
 
114
static void curs_goto(int row, int col)
119
static void curs_goto(int row, int col)
115
{
120
{
116
    async_msg_2(fb_info.phone, FB_CURSOR_GOTO, row, col);
121
    async_msg_2(fb_info.phone, FB_CURSOR_GOTO, row, col);
Line 195... Line 200...
195
    if (newcons == active_console)
200
    if (newcons == active_console)
196
        return;
201
        return;
197
   
202
   
198
    if (newcons == KERNEL_CONSOLE) {
203
    if (newcons == KERNEL_CONSOLE) {
199
        async_serialize_start();
204
        async_serialize_start();
200
        curs_visibility(0);
205
        curs_hide_sync();
201
        gcons_in_kernel();
206
        gcons_in_kernel();
202
        async_serialize_end();
207
        async_serialize_end();
203
       
208
       
204
        if (__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE))
209
        if (__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE))
205
            active_console = KERNEL_CONSOLE;
210
            active_console = KERNEL_CONSOLE;
206
        else
211
        else
207
            newcons == active_console;
212
            newcons = active_console;
208
    }
213
    }
209
   
214
   
210
    if (newcons != KERNEL_CONSOLE) {
215
    if (newcons != KERNEL_CONSOLE) {
211
        async_serialize_start();
216
        async_serialize_start();
212
       
217
       
Line 216... Line 221...
216
        active_console = newcons;
221
        active_console = newcons;
217
        gcons_change_console(newcons);
222
        gcons_change_console(newcons);
218
        conn = &connections[active_console];
223
        conn = &connections[active_console];
219
       
224
       
220
        set_style(&conn->screenbuffer.style);
225
        set_style(&conn->screenbuffer.style);
221
        curs_visibility(0);
226
        curs_visibility(false);
222
        if (interbuffer) {
227
        if (interbuffer) {
223
            for (i = 0; i < conn->screenbuffer.size_x; i++)
228
            for (i = 0; i < conn->screenbuffer.size_x; i++)
224
                for (j = 0; j < conn->screenbuffer.size_y; j++) {
229
                for (j = 0; j < conn->screenbuffer.size_y; j++) {
225
                    unsigned int size_x;
230
                    unsigned int size_x;
226
                   
231