Lines Matching refs:vc

327 static void newport_init(struct vc_data *vc, bool init)
333 vc->vc_can_do_color = 1;
335 vc->vc_cols = cols;
336 vc->vc_rows = rows;
338 vc_resize(vc, cols, rows);
349 static void newport_clear(struct vc_data *vc, unsigned int sy, unsigned int sx,
361 (vc->state.color & 0xf0) >> 4);
364 (vc->state.color & 0xf0) >> 4);
366 (vc->state.color & 0xf0) >> 4);
370 static void newport_putc(struct vc_data *vc, u16 charattr, unsigned int ypos,
375 p = &font_data[vc->vc_num][(charattr & 0xff) << 4];
399 static void newport_putcs(struct vc_data *vc, const u16 *s,
427 p = &font_data[vc->vc_num][(scr_readw(s++) & 0xff) << 4];
441 static void newport_cursor(struct vc_data *vc, bool enable)
455 xcurs = (vc->vc_pos - vc->vc_visible_origin) / 2;
456 ycurs = ((xcurs / vc->vc_cols) << 4) + 31;
457 xcurs = ((xcurs % vc->vc_cols) << 3) + xcurs_correction;
462 static bool newport_switch(struct vc_data *vc)
567 static int newport_font_default(struct vc_data *vc, struct console_font *op,
570 return newport_set_def_font(vc->vc_num, op);
573 static int newport_font_set(struct vc_data *vc, const struct console_font *font,
576 return newport_set_font(vc->vc_num, font, vpitch);
579 static bool newport_scroll(struct vc_data *vc, unsigned int t, unsigned int b,
588 if (t == 0 && b == vc->vc_rows) {
591 newport_clear_lines(vc->vc_rows - lines,
592 vc->vc_rows - 1,
593 (vc->state.color & 0xf0) >> 4);
597 (vc->state.color & 0xf0) >> 4);
603 count = (b - t - lines) * vc->vc_cols;
607 s = (unsigned short *) (vc->vc_origin +
608 vc->vc_size_row * (t + lines));
609 d = (unsigned short *) (vc->vc_origin +
610 vc->vc_size_row * t);
614 newport_putc(vc, chattr, y, x);
618 if (++x == vc->vc_cols) {
623 d = (unsigned short *) (vc->vc_origin +
624 vc->vc_size_row * (b - lines));
627 for (count = 0; count < (lines * vc->vc_cols); count++) {
628 if (scr_readw(d) != vc->vc_video_erase_char) {
629 newport_putc(vc, vc->vc_video_erase_char,
631 scr_writew(vc->vc_video_erase_char, d);
634 if (++x == vc->vc_cols) {
640 x = vc->vc_cols - 1;
642 s = (unsigned short *) (vc->vc_origin +
643 vc->vc_size_row * (b - lines) - 2);
644 d = (unsigned short *) (vc->vc_origin +
645 vc->vc_size_row * b - 2);
649 newport_putc(vc, chattr, y, x);
654 x = vc->vc_cols - 1;
658 d = (unsigned short *) (vc->vc_origin +
659 vc->vc_size_row * t);
662 for (count = 0; count < (lines * vc->vc_cols); count++) {
663 if (scr_readw(d) != vc->vc_video_erase_char) {
664 newport_putc(vc, vc->vc_video_erase_char,
666 scr_writew(vc->vc_video_erase_char, d);
669 if (++x == vc->vc_cols) {
678 static void newport_save_screen(struct vc_data *vc) { }