summaryrefslogtreecommitdiff
path: root/sys/arch/mvme88k/stand/libbug/putchar.c
diff options
context:
space:
mode:
authorSteve Murphree <smurph@cvs.openbsd.org>1998-12-15 06:32:36 +0000
committerSteve Murphree <smurph@cvs.openbsd.org>1998-12-15 06:32:36 +0000
commit2b15acd640c31ffe78e62a6f74608d3a5b7f6954 (patch)
tree7937f297944744e67d9c13c31ea238fc450d56e1 /sys/arch/mvme88k/stand/libbug/putchar.c
parent6d51a3609c2a75795ae9487536608be366f37cca (diff)
This fixed a number of things. A serious bug in bugcrt.c's initial stack
among other things.
Diffstat (limited to 'sys/arch/mvme88k/stand/libbug/putchar.c')
-rw-r--r--sys/arch/mvme88k/stand/libbug/putchar.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/sys/arch/mvme88k/stand/libbug/putchar.c b/sys/arch/mvme88k/stand/libbug/putchar.c
index 564bcb75c15..2193b45c78c 100644
--- a/sys/arch/mvme88k/stand/libbug/putchar.c
+++ b/sys/arch/mvme88k/stand/libbug/putchar.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: putchar.c,v 1.1 1998/08/22 07:39:56 smurph Exp $ */
+/* $OpenBSD: putchar.c,v 1.2 1998/12/15 06:32:34 smurph Exp $ */
/*
* putchar: easier to do this with outstr than to add more macros to
@@ -17,9 +17,10 @@ putchar(c)
int c;
{
- char ca[2];
- if (c == '\n')
- putchar('\r');
- ca[0] = c;
- mvmeprom_outstr(&ca[0], &ca[1]);
+ char ca;
+ ca = (char)c & 0xFF;
+ if (ca == '\n')
+ putchar('\r');
+ asm volatile ("or r2,r0,%0" : : "r" (ca));
+ MVMEPROM_CALL(MVMEPROM_OUTCHR);
}