summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/kernel/sched.h2
-rw-r--r--kernel/kmain.c5
-rw-r--r--kernel/timer.s4
3 files changed, 5 insertions, 6 deletions
diff --git a/include/kernel/sched.h b/include/kernel/sched.h
index fa8e036..afced68 100644
--- a/include/kernel/sched.h
+++ b/include/kernel/sched.h
@@ -23,4 +23,6 @@ struct task_struct {
struct task_state state;
} __attribute__((packed));
+void userspace_init(void);
+
#endif
diff --git a/kernel/kmain.c b/kernel/kmain.c
index 1828ad2..5b2fe91 100644
--- a/kernel/kmain.c
+++ b/kernel/kmain.c
@@ -1,13 +1,10 @@
#include <kernel/con.h>
#include <kernel/memory.h>
+#include <kernel/sched.h>
#include <kernel/sys.h>
#include <stdint.h>
#include <sys/types.h>
-extern void userspace_init(void);
-
-uint32_t ticks = 0;
-
void kmain(void) {
con_init();
diff --git a/kernel/timer.s b/kernel/timer.s
index 53c81ed..3723782 100644
--- a/kernel/timer.s
+++ b/kernel/timer.s
@@ -1,8 +1,8 @@
+global ticks
global timer_init
extern register_isr
-; TODO: move this someplace safe (not kmain.c)
-extern ticks
+ticks: dd 0
tick_handler:
push ax