static void vcons_putchar(void *cookie, int row, int col, u_int c, long attr) { struct rasops_info *ri = cookie; struct vcons_screen *scr = ri->ri_hw; vcons_putchar_buffer(cookie, row, col, c, attr); vcons_lock(scr); if (SCREEN_IS_VISIBLE(scr) && SCREEN_CAN_DRAW(scr)) { scr->scr_vd->putchar(cookie, row, col, c, attr); } vcons_unlock(scr); }
static void vcons_putchar(void *cookie, int row, int col, u_int c, long attr) { struct rasops_info *ri = cookie; struct vcons_screen *scr = ri->ri_hw; vcons_putchar_buffer(cookie, row, col, c, attr); #if defined(VCONS_DRAW_INTR) if (scr->scr_vd->use_intr) return; #endif vcons_lock(scr); if (SCREEN_IS_VISIBLE(scr) && SCREEN_CAN_DRAW(scr)) { #ifdef VCONS_DRAW_INTR vcons_putchar_cached(cookie, row, col, c, attr); #else scr->scr_vd->putchar(cookie, row, col, c, attr); #endif } vcons_unlock(scr); }