Rev 1673 | Rev 1689 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1673 | Rev 1674 | ||
---|---|---|---|
Line 171... | Line 171... | ||
171 | 171 | ||
172 | scr->position_y += (scr->position_x >= scr->size_x); |
172 | scr->position_y += (scr->position_x >= scr->size_x); |
173 | 173 | ||
174 | if (scr->position_y >= scr->size_y) { |
174 | if (scr->position_y >= scr->size_y) { |
175 | scr->position_y = scr->size_y - 1; |
175 | scr->position_y = scr->size_y - 1; |
176 | screenbuffer_clear_line(scr, scr->top_line++); |
176 | screenbuffer_clear_line(scr, scr->top_line); |
- | 177 | scr->top_line = (scr->top_line+1) % scr->size_y; |
|
177 | if (console == active_console) |
178 | if (console == active_console) |
178 | async_msg(fb_info.phone, FB_SCROLL, 1); |
179 | async_msg(fb_info.phone, FB_SCROLL, 1); |
179 | } |
180 | } |
180 | 181 | ||
181 | scr->position_x = scr->position_x % scr->size_x; |
182 | scr->position_x = scr->position_x % scr->size_x; |
Line 258... | Line 259... | ||
258 | interbuffer[i + j*conn->screenbuffer.size_x] = *get_field_at(&(conn->screenbuffer),i, j); |
259 | interbuffer[i + j*conn->screenbuffer.size_x] = *get_field_at(&(conn->screenbuffer),i, j); |
259 | /* This call can preempt, but we are already at the end */ |
260 | /* This call can preempt, but we are already at the end */ |
260 | rc = async_req_2(fb_info.phone, FB_DRAW_TEXT_DATA, 0, 0, NULL, NULL); |
261 | rc = async_req_2(fb_info.phone, FB_DRAW_TEXT_DATA, 0, 0, NULL, NULL); |
261 | }; |
262 | }; |
262 | 263 | ||
263 | if ((!interbuffer) || (j != 0)) { |
264 | if ((!interbuffer) || (rc != 0)) { |
264 | set_style(&conn->screenbuffer.style); |
265 | set_style(&conn->screenbuffer.style); |
265 | clrscr(); |
266 | clrscr(); |
266 | style = &conn->screenbuffer.style; |
267 | style = &conn->screenbuffer.style; |
267 | 268 | ||
268 | for (j = 0; j < conn->screenbuffer.size_y; j++) |
269 | for (j = 0; j < conn->screenbuffer.size_y; j++) |