if (ystart < yend) {
                newport_clear_screen(sx << 3, ystart, xend, yend,
-                                    (vc->vc_color & 0xf0) >> 4);
+                                    (vc->state.color & 0xf0) >> 4);
        } else {
                newport_clear_screen(sx << 3, ystart, xend, 1023,
-                                    (vc->vc_color & 0xf0) >> 4);
+                                    (vc->state.color & 0xf0) >> 4);
                newport_clear_screen(sx << 3, 0, xend, yend,
-                                    (vc->vc_color & 0xf0) >> 4);
+                                    (vc->state.color & 0xf0) >> 4);
        }
 }
 
                        topscan = (topscan + (lines << 4)) & 0x3ff;
                        newport_clear_lines(vc->vc_rows - lines,
                                            vc->vc_rows - 1,
-                                           (vc->vc_color & 0xf0) >> 4);
+                                           (vc->state.color & 0xf0) >> 4);
                } else {
                        topscan = (topscan + (-lines << 4)) & 0x3ff;
                        newport_clear_lines(0, lines - 1,
-                                           (vc->vc_color & 0xf0) >> 4);
+                                           (vc->state.color & 0xf0) >> 4);
                }
                npregs->cset.topscan = (topscan - 1) & 0x3ff;
                return false;