summaryrefslogtreecommitdiff
path: root/sys/arch/i386
diff options
context:
space:
mode:
authorAaron Campbell <aaron@cvs.openbsd.org>2000-01-17 02:46:24 +0000
committerAaron Campbell <aaron@cvs.openbsd.org>2000-01-17 02:46:24 +0000
commite7a2c34d202f17702427d1cc4288cf0505c7c025 (patch)
tree9df4d163b94e5c09adb2d39a1fa3f62b02aa004b /sys/arch/i386
parentf1f46243321cb5208b5ebaa79a7aeb78c47a45a2 (diff)
Remove `pcdisp_special', which was actually a gross hack. Instead, move the
`pcdisp' check in write_char() beyond the 0x20-0x7f character value scope. This change should fix most problems when intermixing DEC character- and IBMPC character-based apps in the PCVT console.
Diffstat (limited to 'sys/arch/i386')
-rw-r--r--sys/arch/i386/isa/pcvt/pcvt_out.c13
-rw-r--r--sys/arch/i386/isa/pcvt/pcvt_vtf.c6
2 files changed, 7 insertions, 12 deletions
diff --git a/sys/arch/i386/isa/pcvt/pcvt_out.c b/sys/arch/i386/isa/pcvt/pcvt_out.c
index 499c169b11f..052bd21211d 100644
--- a/sys/arch/i386/isa/pcvt/pcvt_out.c
+++ b/sys/arch/i386/isa/pcvt/pcvt_out.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pcvt_out.c,v 1.16 1999/11/25 20:24:22 aaron Exp $ */
+/* $OpenBSD: pcvt_out.c,v 1.17 2000/01/17 02:46:23 aaron Exp $ */
/*
* Copyright (c) 1992, 1995 Hellmuth Michaelis and Joerg Wunsch.
@@ -89,11 +89,6 @@ static __inline void write_char (svsp, attrib, ch)
struct video_state *svsp;
u_short attrib, ch;
{
- if (pcdisp && pcdisp_special == 0) {
- *video = attrib | ch;
- return;
- }
-
if ((ch >= 0x20) && (ch <= 0x7f)) { /* use GL if ch >= 0x20 */
if(!svsp->ss) /* single shift G2/G3 -> GL ? */
*video = attrib | svsp->GL[ch-0x20];
@@ -103,6 +98,11 @@ u_short attrib, ch;
}
}
else {
+ if (pcdisp) {
+ *video = attrib | ch;
+ return;
+ }
+
svsp->ss = 0;
if(ch >= 0x80) { /* display controls C1 */
@@ -993,7 +993,6 @@ vt_coldinit(void)
do_initialization = 0; /* reset init necessary flag */
pcdisp = 1; /* turn on traditional pc colors/font */
- pcdisp_special = 0;
/* get the equipment byte from the RTC chip */
diff --git a/sys/arch/i386/isa/pcvt/pcvt_vtf.c b/sys/arch/i386/isa/pcvt/pcvt_vtf.c
index 68d70781957..52d2eafa473 100644
--- a/sys/arch/i386/isa/pcvt/pcvt_vtf.c
+++ b/sys/arch/i386/isa/pcvt/pcvt_vtf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pcvt_vtf.c,v 1.11 1999/11/27 21:39:29 aaron Exp $ */
+/* $OpenBSD: pcvt_vtf.c,v 1.12 2000/01/17 02:46:23 aaron Exp $ */
/*
* Copyright (c) 1992, 1995 Hellmuth Michaelis and Joerg Wunsch.
@@ -1049,7 +1049,6 @@ vt_designate(struct video_state *svsp)
case 'B': /* USASCII */
#ifdef HAVECSD_ASCII
ctp = csd_ascii;
- pcdisp_special = 0;
#endif
break;
@@ -1113,7 +1112,6 @@ vt_designate(struct video_state *svsp)
case '0': /* special graphics */
#ifdef HAVECSD_SPECIAL
ctp = csd_special;
- pcdisp_special = 1;
#endif
break;
@@ -1144,7 +1142,6 @@ vt_designate(struct video_state *svsp)
case '<': /* DEC Supplemental */
#ifdef HAVECSD_SUPPLEMENTAL
ctp = csd_supplemental;
- pcdisp_special = 1;
#endif
break;
@@ -1157,7 +1154,6 @@ vt_designate(struct video_state *svsp)
case '>': /* DEC Technical */
#ifdef HAVECSD_TECHNICAL
ctp = csd_technical;
- pcdisp_special = 1;
#endif
break;