From fe3e0181d4467afaad37bac44556b9b69a44edcf Mon Sep 17 00:00:00 2001 From: Ben Gras Date: Thu, 11 Dec 2008 14:55:06 +0000 Subject: [PATCH] straggler. --- lib/sysutil/ser_putc.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 lib/sysutil/ser_putc.c diff --git a/lib/sysutil/ser_putc.c b/lib/sysutil/ser_putc.c new file mode 100644 index 000000000..26a3b0746 --- /dev/null +++ b/lib/sysutil/ser_putc.c @@ -0,0 +1,27 @@ +#include "sysutil.h" +#include + +#define COM1_BASE 0x3F8 +#define COM1_THR (COM1_BASE + 0) +#define LSR_THRE 0x20 +#define COM1_LSR (COM1_BASE + 5) + +/*===========================================================================* + * ser_putc * + *===========================================================================*/ +PUBLIC int ser_putc(char c) +{ + unsigned long b; + int i; + int lsr, thr; + + lsr= COM1_LSR; + thr= COM1_THR; + for (i= 0; i<10000; i++) + { + sys_inb(lsr, &b); + if (b & LSR_THRE) + break; + } + sys_outb(thr, c); +} -- 2.44.0