summaryrefslogtreecommitdiff
path: root/console.c
diff options
context:
space:
mode:
devsw
checkpoint: write(fd,"hello\n",6) where fd is a console dev almost works
Diffstat (limited to 'console.c')
-rw-r--r--console.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/console.c b/console.c
index 9a7d725..7e357fb 100644
--- a/console.c
+++ b/console.c
@@ -2,6 +2,7 @@
#include "x86.h"
#include "defs.h"
#include "spinlock.h"
+#include "dev.h"
struct spinlock console_lock = { "console" };
int panicked = 0;
@@ -155,3 +156,24 @@ panic(char *s)
for(;;)
;
}
+
+int
+console_write (int minor, void *buf, int n)
+{
+ int i;
+ uchar *b = buf;
+
+ cprintf ("print character to console\n");
+
+ for (i = 0; i < n; i++) {
+ cons_putc((int) b[i]);
+ }
+
+ return n;
+}
+
+void
+console_init ()
+{
+ devsw[CONSOLE].d_write = console_write;
+}