Finish up vfs_init
diff --git a/src/kernel/io.c b/src/kernel/io.c
index 55bf7a7..0cf04b2 100644
--- a/src/kernel/io.c
+++ b/src/kernel/io.c
@@ -4,13 +4,11 @@
#include "pic.h"
bool pressed_keys[LAST_KBD_KEY];
-char special_key_mappings[LAST_KBD_KEY - FIRST_KBD_KEY] =
-{
+char special_key_mappings[LAST_KBD_KEY - FIRST_KBD_KEY] = {
[KBD_ENTER - FIRST_KBD_KEY] = '\n',
[KBD_SPACEBAR - FIRST_KBD_KEY] = ' ',
[KBD_TAB - FIRST_KBD_KEY] = '\t',
[KBD_BACKSPACE - FIRST_KBD_KEY] = '\b',
- 0
};
void outb(ushort port, uchar val)
@@ -50,6 +48,31 @@
return dest;
}
+uint strlen(char *a)
+{
+ int i = 0;
+ for (; *a; i++)
+ {
+ }
+
+ return i;
+}
+
+int strcmp(char *a, char *b)
+{
+ int al = strlen(a), bl = strlen(b);
+
+ if (al != bl)
+ return bl - al;
+
+ for (int i = 0; i < al; i++)
+ {
+ if (a[i] != b[i])
+ return -1;
+ }
+ return 0;
+}
+
void io_wait()
{
asm volatile("outb %0, $0x80" ::"a"(0));