diff options
author | Steve Murphree <smurph@cvs.openbsd.org> | 1998-12-15 06:32:36 +0000 |
---|---|---|
committer | Steve Murphree <smurph@cvs.openbsd.org> | 1998-12-15 06:32:36 +0000 |
commit | 2b15acd640c31ffe78e62a6f74608d3a5b7f6954 (patch) | |
tree | 7937f297944744e67d9c13c31ea238fc450d56e1 /sys/arch/mvme88k/stand/libbug | |
parent | 6d51a3609c2a75795ae9487536608be366f37cca (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')
-rw-r--r-- | sys/arch/mvme88k/stand/libbug/diskrd.c | 2 | ||||
-rw-r--r-- | sys/arch/mvme88k/stand/libbug/putchar.c | 13 |
2 files changed, 8 insertions, 7 deletions
diff --git a/sys/arch/mvme88k/stand/libbug/diskrd.c b/sys/arch/mvme88k/stand/libbug/diskrd.c index bc69b365501..d38717c3ce6 100644 --- a/sys/arch/mvme88k/stand/libbug/diskrd.c +++ b/sys/arch/mvme88k/stand/libbug/diskrd.c @@ -15,5 +15,5 @@ mvmeprom_diskrd(arg) asm volatile ("or r2,r0,%0": : "r" (arg)); MVMEPROM_CALL(MVMEPROM_DSKRD); asm volatile ("or %0,r0,r2" : "=r" (ret)); - return (!(ret & 0x4)); + return ((ret & 0x8)); } 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); } |